How to Read LTSSM State in T2081 CPU

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

How to Read LTSSM State in T2081 CPU

1,521 Views
viniamintokarch
Contributor II

I am trying to read the LTSSM state of the PCIe interface in my T2081 CPU using Codewarrior Tap. I believe that would be the PEX control/status register 0 or CSR0 register. I can't seem to find that register in the standard register list using the Debug tool in Codewarrior. Is it possible to read the LTSSM state using Codewarrior Tap?

 

Thanks,

Vinny

0 Kudos
4 Replies

1,494 Views
viniamintokarch
Contributor II

We were reading the wrong address. Since we are using PEX4 we needed offset 270000, so in u-boot the CRS0 address is 0xfe270f14 as mentioned above. In Linux you add an extra f so 0xffe270f14. When booted the LTSSM state is 0x11 as expected.

0xffe270f14 90000044 00FF0000 00000000 00008000

The difficulty now is trying to read that register while Link Training. It seems this is not possible using CodeWarrior Tap so we are attempting to create some code to do it and log the LTSSM register transitions.

Thanks,

Vinny

0 Kudos

1,507 Views
ufedor
NXP Employee
NXP Employee
It is needed to read 32-bit memory location with address 0xFE270F14 (for the PCIe4).
Refer to the CodeWarrior Development Studio for Power Architecture Processors Targeting Manual, 5.11 Viewing memory.

0 Kudos

1,504 Views
viniamintokarch
Contributor II

How can I read this location when the CPU is booting and link training? I don't have access to basic read/write commands during that time.

 

Thanks,

Vinny

0 Kudos

1,441 Views
ufedor
NXP Employee
NXP Employee

The LTSSM value is meaningful after the training is completed - i.e. it has to be 0x11 in normal case and something else in problem cases.

0 Kudos