hyl 发表于 2022-4-12 11:17:09

docker版本双网口问题

本帖最后由 hyl 于 2022-4-12 11:22 编辑

按照飞凌提供的千M百M网口软硬件修改方案 修改,百Mphy使用yt8512 千Mphy使用yt8521s 按照软件方案修改后进入系统 ifconfig -a 查看识别到eth0但是ifconfig up eth0失败
dmesg日志
sunxi-gmac 1c50000.eth eth0: Power on is failed
[ 2114.115221] libphy: 1c50000.eth: probed
[ 2114.115589] sunxi-gmac 1c50000.eth eth0: PHYIC: eth0: Type(6) PHY ID 0000011a at 2 IRQ poll (1c50000.eth-0:02)
[ 2114.126164] sunxi-gmac 1c50000.eth eth0: Initialize hardware error

使用的sdk是docker版本
识别到的eth0应该是千M网口 百M无法识别 是否需要自己移植yt提供的驱动?
或者是docker版本的sdk问题?

zhichao 发表于 2022-4-12 13:40:18

正常应该是eth0为百兆网口,eth1为千兆网口,目前我们最新发布的linux资料中有双网口应用笔记,您可以参考一下。yt8521s 的千兆网卡芯片我们是有提供驱动的,yt8512百兆网卡芯片您看看通用phy驱动能不能直接用
您这个eth0识别成百兆应该是设计的有问题,您在检查一下原理吧

hyl 发表于 2022-4-12 15:19:18

通用phy驱动是指哪些,需要打开哪些内核编译选项呢

hyl 发表于 2022-4-12 16:00:49

zhichao 发表于 2022-4-12 13:40
正常应该是eth0为百兆网口,eth1为千兆网口,目前我们最新发布的linux资料中有双网口应用笔记,您可以参考 ...

[    0.782831] sun4i-mdio 1c0b080.mdio: no regulator found
[    0.783099] libphy: sun4i_mii_bus: probed
[    0.787513] sun8iw11p1-pinctrl 1c20800.pinctrl: pin PH16 already requested by 1c2c400.smartcard; cannot claim for 1c0b000.eth
[    0.787532] sun8iw11p1-pinctrl 1c20800.pinctrl: pin-240 (1c0b000.eth) status -22
[    0.787544] sun8iw11p1-pinctrl 1c20800.pinctrl: could not request pin 240 on device 1c20800.pinctrl
[    0.787554] sun4i-emac 1c0b000.eth: Error applying setting, reverse things back
[    0.787770] sun4i-emac 1c0b000.eth: not found (-16).
[    0.787803] sun4i-emac: probe of 1c0b000.eth failed with error -16

dmesg显示PH16被占用,是被其他驱动占用了吗

Alright 发表于 2022-4-12 16:18:18

hyl 发表于 2022-4-12 15:19
通用phy驱动是指哪些,需要打开哪些内核编译选项呢

通用phy驱动指的是Linux开源社区的phy驱动,通用phy驱动默认是编译进内核的

zhichao 发表于 2022-4-12 16:19:15

您先看看我们的双网口修改方案,您这个引脚复用是有问题的,PH16应该在别的地方使用了,所以会冲突
目前我们的网卡驱动都是通用phy驱动,只做了微调,比如网口灯做了修改

Alright 发表于 2022-4-12 16:21:37

hyl 发表于 2022-4-12 16:00
[    0.782831] sun4i-mdio 1c0b080.mdio: no regulator found
[    0.783099] libphy: sun4i_mii_bus:...

您可以看一下fex文件,PH16脚已经被sim卡使用,所以您需要把sim卡的PH16使用其他引脚代替
然后把PH16再用到phy芯片上

hyl 发表于 2022-4-12 17:40:06

zhichao 发表于 2022-4-12 16:19
您先看看我们的双网口修改方案,您这个引脚复用是有问题的,PH16应该在别的地方使用了,所以会冲突
目前我 ...

已经按照新的双网卡方案去修改软件了 千M网口可以正常工作了 但是百M网口使用yt8512还是不行,那个PH16问题已经修改了 dmesg报错
[    0.783500] sun4i-mdio 1c0b080.mdio: no regulator found
[    0.783794] libphy: sun4i_mii_bus: probed
[    0.789931] sun4i-emac 1c0b000.eth: not found (-16).
[    0.790065] sun4i-emac: probe of 1c0b000.eth failed with error -16
[    0.790846] WARNING: Get ephy clock is failed

