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.

DRA821U: DRA821U J7200 MCU_MDIO0 pin mux assignment

Part Number: DRA821U
Other Parts Discussed in Thread: SYSCONFIG, DRA821

Tool/software:

Dear Champ, 

Customer is using DRA821U EVM and SOM module is J7200XSOMG01EVM

Linux SDK 10.01.08.01

In SDK,  j7200 arch/arm/dts/k3-j7200-common-proc-board.dts will use "J721E_WKUP_IOPAD" define and MCU_MDIO0_MDC and MCU_MDIO0_MDIO are using offset 0x34 and 0x30 and the comment show pin L1 and L4 respectively. 

However, DRA821U MCU_MDIO0 are pin D9 and C9 on datasheet. 

By using SYSCONFIG to generate DTS, it will create all pin define in "J7200_WKUP_IOPAD" and offset for these two pins are 0x9C and 0x98. ( I cannot map the register offset address and pin for PADCONFx from TRM which it doesn't specify which pin(ball) is mapping to PADCONFx.) 

We can only choice to believe SYSCONF, but now customer is confusing on how to use the DTS back to work with SDK original Device tree. 

Secondary, customer tried to modify mcu_mdio_pins_default-pins to the correct pins but found MDIO will not work after change to correct pins. 

It seems current setting is correct but we cannot tell which pins are used right now. 

The EVM hardware use pin D9 and C9 as SYSCONF tool show.

Customer wonder how to set these two pins on their own board once their board is ready. 

Please help to

1. Check what is missing and which setting is correct.

2. Where to get the PADCONF register offset mapping to each pin for DRA821. 

BR, Rich    

  1. SysConfig 的 Devive 是選 DRA821U?
  2. 使用sysconfig 產出的 dtsi 上敘述的 mcu_mdio 與 SDK 中 j7200 arch/arm/dts/k3-j7200-common-proc-board.dts 腳位對不上
  3. 有確切的 reference menu 跟對應 sysconfig 的devive 嗎??   EVM 上的型號是 J7200XSOMG01EVM
  • Hi Rich,

    I'm not entirely sure why MCU_MDIO0_MDC and MCU_MDIO0_MDIO have comments which state they are L1 and L4 in the SDK; they may be reused comments from another device. The correct pins are D9 and C9 as the datasheet specifies. That being said, the offsets specified are correct— I will explain below.

    In the datasheet, Table 6-106. Pin Multiplexing shows the 0x98 and 0x9C offset as you specify in your post. From the SoC design perspective, this is the correct offset from the base address of 0x4301C000.

    The reason why the offsets '0x34' and '0x30' are correct is because the Linux SDK splits the configuration registers into different regions, resulting in various base addresses. MCU_MDIO0_MDC and MCU_MDIO0_MDIO fall under the third region (wkup_pmx2) which has a base address of 0x4301C068. This requires the datasheet offset to be adjusted by 0x68 to have the proper offset from the region's base address.

    In other words, SDK Offset = Datasheet Offset - SDK Region Base Address. Examples:

    • MCU_MDIO0_MDC: 0x9C - 0x68 = 0x34
    • MCU_MDIO0_MDIO: 0x98 - 0x68 = 0x30

    Going forward, please keep in mind the following SDK region base addresses for the DRA821 device.

    MAIN DOMAIN

    • main_pmx0: 0x0011C000
    • main_pmx1: 0x0011C110
    • main_pmx2: 0x0011C11C
    • main_pmx3: 0x0011C164

    WKUP DOMAIN

    • wkup_pmx0: 0x4301C000
    • wkup_pmx1: 0x4301C038
    • wkup_pmx2: 0x4301C068
    • wkup_pmx3: 0x4301C174

    I hope that clarifies.

    Thanks for bringing to my attention that the online SysConfig Pinmux Tool is populating the wrong offset despite being in the correct region. I will file a ticket internally and get this fixed for the next release.

    Regards,
    Mark

    EDIT (25-Apr-2025): Corrected MAIN DOMAIN base addresses

  • Mark,

    That's great, thanks for the explanation, it answers the questions why it can work. 

    Following question is the definition "J721E_WKUP_IOPAD" in SDK and how the DTS "J7200_WKUP_IOPAD" generated from SYSCONFIG can be applied into current SDK?

    Customer is making their own hardware and will use SYSCONFIG for their own board. 

    Will the DTS "J7200_WKUP_IOPAD" work in current SDK 10.1? 

    BR, Rich 

  • Hi Rich,

    I've been informed "J7200_WKUP_IOPAD" will not work with the current SDK. "J721E_WKUP_IOPAD" must be used.

  • Mark, 

    In the case, will we update and fix this on SYSCONFIG tool or support J7200_WKUP_IOPAD in next version SDK? 

    Customer is currently doing new design based on current SDK. 

    BR, Rich 

  • Mark, 

    To customer who is using DRA821U for product with SDK 10.x. It seems only "J721E_WKUP_IOPAD“ can be used. 

    Should a patch or fix version for SYSCONFIG tool is required to correct this or customer cannot use SYSCONFIG directly for software header file build?

    Is there a a alternative to make Ethernet DTS setting can be used in current SDK? 

    BR, Rich

  • Hello,

    Can they do a Find+Replace to insert "J721E_WKUP_IOPAD" in the appropriate spots? The SysConfig Pinmux Tool generates only this pinmux settings used within the device tree; it is not responsible for any other settings that can be configured in the DTS.

    Is there a a alternative to make Ethernet DTS setting can be used in current SDK? 

    I'm not sure about this. You may need to file a separate ticket to the SDK for this.