Extend Intel PRO/100 support
This commit is contained in:
parent
d84472dfc8
commit
ada4859302
@ -98,6 +98,7 @@ PRIVATE struct pcitab pcitab_fxp[]=
|
|||||||
{
|
{
|
||||||
{ 0x8086, 0x1229, 0 }, /* Intel 82557, etc. */
|
{ 0x8086, 0x1229, 0 }, /* Intel 82557, etc. */
|
||||||
{ 0x8086, 0x2449, 0 }, /* Intel 82801BA/BAM/CA/CAM */
|
{ 0x8086, 0x2449, 0 }, /* Intel 82801BA/BAM/CA/CAM */
|
||||||
|
{ 0x8086, 0x103d, 0 }, /* Intel 82801DB */
|
||||||
|
|
||||||
{ 0x0000, 0x0000, 0 }
|
{ 0x0000, 0x0000, 0 }
|
||||||
};
|
};
|
||||||
@ -210,6 +211,7 @@ fxp_t;
|
|||||||
#define FT_82557 0x1
|
#define FT_82557 0x1
|
||||||
#define FT_82558A 0x2
|
#define FT_82558A 0x2
|
||||||
#define FT_82559 0x4
|
#define FT_82559 0x4
|
||||||
|
#define FT_82801 0x8
|
||||||
|
|
||||||
static fxp_t *fxp_table;
|
static fxp_t *fxp_table;
|
||||||
phys_bytes fxp_table_phys;
|
phys_bytes fxp_table_phys;
|
||||||
@ -634,6 +636,9 @@ fxp_t *fp;
|
|||||||
case FXP_REV_82551_2: str= "82551(2)"; /* 0x10 */
|
case FXP_REV_82551_2: str= "82551(2)"; /* 0x10 */
|
||||||
fp->fxp_type= FT_82559;
|
fp->fxp_type= FT_82559;
|
||||||
break;
|
break;
|
||||||
|
case FXP_REV_82801DB: str= "82801DB"; /* 0x81 */
|
||||||
|
fp->fxp_type= FT_82801;
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
#if VERBOSE
|
#if VERBOSE
|
||||||
@ -739,6 +744,7 @@ fxp_t *fp;
|
|||||||
break;
|
break;
|
||||||
case FT_82558A:
|
case FT_82558A:
|
||||||
case FT_82559:
|
case FT_82559:
|
||||||
|
case FT_82801:
|
||||||
if (mwi)
|
if (mwi)
|
||||||
fp->fxp_conf_bytes[3] |= CCB3_MWIE;
|
fp->fxp_conf_bytes[3] |= CCB3_MWIE;
|
||||||
if (ext_stat1)
|
if (ext_stat1)
|
||||||
@ -758,6 +764,13 @@ fxp_t *fp;
|
|||||||
}
|
}
|
||||||
|
|
||||||
fp->fxp_conf_bytes[18] |= CCB18_LROK;
|
fp->fxp_conf_bytes[18] |= CCB18_LROK;
|
||||||
|
|
||||||
|
if (fp->fxp_type == FT_82801)
|
||||||
|
{
|
||||||
|
fp->fxp_conf_bytes[6] = 0xba; /* ctrl 1 */
|
||||||
|
fp->fxp_conf_bytes[15] = 0x48; /* promiscuous */
|
||||||
|
fp->fxp_conf_bytes[21] = 0x05; /* mc_all */
|
||||||
|
}
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
panic("FXP","fxp_conf_hw: bad device type", fp->fxp_type);
|
panic("FXP","fxp_conf_hw: bad device type", fp->fxp_type);
|
||||||
|
@ -24,6 +24,7 @@ Created: Nov 2004 by Philip Homburg <philip@f-mnx.phicoh.com>
|
|||||||
#define FXP_REV_82550_3 0x0E
|
#define FXP_REV_82550_3 0x0E
|
||||||
#define FXP_REV_82551_1 0x0F
|
#define FXP_REV_82551_1 0x0F
|
||||||
#define FXP_REV_82551_2 0x10
|
#define FXP_REV_82551_2 0x10
|
||||||
|
#define FXP_REV_82801DB 0x81
|
||||||
|
|
||||||
/* Control/Status Registers (CSR). The first 8 bytes are called
|
/* Control/Status Registers (CSR). The first 8 bytes are called
|
||||||
* System Control Block (SCB)
|
* System Control Block (SCB)
|
||||||
|
@ -350,7 +350,7 @@ message *mp;
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
acl[i].inuse= 1;
|
acl[i].inuse= 1;
|
||||||
if(debug)
|
if(debug > 1)
|
||||||
printf("PCI: do_acl: setting ACL for %d ('%s') at entry %d\n",
|
printf("PCI: do_acl: setting ACL for %d ('%s') at entry %d\n",
|
||||||
acl[i].acl.rsp_endpoint, acl[i].acl.rsp_label,
|
acl[i].acl.rsp_endpoint, acl[i].acl.rsp_label,
|
||||||
i);
|
i);
|
||||||
|
@ -1264,7 +1264,7 @@ PRIVATE void complete_bridges()
|
|||||||
*===========================================================================*/
|
*===========================================================================*/
|
||||||
PRIVATE void complete_bars()
|
PRIVATE void complete_bars()
|
||||||
{
|
{
|
||||||
#if 0
|
#if 1
|
||||||
int i, j, r, bar_nr, reg;
|
int i, j, r, bar_nr, reg;
|
||||||
u32_t memgap_low, memgap_high, iogap_low, iogap_high, io_high,
|
u32_t memgap_low, memgap_high, iogap_low, iogap_high, io_high,
|
||||||
base, size, v32, diff1, diff2;
|
base, size, v32, diff1, diff2;
|
||||||
|
@ -118,6 +118,7 @@ struct pci_device pci_device_table[]=
|
|||||||
{ 0x8086, 0x1004, "Intel 82543GC Gigabit Ethernet Controller" },
|
{ 0x8086, 0x1004, "Intel 82543GC Gigabit Ethernet Controller" },
|
||||||
{ 0x8086, 0x1029, "Intel EtherExpressPro100 ID1029" },
|
{ 0x8086, 0x1029, "Intel EtherExpressPro100 ID1029" },
|
||||||
{ 0x8086, 0x1030, "Intel Corporation 82559 InBusiness 10/100" },
|
{ 0x8086, 0x1030, "Intel Corporation 82559 InBusiness 10/100" },
|
||||||
|
{ 0x8086, 0x103d, "Intel Corporation 82801DB PRO/100 VE (MOB)" },
|
||||||
{ 0x8086, 0x1209, "Intel EtherExpressPro100 82559ER" },
|
{ 0x8086, 0x1209, "Intel EtherExpressPro100 82559ER" },
|
||||||
{ 0x8086, 0x1229, "Intel EtherExpressPro100 82557/8/9" },
|
{ 0x8086, 0x1229, "Intel EtherExpressPro100 82557/8/9" },
|
||||||
{ 0x8086, 0x122D, "Intel 82437FX" },
|
{ 0x8086, 0x122D, "Intel 82437FX" },
|
||||||
|
@ -114,7 +114,9 @@ driver fxp
|
|||||||
PROFBUF # 38
|
PROFBUF # 38
|
||||||
SYSCTL
|
SYSCTL
|
||||||
;
|
;
|
||||||
|
pci device 8086/103d;
|
||||||
pci device 8086/1229;
|
pci device 8086/1229;
|
||||||
|
pci device 8086/2449;
|
||||||
ipc
|
ipc
|
||||||
SYSTEM PM RS LOG TTY DS VM
|
SYSTEM PM RS LOG TTY DS VM
|
||||||
pci inet amddev
|
pci inet amddev
|
||||||
|
Loading…
x
Reference in New Issue
Block a user