XSem_Ssit_CmdGetStatus - 2023.1 English

Standalone Library Documentation: BSP and Libraries Document Collection (UG643)

Document ID
UG643
Release Date
2023-05-16
Version
2023.1 English

This function is used to get the SEM status register values from all SLRs in SSIT device.

Prototype

XStatus XSem_Ssit_CmdGetStatus(XIpiPsu *IpiInst, XSemIpiResp *Resp, u32 TargetSlr, XSemStatus *StatusInfo);

Parameters

The following table lists the XSem_Ssit_CmdGetStatus function arguments.

Table 1. XSem_Ssit_CmdGetStatus Arguments
Type Member Description
XIpiPsu * IpiInst Pointer to IPI driver instance
XSemIpiResp * Resp Structure Pointer of IPI response
  • Resp->RespMsg1: Acknowledgment ID of get Cfr status(0x1030D)
  • Resp->RespMsg2: SLR Index in which the command is executed
u32 TargetSlr Target SLR index on which command is to be executed
  • 0x0 : Target is master only
  • 0x1 : Target is slave 0 only
  • 0x2 : Target is slave 1 only
  • 0x3 : Target is slave 2 only
XSemStatus * StatusInfo Structure Pointer with SEM Status details
  • StatusInfo->NpiStatus: Provides details about NPI scan
    • Bit [31]: 0 - No error, SHA-3 engine is present 1 - Cryptographic acceleration blocks are disabled for export compliance. No support for NPI scan, an event will be sent to R5
    • Bit [30]: 0 - NPI scan is running for scheduled interval 1 - Indicates NPI scan failed to run on scheduled interval. If NPI scan is not executed as per the configured periodicity, the error will notified to R5 user. The scan will continue to run
    • Bit [29]: 0- No descriptor missed during scanning 1- Indicates NPI scan failed to scan all descriptors completely (excluding arbitration failures). This will be notified to R5 user and the scan will continue to run.
    • Bit [28]: 0 - NPI scan executing within budget time 1 - Indicates NPI scan has exceeded maximum budget execution time of 20ms. This will be notified to R5 user and the scan will continue to run.
    • Bit [27]: 0 - No error in SLR to SLR communication 1 - Indicates failure in SSIT internal communication channel This bit is applicable for SSIT devices.
    • Bit [26]: Reserved
    • Bit [25]: 0 - No error in PMC_PL_GPO 1 - Indicates GPO Initialization or write failed. This is HW failure. In this condition, the scan will be stopped, and notification will be sent to R5
    • Bit [24]: 0 - No error SHA-3 engine 1 - Indicates SHA engine failed to function during initialization or start or DMA transfer. This is HW failure. In this condition, the scan will be stopped, and notification will be sent to R5
    • Bit [23]: 0 - No error in register writes 1 - Indicates the register write and read back failure occurred during the scan. This is HW failure. In this condition, the scan will be stopped, and notification will be sent to R5
    • Bit [22]: Reserved
    • Bit [21]: 0 - No error in DDR calibration 1 - Indicates NPI DDRMC Main Slave Arbitration Timeout occurred during the scan. If the DDRMC calibration is not done, the descriptor will be skipped and scan will continue to run for next descriptor
    • Bit [20]: 0 - No error in descriptor format 1 - Indicates NPI Descriptor has invalid format. This failure indicates that there is some corruption in the XilSEM NPI descriptor data. The scan will be stopped, and notification will be sent to R5
    • Bit [19]: 0 - No error in NPI Descriptor SHA header 1 - Indicates NPI Descriptor SHA Header mismatch occurred during the scan. This failure indicates that there is some corruption in the XilSEM NPI descriptor data. The scan will be stopped, and notification will be sent to R5
    • Bit [18]: 0 - NPI descriptors are present in the memory 1 - Indicates the absence of NPI Descriptor (Zero descriptors) This failure indicates that there is some corruption in the XilSEM NPI descriptor data. The scan will be stopped, and notification will be sent to R5
    • Bit [17]: 0 - No error in SHA comparison during run time 1- Indicates SHA comparison failure occurred during run time. This failure indicates that there is some bit flip in the NPI registers. The scan will be stopped and an event will be sent to R5
    • Bit [16]: 0 - No error in SHA comparison during first scan 1- Indicates SHA comparison failure occurred during initialization. This failure indicates that there is some bit flip in the NPI registers. The scan will be stopped and an event will be sent to R5
    • Bit [15-12]: Reserved
    • Bit [11]: 0 - NPI scan task is not added to PLM Scheduler to run periodically 1 - NPI scan task is added to PLM Scheduler to run periodically This bit is for NPI scan state information.
    • Bit [10]: NPI scan is suspended 0 - NPI scan is not suspended 1 - NPI scan is suspended due to errors This bit is for NPI scan state information.
    • Bit [09]: 0 - NPI scan initialization is not done 1 - NPI scan initialization is done This bit is for NPI scan state information.
    • Bit [08]: 0 - NPI scan is present in the design 1 - NPI scan disabled in the design This bit is for NPI scan state information.
    • Bit [07-06]: Reserved
    • Bit [05]: 0 - No internal error 1 - NPI scan is in error state (due to timeouts, invalid descriptors) This bit is for NPI scan state information.
    • Bit [04]: 0 - No error in NPI Scan 1 - NPI scan in SHA comparison mismatch error state. This bit is for NPI scan state information.
    • Bit [03]: 0 - NPI scan is not in SHA error inject state 1 - NPI scan is in SHA error inject state. This bit is for NPI scan state information.
    • Bit [02]: 0 - NPI scan is not in scan state 1 - NPI scan is in scan state. This bit is for NPI scan state information.
    • Bit [01]: 0 - NPI scan is not in initialization state 1 - NPI scan is in initialization state This bit is for NPI scan state information.
    • Bit [00]: 0 - NPI scan is not in idle state 1 - NPI scan is in idle state This bit is for NPI scan state information.
  • StatusInfo->SlvSkipCnt: Provides NPI descriptor slave skip counter value if arbitration failure. This is 8 words result to accommodate 32 1-Byte skip counters for individual slaves arbitration failures. Slaves can be DDRMC Main, GT for which arbitration is required before performing scanning.
  • StatusInfo->ScanCnt: NPI scan counter value. This counter represents number of periodic scan cycle completion.
  • StatusInfo->HbCnt: NPI heart beat counter value. This counter represents number of scanned descriptor slaves.
  • StatusInfo->ErrInfo: NPI scan error information if SHA mismatch is detected. This is 2 word information.
    • Word 0: Node ID of descriptor for which SHA mismatch is detected
    • Word 1 Bit [15-8]: NPI descriptor index number
    • Word 1 Bit [7-0]: NPI Slave Skip count Index
  • StatusInfo->CramStatus: Provides details about CRAM scan
    • Bit [31-25]: Reserved
    • Bit [24:20]: CRAM Error codes
      • 00001: Unexpected CRC error when CRAM is not in observation state
      • 00010: Unexpected ECC error when CRAM is not in Observation or Initialization state
      • 00011: Safety write error in SEU handler
      • 00100: ECC/CRC ISR not found in any Row
      • 00101: CRAM Initialization is not done
      • 00110: CRAM Start Scan failure
      • 00111: CRAM Stop Scan failure
      • 01000: Invalid Row for Error Injection
      • 01001: Invalid QWord for Error Injection
      • 01010: Invalid Bit for Error Injection
      • 01011: Invalid Frame Address for Error Injection
      • 01100: Unexpected Bit flip during Error Injection
      • 01101: Masked Bit during Injection
      • 01110: Invalid Block Type for Error Injection
      • 01111: CRC or Uncorrectable Error or correctable error(when correction is disabled) is active in CRAM
      • 10000: ECC or CRC Error detected during CRAM Calibration in case of SWECC
    • Bit [19-18]: Reserved
    • Bit [17]: 0: CRAM scan is enabled in design 1: CRAM scan is disabled in design
    • Bit [16]: 0: CRAM scan is not initialized 1: CRAM Initialization is completed This bit is for CRAM scan state
    • Bit [15-14]: CRAM Correctable ECC error status
      • 00: No Correctable error encountered
      • 01: Correctable error detected and corrected
      • 10: Correctable error detected but not corrected (Correction is disabled)
      • 11: Reserved
    • Bit [13]: 0: No error in CRAM scan 1: CRAM scan has internal error (Null pointer access/Safety write error) In this error condition, scan will be stopped and an event will be sent to R5.
    • Bit [12]: 0: No error in error decoding 1: Invalid Error Location is reported In this error condition, scan will be stopped and an event will be sent to R5.
    • Bit [11]: 0: No correctable error detected 1: Correctable ECC error detected In this condition, an event will be sent to R5. If correection is disabled, then scan will be stopped. Else, scan will continue to run.
    • Bit [10]: 0: No CRC error 1: CRC error is detected by CRAM. In this error condition, scan will be stopped and an event will be sent to R5.
    • Bit [09]: 0: No uncorrectable error 1: Uncorrectable ECC error is detected In this error condition, scan will be stopped and an event will be sent to R5.
    • Bit [08]: 0: No error in CRAM scan start-up test 1: CRAM start-up test failure In this error condition, scan will be stopped.
    • Bit [07]: 0: No error during CRAM calibration` 1: CRAM Calibration Timeout error In this error condition, scan will be stopped and an event will be sent to R5.
    • Bit [06]: 0: CRAM scan is not in the fatal state 1: CRAM scan is in the fatal state This bit is for CRAM scan state.
    • Bit [05]: 0: CRAM scan is not in the error injection state 1: CRAM scan is in the error injection state This bit is for CRAM scan state.
    • Bit [04]: 0: CRAM scan is not in the idle state 1: CRAM scan is in the idle state This bit is for CRAM scan state.
    • Bit [03]: 0: CRAM scan is not in the correction state 1: CRAM scan is in the correction state This bit is for CRAM scan state.
    • Bit [02]: 0: CRAM scan is not in the observation state 1: CRAM scan is in the observation state This bit is for CRAM scan state.
    • Bit [01]: 0: CRAM scan is not in the Initialization state 1: CRAM scan is in the Initialization state This bit is for CRAM scan state.
    • Bit [00]: CRAM Scan is included in design This bit is for CRAM scan state.
  • StatusInfo->ErrAddrL: This stores the low address of the last 7 corrected error details if correction is enabled in design.
    • Bit [31:28]: Reserved
    • Bit [27:23]: QWord location where error was detected
    • Bit [22:16]: Bit location where error was detected
    • Bit [15:2]: Reserved
    • Bit [1:0]: Define validity of error address.
      • 00: Info not available
      • 01: Address out of range
      • 10: Reserved
      • 11: Address valid
  • StatusInfo->ErrAddrH: This stores the high address of the last 7 corrected error details if correction is enabled in design.
    • Bits[31:27]: Reserved
    • Bits[26:23]: Row number where error was detected
    • Bits[22:20]: Block type of the frame
    • Bits[19:0]: Frame address where error was detected
  • StatusInfo->ErrCorCnt: Counter value of Correctable Error Bits

Returns

This API returns the success or failure.
  • XST_FAILURE: If NULL pointer reference of CfrStatusInfo
  • XST_SUCCESS: On successful read from PMC RAM