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.

Compiler/RM57L843: RMII interface for ethernet on TI hercules RM57L843

Part Number: RM57L843
Other Parts Discussed in Thread: HALCOGEN, DP83640

Tool/software: TI C/C++ Compiler

Hi, I want to use RMII interface on RM57L843, in demo project given by halcogen there is MII interface, I also tried to replace MII interface by RMII in halcogen configuration file of demo project, project is compiled successfully but while debugging on board it is not working.

Does anybody have any sample code for RMII interface on RM57L843 ? or please tell me how can I use RMII on RM57L843?

Regards

Pratik.

  • Hello,

    RMII requires a 50 MHz clock where MII requires a 25 MHz clock and data is clocked out two bits at a time vs 4 bits at a time for MII.

    MII: 15-pin interface, discrete TX (TXCLK) and RX (RXCLK) clocking (2.5MHz for 10Mbps, but 25MHz for 100Mbps)

    RMII: 8-pin interface, shared clock (REF_CLK) for both TX and RX (50MHz for both 10 Mbps and 100Mbps). 

    If you use TI HDK:

    1. you need to replace Y3 with 1 50MHz oscillator. 

    2. Enable the pull-up (R193) to RX_DV signal on U20 (Ethernet PHY)

  • Yes, Thanks for above information.

    Actually we are using custom board on this PHY IC used is different than DP83640.

    And that IC supports only RMII.

    RMII 8 signal pins are connected to RM57 pins, and MDIO pin is connected to F4 pin in our custom board and MDCLK is connected to T9 pin

    I select RMII interface in Pin Muxing tab, and enabled pin F4 in halcogen in input punmux tab.

    To enable MDCLK pin I didn't found any pin like T9 in halcogen .

    and after generating code it says PINMUX_BALL_R4 is undefined in file HL_pinmux.c

    Please tell me what I am missing in this.

    Thanks

    Pratik

  • Hi Pratik,

    I will check the pinmux for you later.

  • Hi Pratik,

    MDCLK uses pin T9 and is not multiplexed. You don't need to configure pinmux for T9.

    There is no PINMUX_BALL_R4 defined in the pinmux header file, but the header file defines two variables:

    #define PINMUX_BALL_R4_SHIFT    8U

    #define PINMUX_BALL_R4_MASK    (~(uint32)((uint32)0xFFU << PINMUX_BALL_R4_SHIFT))

  • Hi Wang,

    Where can we use these macros and which macro should be there instead of PINMUX_BALL_R4_ ?

  • Hi Patrik,

    I think the HALOCGen config file is messed up. I might be caused when the HAL config file generated by a old version HALCOGen is opened using a new version HALCoGen. I saw this kind of issue before. What I did is to delete the C files and generate them again (not 100% sure, need to check).

  • Hi, Are there any changes to do in halcogen file for using RMII.

    I have done following changes

    1. In PINMUX tab select RMII in PIN MUXING tab

    2. In special PIN MUXING tab selected RMII in Ethernet MII/RMII select option

    3. In VIM Channel 64-95 selected channel no. 77 and 79 

    3. In EMAC tab untick the Enable MII checkbox

    Is anything missing in this configuration?

    Please tell me.

    Thanks

    Pratik

  • Hi Pratik,

    I noticed another thread said you have make the RMII work on TI HDK board. I will close this thread.