Configuring AM335x ethernet for RMII mode?

527 views
Skip to first unread message

fred basset

unread,
Apr 12, 2013, 4:42:17 PM4/12/13
to beagl...@googlegroups.com
Hi Guys,

I have a new custom board coming in soon, based on the BeagleBone.  The hw guys tell me that the ethernet uses RMII.  In looking at the U-Boot board specific code (arch/arm/cpu/armv7/am33xx/board.c, function board_eth_init) I see the Ethernet seems to be configured for either MII mode if it's a BeagleBone else RGMII mode:

        if (board_is_bone()) {
                writel(MII_MODE_ENABLE, &cdev->miisel);
                cpsw_slaves[0].phy_if = cpsw_slaves[1].phy_if =
                                PHY_INTERFACE_MODE_MII;
        else {
                writel(RGMII_MODE_ENABLE, &cdev->miisel);
                cpsw_slaves[0].phy_if = cpsw_slaves[1].phy_if =
                                PHY_INTERFACE_MODE_RGMII;
        }

The relevant constants are:
#define MII_MODE_ENABLE         0x0
#define RGMII_MODE_ENABLE       0xA

Does anyone know what value should be used to configure ethernet for RMII mode?

Gerald Coley

unread,
Apr 12, 2013, 7:18:40 PM4/12/13
to beagl...@googlegroups.com
Depending on what PHY you use and the clocking mode you use, it may not matter. If the HW is not designed in a specific way, it may not work. You need an external clock to make RMII work.

I would start with the HW guys and make sure they have designed something that has a chance to work.

Gerald


--
For more options, visit http://beagleboard.org/discuss
---
You received this message because you are subscribed to the Google Groups "BeagleBoard" group.
To unsubscribe from this group and stop receiving emails from it, send an email to beagleboard...@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.
 
 



--
Gerald
 
Reply all
Reply to author
Forward
0 new messages