Platform Management Layers - 2023.2 English

Versal Adaptive SoC System Software Developers Guide (UG1304)

Document ID
UG1304
Release Date
2023-10-18
Version
2023.2 English

The following API layers are included in the platform management implementation for the Versal devices:

XilPM (client)
Library layer used by standalone applications in the different processing units, such as the APU, RPU, and PL-MicroBlaze.
Note: For PL-MicroBlaze only the following APIs are supported:
  • GetApiVersion
  • DevIoctl
  • DevIoctl2
XilPM (server)
Library layer part of the PLM that handles the requests that are passed from the XilPM client layer through IPIs.
TF-A
The TF-A contains its own implementation of the client-side PM framework. It is currently used by the Linux OS.
PLM
The PLM receives IPI packets and passes platform management requests to the XilPM server.
PSM Firmware
Invoked by the XilPM server to control power islands and power domains of PS.

For more details on PMC, PSM, and power domain hardware topics, see the Versal Adaptive SoC Technical Reference Manual (AM011).

The following figure shows the interaction between the APU, the RPU, and the platform management APIs.

Figure 1. API Layers Used Only With Bare-Metal Applications

If the APU runs a complete software stack with an operating system, it does not use the XilPM library. Instead, the TF-A running at EL3 implements the client-side XilPM API and provides a secure monitor call (SMC)-based interface to the software running at EL2, SEL1, or EL1 depending on the system architecture of Versal devices.

For more details on the Armv8 architecture and its different execution modes, see Execution Modes.

The following figure illustrates the platform management layers that are involved when running a full software stack on the APU.

Figure 2. Platform Management Layers Involved When Running a Full Software Stack on the APU