Browse Source

feat(xilinx): setup local/remote id in header

Use new macros IPI_LOCAL_ID/IPI_REMOTE_ID to specify source and
destination channels.

Change-Id: I558eebb4d4a83ae0ca9316824f9dba7426adbe3f
Signed-off-by: Michal Simek <michal.simek@amd.com>
pull/1982/merge
Michal Simek 2 years ago
committed by Joanna Farley
parent
commit
068b0bc6e3
  1. 3
      plat/xilinx/versal/include/plat_ipi.h
  2. 4
      plat/xilinx/versal/pm_service/pm_client.c
  3. 3
      plat/xilinx/versal_net/include/plat_ipi.h
  4. 4
      plat/xilinx/versal_net/pm_service/pm_client.c
  5. 3
      plat/xilinx/zynqmp/include/plat_ipi.h
  6. 4
      plat/xilinx/zynqmp/pm_service/pm_client.c

3
plat/xilinx/versal/include/plat_ipi.h

@ -29,6 +29,9 @@
********************************************************************/ ********************************************************************/
#define IPI_BUFFER_BASEADDR 0xFF3F0000U #define IPI_BUFFER_BASEADDR 0xFF3F0000U
#define IPI_LOCAL_ID IPI_ID_APU
#define IPI_REMOTE_ID IPI_ID_PMC
#define IPI_BUFFER_LOCAL_BASE (IPI_BUFFER_BASEADDR + 0x400U) #define IPI_BUFFER_LOCAL_BASE (IPI_BUFFER_BASEADDR + 0x400U)
#define IPI_BUFFER_REMOTE_BASE (IPI_BUFFER_BASEADDR + 0x200U) #define IPI_BUFFER_REMOTE_BASE (IPI_BUFFER_BASEADDR + 0x200U)

4
plat/xilinx/versal/pm_service/pm_client.c

@ -29,8 +29,8 @@
DEFINE_BAKERY_LOCK(pm_client_secure_lock); DEFINE_BAKERY_LOCK(pm_client_secure_lock);
static const struct pm_ipi apu_ipi = { static const struct pm_ipi apu_ipi = {
.local_ipi_id = IPI_ID_APU, .local_ipi_id = IPI_LOCAL_ID,
.remote_ipi_id = IPI_ID_PMC, .remote_ipi_id = IPI_REMOTE_ID,
.buffer_base = IPI_BUFFER_LOCAL_BASE, .buffer_base = IPI_BUFFER_LOCAL_BASE,
}; };

3
plat/xilinx/versal_net/include/plat_ipi.h

@ -31,6 +31,9 @@
********************************************************************/ ********************************************************************/
#define IPI_BUFFER_BASEADDR (0xEB3F0000U) #define IPI_BUFFER_BASEADDR (0xEB3F0000U)
#define IPI_LOCAL_ID IPI_ID_APU
#define IPI_REMOTE_ID IPI_ID_PMC
#define IPI_BUFFER_LOCAL_BASE (IPI_BUFFER_BASEADDR + 0x400U) #define IPI_BUFFER_LOCAL_BASE (IPI_BUFFER_BASEADDR + 0x400U)
#define IPI_BUFFER_REMOTE_BASE (IPI_BUFFER_BASEADDR + 0x200U) #define IPI_BUFFER_REMOTE_BASE (IPI_BUFFER_BASEADDR + 0x200U)

4
plat/xilinx/versal_net/pm_service/pm_client.c

@ -60,8 +60,8 @@ static inline void pm_client_lock_release(void)
#endif #endif
static const struct pm_ipi apu_ipi = { static const struct pm_ipi apu_ipi = {
.local_ipi_id = IPI_ID_APU, .local_ipi_id = IPI_LOCAL_ID,
.remote_ipi_id = IPI_ID_PMC, .remote_ipi_id = IPI_REMOTE_ID,
.buffer_base = IPI_BUFFER_LOCAL_BASE, .buffer_base = IPI_BUFFER_LOCAL_BASE,
}; };

3
plat/xilinx/zynqmp/include/plat_ipi.h

@ -34,6 +34,9 @@
********************************************************************/ ********************************************************************/
#define IPI_BUFFER_BASEADDR 0xFF990000U #define IPI_BUFFER_BASEADDR 0xFF990000U
#define IPI_LOCAL_ID IPI_ID_APU
#define IPI_REMOTE_ID IPI_ID_PMU0
#define IPI_BUFFER_LOCAL_BASE (IPI_BUFFER_BASEADDR + 0x400U) #define IPI_BUFFER_LOCAL_BASE (IPI_BUFFER_BASEADDR + 0x400U)
#define IPI_BUFFER_REMOTE_BASE (IPI_BUFFER_BASEADDR + 0xE00U) #define IPI_BUFFER_REMOTE_BASE (IPI_BUFFER_BASEADDR + 0xE00U)

4
plat/xilinx/zynqmp/pm_service/pm_client.c

@ -36,8 +36,8 @@
DEFINE_BAKERY_LOCK(pm_client_secure_lock); DEFINE_BAKERY_LOCK(pm_client_secure_lock);
static const struct pm_ipi apu_ipi = { static const struct pm_ipi apu_ipi = {
.local_ipi_id = IPI_ID_APU, .local_ipi_id = IPI_LOCAL_ID,
.remote_ipi_id = IPI_ID_PMU0, .remote_ipi_id = IPI_REMOTE_ID,
.buffer_base = IPI_BUFFER_LOCAL_BASE, .buffer_base = IPI_BUFFER_LOCAL_BASE,
}; };

Loading…
Cancel
Save