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.

PROCESSOR-SDK-AM62X: how to read the number of cpu cores under uboot

Part Number: PROCESSOR-SDK-AM62X
Other Parts Discussed in Thread: AM625

I have  question that I am confused about. Is your 62x image the common image of 6254, 6252 and 6231? As far as I know, two watchdog dogs should be turned off for 6252, and three watchdog dogs, gpu and prss should be turned off for 6231.

There should be three different device trees. How can we load different device trees if we only use one image

If it is not a mirror, I am researching how to recognize different number of cores under uboot to load different device trees, but I don't know how to read the number of cpu cores under uboot yet

  • Hi Toby,

    Is your 62x image the common image of 6254, 6252 and 6231?

    Yes, it is common to all AM62x devices.

    As far as I know, two watchdog dogs should be turned off for 6252, and three watchdog dogs, gpu and prss should be turned off for 6231.

    Correct, except pruss exists on all AM62x devices (please see Table 5-1 "Device Comparison" on the AM62x Datasheet for details), so it doesn't have to turned off for am6231. 

    There should be three different device trees. How can we load different device trees if we only use one image

    You actually don't have to have three different device trees and load one of them accordingly.

    What you can do, is to implement function ft_board_setup() in U-Boot board/am62x/evm.c to detect the device type, then disable the corresponding RTI watchdog or GPU device tree node.

    For detecting the device type, you can read the WKUP_CTRL_MMR_JTAG_USER_ID register (address 0x43000018), its device type bit value is documented at the top of Table 5-1 "Device Comparison" in AM62x Datasheet.

    For implementing ft_board_setup() function, you can use U-Boot board/am335x/board.c or board/am65x/evm.c as an example.

  • thank you

    I tried to find the register address for CTRLMMR_WKUP_JTAG_DEVICE_ID in the am625 chip manual and in the TRM, but only found the following address 0x43000014

    This reads out the following value:

    => md 0x43000014 1

    43000014: 0bb7e02f

    Is this the address, please?

  • Hi Toby,

    It appears both you and me are referring to an old version of the AM62x Datasheet, which has been updated on ti.com. The new version shows the register name is "MMR0_JTAG_USER_ID", which address is 0x43000018 - listed in Table 6-1303 in the AM62x TRM.

    except pruss exists on all AM62x devices

    I actually misspoke on this. PRU only exists on 'C' feature code devices, but not on 'G' feature code devices. Please see the foot note (3) under Table 5-1 in the Datasheet.