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.

Addressing for the Maintenance packets from the external PE

I guess the Maintenance packets from the external PE (processing element) can only access to the CSR/CAR Registers in the KeyStone Device.

If the Config_offset field is 0000h, is the REVISION_REG (1000h) accessed or is the DEV_ID (B000h) accessed?
If it is the REVISION_REG (1000h), does an error occur?

For the SRIO Registers does the Config_offset field specify "SRIO Register Offset minus 1000h"?
For example, if the Config_offset field is A060h, the BASE_ID (B060h) is accessed.

Best regards,

Daisuke

 

  • Daisuke Maeda said:
    I guess the Maintenance packets from the external PE (processing element) can only access to the CSR/CAR Registers in the KeyStone Device.

    Correct.

    Daisuke Maeda said:
    If the Config_offset field is 0000h, is the REVISION_REG (1000h) accessed or is the DEV_ID (B000h) accessed?
    If it is the REVISION_REG (1000h), does an error occur?

    Maintenance packets are addressed via the RapidIO defined offset.  If you specify a read to 0x0000 with a maintenance packet, you will get the contents of the RIO_DEV_ID register.  If you specify a read to 0x1000 with a maintenance packet, you would read the contents of RIO_ERR_RPT_BH.  We simply use a B000h offset in our internal memory map, so subtract B000h from our user guide offsets when determining SRIO Config_offset.

    Regards,

    Travis

  • Hi Travis,

    Thank you for your reply.

    Best regards,

    Daisuke