summaryrefslogtreecommitdiff
path: root/include/linux/fsi-occ.h
diff options
context:
space:
mode:
authorEddie James <eajames@linux.ibm.com>2021-10-19 23:53:04 +0300
committerJoel Stanley <joel@jms.id.au>2021-10-22 02:20:55 +0300
commit008d3825a805557464c5e75f9eb806a3aa2f5e6d (patch)
treecea694e044cfae8674f1afc7de26ee48538e3667 /include/linux/fsi-occ.h
parent908dbf0242e21dd95c69a1b0935814cd1abfc134 (diff)
downloadlinux-008d3825a805557464c5e75f9eb806a3aa2f5e6d.tar.xz
fsi: occ: Use a large buffer for responses
Allocate a large buffer for each OCC to handle response data. This removes memory allocation during an operation, and also allows for the maximum amount of SBE FFDC. Previously for the putsram and attn commands, only 32 words would have been available, and for getsram, only up to the size of the transfer. SBE FFDC might be up to 8Kb. The SBE interface expects data to be specified in units of words (4 bytes), defined as OCC_MAX_RESP_WORDS. This change allows the full FFDC capture to be implemented, where before it was not available. Signed-off-by: Eddie James <eajames@linux.ibm.com> Link: https://lore.kernel.org/r/20211019205307.36946-2-eajames@linux.ibm.com Signed-off-by: Joel Stanley <joel@jms.id.au>
Diffstat (limited to 'include/linux/fsi-occ.h')
-rw-r--r--include/linux/fsi-occ.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/include/linux/fsi-occ.h b/include/linux/fsi-occ.h
index d4cdc2aa6e33..7ee3dbd7f4b3 100644
--- a/include/linux/fsi-occ.h
+++ b/include/linux/fsi-occ.h
@@ -19,6 +19,8 @@ struct device;
#define OCC_RESP_CRIT_OCB 0xE3
#define OCC_RESP_CRIT_HW 0xE4
+#define OCC_MAX_RESP_WORDS 2048
+
int fsi_occ_submit(struct device *dev, const void *request, size_t req_len,
void *response, size_t *resp_len);