aboutsummaryrefslogtreecommitdiff
path: root/include/pau.h
diff options
context:
space:
mode:
authorChristophe Lombard <clombard@linux.vnet.ibm.com>2021-10-14 17:57:02 +0200
committerVasant Hegde <hegdevasant@linux.vnet.ibm.com>2021-10-19 12:26:01 +0530
commitd5b79b2e9bb63ec18b5b5e4d027d5d1d1b0a4e28 (patch)
tree1f88a34106d1a9c1c238588ebc3f90e4b4f74b5d /include/pau.h
parente89e5b9b76923ac284bb68c3083e4bd1524e450b (diff)
downloadskiboot-d5b79b2e9bb63ec18b5b5e4d027d5d1d1b0a4e28.zip
skiboot-d5b79b2e9bb63ec18b5b5e4d027d5d1d1b0a4e28.tar.gz
skiboot-d5b79b2e9bb63ec18b5b5e4d027d5d1d1b0a4e28.tar.bz2
pau: update current opal call functions
Update the content of three current OPAL API calls to support PAU. - OPAL_NPU_SPA_SETUP The Shared Process Area (SPA) is a table containing one entry (a "Process Element") per memory context which can be accessed by the OpenCAPI device. - OPAL_NPU_SPA_CLEAR_CACHE The PAU keeps a cache of recently accessed memory contexts. When a Process Element is removed from the SPA, the cache for the link must be cleared. - OPAL_NPU_TL_SET The Transaction Layer specification defines several templates for messages to be exchanged on the link. During link setup, the host and device must negotiate what templates are supported on both sides and at what rates those messages can be sent. Signed-off-by: Christophe Lombard <clombard@linux.vnet.ibm.com> Reviewed-by: Frederic Barrat <fbarrat@linux.ibm.com> Signed-off-by: Vasant Hegde <hegdevasant@linux.vnet.ibm.com>
Diffstat (limited to 'include/pau.h')
-rw-r--r--include/pau.h7
1 files changed, 7 insertions, 0 deletions
diff --git a/include/pau.h b/include/pau.h
index c0a0940..894007d 100644
--- a/include/pau.h
+++ b/include/pau.h
@@ -200,6 +200,13 @@ static inline uint64_t pau_read(struct pau *pau, uint64_t reg)
}
void pau_opencapi_dump_scoms(struct pau *pau);
+int64_t pau_opencapi_spa_setup(struct phb *phb, uint32_t __unused bdfn,
+ uint64_t addr, uint64_t PE_mask);
+int64_t pau_opencapi_spa_clear_cache(struct phb *phb,
+ uint32_t __unused bdfn,
+ uint64_t PE_handle);
+int64_t pau_opencapi_tl_set(struct phb *phb, uint32_t __unused bdfn,
+ long capabilities, char *rate_buf);
/* PHY */
int pau_dev_phy_reset(struct pau_dev *dev);