Using the API for Reset Management - 2021.1 English

Versal ACAP System Software Developers Guide (UG1304)

Document ID
UG1304
Release Date
2021-06-16
Version
2021.1 English

There are EEMI APIs available which allow PUs to manage reset lines in the system. Each reset is identified by a unique ResetId. In case of Linux as a PM master, a set of available ResetIds are obtained from the device tree. Before a PM master can modify state of a reset line, it should request the slave device that is associated with that reset. See the XPm_RequestNode API in OS and Libraries Document Collection (UG643) for more information.

Use the following APIs to manage resets:

  • XStatus XPm_ResetGetStatus(const u32 ResetId, u32 *const State)
    • State is either 1 (asserted), or 2 (released)
  • XStatus XPm_ResetAssert(const u32 ResetId, const u32 Action)
    • Action is either 0 (reset_release), 1 (reset_assert), or 2 (reset_pulse)