100M Ethernet Negotiation

取消
显示结果 
显示  仅  | 搜索替代 
您的意思是: 
已解决

100M Ethernet Negotiation

跳至解决方案
1,230 次查看
mattitoikka
Contributor II

Is there anyway to initialize the ethernet/mac interface in MQX RTCS such that the PHY will force/advertise 100M only?

标签 (1)
1 解答
785 次查看
mattitoikka
Contributor II

Turns out that the mqx/bsp project includes code/a driver to init/control a ksz8041 which does not include writing to the correct registers to only negotiate 100M for a different PHY...

在原帖中查看解决方案

0 项奖励
4 回复数
786 次查看
mattitoikka
Contributor II

Turns out that the mqx/bsp project includes code/a driver to init/control a ksz8041 which does not include writing to the correct registers to only negotiate 100M for a different PHY...

0 项奖励
785 次查看
soledad
NXP Employee
NXP Employee

Hello Matti,

Please check the Radek's answer in the next thread and let me know if this helps.

10Mbps with LAN8720 and K70 - Communication wit... | NXP Community


Have a great day,
Sol

-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------

0 项奖励
785 次查看
mattitoikka
Contributor II

Sol,

Thanks, but the thread you linked seems to discuss periodically checking link status/speed in order to re-initialize the enet module to support adapting to different speeds/duplex when the ethernet connection is unplugged and re-connected to different switches/hubs during runtime. It didn't really help.

I need to set my PHY to only advertise 100M. It looks like changing “Auto-negotiation” to “Full_Duplex_100M” in the ENET_default_params struct in init_enet.c (for me it is located at mqx\source\bsp\myProject\init_enet.c, but may be different for others depending on how you setup a project) should solve my issue. However, I have made the change and my PHY still auto-negotiates...

Any other ideas?

Matti

0 项奖励
785 次查看
soledad
NXP Employee
NXP Employee

Hello Matti,

Yes you are right, you need to change this setting in the ENET_default_params[] structure which is located in the file init_enet.c. In that structure change the second element from "Auto_Negotiate" to "Half_Duplex_10M" or "Full_Duplex_10M", "Half_Duplex_100M" or "Full_Duplex_100M".  After these changes you need to Rebuild the BSP, PSP and RTCS libraries.

pastedImage_2.png


Have a great day,
Sol

-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------

0 项奖励