From dd68ef1623f564db807ac31917bec24b61990750 Mon Sep 17 00:00:00 2001 From: Peter Wemm Date: Mon, 6 Sep 1999 06:15:18 +0000 Subject: [PATCH] Recognise the new 82559 chip id as used on the InBusiness 10/100 adapter. I have an 82559 card with the same id as the other 8255[78] chips, but that was made with a date code of 0699 (June 99). The submitter shows this working with the probe etc, but doesn't actually say it works as on the ethernet. :-) Assuming it does, this is a RELENG_3 merge candidate. Submitted by: Steven E Lumos --- sys/dev/fxp/if_fxp.c | 5 +++++ sys/dev/fxp/if_fxpreg.h | 3 ++- sys/pci/if_fxp.c | 5 +++++ sys/pci/if_fxpreg.h | 3 ++- 4 files changed, 14 insertions(+), 2 deletions(-) diff --git a/sys/dev/fxp/if_fxp.c b/sys/dev/fxp/if_fxp.c index ee97515fc158..84cabd2fae85 100644 --- a/sys/dev/fxp/if_fxp.c +++ b/sys/dev/fxp/if_fxp.c @@ -506,6 +506,11 @@ fxp_probe(device_t dev) device_set_desc(dev, "Intel EtherExpress Pro 10/100B Ethernet"); return 0; } + if ((pci_get_vendor(dev) == FXP_VENDORID_INTEL) && + (pci_get_device(dev) == FXP_DEVICEID_i82559)) { + device_set_desc(dev, "Intel InBusiness 10/100 Ethernet"); + return 0; + } return ENXIO; } diff --git a/sys/dev/fxp/if_fxpreg.h b/sys/dev/fxp/if_fxpreg.h index e593608f0c3b..c9fb405331e7 100644 --- a/sys/dev/fxp/if_fxpreg.h +++ b/sys/dev/fxp/if_fxpreg.h @@ -28,7 +28,8 @@ */ #define FXP_VENDORID_INTEL 0x8086 -#define FXP_DEVICEID_i82557 0x1229 +#define FXP_DEVICEID_i82557 0x1229 /* 82557 - 82559 "classic" */ +#define FXP_DEVICEID_i82559 0x1030 /* New 82559 device id.. */ #define FXP_PCI_MMBA 0x10 #define FXP_PCI_IOBA 0x14 diff --git a/sys/pci/if_fxp.c b/sys/pci/if_fxp.c index ee97515fc158..84cabd2fae85 100644 --- a/sys/pci/if_fxp.c +++ b/sys/pci/if_fxp.c @@ -506,6 +506,11 @@ fxp_probe(device_t dev) device_set_desc(dev, "Intel EtherExpress Pro 10/100B Ethernet"); return 0; } + if ((pci_get_vendor(dev) == FXP_VENDORID_INTEL) && + (pci_get_device(dev) == FXP_DEVICEID_i82559)) { + device_set_desc(dev, "Intel InBusiness 10/100 Ethernet"); + return 0; + } return ENXIO; } diff --git a/sys/pci/if_fxpreg.h b/sys/pci/if_fxpreg.h index e593608f0c3b..c9fb405331e7 100644 --- a/sys/pci/if_fxpreg.h +++ b/sys/pci/if_fxpreg.h @@ -28,7 +28,8 @@ */ #define FXP_VENDORID_INTEL 0x8086 -#define FXP_DEVICEID_i82557 0x1229 +#define FXP_DEVICEID_i82557 0x1229 /* 82557 - 82559 "classic" */ +#define FXP_DEVICEID_i82559 0x1030 /* New 82559 device id.. */ #define FXP_PCI_MMBA 0x10 #define FXP_PCI_IOBA 0x14