
From: Brice Goglin <Brice.Goglin@ens-lyon.org>

I noticed a strange return value in smsc_ircc_init in
drivers/net/irda/smsc_ircc2.c in rc4-mm1.

When reaching the line "if (ircc_fir > 0 && ircc_sir > 0)", ret is 0.  So I
don't see the point of setting it to 0 in the "else" case.  >From what I
see in 2.6.12 it should probably be set to -ENODEV at the begining of the
"else" case.  The attached patch does this.

Note that I didn't actually see any breakage caused by this.

Signed-off-by: Brice Goglin <Brice.Goglin@ens-lyon.org>
Cc: Dmitry Torokhov <dtor_core@ameritech.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
---

 drivers/net/irda/smsc-ircc2.c |    1 +
 1 files changed, 1 insertion(+)

diff -puN drivers/net/irda/smsc-ircc2.c~fix-smsc_ircc_init-return-value drivers/net/irda/smsc-ircc2.c
--- devel/drivers/net/irda/smsc-ircc2.c~fix-smsc_ircc_init-return-value	2005-08-01 17:17:57.000000000 -0700
+++ devel-akpm/drivers/net/irda/smsc-ircc2.c	2005-08-01 17:17:57.000000000 -0700
@@ -360,6 +360,7 @@ static int __init smsc_ircc_init(void)
 		if (smsc_ircc_open(ircc_fir, ircc_sir, ircc_dma, ircc_irq))
 			ret = -ENODEV;
 	} else {
+		ret = -ENODEV;
 
 		/* try user provided configuration register base address */
 		if (ircc_cfg > 0) {
_
