Add the 3COM ID's that I could find in the pccarddevs file that seemed

to match the pccard.conf file.  There are more ID's that need adding, but
these seem to be the common ones.

This was committed on an ep0 interface under NEWCARD:
ep0: <3Com 3c589 10Mbps Ethernet> at port 0x300-0x30f irq 9 function 0 config 1 on pccard1
ep0: Ethernet address 00:10:4b:df:48:57

Reviewed by: imp
This commit is contained in:
Peter Wemm 2001-01-07 21:24:41 +00:00
parent 32e278a63d
commit ce1c1e5def
Notes: svn2git 2020-12-20 02:59:44 +00:00
svn path=/head/; revision=70765

View File

@ -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;
}