patch against linux kernel 2.6.18 to add PCMCIA identification strings
From: Tony Olech <[email protected]>
In older versions of the linux kernel it was sufficient for the
16-bit PCMCIA card manufacturer to distribute or make available
a text configuration file along with the physical cards. Such a
file with an extension of ".conf" and placed in the /etc/pcmcia
very easily enabled new hardware without rebuilding the kernel,
however with the new scheme of things, having found no userland
solution to the problem of new 16bit pcmcia card identification
this patch enumerates Elan Digital Systems strings.
In addition, for the ID strings to result in the correct module
being loaded, the too wide matching criterion of the PDaudioCF
card needs to have the MANF_ID/CARD_ID numbers replaced by the
more specific PROD_ID1 and PROD_ID2 strings. It is unfortunate
that otherwise the pdaudiocf module is loaded whenever an ELAN
pcmcia card is inserted, resulting in various random lockups
*** linux-2.6.18/sound/pcmcia/pdaudiocf/pdaudiocf.c.orig 2006-11-20 10:24:23.000000000 +0000
--- linux-2.6.18/sound/pcmcia/pdaudiocf/pdaudiocf.c 2006-11-20 10:33:46.000000000 +0000
***************
*** 298,306 ****
/*
* Module entry points
*/
static struct pcmcia_device_id snd_pdacf_ids[] = {
! PCMCIA_DEVICE_MANF_CARD(0x015d, 0x4c45),
PCMCIA_DEVICE_NULL
};
MODULE_DEVICE_TABLE(pcmcia, snd_pdacf_ids);
--- 298,307 ----
/*
* Module entry points
*/
static struct pcmcia_device_id snd_pdacf_ids[] = {
! /* this is too general PCMCIA_DEVICE_MANF_CARD(0x015d, 0x4c45), */
! PCMCIA_DEVICE_PROD_ID12("Core Sound","PDAudio-CF",0x396d19d2,0x71717b49),
PCMCIA_DEVICE_NULL
};
MODULE_DEVICE_TABLE(pcmcia, snd_pdacf_ids);
*** linux-2.6.18/drivers/serial/serial_cs.c.orig 2006-11-17 10:59:10.000000000 +0000
--- linux-2.6.18/drivers/serial/serial_cs.c 2006-11-17 10:59:54.000000000 +0000
***************
*** 786,793 ****
--- 786,817 ----
PCMCIA_DEVICE_CIS_PROD_ID12("ADVANTECH", "COMpad-32/85B-4", 0x96913a85, 0xcec8f102, "COMpad4.cis"),
PCMCIA_DEVICE_CIS_PROD_ID123("ADVANTECH", "COMpad-32/85", "1.0", 0x96913a85, 0x8fbe92ae, 0x0877b627, "COMpad2.cis"),
PCMCIA_DEVICE_CIS_PROD_ID2("RS-COM 2P", 0xad20b156, "RS-COM-2P.cis"),
PCMCIA_DEVICE_CIS_MANF_CARD(0x0013, 0x0000, "GLOBETROTTER.cis"),
+ PCMCIA_DEVICE_PROD_ID12("ELAN DIGITAL SYSTEMS LTD, c1997.","SERIAL CARD: SL100 1.00.",0x19ca78af,0xf964f42b),
+ PCMCIA_DEVICE_PROD_ID12("ELAN DIGITAL SYSTEMS LTD, c1997.","SERIAL CARD: SL100",0x19ca78af,0x71d98e83),
+ PCMCIA_DEVICE_PROD_ID12("ELAN DIGITAL SYSTEMS LTD, c1997.","SERIAL CARD: SL232 1.00.",0x19ca78af,0x69fb7490),
+ PCMCIA_DEVICE_PROD_ID12("ELAN DIGITAL SYSTEMS LTD, c1997.","SERIAL CARD: SL232",0x19ca78af,0xb6bc0235),
+ PCMCIA_DEVICE_PROD_ID12("ELAN DIGITAL SYSTEMS LTD, c2000.","SERIAL CARD: CF232",0x63f2e0bd,0xb9e175d3),
+ PCMCIA_DEVICE_PROD_ID12("ELAN DIGITAL SYSTEMS LTD, c2000.","SERIAL CARD: CF232-5",0x63f2e0bd,0xfce33442),
+ PCMCIA_DEVICE_PROD_ID12("Elan","Serial Port: CF232",0x3beb8cf2,0x171e7190),
+ PCMCIA_DEVICE_PROD_ID12("Elan","Serial Port: CF232-5",0x3beb8cf2,0x20da4262),
+ PCMCIA_DEVICE_PROD_ID12("Elan","Serial Port: CF428",0x3beb8cf2,0xea5dd57d),
+ PCMCIA_DEVICE_PROD_ID12("Elan","Serial Port: CF500",0x3beb8cf2,0xd77255fa),
+ PCMCIA_DEVICE_PROD_ID12("Elan","Serial Port: IC232",0x3beb8cf2,0x6a709903),
+ PCMCIA_DEVICE_PROD_ID12("Elan","Serial Port: SL232",0x3beb8cf2,0x18430676),
+ PCMCIA_DEVICE_PROD_ID12("Elan","Serial Port: XL232",0x3beb8cf2,0x6f933767),
+ PCMCIA_MFC_DEVICE_PROD_ID12(0,"Elan","Serial Port: CF332",0x3beb8cf2,0x16dc1ba7),
+ PCMCIA_MFC_DEVICE_PROD_ID12(0,"Elan","Serial Port: SL332",0x3beb8cf2,0x19816c41),
+ PCMCIA_MFC_DEVICE_PROD_ID12(0,"Elan","Serial Port: SL385",0x3beb8cf2,0x64112029),
+ PCMCIA_MFC_DEVICE_PROD_ID12(0,"Elan","Serial Port: SL432",0x3beb8cf2,0x1cce7ac4),
+ PCMCIA_MFC_DEVICE_PROD_ID12(0,"Elan","Serial+Parallel Port: SP230",0x3beb8cf2,0xdb9e58bc),
+ PCMCIA_MFC_DEVICE_PROD_ID12(1,"Elan","Serial Port: CF332",0x3beb8cf2,0x16dc1ba7),
+ PCMCIA_MFC_DEVICE_PROD_ID12(1,"Elan","Serial Port: SL332",0x3beb8cf2,0x19816c41),
+ PCMCIA_MFC_DEVICE_PROD_ID12(1,"Elan","Serial Port: SL385",0x3beb8cf2,0x64112029),
+ PCMCIA_MFC_DEVICE_PROD_ID12(1,"Elan","Serial Port: SL432",0x3beb8cf2,0x1cce7ac4),
+ PCMCIA_MFC_DEVICE_PROD_ID12(2,"Elan","Serial Port: SL432",0x3beb8cf2,0x1cce7ac4),
+ PCMCIA_MFC_DEVICE_PROD_ID12(3,"Elan","Serial Port: SL432",0x3beb8cf2,0x1cce7ac4),
/* too generic */
/* PCMCIA_MFC_DEVICE_MANF_CARD(0, 0x0160, 0x0002), */
/* PCMCIA_MFC_DEVICE_MANF_CARD(1, 0x0160, 0x0002), */
PCMCIA_DEVICE_FUNC_ID(2),
*** linux-2.6.18/drivers/parport/parport_cs.c.orig 2006-11-17 10:57:55.000000000 +0000
--- linux-2.6.18/drivers/parport/parport_cs.c 2006-11-17 10:58:52.000000000 +0000
***************
*** 262,269 ****
--- 262,270 ----
static struct pcmcia_device_id parport_ids[] = {
PCMCIA_DEVICE_FUNC_ID(3),
+ PCMCIA_MFC_DEVICE_PROD_ID12(1,"Elan","Serial+Parallel Port: SP230",0x3beb8cf2,0xdb9e58bc),
PCMCIA_DEVICE_MANF_CARD(0x0137, 0x0003),
PCMCIA_DEVICE_NULL
};
MODULE_DEVICE_TABLE(pcmcia, parport_ids);
Hi,
> a card is inserted, resulting in various random lockups
>
> *** linux-2.6.18/sound/pcmcia/pdaudiocf/pdaudiocf.c.orig 2006-11-20 10:24:23.000000000 +0000
> --- linux-2.6.18/sound/pcmcia/pdaudiocf/pdaudiocf.c 2006-11-20 10:33:46.000000000 +0000
> ***************
> *** 298,306 ****
> /*
> * Module entry points
> */
> static struct pcmcia_device_id snd_pdacf_ids[] = {
> ! PCMCIA_DEVICE_MANF_CARD(0x015d, 0x4c45),
please use the "-u" option for diff; that's the preferred (only) form
the Linux kernel folks are used to looking at diffs, and applying them.
Also, it's very helpful and customary to also pass the "-p" option (this
improves the context so that reviews are easier)
would you mind redoing the diff and then resending it?
Thanks!
--
if you want to mail me at work (you don't), use arjan (at) linux.intel.com
Test the interaction between Linux and your BIOS via http://www.linuxfirmwarekit.org
On Mon, Nov 20, 2006 at 11:17:15AM +0000, Tony Olech wrote:
> In older versions of the linux kernel it was sufficient for the
> 16-bit PCMCIA card manufacturer to distribute or make available
> a text configuration file along with the physical cards. Such a
> file with an extension of ".conf" and placed in the /etc/pcmcia
> very easily enabled new hardware without rebuilding the kernel,
> however with the new scheme of things, having found no userland
> solution to the problem of new 16bit pcmcia card identification
> this patch enumerates Elan Digital Systems strings.
> *** linux-2.6.18/drivers/serial/serial_cs.c.orig 2006-11-17 10:59:10.000000000 +0000
> --- linux-2.6.18/drivers/serial/serial_cs.c 2006-11-17 10:59:54.000000000 +0000
> ***************
> *** 786,793 ****
> --- 786,817 ----
> PCMCIA_DEVICE_CIS_PROD_ID12("ADVANTECH", "COMpad-32/85B-4", 0x96913a85, 0xcec8f102, "COMpad4.cis"),
> PCMCIA_DEVICE_CIS_PROD_ID123("ADVANTECH", "COMpad-32/85", "1.0", 0x96913a85, 0x8fbe92ae, 0x0877b627, "COMpad2.cis"),
> PCMCIA_DEVICE_CIS_PROD_ID2("RS-COM 2P", 0xad20b156, "RS-COM-2P.cis"),
> PCMCIA_DEVICE_CIS_MANF_CARD(0x0013, 0x0000, "GLOBETROTTER.cis"),
> + PCMCIA_DEVICE_PROD_ID12("ELAN DIGITAL SYSTEMS LTD, c1997.","SERIAL CARD: SL100 1.00.",0x19ca78af,0xf964f42b),
> + PCMCIA_DEVICE_PROD_ID12("ELAN DIGITAL SYSTEMS LTD, c1997.","SERIAL CARD: SL100",0x19ca78af,0x71d98e83),
> + PCMCIA_DEVICE_PROD_ID12("ELAN DIGITAL SYSTEMS LTD, c1997.","SERIAL CARD: SL232 1.00.",0x19ca78af,0x69fb7490),
> + PCMCIA_DEVICE_PROD_ID12("ELAN DIGITAL SYSTEMS LTD, c1997.","SERIAL CARD: SL232",0x19ca78af,0xb6bc0235),
> + PCMCIA_DEVICE_PROD_ID12("ELAN DIGITAL SYSTEMS LTD, c2000.","SERIAL CARD: CF232",0x63f2e0bd,0xb9e175d3),
> + PCMCIA_DEVICE_PROD_ID12("ELAN DIGITAL SYSTEMS LTD, c2000.","SERIAL CARD: CF232-5",0x63f2e0bd,0xfce33442),
> + PCMCIA_DEVICE_PROD_ID12("Elan","Serial Port: CF232",0x3beb8cf2,0x171e7190),
> + PCMCIA_DEVICE_PROD_ID12("Elan","Serial Port: CF232-5",0x3beb8cf2,0x20da4262),
> + PCMCIA_DEVICE_PROD_ID12("Elan","Serial Port: CF428",0x3beb8cf2,0xea5dd57d),
> + PCMCIA_DEVICE_PROD_ID12("Elan","Serial Port: CF500",0x3beb8cf2,0xd77255fa),
> + PCMCIA_DEVICE_PROD_ID12("Elan","Serial Port: IC232",0x3beb8cf2,0x6a709903),
> + PCMCIA_DEVICE_PROD_ID12("Elan","Serial Port: SL232",0x3beb8cf2,0x18430676),
> + PCMCIA_DEVICE_PROD_ID12("Elan","Serial Port: XL232",0x3beb8cf2,0x6f933767),
> + PCMCIA_MFC_DEVICE_PROD_ID12(0,"Elan","Serial Port: CF332",0x3beb8cf2,0x16dc1ba7),
> + PCMCIA_MFC_DEVICE_PROD_ID12(0,"Elan","Serial Port: SL332",0x3beb8cf2,0x19816c41),
> + PCMCIA_MFC_DEVICE_PROD_ID12(0,"Elan","Serial Port: SL385",0x3beb8cf2,0x64112029),
> + PCMCIA_MFC_DEVICE_PROD_ID12(0,"Elan","Serial Port: SL432",0x3beb8cf2,0x1cce7ac4),
> + PCMCIA_MFC_DEVICE_PROD_ID12(0,"Elan","Serial+Parallel Port: SP230",0x3beb8cf2,0xdb9e58bc),
> + PCMCIA_MFC_DEVICE_PROD_ID12(1,"Elan","Serial Port: CF332",0x3beb8cf2,0x16dc1ba7),
> + PCMCIA_MFC_DEVICE_PROD_ID12(1,"Elan","Serial Port: SL332",0x3beb8cf2,0x19816c41),
> + PCMCIA_MFC_DEVICE_PROD_ID12(1,"Elan","Serial Port: SL385",0x3beb8cf2,0x64112029),
> + PCMCIA_MFC_DEVICE_PROD_ID12(1,"Elan","Serial Port: SL432",0x3beb8cf2,0x1cce7ac4),
> + PCMCIA_MFC_DEVICE_PROD_ID12(2,"Elan","Serial Port: SL432",0x3beb8cf2,0x1cce7ac4),
> + PCMCIA_MFC_DEVICE_PROD_ID12(3,"Elan","Serial Port: SL432",0x3beb8cf2,0x1cce7ac4),
Shouldn't these be matched by the function ID? Show the full output
of cardctl ident (or whatever the pcmcia-utils equivalent is).
--
Russell King
Linux kernel 2.6 ARM Linux - http://www.arm.linux.org.uk/
maintainer of: 2.6 Serial core
Hi,
The strings came from our company product database.
I do not have the time to track down examples of each
varient, but here are the two I have been testing with:
Socket 0:
product info: "Elan", "Serial+Parallel Port: SP230", "1.00",
"KIT:K51477-006 "
manfid: 0x015d, 0x4c45
function: 2 (serial)
Socket 1:
product info: "Elan", "Serial Port: SL332", "1.01", "KIT:K51520-027
"
manfid: 0x015d, 0x4c45
function: 2 (serial)
AND NO, matching on function ID just randomly locked up the
kernel, but now I think that was because of the "pdaudiocf"
module and its MANF_ID/CARD_ID number matching.
Tony Olech
Elan Digital Systems Limited
-----------------------------------------------------------------
On Mon, 2006-11-20 at 13:02 +0000, Russell King wrote:
> On Mon, Nov 20, 2006 at 11:17:15AM +0000, Tony Olech wrote:
> > In older versions of the linux kernel it was sufficient for the
> > 16-bit PCMCIA card manufacturer to distribute or make available
> > a text configuration file along with the physical cards. Such a
> > file with an extension of ".conf" and placed in the /etc/pcmcia
> > very easily enabled new hardware without rebuilding the kernel,
> > however with the new scheme of things, having found no userland
> > solution to the problem of new 16bit pcmcia card identification
> > this patch enumerates Elan Digital Systems strings.
>
> > *** linux-2.6.18/drivers/serial/serial_cs.c.orig 2006-11-17 10:59:10.000000000 +0000
> > --- linux-2.6.18/drivers/serial/serial_cs.c 2006-11-17 10:59:54.000000000 +0000
> > ***************
> > *** 786,793 ****
> > --- 786,817 ----
> > PCMCIA_DEVICE_CIS_PROD_ID12("ADVANTECH", "COMpad-32/85B-4", 0x96913a85, 0xcec8f102, "COMpad4.cis"),
> > PCMCIA_DEVICE_CIS_PROD_ID123("ADVANTECH", "COMpad-32/85", "1.0", 0x96913a85, 0x8fbe92ae, 0x0877b627, "COMpad2.cis"),
> > PCMCIA_DEVICE_CIS_PROD_ID2("RS-COM 2P", 0xad20b156, "RS-COM-2P.cis"),
> > PCMCIA_DEVICE_CIS_MANF_CARD(0x0013, 0x0000, "GLOBETROTTER.cis"),
> > + PCMCIA_DEVICE_PROD_ID12("ELAN DIGITAL SYSTEMS LTD, c1997.","SERIAL CARD: SL100 1.00.",0x19ca78af,0xf964f42b),
> > + PCMCIA_DEVICE_PROD_ID12("ELAN DIGITAL SYSTEMS LTD, c1997.","SERIAL CARD: SL100",0x19ca78af,0x71d98e83),
> > + PCMCIA_DEVICE_PROD_ID12("ELAN DIGITAL SYSTEMS LTD, c1997.","SERIAL CARD: SL232 1.00.",0x19ca78af,0x69fb7490),
> > + PCMCIA_DEVICE_PROD_ID12("ELAN DIGITAL SYSTEMS LTD, c1997.","SERIAL CARD: SL232",0x19ca78af,0xb6bc0235),
> > + PCMCIA_DEVICE_PROD_ID12("ELAN DIGITAL SYSTEMS LTD, c2000.","SERIAL CARD: CF232",0x63f2e0bd,0xb9e175d3),
> > + PCMCIA_DEVICE_PROD_ID12("ELAN DIGITAL SYSTEMS LTD, c2000.","SERIAL CARD: CF232-5",0x63f2e0bd,0xfce33442),
> > + PCMCIA_DEVICE_PROD_ID12("Elan","Serial Port: CF232",0x3beb8cf2,0x171e7190),
> > + PCMCIA_DEVICE_PROD_ID12("Elan","Serial Port: CF232-5",0x3beb8cf2,0x20da4262),
> > + PCMCIA_DEVICE_PROD_ID12("Elan","Serial Port: CF428",0x3beb8cf2,0xea5dd57d),
> > + PCMCIA_DEVICE_PROD_ID12("Elan","Serial Port: CF500",0x3beb8cf2,0xd77255fa),
> > + PCMCIA_DEVICE_PROD_ID12("Elan","Serial Port: IC232",0x3beb8cf2,0x6a709903),
> > + PCMCIA_DEVICE_PROD_ID12("Elan","Serial Port: SL232",0x3beb8cf2,0x18430676),
> > + PCMCIA_DEVICE_PROD_ID12("Elan","Serial Port: XL232",0x3beb8cf2,0x6f933767),
> > + PCMCIA_MFC_DEVICE_PROD_ID12(0,"Elan","Serial Port: CF332",0x3beb8cf2,0x16dc1ba7),
> > + PCMCIA_MFC_DEVICE_PROD_ID12(0,"Elan","Serial Port: SL332",0x3beb8cf2,0x19816c41),
> > + PCMCIA_MFC_DEVICE_PROD_ID12(0,"Elan","Serial Port: SL385",0x3beb8cf2,0x64112029),
> > + PCMCIA_MFC_DEVICE_PROD_ID12(0,"Elan","Serial Port: SL432",0x3beb8cf2,0x1cce7ac4),
> > + PCMCIA_MFC_DEVICE_PROD_ID12(0,"Elan","Serial+Parallel Port: SP230",0x3beb8cf2,0xdb9e58bc),
> > + PCMCIA_MFC_DEVICE_PROD_ID12(1,"Elan","Serial Port: CF332",0x3beb8cf2,0x16dc1ba7),
> > + PCMCIA_MFC_DEVICE_PROD_ID12(1,"Elan","Serial Port: SL332",0x3beb8cf2,0x19816c41),
> > + PCMCIA_MFC_DEVICE_PROD_ID12(1,"Elan","Serial Port: SL385",0x3beb8cf2,0x64112029),
> > + PCMCIA_MFC_DEVICE_PROD_ID12(1,"Elan","Serial Port: SL432",0x3beb8cf2,0x1cce7ac4),
> > + PCMCIA_MFC_DEVICE_PROD_ID12(2,"Elan","Serial Port: SL432",0x3beb8cf2,0x1cce7ac4),
> > + PCMCIA_MFC_DEVICE_PROD_ID12(3,"Elan","Serial Port: SL432",0x3beb8cf2,0x1cce7ac4),
>
> Shouldn't these be matched by the function ID? Show the full output
> of cardctl ident (or whatever the pcmcia-utils equivalent is).
>
On Mon, Nov 20, 2006 at 02:23:02PM +0000, Tony Olech wrote:
> Hi,
> The strings came from our company product database.
> I do not have the time to track down examples of each
> varient, but here are the two I have been testing with:
>
> Socket 0:
> product info: "Elan", "Serial+Parallel Port: SP230", "1.00",
> "KIT:K51477-006 "
> manfid: 0x015d, 0x4c45
> function: 2 (serial)
>
> Socket 1:
> product info: "Elan", "Serial Port: SL332", "1.01", "KIT:K51520-027
> "
> manfid: 0x015d, 0x4c45
> function: 2 (serial)
>
> AND NO, matching on function ID just randomly locked up the
> kernel, but now I think that was because of the "pdaudiocf"
> module and its MANF_ID/CARD_ID number matching.
The obvious question is - if you only remove the IDs from pdaudiocf, does
it then work?
--
Russell King
Linux kernel 2.6 ARM Linux - http://www.arm.linux.org.uk/
maintainer of: 2.6 Serial core
Hi Russell,
if I take out the patches to parport_cs and serial_cs,
leaving in only the patch to "pdaudiocf" our SP230 card
no longer works - it does not lock up the kernel, admittedly,
and the serial only card does works, but we would like
all are cards to just work.
ALSO, I have found no way to force a particular 16-bit
pcmcia card to be handled by a particular module in a
similar way to the USB generic serial driver module
parameter. Have I misssed the obvious? Or is that a
desirable feature that have been taken out of the David
Hinds original implementation?
Tony Olech
Elan Digital Systems Limited
----------------------------------------------------------
On Mon, 2006-11-20 at 15:29 +0000, Russell King wrote:
> On Mon, Nov 20, 2006 at 02:23:02PM +0000, Tony Olech wrote:
> > Hi,
> > The strings came from our company product database.
> > I do not have the time to track down examples of each
> > varient, but here are the two I have been testing with:
> >
> > Socket 0:
> > product info: "Elan", "Serial+Parallel Port: SP230", "1.00",
> > "KIT:K51477-006 "
> > manfid: 0x015d, 0x4c45
> > function: 2 (serial)
> >
> > Socket 1:
> > product info: "Elan", "Serial Port: SL332", "1.01", "KIT:K51520-027
> > "
> > manfid: 0x015d, 0x4c45
> > function: 2 (serial)
> >
> > AND NO, matching on function ID just randomly locked up the
> > kernel, but now I think that was because of the "pdaudiocf"
> > module and its MANF_ID/CARD_ID number matching.
>
> The obvious question is - if you only remove the IDs from pdaudiocf, does
> it then work?
>
On Mon, Nov 20, 2006 at 04:51:48PM +0000, Tony Olech wrote:
> Hi Russell,
> if I take out the patches to parport_cs and serial_cs,
> leaving in only the patch to "pdaudiocf" our SP230 card
> no longer works - it does not lock up the kernel, admittedly,
> and the serial only card does works, but we would like
> all are cards to just work.
Sounds like function ID matching is broken. Dominik?
> ALSO, I have found no way to force a particular 16-bit
> pcmcia card to be handled by a particular module in a
> similar way to the USB generic serial driver module
> parameter. Have I misssed the obvious? Or is that a
> desirable feature that have been taken out of the David
> Hinds original implementation?
Again, Dominik's area of expertise.
--
Russell King
Linux kernel 2.6 ARM Linux - http://www.arm.linux.org.uk/
maintainer of: 2.6 Serial core
Note that the SP230 is a special case (multifunction serial+parallel).
You should look at the CIS for that card; it might not have a serial
function code at all.
-- Dave
On 11/20/06, Russell King <[email protected]> wrote:
> On Mon, Nov 20, 2006 at 04:51:48PM +0000, Tony Olech wrote:
> > Hi Russell,
> > if I take out the patches to parport_cs and serial_cs,
> > leaving in only the patch to "pdaudiocf" our SP230 card
> > no longer works - it does not lock up the kernel, admittedly,
> > and the serial only card does works, but we would like
> > all are cards to just work.
>
> Sounds like function ID matching is broken. Dominik?
>
> > ALSO, I have found no way to force a particular 16-bit
> > pcmcia card to be handled by a particular module in a
> > similar way to the USB generic serial driver module
> > parameter. Have I misssed the obvious? Or is that a
> > desirable feature that have been taken out of the David
> > Hinds original implementation?
>
> Again, Dominik's area of expertise.
>
> --
> Russell King
> Linux kernel 2.6 ARM Linux - http://www.arm.linux.org.uk/
> maintainer of: 2.6 Serial core
>
On Mon, Nov 20, 2006 at 05:27:31PM +0000, Russell King wrote:
> On Mon, Nov 20, 2006 at 04:51:48PM +0000, Tony Olech wrote:
> > Hi Russell,
> > if I take out the patches to parport_cs and serial_cs,
> > leaving in only the patch to "pdaudiocf" our SP230 card
> > no longer works - it does not lock up the kernel, admittedly,
> > and the serial only card does works, but we would like
> > all are cards to just work.
>
> Sounds like function ID matching is broken. Dominik?
No, it isn't -- it is a multifunction card, and these require special
care (i.e. manf_id / prod_id matches). If func_id says "multifunction", that
does not say anything about which drivers to use...
Thanks,
Dominik