koebehshian
V2EX  ›  问与答

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

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