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.

66AK2H14: 66AK2H14:

Part Number: 66AK2H14

Trying to read the SRIO revision ID register.  It always returns 0x0.

SPRUGW1B.pdf:
3.3 Required Peripheral Registers
3.3.1 Peripheral ID Register (PID)
Figure 3-5 Peripheral ID Register (Address Offset 0x0000)

From the U-Boot Console:

K2HK EVM # md 0x02901000, 0x1
02901000: 00000000    ....

Enable the Global registers:

mw 0x02901024, 0x1
mw 0x02901028, 0x1
mw 0x0290102C, 0x1
mw 0x02901030, 0x1
mw 0x02901034, 0x1
mw 0x02901038, 0x1
mw 0x0290103C, 0x1
mw 0x02901040, 0x1
mw 0x02901044, 0x1
mw 0x02901048, 0x1
mw 0x0290104C, 0x1
mw 0x02901050, 0x1
mw 0x02901054, 0x1
mw 0x02901058, 0x1
mw 0x0290105C, 0x1
mw 0x02901060, 0x1
mw 0x02901064, 0x1
mw 0x02901068, 0x1
mw 0x0290106C, 0x1
mw 0x02901070, 0x1
mw 0x02901074, 0x1
mw 0x02901078, 0x1

K2HK EVM # md 0x02901000, 0x1
02901000: 00000000    ....

I can read the EDM3 Revision ID register:

K2HK EVM # md 0x02700000,1
02700000: 4001ab00 03315445 00000000 00000000    ...@ET1.........

Tks,

Joe

  • Hi, Joe,

    Which SDK release do you use?

    Rex
  • Rex,

    I am not using a SDK. I'm trying to figure out why I cannot access the SRIO registers. I'm using the U-BOOT console provide by TI on their EVMK2HX Eval board. Trying to keep it simple.

    Using the SRIO register defines from SPRUGW1B.pdf and then adding the Base address from the tci66ak2h14.pdf. I'm also referencing the TI RTOS and Linux Development source code. I'm not sure if I should use an base address of 0x0290_0000 or 0x0290_1000 to access the SRIO Peripheral ID Register. I also know the SRIO registers will read 0x0 if you do not enable the Global registers. Again what base address do I use to write the Global registers?

    This is a simple test and should not be that hard to read the SRIO's Peripheral ID Register (PID). I can read the EDM3 PID at offset 0x0270_0000 = 4001ab00.

    Thanks,
    Joe Freeman
  • Hi, Joe,

    The base address should be 0x0290 0000. It can be accessed from kernel prompt using devmem2, but md command in u-boot doesn't display it. I need to check internally why is this in u-boot?

    root@k2hk-evm:~# devmem2 0x02900000
    Read at address 0x02900000 (0xb6fcb000): 0x44AB1902

    I'll get back to you once I hear back from developer.

    Rex
  • Rex,

    Thank for confirming the Base address and offset for the 66ak2h14 SRIO VersionID register and VersionID register value.

    I looked at the devmem2() function in the Linux SDK. The function does a memmap() to get the virtual address and then dumps the virtual address.

    U-Boot does not enable the MMU therfore all memory is physical. So I'm thinking there is a SRIO domain clock that is not configured and or the Global Enables configured correctly.

    Thanks,
    Joe
  • Hi, Joe,

    FYI. In recent SDK (5.0), SRIO feature is dropped.

    About the domain clock, I was using ProcSDK 4.2 which rapidio is still configured in u-boot dtsi file. It uses clksrio (domain_id 4).That is the reason I chose to use earlier version to be sure SRIO is still enabled in the u-boot. But may be I missed something which may have disabled the SRIO in u-boot. 

    I haven't heard back from development team yet, but just followed up with my email.

    Rex

  • Rex,

    Yes you need to enable the domain clock for the SRIO:

    K2HK EVM #
    K2HK EVM #
    K2HK EVM # psc 11 en
    psc_enable_module(11) - OK
    K2HK EVM # md.l 0x2900000 1
    02900000: 44ab1902 ...D
    K2HK EVM #

    Thanks,
    Joe