koebehshian
V2EX  ›  问与答

求助,开发板网口不能用了, dmsg 显示`gmac0 gmac0: eth0: no PHY found`

  •  
  •   koebehshian · Jul 21, 2020 · 3366 views
    This topic created in 2300 days ago, the information mentioned may be changed or developed.

    之前发过一个帖子 https://v2ex.com/t/689773

    本来怀疑 flash 存储器有问题,后来由于它自动恢复了,我就怀疑现场干扰。

    可是昨天问题有出现了,并且断电放了一夜也没有恢复。

    现象就是 ifconfig 没有 eth0 接口,dmsg | grep eth0 显示gmac0 gmac0: eth0: no PHY found

    我查了下,这个错误表示物理层坏了,要么是物理硬件真的坏了,要么是驱动没加载。

    硬件坏的可能性基本排除,一是之前就能恢复过,二是开机时网口灯会亮一下。

    所以只有可能是驱动没加载,所以我又怀疑 flash 存储器了

    14 replies  •  2020-10-15 09:35:47 +08:00
    reus
    reus
    Jul 21, 2020 via Android❤️1
    1
    我觉得你的逻辑有问题,之前“恢复”,现在就不能坏?
    驱动没加载,那 dmesg 那行就不会出现。
    flash 有没有问题,全盘扫一下就知道。
    网口工作不正常的一个可能原因是供电不足。
    不存在什么放了一夜自动恢复这种事,你上次的帖子,显然是刚好没有用到坏块,让你误以为恢复了。
    koebehshian
    koebehshian
    OP
    Jul 21, 2020
    2
    @reus 供电不足可以排除,用的官方的适配器,而且现在把其他外设全拔了。所以只有可能是存储器有坏块,我原先以为文件系统会自动检测跳过不使用坏块
    reus
    reus
    Jul 21, 2020 via Android
    3
    @koebehshian 文件系统没有这个功能,是 flash 驱动提供的,但也不是每个驱动都有。按照你设备的型号搜一下坏块怎样检测和处理吧。
    koebehshian
    koebehshian
    OP
    Jul 21, 2020
    4
    设备型号是核心板的型号,还是 flash 的型号?
    jworg
    jworg
    Jul 21, 2020
    5
    说实话,你这 ubuntu mate 从哪来的,镜像里是单独的文件系统,还是包含设备树和内核。核心板是哪块,先用原厂的包含内核设备树与文件系统的镜像试下硬件是不是好的,然后看看启动打印是不是中途检测到坏块。这个现象很像 kernel 或者 设备树 里面一些东西时钟或者什么别的没配好。
    jworg
    jworg
    Jul 21, 2020❤️1
    6
    另外如果是 kernel 或者 dtb 或者 uboot 配置问题的话,和文件系统是无关的,因为这三者在现在的大多数 arm 开发板上面都是直接烧写到固定地址的,你可以试试 uboot 下是否能正常配通网络,网上这个搜搜就有了
    koebehshian
    koebehshian
    OP
    Jul 21, 2020
    7
    @jworg 用的是全志开发板,默认里面是安卓系统,用客服给的 phoenixsuit 的软件,刷了 sun8iw6p1_ubuntu16_mate_uart0_bv2_hdmi20p.img 镜像
    jworg
    jworg
    Jul 21, 2020 via iPhone
    8
    @koebehshian 哈哈,没猜错,果然是全志的,天坑。给你指个路,whycan.cn 里去问吧,说不定里面有人用过。我自己一年多没调过板子了,忘的差不多了,帮不了你。当时用的 w7p1,官方 bsp 里还出现过 dts 里网口配置的地址和 datesheet 里不一样。还有一点可以给你透露,用这个软件刷入的话,说明用的是全志自己的闭源 flash 的驱动,用的自己的地址映射,坏块管理也是有的。
    DawnMoon
    DawnMoon
    Jul 21, 2020 via Android
    9
    我猜是 phy 芯片坏了
    nealwx
    nealwx
    Jul 21, 2020 via iPhone
    10
    楼上多的对,你在 uboot 里面看一下网口能否通。uboot 如果是在开头的话,那部分是保证读写的。你现在的信息给我的感觉是 phy 挂了
    nealwx
    nealwx
    Jul 21, 2020 via iPhone
    11
    @nealwx 多->说
    koebehshian
    koebehshian
    OP
    Jul 21, 2020
    12
    @villivateur 启动时网口灯亮了一下,所以我觉得硬件应该没坏
    DawnMoon
    DawnMoon
    Jul 21, 2020 via Android
    13
    @koebehshian 网口灯亮不代表芯片没坏啊
    qhw2012
    qhw2012
    Oct 15, 2020
    14
    小白吧,拿个固件就刷?驱动配置没?设备树里的配置 PHY 的信号管脚啊,嵌入式都跟硬件联线有关
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   739 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 38ms · UTC 19:41 · PVG 03:41 · LAX 11:41 · JFK 14:41
    ♥ Do have faith in what you're doing.