Repository navigation
arch/arm/imxrt: fix PHY address scan and YT8512 macro typo - #20697
Conversation
|
Hi @xiaoxiang781216 , The CI failure in Linux (arm-14) is due to a flash overflow during the build of stm32l0538-disco/nsh: text I will rebase this branch once the upstream issue is resolved on master. Please let me know if you would like me to submit a separate PR to trim stm32l0538-disco/nsh's flash usage. Thanks! |
fix here: #20700, @Sarthak-Pandey |
- In imxrt_determine_phy(), save the detected phyaddr into priv->current_phy_address so address ranges in BOARD_ETH0_PHY_LIST work properly. - In imxrt_phyintenable(), fix CONFIG_ETH0_YT8512 to CONFIG_ETH0_PHY_YT8512 to match the Kconfig symbol name. Fixes apache#20692 Signed-off-by: Sarthak Pandey <sarthak@email.com>
c383e4d to
859f938
Compare
Summary
Resolves two issues in
arch/arm/src/imxrt/imxrt_enet.creported in #20692:imxrt_determine_phy(), the scan loop iterated over the address range defined inBOARD_ETH0_PHY_LIST, but upon finding the matching PHY, it never stored the detectedphyaddrintopriv->current_phy_address. Consequently,priv->current_phy_addressremained stuck at the initialaddress_lo, causing PHY communication to fail on any board where the PHY address is greater thanaddress_lo.imxrt_phyintenable(),#if defined(CONFIG_ETH0_YT8512)was used instead of#if defined(CONFIG_ETH0_PHY_YT8512)(the actual Kconfig symbol defined indrivers/net/Kconfig). Because of this typo, builds withCONFIG_ETH0_PHY_YT8512failed the check and fell back to configuring KSZ8081 interrupt registers instead of the YT8512 interrupt mask/status registers.Fixes #20692
Impact
BOARD_ETH0_PHY_LISTor boards using Motorcomm YT8512 PHY with PHY interrupts enabled.Testing
nxstyleacross modified lines: 0 errors, 0 warnings.