hzyitc / armbian-onecloud

Armbian for onecloud. 玩客云用armbian
1.24k stars 239 forks source link

以太网PHY无法被识别 #75

Open Potterli20 opened 1 year ago

Potterli20 commented 1 year ago

因为我的玩客云是v1.3,直接刷emmc,能刷入但是进不去,一直红灯亮

rmoyulong commented 1 year ago

接上路由器看IP

Potterli20 commented 1 year ago

接上路由器看IP

一直红灯,路由器上也没有ip,感觉自动进入ttl

amiter commented 1 year ago

系统正常启动后 就是红灯

Potterli20 commented 1 year ago

系统正常启动后 就是红灯

红灯,那我在路由器上等了20分钟也没有那个ip

amiter commented 1 year ago

你可以看下网线的灯亮没亮,我的1.3现在也有这个情况,重启后,很大概率网卡是down的灯都不亮,需要不插网线,启动后再插

Potterli20 commented 1 year ago

你可以看下网线的灯亮没亮,我的1.3现在也有这个情况,重启后,很大概率网卡是down的灯都不亮,需要不插网线,启动后再插

就是先启动后插网线?

Potterli20 commented 1 year ago

你可以看下网线的灯亮没亮,我的1.3现在也有这个情况,重启后,很大概率网卡是down的灯都不亮,需要不插网线,启动后再插

还是一样,不知道你是用那个镜像? 我用最新的不行

lanlanpy commented 1 year ago

换一个dtb在boot区里面,有个dtb文件在,还有对应内核版本的dtb.看boot.cmd还有armbianenv.txt,里面调用的哪个。

如果是不是内核版本文件夹的dtb就从那个文件夹复制出来改成同名文件替换调用的那个

我的1.3主板,一开始刷今年九月份的镜像就需要换dtb,后来的版本开始又不需要了

lanlanpy commented 1 year ago

有可能最新内核版本的也需要换对应内核版本的dtb

Potterli20 commented 1 year ago

换一个dtb在boot区里面,有个dtb文件在,还有对应内核版本的dtb.看boot.cmd还有armbianenv.txt,里面调用的哪个。

如果是不是内核版本文件夹的dtb就从那个文件夹复制出来改成同名文件替换调用的那个

我的1.3主板,一开始刷今年九月份的镜像就需要换dtb,后来的版本开始又不需要了

所以怎么解决呢?我现在用不了,一直红灯

lanlanpy commented 1 year ago

换一个dtb在boot区里面,有个dtb文件在,还有对应内核版本的dtb.看boot.cmd还有armbianenv.txt,里面调用的哪个。 如果是不是内核版本文件夹的dtb就从那个文件夹复制出来改成同名文件替换调用的那个 我的1.3主板,一开始刷今年九月份的镜像就需要换dtb,后来的版本开始又不需要了

所以怎么解决呢?我现在用不了,一直红灯

插usb网卡,或者ttl调试,进系统改,实在不行就下载你要的版本的usb启动镜像启动,写完镜像后,电脑会识别出boot分区可以修改

lanlanpy commented 1 year ago

测试出适合你自己的dtb,然后再U盘系统挂载emmc的p1 分区,修改对应的dtb

hzyitc commented 1 year ago

连接HDMI查看,有开机日志的。

Potterli20 commented 1 year ago

连接HDMI查看,有开机日志的。

是网口没有适配,没有办法,开机了,还是down

hzyitc commented 1 year ago

如果是网口的话,有可能是 #2 同款问题。

目前高度怀疑频率还是有问题。

最近比较忙,等有空再修复。

lanlanpy commented 1 year ago

如果是网口的话,有可能是 #2 同款问题。

目前高度怀疑频率还是有问题。

最近比较忙,等有空再修复。

好多1.0的主板也是网卡不工作,5.18.XX的内核换了这个dtb后可以识别工作, meson8b-bugscaner.dtb.txt 不能传dtb文件加了个后缀。。有个群友换过之前再重新刷就不需要替换了,就很神奇。

lanlanpy commented 1 year ago

