Hello,
I am trying to use the MQX-supplied driver for my Ethernet PHY (assembled on my custom board), but I can't get it to work (MQX 3.8.0).
I've modified the following:
1. init_enet.c:
const ENET_IF_STRUCT ENET_0 = {
&MACNET_IF,
&phy_dm9161_IF, /*<=== instead of &phy_ksz8041_IF*/
MACNET_DEVICE_0,
MACNET_DEVICE_0,
BSP_ENET0_PHY_ADDR,
BSP_ENET0_PHY_MII_SPEED
};
2. init_enet.c:
#include "phy_dm9161.h" /*<=== instead #include "phy_ksz8041.h"*/
3. Recompiled BSP & RTCS libraries.
Now, the problem:
When performing phy_dm9161_init(), the Status Register reading (&phy_status) always returns 0x0, as if it has not been read at all (The PHY's status register default values are definitely different from 0x0).... So I thought checking K60 physical lines, to see if the request is transmitted at all:
When I check the MDIO I/O pin, I don't see anything that is transmitted to line. The MDC line shows accurate clocks at ~2.5MHz (as required by spec).
What am I doing wrong? I don't believe that it is a PHY configuration problem since no instruction is transmitted from K60 towards the PHy.
HELP! :smileyhappy:
Thank you.