This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

AM3352: MDIO device register access

Part Number: AM3352

In my design, I am using both MAC, and connected to TI-DP83867 PHY. and both TI-PHY seating on MDIO bus at address 0x0 and 0xF. On eth0, I am running DHDP server and eth1 I am running DHCP client.

so MAC_0 ------> TI_DP83867   (eth0)

    MAC_1 --------> TI_DP83867 (eth).

In my design, I have to connect 4 client devices to eth0 interface, and for that, I am connecting  eth0 port to one of the ports of BRCM switch (BCM53101). BRCM switch is also connected to same MDIO bus where  my two TI-PHY is seating. so now on MDIO I have three devices each are seating on unique address.

I am able to pass traffic from ethernet switch, and all my 4 client device is able to talk to each other as well as to AM3352 via eth0.

Now my real problem is, I need to read BRCM switch phy registers to find which device is connected to which port (because I have to take some specific action on hardware).

ethtool and phytool are all associated with ethX interface, while for my BRCM switch there is no device (eth0/eth1) so in that case how to read registers of BRCM switch via MDIO bus? any example / link will be useful.

Thanks,

  • Hi,

    Unfortunately TI will not be able to help here since external switches are not supported use cases. We simply do not have any background here as there are not any external switches connected to the Ethernet ports on any TI EVM. 

    The only recommendations I can suggest is to contact the switch manufacturer to check first if they have pushed a driver for the their switch to the Linux mainline kernel and second if they have a driver that that connects either over I2C or MDIO. 

    Best Regards,

    Schuyler

  • Hello Schuyler,

    None of the TI customers are not making a product that is 100% identical to TI - reference platform. What I have observed is most of the time, TI is raising their hand saying this is not as per our standard design so we can't support/comment. We don't want TI to write code for us, but we want guidance or are there any other tools/utility that are available which might help. Please pass this message to upper management who is in charge of customer support, and change this practice.

    Anyway, let me resentence my question related to MDIO.

    If I have some device that has MDIO bus, and from Linux - userspace, if I want to do read/write MDIO registers, in that case, is there any example/driver is available? or any open source tools/utility are there?

    thanks