这是网卡不识别的内核启动日志

meson8b-dwmac c9410000.ethernet eth0: no phy at addr -1 [ 627.096932] meson8b-dwmac c9410000.ethernet eth0: stmmac_open: Cannot attach to PHY (error: -19) [ 627.313794] meson8b-dwmac c9410000.ethernet eth0: no phy at addr -1 [ 627.313823] meson8b-dwmac c9410000.ethernet eth0: stmmac_open: Cannot attach to PHY (error: -19) [ 627.344448] meson8b-dwmac c9410000.ethernet eth0: no phy at addr -1 [ 627.344471] meson8b-dwmac c9410000.ethernet eth0: stmmac_open: Cannot attach to PHY (error: -19) [ 627.366308] meson8b-dwmac c9410000.ethernet eth0: no phy at addr -1 [ 627.366331] meson8b-dwmac c9410000.ethernet eth0: stmmac_open: Cannot attach to PHY (error: -19)

mdio_bus stmmac-0: MDIO device at address 0 is missing.

hzyitc commented 1 year ago

这是网卡不识别的内核启动日志

meson8b-dwmac c9410000.ethernet eth0: no phy at addr -1 [ 627.096932] meson8b-dwmac c9410000.ethernet eth0: stmmac_open: Cannot attach to PHY (error: -19) [ 627.313794] meson8b-dwmac c9410000.ethernet eth0: no phy at addr -1 [ 627.313823] meson8b-dwmac c9410000.ethernet eth0: stmmac_open: Cannot attach to PHY (error: -19) [ 627.344448] meson8b-dwmac c9410000.ethernet eth0: no phy at addr -1 [ 627.344471] meson8b-dwmac c9410000.ethernet eth0: stmmac_open: Cannot attach to PHY (error: -19) [ 627.366308] meson8b-dwmac c9410000.ethernet eth0: no phy at addr -1 [ 627.366331] meson8b-dwmac c9410000.ethernet eth0: stmmac_open: Cannot attach to PHY (error: -19)

mdio_bus stmmac-0: MDIO device at address 0 is missing.

对比了下,应该是PHY的复位时间过长,导致的不识别。改下reset-assert-usreset-deassert-us应该就行。

lanlanpy commented 1 year ago

这是网卡不识别的内核启动日志 meson8b-dwmac c9410000.ethernet eth0: no phy at addr -1 [ 627.096932] meson8b-dwmac c9410000.ethernet eth0: stmmac_open: Cannot attach to PHY (error: -19) [ 627.313794] meson8b-dwmac c9410000.ethernet eth0: no phy at addr -1 [ 627.313823] meson8b-dwmac c9410000.ethernet eth0: stmmac_open: Cannot attach to PHY (error: -19) [ 627.344448] meson8b-dwmac c9410000.ethernet eth0: no phy at addr -1 [ 627.344471] meson8b-dwmac c9410000.ethernet eth0: stmmac_open: Cannot attach to PHY (error: -19) [ 627.366308] meson8b-dwmac c9410000.ethernet eth0: no phy at addr -1 [ 627.366331] meson8b-dwmac c9410000.ethernet eth0: stmmac_open: Cannot attach to PHY (error: -19) mdio_bus stmmac-0: MDIO device at address 0 is missing.

对比了下,应该是PHY的复位时间过长,导致的不识别。改下reset-assert-usreset-deassert-us应该就行。

收到大佬

Potterli20 commented 1 year ago

@hzyitc 大佬,你现在有v1.3的玩客云了?

hzyitc commented 1 year ago

@hzyitc 大佬,你现在有v1.3的玩客云了?

一直都有,只是我自己的设备没有遇到这些问题。

Potterli20 commented 1 year ago

@hzyitc 大佬,你现在有v1.3的玩客云了?

一直都有,只是我自己的设备没有遇到这些问题。

这就难了

Potterli20 commented 1 year ago

@hzyitc 大佬,你现在有v1.3的玩客云了?

一直都有,只是我自己的设备没有遇到这些问题。

这个关不关电源的问题?

hzyitc commented 1 year ago

