100M Ethernet Negotiation

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

100M Ethernet Negotiation

Jump to solution
1,191 Views
mattitoikka
Contributor II

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

Labels (1)
1 Solution
746 Views
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...

View solution in original post

0 Kudos
4 Replies
747 Views
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 Kudos
746 Views
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 Kudos
746 Views
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 Kudos
746 Views
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 Kudos