abc73226938 发表于 2014-6-27 18:00:30

[求助]imx6sl的FEC控制器如何设置才一直工作在100M/FULL (已解决)

本帖最后由 FSL_TICS_ZP 于 2014-7-8 16:17 编辑

目前使用的是imx6sl的fec驱动switch 2端口的PHY KSZ8873MLL,需要一上电就设置CPU的FEC工作在100M/FULL 模式和link up 状态

串口打印信息开始
Trying 100/FULL
PHY: 1:03 - Link is Up - 100/Full
过一会儿输出
PHY: 1:03 - Link is Up - 100/Half
我在FEC驱动中修改,不起作用,可能没修改对地方,可否给点建议,我该如何修改或者设置来实现使FEC工作在100M/FULL而不是100/Half呢?

FSL_TICS_ZP 发表于 2014-6-30 11:14:39

你好,楼主!
我会将你的问题转告给i.MX工程师,他稍后会回答你的。

wangcjishu 发表于 2014-6-30 11:18:42

这个应该是和连接的外部设备有关系,phy会自动探测是100m还是1000M,全双工还是半双工

rootxie 发表于 2014-6-30 13:26:47

肯定需要设置成自适应的,如果变成10M是不是网络就不支持了?

abc73226938 发表于 2014-7-1 11:21:23

wangcjishu 发表于 2014-6-30 11:18
这个应该是和连接的外部设备有关系,phy会自动探测是100m还是1000M,全双工还是半双工 ...

恩,的确,发现问题了,是PHY的工作模式被强制设置在100/half,所以imx6sl就自适应为100/half。

abc73226938 发表于 2014-7-1 11:24:27

rootxie 发表于 2014-6-30 13:26
肯定需要设置成自适应的,如果变成10M是不是网络就不支持了?

恩,imx6的FEC默认的是自适应,问题应经解决了,是PHY的问题,工作模式被强制设置成100/half了,

wangcjishu 发表于 2014-7-1 11:35:55

abc73226938 发表于 2014-7-1 11:24
恩,imx6的FEC默认的是自适应,问题应经解决了,是PHY的问题,工作模式被强制设置成100/half了, ...

phy设置为100/half, 那你串口怎么会打印 PHY: 1:03 - Link is Up - 100/Fulll? 你是把phy设置为自适应就好了?

abc73226938 发表于 2014-7-1 11:56:42

wangcjishu 发表于 2014-7-1 11:35
phy设置为100/half, 那你串口怎么会打印 PHY: 1:03 - Link is Up - 100/Fulll? 你是把phy设置为自适应就 ...

phy是个2port的交换机芯片, port3是用来管理port1和port2的,并且port3是直接和cpu通过MII连接的,上电时
imx6sl会首先Trying 100/FULL,这个应该是imx6的FEC的工作模式来和PHY的工作模式进行适配,所以出现了
PHY: 1:03 - Link is Up - 100/Fulll
由于PHY的port3的工作模式是通过两个IO的电平来配置的,原来是port3的工作模式被配置在100/half。
所以过一会儿就自适应为
PHY: 1:03 - Link is Up - 100/Half了
现在port3的工作模式通过IO电平被配置在100/Full了,
所以出现Trying 100/FULL
PHY: 1:03 - Link is Up - 100/Fulll
自适应OK了,就不在切换模式了

fengyunyu 发表于 2014-10-7 15:30:27

“phy是个2port的交换机芯片, port3是用来管理port1和port2的,并且port3是直接和cpu通过MII连接的”

请问下lz,cpu通过mii连接port3,是只用来管理port1和port2?还是也可以作为一个独立的设备,和接在port1或port2的网络设备,进行tcp、udp之类的通信?

abc73226938 发表于 2014-10-8 08:37:29

fengyunyu 发表于 2014-10-7 15:30
“phy是个2port的交换机芯片, port3是用来管理port1和port2的,并且port3是直接和cpu通过MII连接的”

请 ...

cpu是可以通过port3和Port1、port2上连接的设备进行TCP、UDP通信的。

so_so_so_so 发表于 2014-10-8 08:57:25

学习,后面有时间研究PHY时,参考。

fengyunyu 发表于 2014-10-8 09:06:05

abc73226938 发表于 2014-10-8 08:37
cpu是可以通过port3和Port1、port2上连接的设备进行TCP、UDP通信的。

谢谢回复!

cpu是可以通过port3和Port1、port2上连接的设备进行TCP、UDP通信的同时,port1和port2上的设备也可以相互通信?

abc73226938 发表于 2014-10-8 11:00:23

fengyunyu 发表于 2014-10-8 09:06
谢谢回复!

cpu是可以通过port3和Port1、port2上连接的设备进行TCP、UDP通信的同时,port1和port2上的设 ...

可以的,ksz8873就是一个2端口的交换机,当然port1和port2当然可以互相通信,但是需要配好IP和MAC,ksz8873应该没有DHCP功能,不会分配IP,每个端口的IP和MAC都需要自己先设好,在一个网段。

fengyunyu 发表于 2014-10-8 11:11:07

abc73226938 发表于 2014-10-8 11:00
可以的,ksz8873就是一个2端口的交换机,当然port1和port2当然可以互相通信,但是需要配好IP和MAC,ksz88 ...

请问,cpu通过mii接口连接ksz8873,还需要通过smi接口连接ksz8873么?

abc73226938 发表于 2014-10-8 12:05:26

fengyunyu 发表于 2014-10-8 11:11
请问,cpu通过mii接口连接ksz8873,还需要通过smi接口连接ksz8873么?

需要呀,MII接口是数据接口,SMI接口是管理接口。

fengyunyu 发表于 2014-10-8 12:07:17

abc73226938 发表于 2014-10-8 12:05
需要呀,MII接口是数据接口,SMI接口是管理接口。

好像在哪里看到通过mii接口也能完成管理和配置功能。

abc73226938 发表于 2014-10-8 12:18:24

fengyunyu 发表于 2014-10-8 12:07
好像在哪里看到通过mii接口也能完成管理和配置功能。

这个我是没看到。MII接口是收发数据线和时钟线及一些状态线。PHY都是通过SMI来进行管理的,SMI最大支持32个PHY,PHY通过MII接口和MAC连接。当然有的模块直接集成了PHY和MAC。这个我也不太懂,前段时间需要使用ksz8873就看了点资料,所以说,我说的也不一定正确。

fengyunyu 发表于 2014-10-8 12:20:56

abc73226938 发表于 2014-10-8 12:18
这个我是没看到。MII接口是收发数据线和时钟线及一些状态线。PHY都是通过SMI来进行管理的,SMI最大支持32 ...

非常感谢!http://www.amobbs.com/thread-5598246-1-1.html,这是前段时间发的帖子,有20个莫元可领。
页: [1]
查看完整版本: [求助]imx6sl的FEC控制器如何设置才一直工作在100M/FULL (已解决)