aboutsummaryrefslogtreecommitdiff
path: root/sys/dev/cxgb
diff options
context:
space:
mode:
authorWarner Losh <imp@FreeBSD.org>2018-09-26 17:12:30 +0000
committerWarner Losh <imp@FreeBSD.org>2018-09-26 17:12:30 +0000
commit0dc34160f3241087ca7d0485f0ba3813406d04ca (patch)
tree1ee058eb854bad3317a3c38184fe013790576a52 /sys/dev/cxgb
parent329e817fcc97aa847765c5171cc89a81a0b25527 (diff)
downloadsrc-0dc34160f3241087ca7d0485f0ba3813406d04ca.tar.gz
src-0dc34160f3241087ca7d0485f0ba3813406d04ca.zip
Add PNP info to PCI attachments of cbb, cxgb, ida, iwn, ixl, ixlv,
mfi, mps, mpr, mvs, my, oce, pcn, ral, rl. This only labels existing pci device tables, and has no probe / attach code changes. Reviewed by: imp, chuck Submitted by: Lakhan Shiva Kamireddy <lakhanshiva@gmail.com> Sponsored by: Google, Inc. (GSoC 2018) Approved by: re (glen)
Notes
Notes: svn path=/head/; revision=338949
Diffstat (limited to 'sys/dev/cxgb')
-rw-r--r--sys/dev/cxgb/cxgb_main.c49
1 files changed, 26 insertions, 23 deletions
diff --git a/sys/dev/cxgb/cxgb_main.c b/sys/dev/cxgb/cxgb_main.c
index 127a61d61c21..a47aa909c237 100644
--- a/sys/dev/cxgb/cxgb_main.c
+++ b/sys/dev/cxgb/cxgb_main.c
@@ -133,6 +133,30 @@ static void cxgb_update_mac_settings(struct port_info *p);
static int toe_capability(struct port_info *, int);
#endif
+/* Table for probing the cards. The desc field isn't actually used */
+struct cxgb_ident {
+ uint16_t vendor;
+ uint16_t device;
+ int index;
+ char *desc;
+} cxgb_identifiers[] = {
+ {PCI_VENDOR_ID_CHELSIO, 0x0020, 0, "PE9000"},
+ {PCI_VENDOR_ID_CHELSIO, 0x0021, 1, "T302E"},
+ {PCI_VENDOR_ID_CHELSIO, 0x0022, 2, "T310E"},
+ {PCI_VENDOR_ID_CHELSIO, 0x0023, 3, "T320X"},
+ {PCI_VENDOR_ID_CHELSIO, 0x0024, 1, "T302X"},
+ {PCI_VENDOR_ID_CHELSIO, 0x0025, 3, "T320E"},
+ {PCI_VENDOR_ID_CHELSIO, 0x0026, 2, "T310X"},
+ {PCI_VENDOR_ID_CHELSIO, 0x0030, 2, "T3B10"},
+ {PCI_VENDOR_ID_CHELSIO, 0x0031, 3, "T3B20"},
+ {PCI_VENDOR_ID_CHELSIO, 0x0032, 1, "T3B02"},
+ {PCI_VENDOR_ID_CHELSIO, 0x0033, 4, "T3B04"},
+ {PCI_VENDOR_ID_CHELSIO, 0x0035, 6, "T3C10"},
+ {PCI_VENDOR_ID_CHELSIO, 0x0036, 3, "S320E-CR"},
+ {PCI_VENDOR_ID_CHELSIO, 0x0037, 7, "N320E-G2"},
+ {0, 0, 0, NULL}
+};
+
static device_method_t cxgb_controller_methods[] = {
DEVMETHOD(device_probe, cxgb_controller_probe),
DEVMETHOD(device_attach, cxgb_controller_attach),
@@ -151,6 +175,8 @@ static int cxgbc_mod_event(module_t, int, void *);
static devclass_t cxgb_controller_devclass;
DRIVER_MODULE(cxgbc, pci, cxgb_controller_driver, cxgb_controller_devclass,
cxgbc_mod_event, 0);
+MODULE_PNP_INFO("U16:vendor;U16:device", pci, cxgbc, cxgb_identifiers,
+ nitems(cxgb_identifiers) - 1);
MODULE_VERSION(cxgbc, 1);
MODULE_DEPEND(cxgbc, firmware, 1, 1, 1);
@@ -280,29 +306,6 @@ enum { FILTER_NO_VLAN_PRI = 7 };
#define PORT_MASK ((1 << MAX_NPORTS) - 1)
-/* Table for probing the cards. The desc field isn't actually used */
-struct cxgb_ident {
- uint16_t vendor;
- uint16_t device;
- int index;
- char *desc;
-} cxgb_identifiers[] = {
- {PCI_VENDOR_ID_CHELSIO, 0x0020, 0, "PE9000"},
- {PCI_VENDOR_ID_CHELSIO, 0x0021, 1, "T302E"},
- {PCI_VENDOR_ID_CHELSIO, 0x0022, 2, "T310E"},
- {PCI_VENDOR_ID_CHELSIO, 0x0023, 3, "T320X"},
- {PCI_VENDOR_ID_CHELSIO, 0x0024, 1, "T302X"},
- {PCI_VENDOR_ID_CHELSIO, 0x0025, 3, "T320E"},
- {PCI_VENDOR_ID_CHELSIO, 0x0026, 2, "T310X"},
- {PCI_VENDOR_ID_CHELSIO, 0x0030, 2, "T3B10"},
- {PCI_VENDOR_ID_CHELSIO, 0x0031, 3, "T3B20"},
- {PCI_VENDOR_ID_CHELSIO, 0x0032, 1, "T3B02"},
- {PCI_VENDOR_ID_CHELSIO, 0x0033, 4, "T3B04"},
- {PCI_VENDOR_ID_CHELSIO, 0x0035, 6, "T3C10"},
- {PCI_VENDOR_ID_CHELSIO, 0x0036, 3, "S320E-CR"},
- {PCI_VENDOR_ID_CHELSIO, 0x0037, 7, "N320E-G2"},
- {0, 0, 0, NULL}
-};
static int set_eeprom(struct port_info *pi, const uint8_t *data, int len, int offset);