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 processor
node, a set of available ResetIds are obtained from the device tree. Before a processor
node can modify state of a reset line, it should request the peripheral device that is
associated with that reset. See the XPm_RequestNode
API
in
BSP 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)