diff options
| -rw-r--r-- | sys/dev/wi/if_wi.c | 34 |
1 files changed, 31 insertions, 3 deletions
diff --git a/sys/dev/wi/if_wi.c b/sys/dev/wi/if_wi.c index 5a251c1e4eff..5110290a1840 100644 --- a/sys/dev/wi/if_wi.c +++ b/sys/dev/wi/if_wi.c @@ -230,10 +230,38 @@ DRIVER_MODULE(if_wi, pccard, wi_pccard_driver, wi_devclass, 0, 0); DRIVER_MODULE(if_wi, pci, wi_pci_driver, wi_devclass, 0, 0); #endif +#define S(a, b) PCMCIA_STR_ ## a ## _ ## b +#define P(a, b) PCMCIA_PRODUCT_ ## a ## _ ## b +#define C(a, b) PCMCIA_CIS_ ## a ## _ ## b +#define Card(v, p, f) { S(v, p), PCMCIA_VENDOR_ ## v, P(v, p), f, C(v, p) } +#define Card2(v1, p1, p2, f) \ + { PCMCIA_STR_ ## p2, PCMCIA_VENDOR_ ## v1, P(v1, p1), f, \ + PCMCIA_CIS_ ## p2} + static const struct pccard_product wi_pccard_products[] = { - { PCMCIA_STR_LUCENT_WAVELAN_IEEE, PCMCIA_VENDOR_LUCENT, - PCMCIA_PRODUCT_LUCENT_WAVELAN_IEEE, 0, - PCMCIA_CIS_LUCENT_WAVELAN_IEEE }, + Card(3COM, 3CRWE737A, 0), + Card(BUFFALO, WLI_PCM_S11, 0), + Card(COMPAQ, NC5004, 0), + Card(CONTEC, FX_DS110_PCC, 0), + Card(COREGA, WIRELESS_LAN_PCC_11, 0), + Card(COREGA, WIRELESS_LAN_PCCA_11, 0), + Card(COREGA, WIRELESS_LAN_PCCB_11, 0), + Card(ELSA, XI300_IEEE, 0), + Card(ELSA, XI800_IEEE, 0), + Card(EMTAC, WLAN, 0), + Card(GEMTEK, WLAN, 0), + Card(INTEL, PRO_WLAN_2011, 0), + Card(INTERSIL, PRISM2, 0), + Card(IODATA2, WNB11PCM, 0), + Card2(LUCENT, WAVELAN_IEEE, NANOSPEED_PRISM2, 0), + Card2(LUCENT, WAVELAN_IEEE, NEC_CMZ_RT_WP, 0), + Card2(LUCENT, WAVELAN_IEEE, NTT_ME_WLAN, 0), + Card2(LUCENT, WAVELAN_IEEE, SMC_2632W, 0), + /* Must be after other LUCENT ones because it is less specific */ + Card(LUCENT, WAVELAN_IEEE, 0), + Card(SAMSUNG, SWL_2000N, 0), + Card(TDK, LAK_CD011WL, 0), + { NULL } }; static int wi_pccard_match(dev) |