zhichao 发表于 2022-4-12 17:55:41

您检查引脚了吗,改之前在触摸和显示用到的3个引脚是怎么处理的,量一下引脚波形,看看时钟有波形吗

hyl 发表于 2022-4-12 18:11:40

zhichao 发表于 2022-4-12 17:55
您检查引脚了吗,改之前在触摸和显示用到的3个引脚是怎么处理的,量一下引脚波形,看看时钟有波形吗

好的,修改被占用的引脚后识别出来了,非常感谢,还有一个问题
yt8521的千M口ifconfig up的时候会打印一个错误,不知何原因
root@FORLINX:~# ifconfig eth1 down
root@FORLINX:~# ifconfig eth1 up
sunxi-gmac 1c50000.eth eth1: Power on is failed
root@FORLINX:~# dmesg |grep gmac
[    9.345533] sunxi-gmac 1c50000.eth eth1: Power on is failed
[    9.363474] sunxi-gmac 1c50000.eth eth1: yt8521_config_init done, phy addr: 2, strap mode = 0, polling mode = 2
[    9.363493] sunxi-gmac 1c50000.eth eth1: eth1: Type(6) PHY ID 0000011a at 2 IRQ poll (1c50000.eth-0:02)
[   11.360394] sunxi-gmac 1c50000.eth eth1: yt8521_read_status, phy addr: 2, link down
[   13.360362] sunxi-gmac 1c50000.eth eth1: yt8521_read_status, phy addr: 2, link up, media: UTP, mii reg 0x11 = 0xbc40

zhichao 发表于 2022-4-13 09:22:08

怀疑是网口供电问题,fex文件中可以配置,应该是3.3V。这个报错是驱动打印出来的,您也可以自己看看驱动linux-3.10/drivers/net/ethernet/allwinner/sunxi-gmac.c

hyl 发表于 2022-4-13 14:29:28

zhichao 发表于 2022-4-13 09:22
怀疑是网口供电问题,fex文件中可以配置,应该是3.3V。这个报错是驱动打印出来的,您也可以自己看看驱动lin ...

百M网口识别出来后插入网线发现网口状态灯不亮,ping失败,ifconfig查看eth0状态
eth0      Link encap:EthernetHWaddr 36:c9:e3:f1:b8:05
          inet addr:192.168.0.232Bcast:192.168.0.255Mask:255.255.255.0
          UP BROADCAST MULTICASTMTU:1500Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:0 (0.0 B)TX bytes:0 (0.0 B)
          Interrupt:87 Base address:0xb000
收发字节数一直都是0,检查phy芯片电压跟晶振是正常的,不知道是哪里问题,能指导下吗

hyl 发表于 2022-4-13 14:34:10

hyl 发表于 2022-4-13 14:29
百M网口识别出来后插入网线发现网口状态灯不亮,ping失败,ifconfig查看eth0状态
eth0      Link encap: ...

[    0.752680] sun4i-mdio 1c0b080.mdio: no regulator found
[    0.752941] libphy: sun4i_mii_bus: probed
[    0.758567] sun4i-emac 1c0b000.eth: eth0: at f1c0b000, IRQ 87 MAC: 36:c9:e3:f1:b8:05
[    0.759352] WARNING: Get ephy clock is failed

dmesg中有些内容不知道是否跟这个有关

hyl 发表于 2022-4-13 14:50:42

hyl 发表于 2022-4-13 14:34
[    0.752680] sun4i-mdio 1c0b080.mdio: no regulator found
[    0.752941] libphy: sun4i_mii_bus:...


