首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >FreeBSD以太网网卡驱动程序未被识别

FreeBSD以太网网卡驱动程序未被识别
EN

Unix & Linux用户
提问于 2014-11-18 09:38:02
回答 1查看 3.7K关注 0票数 0

英特尔主板GA-H61N-D2V

代码语言:javascript
运行
复制
$ pciconf -l -v
re0@pci0:1:0:0: class=0x020000 card=0xe0001458 chip=0x816810ec rev=0x06 hdr=0x00
    vendor     = 'Realtek Semiconductor'
    device     = 'Gigabit Ethernet NIC(NDIS 6.0) (RTL8168/8111/8111c)'
    class      = network
    subclass   = ethernet

FreeBSD 8.2发行版

代码语言:javascript
运行
复制
# uname -a
FreeBSD qb91.anybots.com 8.2-RELEASE FreeBSD 8.2-RELEASE #0: Fri Feb 18 02:24:46 UTC 2011     root@almeida.cse.buffalo.edu:/usr/obj/usr/src/sys/GENERIC  i386

内核消息

代码语言:javascript
运行
复制
re0: <RealTek 8168/8111 B/C/CP/D/DP/E PCIe Gigabit Ethernet> port 0xee00-0xeeff mem 0xfbdff000-0xfbdfffff,0xfbdf8000-0xfbdfbfff irq 16 at device 0.0 on pci1
re0: Using 1 MSI messages
re0: Chip rev. 0x2c800000
re0: MAC rev. 0x00000000
re0: Unknown H/W revision: 0x2c800000

..。当解雇ifconfig时,re0没有出现。

不幸的是,升级FreeBSD不是一个选项,我必须坚持8.2版本。

如何排除/修复此问题?

更新编译的新驱动程序

遵循这个线程中的步骤。

在FreeBSD 8.2发行版虚拟机上,我重新编译了内核。然后,我收集了if_re.koif_re.ko.symbols,并将它们复制到存在/boot/kernel/文件夹问题的机器上。

重新启动后,问题仍然存在。

更新- LOADER.CONF

if_re_load="YES"中添加/boot/loader.conf

代码语言:javascript
运行
复制
# kldstat
Id Refs Address    Size     Name
 1   43 0xc0400000 bd97b4   kernel
 2    1 0xc0fda000 1126c    if_run.ko
 3    1 0xc0fec000 4be0     umodem.ko
 4    1 0xc0ff1000 e618     snd_uaudio.ko
 5    3 0xc1000000 56794    sound.ko
 6    1 0xc1057000 2c38     coretemp.ko
 7    1 0xc105a000 c108     ahci.ko
 8    1 0xc1067000 4c04     cuse4bsd.ko
 9    1 0xc106c000 3ce0     runfw.ko
10    1 0xc1070000 3c98     uanypkt.ko
11    1 0xc1074000 69d4     usie.ko
12    1 0xc4f0f000 9000     tmpfs.ko
13    1 0xc51b0000 26000    linux.ko

还是没有运气。

还尝试手动加载:

代码语言:javascript
运行
复制
# kldload -v /boot/kernel/if_re.ko
kldload: can't load /boot/kernel/if_re.ko: File exists

不知道这意味着什么,我想这意味着它是装载的(?)

代码语言:javascript
运行
复制
# kldstat -v | grep ko
 2    1 0xc0fda000 1126c    if_run.ko (/boot/kernel/if_run.ko)
 3    1 0xc0fec000 4be0     umodem.ko (/boot/kernel/umodem.ko)
 4    1 0xc0ff1000 e618     snd_uaudio.ko (/boot/kernel/snd_uaudio.ko)
 5    3 0xc1000000 56794    sound.ko (/boot/kernel/sound.ko)
 6    1 0xc1057000 2c38     coretemp.ko (/boot/kernel/coretemp.ko)
 7    1 0xc105a000 c108     ahci.ko (/boot/kernel/ahci.ko)
 8    1 0xc1067000 4c04     cuse4bsd.ko (/boot/modules/cuse4bsd.ko)
 9    1 0xc106c000 3ce0     runfw.ko (/boot/kernel/runfw.ko)
