On Tue, Nov 2, 2010 at 3:53 AM, Bond <[email protected]> wrote:
>
> Hi,
> can any one tell me how is following type of structure defined?
>
> static DEFINE_PCI_DEVICE_TABLE(rtl8139_pci_tbl) = {
> {0x10ec, 0x8139, PCI_ANY_ID, PCI_ANY_ID, 0, 0, RTL8139 },
> {0x10ec, 0x8138, PCI_ANY_ID, PCI_ANY_ID, 0, 0, RTL8139 },
> {0x1113, 0x1211, PCI_ANY_ID, PCI_ANY_ID, 0, 0, RTL8139 },
> {0x1500, 0x1360, PCI_ANY_ID, PCI_ANY_ID, 0, 0, RTL8139 },
> {0x4033, 0x1360, PCI_ANY_ID, PCI_ANY_ID, 0, 0, RTL8139 },
> {0x1186, 0x1300, PCI_ANY_ID, PCI_ANY_ID, 0, 0, RTL8139 },
> {0x1186, 0x1340, PCI_ANY_ID, PCI_ANY_ID, 0, 0, RTL8139 },
>
> What do these 0x1186 and PCI_ANY_ID etc mean in above type of
0x1186 = vendor id
PCI_ANY_ID = subvendor and subdevice in this case is a wildcard these
values are hardly used
>
> structure also this type of definition of a structure where {},{} is
> used I am not clear with this approach.
It is an array of static pci_device_id structures each {} is one
element/struct of the array.
Normally, there is one struct in the array per device which this
driver is registered to bind to.
---
John
--
To unsubscribe from this list: send an email with
"unsubscribe kernelnewbies" to [email protected]
Please read the FAQ at http://kernelnewbies.org/FAQ