re0: Unknown H/W revision: 0x28000000 device_attach: re0 attach
returned 6
Pyun YongHyeon
pyunyh at gmail.com
Sun Nov 30 20:32:33 PST 2008
On Sun, Nov 30, 2008 at 03:18:41AM +0000, Andrew Tulloch wrote:
> I've just installed from the FreeBSD 7.1-BETA1 iso and get the
> following when the re driver attempts to attach to the two onboard
> NICs found on a Gigabyte GA-EX58-UD5 motherboard:
>
> re0: <RealTek 8168/8168B/8168C/8168CP/8111B/8111C/8111CP PCIe Gigabit
> Ethernet> port 0x9e00-0x9eff mem
> 0xfd3ff000-0xfd3fffff,0xfd3f8000-0xfd3fbfff irq 16 at device 0.0 on
> pci8
> re0: Chip rev. 0x28000000
> re0: MAC rev. 0x00100000
> re0: Unknown H/W revision: 0x28000000
> device_attach: re0 attach returned 6
> pcib9: <ACPI PCI-PCI bridge> irq 17 at device 28.5 on pci0
> pci9: <ACPI PCI bus> on pcib9
> re1: <RealTek 8168/8168B/8168C/8168CP/8111B/8111C/8111CP PCIe Gigabit
> Ethernet> port 0x8e00-0x8eff mem
> 0xfd1ff000-0xfd1fffff,0xfd1f8000-0xfd1fbfff irq 17 at device 0.0 on
> pci9
> re1: Chip rev. 0x28000000
> re1: MAC rev. 0x00100000
> re1: Unknown H/W revision: 0x28000000
> device_attach: re1 attach returned 6
>
> pciconf -lvc extract:
> re0 at pci0:8:0:0: class=0x020000 card=0xe0001458 chip=0x816810ec rev=0x03 hdr=0x00
> vendor = 'Realtek Semiconductor'
> device = 'RTL8168/8111 PCI-E Gigabit Ethernet NIC'
> class = network
> subclass = ethernet
> cap 01[40] = powerspec 3 supports D0 D1 D2 D3 current D0
> cap 05[50] = MSI supports 1 message, 64 bit
> cap 10[70] = PCI-Express 2 endpoint IRQ 0
> cap 11[ac] = MSI-X supports 4 messages in map 0x20
> cap 03[cc] = VPD
> re1 at pci0:9:0:0: class=0x020000 card=0xe0001458 chip=0x816810ec rev=0x03 hdr=0x00
> vendor = 'Realtek Semiconductor'
> device = 'RTL8168/8111 PCI-E Gigabit Ethernet NIC'
> class = network
> subclass = ethernet
> cap 01[40] = powerspec 3 supports D0 D1 D2 D3 current D0
> cap 05[50] = MSI supports 1 message, 64 bit
> cap 10[70] = PCI-Express 2 endpoint IRQ 0
> cap 11[ac] = MSI-X supports 4 messages in map 0x20
> cap 03[cc] = VPD
>
>
> Is there any simple patch I can apply to get the driver to attach,
> assuming it should work?
>
This controller seems to support MSI-X with 4 messages.
Unfortunately previous PCIe controllers from RealTek were notorious
for MSI issues so it's hard to know this revision really works with
MSI-X. I guess it was added to support RSS(receive-side scaling of
MS NDIS 6.0).
As sephe said if the controller configuration is the same as 8168C
family, the attached patch would make re(4) work as expected.
--
Regards,
Pyun YongHyeon
-------------- next part --------------
Index: sys/dev/re/if_re.c
===================================================================
--- sys/dev/re/if_re.c (revision 185504)
+++ sys/dev/re/if_re.c (working copy)
@@ -172,7 +172,7 @@
{ RT_VENDORID, RT_DEVICEID_8101E, 0,
"RealTek 8101E/8102E/8102EL PCIe 10/100baseTX" },
{ RT_VENDORID, RT_DEVICEID_8168, 0,
- "RealTek 8168/8168B/8168C/8168CP/8111B/8111C/8111CP PCIe "
+ "RealTek 8168/8168B/8168C/8168CP/8168D/8111B/8111C/8111CP PCIe "
"Gigabit Ethernet" },
{ RT_VENDORID, RT_DEVICEID_8169, 0,
"RealTek 8169/8169S/8169SB(L)/8110S/8110SB(L) Gigabit Ethernet" },
@@ -1225,6 +1225,7 @@
case RL_HWREV_8168C:
case RL_HWREV_8168C_SPIN2:
case RL_HWREV_8168CP:
+ case RL_HWREV_8168D:
sc->rl_flags |= RL_FLAG_INVMAR | RL_FLAG_PHYWAKE |
RL_FLAG_PAR | RL_FLAG_DESCV2 | RL_FLAG_MACSTAT;
/*
Index: sys/pci/if_rlreg.h
===================================================================
--- sys/pci/if_rlreg.h (revision 185504)
+++ sys/pci/if_rlreg.h (working copy)
@@ -157,6 +157,7 @@
#define RL_HWREV_8169_8110SB 0x10000000
#define RL_HWREV_8169_8110SC 0x18000000
#define RL_HWREV_8102EL 0x24800000
+#define RL_HWREV_8168D 0x28000000
#define RL_HWREV_8168_SPIN1 0x30000000
#define RL_HWREV_8100E 0x30800000
#define RL_HWREV_8101E 0x34000000
More information about the freebsd-net
mailing list