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