@hzyitc 大佬,你现在有v1.3的玩客云了?

一直都有,只是我自己的设备没有遇到这些问题。

这个关不关电源的问题?

已经修复了看#2 (comment)

这大概率是两个问题,本issue是PHY找不到,#2 是时序导致的发送丢包

目前修了后者,应该与本issue无关。

本issue应该是复位延时相关的问题。

Potterli20 commented 1 year ago

@hzyitc 大佬,如果用linux刷,是如何刷,不想用win刷也

lanlanpy commented 1 year ago

@hzyitc 大佬,如果用linux刷,是如何刷,不想用win刷也

linux有amlogic的烧录程序 https://github.com/Stane1983/aml-linux-usb-burn

hzyitc commented 1 year ago

@hzyitc 大佬,如果用linux刷,是如何刷,不想用win刷也

https://github.com/superna9999/pyamlboot/

这有个开源版。不过我没试过

Potterli20 commented 1 year ago

@hzyitc 大佬,如果用linux刷,是如何刷,不想用win刷也

linux有amlogic的烧录程序 https://github.com/Stane1983/aml-linux-usb-burn

明白,我试试看

Potterli20 commented 1 year ago

@hzyitc 大佬,如果用linux刷,是如何刷,不想用win刷也

https://github.com/superna9999/pyamlboot/

这有个开源版。不过我没试过

明白,我试试看

lanlanpy commented 1 year ago

@hzyitc 大佬,你现在有v1.3的玩客云了?

一直都有,只是我自己的设备没有遇到这些问题。

这个关不关电源的问题?

已经修复了看#2 (comment)

这大概率是两个问题,本issue是PHY找不到,#2 是时序导致的发送丢包

目前修了后者,应该与本issue无关。

本issue应该是复位延时相关的问题。

大佬,phy找不到问题,那位主板1.0的群友之前,我给测试固件的时候就碰到有时能识别出来,但是大部分时间都识别不出来,最近它又识别出来了。我已经修改了复位延迟时间,让他观察一段时间

Potterli20 commented 1 year ago

@hzyitc 大佬,如果用linux刷,是如何刷,不想用win刷也

https://github.com/superna9999/pyamlboot/

这有个开源版。不过我没试过

最新的包也是无法启动网卡

lanlanpy commented 1 year ago

@hzyitc 大佬,如果用linux刷,是如何刷,不想用win刷也

https://github.com/superna9999/pyamlboot/ 这有个开源版。不过我没试过

最新的包也是无法启动网卡 试试这个dtb meson8b-onecloud-fix-ethernet-phy.dtb.txt

image 修改的@hzyitc大佬提过的复位延迟

meson-g12a、 x96-max 好像也有这个问题?https://lkml.org/lkml/2020/12/1/969

lanlanpy commented 1 year ago

@hzyitc 大佬,如果用linux刷,是如何刷,不想用win刷也

https://github.com/superna9999/pyamlboot/ 这有个开源版。不过我没试过

最新的包也是无法启动网卡 试试这个dtb meson8b-onecloud-fix-ethernet-phy.dtb.txt

image 修改的@hzyitc大佬提过的复位延迟

meson-g12a、 x96-max 好像也有这个问题?https://lkml.org/lkml/2020/12/1/969

@hzyitc 大佬,修改复位延迟后,好像网卡不掉了,也识别正常了

Potterli20 commented 1 year ago

@hzyitc 大佬,如果用linux刷,是如何刷,不想用win刷也

https://github.com/superna9999/pyamlboot/ 这有个开源版。不过我没试过

最新的包也是无法启动网卡 试试这个dtb meson8b-onecloud-fix-ethernet-phy.dtb.txt

image 修改的@hzyitc大佬提过的复位延迟

meson-g12a、 x96-max 好像也有这个问题?https://lkml.org/lkml/2020/12/1/969

@hzyitc 大佬,修改复位延迟后,好像网卡不掉了,也识别正常了

那个版本?

lanlanpy commented 1 year ago

@hzyitc 大佬,如果用linux刷,是如何刷,不想用win刷也

