Subject: Re: 82541 GI support
To: None <netbsd-help@netbsd.org>
From: Mipam <mipam@ibb.net>
List: netbsd-help
Date: 08/03/2004 12:06:11
> Mipam wrote:
> > Hi,
> >
> > I bought two intel 82541 GI NIC's, but i noticed 1.6 doesnt support them.
> > Are they supported in current or will they be supported in 2.0?
> >
> > In dmesg this shows up for the two cards.
> >
> > Intel product 0x1076 (ethernet network) at pci0 dev 10 function 0 not
> > configured
> > Intel product 0x1076 (ethernet network) at pci0 dev 13 function 0 not
> > configured
Hnmm, i checked and there is no support for it in 1.6 yet.
In current it seems to be there.
Suppose i would add underneath changes to the files listed below in
1.6 (from
current sources) would this card work?
src/sys/dev/pci/pcidevs
product INTEL 82541GI 0x1076 i82541GI Gigabit Ethernet
sys/dev/pci/pcidevs.h
#define PCI_PRODUCT_INTEL_82541GI 0x1076 /* i82541GI
Gigabit Ethernet */
sys/dev/pci/pcidevs_data.h
{
PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_82541GI,
0,
"Intel",
"i82541GI Gigabit Ethernet",
},
sys/dev/pci/if_wm.c
{ PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_82541GI,
"Intel i82541GI 1000BASE-T Ethernet",
WM_T_82541_2, WMP_F_1000T },
CSR_WRITE(sc, WMREG_CTRL, CTRL_RST); switch (sc->sc_type) {
case WM_T_82544:
case WM_T_82540:
case WM_T_82545:
case WM_T_82546:
case WM_T_82541:
case WM_T_82541_2:
/*
* These chips have a problem with the memory-mapped
* write cycle when issuing the reset, so use
I/O-mapped
* access, if possible.
*/
if (sc->sc_flags & WM_F_IOH_VALID)
wm_io_write(sc, WMREG_CTRL, CTRL_RST);
else
CSR_WRITE(sc, WMREG_CTRL, CTRL_RST);
break;
case WM_T_82545_3:
case WM_T_82546_3:
/* Use the shadow control register on these chips. */
CSR_WRITE(sc, WMREG_CTRL_SHADOW, CTRL_RST);
break;
default:
/* Everything else can safely use the documented
method. */
CSR_WRITE(sc, WMREG_CTRL, CTRL_RST);
break;
}
typedef enum {
WM_T_unknown = 0,
WM_T_82542_2_0, /* i82542 2.0 (really old) */
WM_T_82542_2_1, /* i82542 2.1+ (old) */
WM_T_82543, /* i82543 */
WM_T_82544, /* i82544 */
WM_T_82540, /* i82540 */
WM_T_82545, /* i82545 */
WM_T_82545_3, /* i82545 3.0+ */
WM_T_82546, /* i82546 */
WM_T_82546_3, /* i82546 3.0+ */
WM_T_82541, /* i82541 */
WM_T_82541_2, /* i82541 2.0+ */
WM_T_82547, /* i82547 */
WM_T_82547_2, /* i82547 2.0+ */
} wm_chip_type;
Bye,
Mipam.