Messages in this thread | | | Date | Tue, 24 Apr 2001 09:46:47 -0400 | From | Jeff Garzik <> | Subject | Re: serial driver not properly detecting modem |
| |
Alan Cox wrote: > > > I've fixed this here merely by adding an entry to the PCI table of > > serial.c for PCI_CLASS_COMMUNICATION_OTHER. Is this the best way to fix > > this? Is there some reason that this shouldn't be done in general? If > > not, I'd like to see it fix in the kernel proper. > > Most class other devices wont be 16x50 compatible.
winmodems are class other
> > It should be noted that the modem is listed in serial.c's pci_boards, > > perhaps it would be best for the serial driver to list PCI_ID_ANY for a > > class, and only use pci_boards to further identify serial ports? Or > > would this be too inefficient to correct for a few misguided hardware > > makers? > > Probably serial.c should look for class serial || (class_other && in table)
no need to consider class other at all, since there are so many exceptions. Build the serial.c pci table like
board 1 board 2 board 3 class 1 class 2 class 3
Special cases go before the classes. A 16x50 compatible class other is definitely a special case...
On a side note, an outstanding to-do item for the serial driver is to move its huge honkin' custom PCI table into the pci_device_id standard table. The pci_device_id::driver_data member would then become an index into the smaller custom PCI table.
-- Jeff Garzik | The difference between America and England is that Building 1024 | the English think 100 miles is a long distance and MandrakeSoft | the Americans think 100 years is a long time. | (random fortune) - 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/
| |