https://github.com/superna9999/pyamlboot/ 这有个开源版。不过我没试过

最新的包也是无法启动网卡 试试这个dtb meson8b-onecloud-fix-ethernet-phy.dtb.txt

image 修改的@hzyitc大佬提过的复位延迟

meson-g12a、 x96-max 好像也有这个问题?https://lkml.org/lkml/2020/12/1/969

@hzyitc 大佬,修改复位延迟后,好像网卡不掉了,也识别正常了

那个版本?

他是1.0的主板,你那个也可以试试

Potterli20 commented 1 year ago

@hzyitc 大佬,如果用linux刷,是如何刷,不想用win刷也

https://github.com/superna9999/pyamlboot/ 这有个开源版。不过我没试过

最新的包也是无法启动网卡 试试这个dtb meson8b-onecloud-fix-ethernet-phy.dtb.txt

image 修改的@hzyitc大佬提过的复位延迟

meson-g12a、 x96-max 好像也有这个问题?https://lkml.org/lkml/2020/12/1/969

@hzyitc 大佬,修改复位延迟后,好像网卡不掉了,也识别正常了

那个版本?

他是1.0的主板,你那个也可以试试

他自己也说,也有1.3v😂

lanlanpy commented 1 year ago

@hzyitc 大佬,如果用linux刷,是如何刷,不想用win刷也

https://github.com/superna9999/pyamlboot/ 这有个开源版。不过我没试过

最新的包也是无法启动网卡 试试这个dtb meson8b-onecloud-fix-ethernet-phy.dtb.txt

image 修改的@hzyitc大佬提过的复位延迟

meson-g12a、 x96-max 好像也有这个问题?https://lkml.org/lkml/2020/12/1/969

@hzyitc 大佬,修改复位延迟后,好像网卡不掉了,也识别正常了

那个版本?

他是1.0的主板,你那个也可以试试

他自己也说,也有1.3v😂

不是,是群里的一个人,我让他给我测试的时候他是1.0的主板,群里也有很多1.3的刷了网卡不工作的

你想测试可以加群612500698找我 大佬好像挺忙的,没空调试吧,我们测试,给反馈就好了。

shiyu1314 commented 1 year ago

QQ截图20230418165513 改延迟后1.3版本

lanlanpy commented 1 year ago

QQ截图20230418165513 改延迟后1.3版本

所以1.3也存在识别不了网卡phy的问题吗。改了 image 这里就可以了?

shiyu1314 commented 1 year ago

QQ截图20230418165513修改延迟后1.3版

所以1.3也存在不知道不是网卡phy的问题吗。改了 这里就可以了? 图像

是的

lanlanpy commented 1 year ago

QQ截图20230418165513修改延迟后1.3版

所以1.3也存在不知道不是网卡phy的问题吗。改了 这里就可以了? 图像

是的

3q, 我发过改了这个的给群友测试也可以

Ljzd-PRO commented 1 year ago

最新版 的用 meson8b-onecloud-fix-ethernet-phy.dtb.txt 似乎不行,无法进入系统

用自带的 dtc 命令把 dtb 转换成了 dts 然后用 nano 修改,改完以后再转回 dtb 就可以了。

Ljzd-PRO commented 1 year ago

> 最新版 的用 meson8b-onecloud-fix-ethernet-phy.dtb.txt 似乎不行,无法进入系统

用自带的 dtc 命令把 dtb 转换成了 dts 然后用 nano 修改,改完以后再转回 dtb 就可以了。

不知道怎么回事再用这种方法又不行了,把 reset-assert-usreset-deassert-us 再提高都不行,内核日志 Cannot attach to PHY (error: -19),不过WOL 的支持情况之类的信息看上去是成功获取了,然后MAC地址也可以获取到。

然后用 #105 的 dts 生成 dtb并使用,就可以正常使用网卡了,不过HDMI不会输出。用的是 Armbian_23.02.0-trunk_Onecloud_jammy_current_5.15.91_xfce_desktop

Ljzd-PRO commented 1 year ago