emac0_used         = 1
emac_rxd3          = port:PH08<3><default><3><default>
emac_rxd2          = port:PH09<3><default><3><default>
emac_rxd1          = port:PH10<3><default><3><default>
emac_rxd0          = port:PH11<3><default><3><default>
emac_txd3          = port:PH14<3><default><3><default>
emac_txd2          = port:PH15<3><default><3><default>
emac_txd1          = port:PH16<3><default><3><default>
emac_txd0          = port:PH17<3><default><3><default>
emac_rxclk         = port:PH18<3><default><3><default>
emac_rxerr         = port:PH19<3><default><3><default>
emac_rxdv          = port:PH20<3><default><3><default>
emac_mdc         = port:PH21<3><default><3><default>
emac_mdio          = port:PH22<3><default><3><default>
emac_txen          = port:PH23<3><default><3><default>
emac_txck          = port:PH24<3><default><3><default>
emac_crs         = port:PH25<3><default><3><default>
emac_col         = port:PH26<3><default><3><default>
emac_txerr         = port:PH27<3><default><3><default>
phy-rst         = port:PB09<1><default><3><0>
emac_power1      = "vcc-pa:3300000"
emac_power2      = ""
emac_power3      = ""

fex文件中的配置如上,之前冲突的复用功能全部关闭了

zhichao 发表于 2022-4-13 14:53:53

您现在这两个网口测试是什么现象,up网口。设置ip。ping电脑哪一步出错了,只是ping不通可以看看收发引脚配置

hyl 发表于 2022-4-13 15:05:29

zhichao 发表于 2022-4-13 14:53
您现在这两个网口测试是什么现象,up网口。设置ip。ping电脑哪一步出错了,只是ping不通可以看看收发引脚配 ...

千M网口都正常,然后百M的这个网口,系统能识别,可以UP,IP也能设置,只是ping不通,收发引脚配置是指fex文件中配置吗,fex中的配置就是下面这个,根据文档来的,对比了硬件也是一致的

emac0_used         = 1
emac_rxd3          = port:PH08<3><default><3><default>
emac_rxd2          = port:PH09<3><default><3><default>
emac_rxd1          = port:PH10<3><default><3><default>
emac_rxd0          = port:PH11<3><default><3><default>
emac_txd3          = port:PH14<3><default><3><default>
emac_txd2          = port:PH15<3><default><3><default>
emac_txd1          = port:PH16<3><default><3><default>
emac_txd0          = port:PH17<3><default><3><default>
emac_rxclk         = port:PH18<3><default><3><default>
emac_rxerr         = port:PH19<3><default><3><default>
emac_rxdv          = port:PH20<3><default><3><default>
emac_mdc         = port:PH21<3><default><3><default>
emac_mdio          = port:PH22<3><default><3><default>
emac_txen          = port:PH23<3><default><3><default>
emac_txck          = port:PH24<3><default><3><default>
emac_crs         = port:PH25<3><default><3><default>
emac_col         = port:PH26<3><default><3><default>
emac_txerr         = port:PH27<3><default><3><default>
phy-rst         = port:PB09<1><default><3><0>
emac_power1      = "vcc-pa:3300000"
emac_power2      = ""
emac_power3      = ""

zhichao 发表于 2022-4-13 15:14:03

PH14,PH15原来的引脚功能您怎么处理的,就是ctp位置的配置

hyl 发表于 2022-4-13 15:26:20

zhichao 发表于 2022-4-13 15:14
PH14,PH15原来的引脚功能您怎么处理的,就是ctp位置的配置

PH14 15关掉了,我们用不上触摸屏,配置如下

compatible          = "allwinner,sun50i-ctp-para"
ctp_used            = 0
ctp_name           = "gt9xx_ts"
ctp_twi_id          = 3
ctp_twi_addr      = 0x14
ctp_screen_max_x    = 1024
ctp_screen_max_y    = 600
ctp_touch_panel_max_x= 800
ctp_touch_panel_max_y= 480
ctp_revert_x_flag   = 1
ctp_revert_y_flag   = 1
ctp_exchange_x_y_flag = 0
ctp_power_ldo       = "vcc-ctp"
ctp_power_ldo_vol   = 3300

;ctp_int_port      = port:PH15<6><default><default><default>
;ctp_wakeup          = port:PH14<1><default><default><0>

compatible          = "allwinner,sun50i-ctp-list"
ctp_list_used                = 0
gt82x               = 1

zhichao 发表于 2022-4-13 16:15:01

查查硬件焊接吧,软件上看不出有问题

hyl 发表于 2022-4-13 16:45:24

zhichao 发表于 2022-4-13 16:15
查查硬件焊接吧,软件上看不出有问题

硬件测试到ETXCK跟ERXCK引脚的电平不是处在输入模式 一个在高电平 一个为0,这个正常吗
页: [1] 2
查看完整版本: docker版本双网口问题