Matthias Bock wrote :
> I am using the smc-ircc module for the IR port in my Sony vaio 505FX
> Notebook. With Kernel 2.4.6 it works fine, now I have tried with
> 2.4.17, but it fails. Maybe you could give it a try with 2.4.6
Hum...
Could you make a diff of the source of those two version of
the smc driver ? Don't forget to also do a diff of irport.c.
As far as I remember, only trivial change to the smc driver
went in. The patch was included around 2.4.10 and is attached
below. You may want to "undo" the patch to see if it helps.
Other solution is that it's not SMC specific. In that case,
please send us an irdadump of the failure.
Regards,
Jean
---------------------------------------------------------
diff -u -p linux/drivers/net/irda/smc-ircc.d0b.c linux/drivers/net/irda/smc-ircc.c
--- linux/drivers/net/irda/smc-ircc.d0b.c Thu Oct 4 15:57:42 2001
+++ linux/drivers/net/irda/smc-ircc.c Thu Oct 4 16:10:22 2001
@@ -127,7 +127,7 @@ static smc_chip_t __initdata fdc_chips_p
{ "37M707", KEY55_1|SIR|SERx4, 0x42, 0x00 },
{ "37M81X", KEY55_1|SIR|SERx4, 0x4d, 0x00 },
{ "37N958FR", KEY55_1|FIR|SERx4, 0x09, 0x04 },
- { "37N972", KEY55_1|FIR|SERx4, 0x0a, 0x00 },
+ { "37N971", KEY55_1|FIR|SERx4, 0x0a, 0x00 },
{ "37N972", KEY55_1|FIR|SERx4, 0x0b, 0x00 },
{ NULL }
};
@@ -158,6 +158,7 @@ static int ircc_irq=255;
static int ircc_dma=255;
static int ircc_fir=0;
static int ircc_sir=0;
+static int ircc_cfg=0;
static unsigned short dev_count=0;
@@ -393,6 +394,13 @@ int __init ircc_init(void)
return -ENODEV;
}
+ /* try user provided configuration register base address */
+ if (ircc_cfg>0) {
+ MESSAGE(" Overriding configuration address 0x%04x\n", ircc_cfg);
+ if (!smc_superio_fdc(ircc_cfg))
+ ret=0;
+ }
+
/* Trys to open for all the SMC chipsets we know about */
IRDA_DEBUG(0, __FUNCTION__
@@ -402,6 +410,8 @@ int __init ircc_init(void)
ret=0;
if (!smc_superio_fdc(0x370))
ret=0;
+ if (!smc_superio_fdc(0xe0))
+ ret=0;
if (!smc_superio_lpc(0x2e))
ret=0;
if (!smc_superio_lpc(0x4e))
@@ -1229,5 +1239,7 @@ MODULE_PARM(ircc_fir, "1-4i");
MODULE_PARM_DESC(ircc_fir, "FIR Base Address");
MODULE_PARM(ircc_sir, "1-4i");
MODULE_PARM_DESC(ircc_sir, "SIR Base Address");
+MODULE_PARM(ircc_cfg, "1-4i");
+MODULE_PARM_DESC(ircc_cfg, "Configuration register base address");
#endif /* MODULE */
_______________________________________________
Linux-IrDA mailing list - [EMAIL PROTECTED]
http://www.pasta.cs.UiT.No/mailman/listinfo/linux-irda