~> 最新版 的用 meson8b-onecloud-fix-ethernet-phy.dtb.txt 似乎不行,无法进入系统~ 用自带的 dtc 命令把 dtb 转换成了 dts 然后用 nano 修改,改完以后再转回 dtb 就可以了。

不知道怎么回事再用这种方法又不行了,把 reset-assert-usreset-deassert-us 再提高都不行,内核日志 Cannot attach to PHY (error: -19),不过WOL 的支持情况之类的信息看上去是成功获取了,然后MAC地址也可以获取到。

然后用 #105 的 dts 生成 dtb并使用,就可以正常使用网卡了,不过HDMI不会输出。用的是 Armbian_23.02.0-trunk_Onecloud_jammy_current_5.15.91_xfce_desktop

在修改 reset-deassert-us 之后删除了 interrupt-parent = <0x1f>; 这一行就可以了, 玩客云官方固件的 dst 里没有这一行,不清楚是什么原因。

ethernet-phy@0 {
    reg = <0x00>;
    reset-assert-us = <0x2710>;
    reset-deassert-us = <0x186a0>;
    reset-gpios = <0x0f 0x29 0x01>;

    // interrupt-parent = <0x1f>;

    interrupts = <0x11 0x08>;
    phandle = <0x1e>;
};

5.11: 好像不是这个原因,有点晕了,再刷同样内核同样是jammy只是没有桌面的镜像,又不行了

Ljzd-PRO commented 1 year ago

试了几次,发现只要接地一下,比如板子放地上,那两个弹性的铁片贴着地板,然后开机,最新release的6.1.27内核网卡都能正常启用,都不用改dtb。接地之前,即使是玩客云官方固件网口都用不了。之后应该是因为释放了静电,没有接地基本上也可以正常启用网卡了。

lanlanpy commented 1 year ago

试了几次,发现只要接地一下,比如板子放地上,那两个弹性的铁片贴着地板,然后开机,最新release的6.1.27内核网卡都能正常启用,都不用改dtb。接地之前,即使是玩客云官方固件网口都用不了。之后应该是因为释放了静电,没有接地基本上也可以正常启用网卡了。

这么神奇吗,100%复现?

Ljzd-PRO commented 1 year ago

试了几次,发现只要接地一下,比如板子放地上,那两个弹性的铁片贴着地板,然后开机,最新release的6.1.27内核网卡都能正常启用,都不用改dtb。接地之前,即使是玩客云官方固件网口都用不了。之后应该是因为释放了静电,没有接地基本上也可以正常启用网卡了。

这么神奇吗,100%复现?

接地之前刷各种固件,换各种dtb,网口就亮了两次。接地以后,玩客云官方固件能用以太网了,最新的release固件也可以,不用修改dtb,现在每次重启以后以太网都是正常的,现在不接地也可以了

Ljzd-PRO commented 1 year ago

本来是看到一个帖子,有人好像把网卡芯片刷坏了,说一通电网卡芯片就很烫,所以我就在玩客云官方固件的基础上,把它板子再拆出来摸一摸网卡芯片看会不会发烫,然后网口居然就亮灯了,不过重启有时候又会失效,之后就尝试了接地的方法。

HunterXe-A commented 1 year ago

本来是看到一个帖子,有人好像把网卡芯片刷坏了,说一通电网卡芯片就很烫,所以我就在玩客云官方固件的基础上,把它板子再拆出来摸一摸网卡芯片看会不会发烫,然后网口居然就亮灯了,不过重启有时候又会失效,之后就尝试了接地的方法。

我的网卡芯片就是发烫,连着dcdc部分都在烫,现在就只能拆了小螃蟹然后用usb网卡续命

lanlanpy commented 1 year ago

本来是看到一个帖子,有人好像把网卡芯片刷坏了,说一通电网卡芯片就很烫,所以我就在玩客云官方固件的基础上,把它板子再拆出来摸一摸网卡芯片看会不会发烫,然后网口居然就亮灯了,不过重启有时候又会失效,之后就尝试了接地的方法。

只能说,玩客云的电路设计太妖了