10    1 0xc1070000 3c98     uanypkt.ko (/boot/modules/uanypkt.ko)
11    1 0xc1074000 69d4     usie.ko (/boot/modules/usie.ko)
12    1 0xc4f0f000 9000     tmpfs.ko (/boot/kernel/tmpfs.ko)
13    1 0xc51b0000 26000    linux.ko (/boot/kernel/linux.ko)

更新- re0不是UP

我没有只复制if_re.ko文件,而是复制了整个kernel目录。

现在适配器已启动,并获得分配的地址。

代码语言:javascript
运行
复制
re0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
    options=389b<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,VLAN_HWCSUM,WOL_UCAST,WOL_MCAST,WOL_MAGIC>
    ether 74:d4:35:12:ce:d6
    inet 10.10.99.115 netmask 0xffff0000 broadcast 10.10.255.255
    media: Ethernet autoselect (none)
    status: no carrier

但是我仍然从内核那里得到这些消息,这让我有点困扰。看来re0还没有被完全识别。

代码语言:javascript
运行
复制
# dmesg | grep re0
re0: <RealTek 8168/8111 B/C/CP/D/DP/E PCIe Gigabit Ethernet> port 0xee00-0xeeff mem 0xfbdff000-0xfbdfffff,0xfbdf8000-0xfbdfbfff irq 16 at device 0.0 on pci1
re0: Using 1 MSI messages
re0: Chip rev. 0x2c800000
re0: MAC rev. 0x00000000
re0: Unknown H/W revision: 0x2c800000
device_attach: re0 attach returned 6
re0: <RealTek 8168/8111 B/C/CP/D/DP/E PCIe Gigabit Ethernet> port 0xee00-0xeeff mem 0xfbdff000-0xfbdfffff,0xfbdf8000-0xfbdfbfff irq 16 at device 0.0 on pci1
re0: Using 1 MSI-X message
re0: turning off MSI enable bit.
re0: Chip rev. 0x2c800000
re0: MAC rev. 0x00000000
miibus0: <MII bus> on re0
re0: Ethernet address: 74:d4:35:12:ce:d6
re0: [ITHREAD]
re0: <RealTek 8168/8111 B/C/CP/D/DP/E PCIe Gigabit Ethernet> port 0xee00-0xeeff mem 0xfbdff000-0xfbdfffff,0xfbdf8000-0xfbdfbfff irq 16 at device 0.0 on pci1
re0: Using 1 MSI-X message
re0: Chip rev. 0x2c800000
re0: MAC rev. 0x00000000
miibus0: <MII bus> on re0
re0: Ethernet address: 74:d4:35:12:ce:d6
re0: [ITHREAD]
re0: <RealTek 8168/8111 B/C/CP/D/DP/E PCIe Gigabit Ethernet> port 0xee00-0xeeff mem 0xfbdff000-0xfbdfffff,0xfbdf8000-0xfbdfbfff irq 16 at device 0.0 on pci1
re0: Using 1 MSI-X message
re0: Chip rev. 0x2c800000
re0: MAC rev. 0x00000000
miibus0: <MII bus> on re0
re0: Ethernet address: 74:d4:35:12:ce:d6
re0: [ITHREAD]
EN

回答 1

Unix & Linux用户

回答已采纳

发布于 2014-11-18 10:30:17

我不认为这个修改的芯片组是支持股票re驱动程序在8.2版本或更早版本。您可以获取驱动程序的后端版本,并重新构建内核以包含它。快速搜索FreeBSD邮件列表存档就会发现这个线程,它有指向更新的驱动程序文件的链接。如果您需要重新构建内核的指针,那么第九章在FreeBSD手册中是一个很好的起点。

票数 1
EN
页面原文内容由Unix & Linux提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://unix.stackexchange.com/questions/168615

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档