aboutsummaryrefslogtreecommitdiff
path: root/sys/dev/ep
diff options
context:
space:
mode:
authorPeter Wemm <peter@FreeBSD.org>2001-01-07 21:24:41 +0000
committerPeter Wemm <peter@FreeBSD.org>2001-01-07 21:24:41 +0000
commitce1c1e5def34e4e4a3025fd413c7629e6fb4902a (patch)
treee3f29d4780f032fa696760932c6bba69762a0ca4 /sys/dev/ep
parent32e278a63dd1bf1ce804754c7ba3674c054ee8db (diff)
Notes
Diffstat (limited to 'sys/dev/ep')
-rw-r--r--sys/dev/ep/if_ep_pccard.c22
1 files changed, 22 insertions, 0 deletions
diff --git a/sys/dev/ep/if_ep_pccard.c b/sys/dev/ep/if_ep_pccard.c
index 7f86b9424e7e..c22010bf6f92 100644
--- a/sys/dev/ep/if_ep_pccard.c
+++ b/sys/dev/ep/if_ep_pccard.c
@@ -58,6 +58,7 @@
#include "card_if.h"
#include <dev/pccard/pccardvar.h>
+#include <dev/pccard/pccarddevs.h>
static const char *ep_pccard_identify(u_short id);
@@ -239,9 +240,30 @@ ep_pccard_detach(device_t dev)
return (0);
}
+static const struct pccard_product ep_pccard_products[] = {
+ { PCCARD_STR_3COM_3C574, PCCARD_VENDOR_3COM,
+ PCCARD_PRODUCT_3COM_3C574, 0, NULL, NULL },
+ { PCCARD_STR_3COM_3C589, PCCARD_VENDOR_3COM,
+ PCCARD_PRODUCT_3COM_3C589, 0, NULL, NULL },
+ { PCCARD_STR_3COM_3CXEM556, PCCARD_VENDOR_3COM,
+ PCCARD_PRODUCT_3COM_3CXEM556, 0, NULL, NULL },
+ { PCCARD_STR_3COM_3CXEM556INT, PCCARD_VENDOR_3COM,
+ PCCARD_PRODUCT_3COM_3CXEM556INT, 0, NULL, NULL },
+ { PCCARD_STR_3COM_3CCFEM556BI, PCCARD_VENDOR_3COM,
+ PCCARD_PRODUCT_3COM_3CCFEM556BI, 0, NULL, NULL },
+ { NULL }
+};
+
static int
ep_pccard_match(device_t dev)
{
+ const struct pccard_product *pp;
+
+ if ((pp = pccard_product_lookup(dev, ep_pccard_products,
+ sizeof(ep_pccard_products[0]), NULL)) != NULL) {
+ device_set_desc(dev, pp->pp_name);
+ return 0;
+ }
return EIO;
}