Messages in this thread Patch in this message | | | Date | 5 Jun 2007 13:04:07 -0000 | Subject | RE: 2.6.22-rc: regression: no irda0 interface (2.6.21 was OK), smsc does not find chip | From | "Samuel Ortiz" <> |
| |
On 6/5/2007, "Linus Walleij (LD/EAB)" <linus.walleij@ericsson.com> wrote:
>Sam wrote: > >> Andrey, in addition to Bjorn's patch, could you also apply >> this one and try again: >> >> diff --git a/drivers/net/irda/smsc-ircc2.c >> b/drivers/net/irda/smsc-ircc2.c index 31c6233..800562a 100644 >> --- a/drivers/net/irda/smsc-ircc2.c >> +++ b/drivers/net/irda/smsc-ircc2.c >> @@ -2463,7 +2463,7 @@ static struct >> smsc_ircc_subsystem_configuration subsystem_ >> .subvendor = 0x1179, >> .subdevice = 0xffff, /* 0xffff is "any" */ >> .sir_io = 0x02e8, >> - .fir_io = 0x02f8, >> + .fir_io = 0x100, > >You don't need to alter the defaults for the Toshiba ALi, the >preconfigure will respect the settings from the commandline, >e.g. modprobe smsc-ircc2 ircc_fir=0x100,ircc_sir=0x02e8. True, that's faster.
>BUT this value just won't work: we don't know how to tell the ALi 1533 >to use any other ports than 0x130,0x178,0x03f8,0x02f8 or 0x02e8. Oh, that's right. I didn't look carefully enough at preconfigure_ali_port()...
>The code in preconfigure_ali_port() is from the smscinit tool >and I have no idea of how that was initially developed (reverse >engineering likely). Since 0x0130 and 0x170 seem to be the same setting, >0x100 could be equal to one of the others as well so I would >try feeding some different ircc_fir=x settings and see what happens. From the PnP output that Andrey sent, it seems that 0x130 might work. If not, I guess it's worth trying at 0x100 while assuming it's the same register setting as 0x130 or 0x178, so basically applying this patch on top of Bjorn's one:
diff --git a/drivers/net/irda/smsc-ircc2.c b/drivers/net/irda/smsc-ircc2.c index 31c6233..0657228 100644 --- a/drivers/net/irda/smsc-ircc2.c +++ b/drivers/net/irda/smsc-ircc2.c @@ -2742,6 +2742,7 @@ static void __init preconfigure_ali_port(struct pci_dev *d unsigned char tmpbyte;
switch(port) { + case 0x0100: case 0x0130: case 0x0178: reg = 0xb0; and then a modprobe smsc-ircc2 ircc_fir=0x100,ircc_sir=0x02e8
Cheers, Samuel. - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |