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.

AM5718: IODELAYCONFIG register question

Part Number: AM5718
Other Parts Discussed in Thread: AM5728, , TMDXIDK5718, TMDSEVM572X, TMDSCM572X

Hi champs,

I have a question about 'IODELAYCONFIG' register.

TRM 

P.4137 18.4.6.1.6 Manual IO Timing Modes
and
P.4139 18.4.6.1.8 IO Delay Recalibration

There is a 'IODELAYCONFIG'.

Is this calibration a recognition determined at the time of shipment?
Or is it updating every time the power is turned on?

Please let me know.

Regards,
Shinji Ueda

  • Hi,

    The IODELAYCONFIG registers are used in manual IO timing modes. They must be loaded with the calculated values at device boot time. See this document for more details: www.ti.com/.../sprac44a.pdf
  • Biser-san,

    Thank you for your answer.
    I have a one more question.

    Please teach me the difference in value.
    in muxdata.h file, iodelay_cfg_array_x15_sr2_0[] CFG_RGMII0xxxx value
    and
    In datasheet, CFG_RGMII0xxx value

    Regards,
    Shinji Ueda
  • Hi,

    Could you elaborate which SDK are you using?

    I am checking TI Processor SDK Linux 04.02.00.09 and the values (a_delay & g_delay) for RGMII0 are the same as datasheet:

    {0x06F0, 260, 0}, /* CFG_RGMII0_RXC_IN */

    {0x06FC, 0, 1412}, /* CFG_RGMII0_RXCTL_IN */

    {0x0708, 123, 1047}, /* CFG_RGMII0_RXD0_IN */

    {0x0714, 139, 1081}, /* CFG_RGMII0_RXD1_IN */

    {0x0720, 195, 1100}, /* CFG_RGMII0_RXD2_IN */

    {0x072C, 239, 1216}, /* CFG_RGMII0_RXD3_IN */

    {0x0740, 89, 0}, /* CFG_RGMII0_TXC_OUT */

    {0x074C, 15, 125}, /* CFG_RGMII0_TXCTL_OUT */

    {0x0758, 339, 162}, /* CFG_RGMII0_TXD0_OUT */

    {0x0764, 146, 94}, /* CFG_RGMII0_TXD1_OUT */

    {0x0770, 0, 27}, /* CFG_RGMII0_TXD2_OUT */

    {0x077C, 291, 205}, /* CFG_RGMII0_TXD3_OUT */

    Here is a screenshot from the datasheet:

    Or have I misunderstood the question and looking at something else?

    Best Regards,
    Yordan

  • OK, sorry I was looking at AM5728 sources.

    For AM5718 device you should look at iodelay_cfg_array_am571x_idk[]:
    {0x06F0, 413, 0}, /* CFG_RGMII0_RXC_IN */
    {0x06FC, 27, 2296}, /* CFG_RGMII0_RXCTL_IN */
    {0x0708, 3, 1721}, /* CFG_RGMII0_RXD0_IN */
    {0x0714, 134, 1786}, /* CFG_RGMII0_RXD1_IN */
    {0x0720, 40, 1966}, /* CFG_RGMII0_RXD2_IN */
    {0x072C, 0, 2057}, /* CFG_RGMII0_RXD3_IN */
    {0x0740, 0, 60}, /* CFG_RGMII0_TXC_OUT */
    {0x074C, 0, 60}, /* CFG_RGMII0_TXCTL_OUT */
    {0x0758, 0, 60}, /* CFG_RGMII0_TXD0_OUT */
    {0x0764, 0, 0}, /* CFG_RGMII0_TXD1_OUT */
    {0x0770, 0, 60}, /* CFG_RGMII0_TXD2_OUT */
    {0x077C, 0, 120}, /* CFG_RGMII0_TXD3_OUT */

    The above values match Table 7-85. Manual Functions Mapping for GMAC RGMII0 in AM5718 TRM.

    The AM571x IDK is the correct reference design for AM5718 SoCs, see the product page (tools & software tab):
    www.ti.com/.../toolssoftware
    AM571x Industrial Development Kit (IDK)     TMDXIDK5718              Development Kits
    AM572x Evaluation Module                             TMDSEVM572X            Evaluation Modules & Boards
    AM57x IDK LCD Kit                                            TMDXIDK57X-LCD      Development Kits
    TMDSEVM572x Camera Module                    TMDSCM572X              Evaluation Modules & Boards

    Best Regards,
    Yordan