diff options
author | Suraj Jitindar Singh <sjitindarsingh@gmail.com> | 2016-06-29 13:38:38 +1000 |
---|---|---|
committer | Michael Ellerman <mpe@ellerman.id.au> | 2016-06-29 17:33:18 +1000 |
commit | d0226d315dba5e401a124b394a1af5e35e082b08 (patch) | |
tree | 1cd2e85e40b4e49bc53c7de0232d56f69f6daadf /arch/powerpc/include/asm/opal.h | |
parent | 1ae88fd54c3ac31f68f91e37f719be7e2dbcc810 (diff) | |
download | op-kernel-dev-d0226d315dba5e401a124b394a1af5e35e082b08.zip op-kernel-dev-d0226d315dba5e401a124b394a1af5e35e082b08.tar.gz |
powerpc/opal: Add inline function to get rc from an ASYNC_COMP opal_msg
An opal_msg of type OPAL_MSG_ASYNC_COMP contains the return code in the
params[1] struct member. However this isn't intuitive or obvious when
reading the code and requires that a user look at the skiboot
documentation or opal-api.h to verify this.
Add an inline function to get the return code from an opal_msg and update
call sites accordingly.
Signed-off-by: Suraj Jitindar Singh <sjitindarsingh@gmail.com>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
Diffstat (limited to 'arch/powerpc/include/asm/opal.h')
-rw-r--r-- | arch/powerpc/include/asm/opal.h | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/arch/powerpc/include/asm/opal.h b/arch/powerpc/include/asm/opal.h index fa71fea..9ab52e2 100644 --- a/arch/powerpc/include/asm/opal.h +++ b/arch/powerpc/include/asm/opal.h @@ -282,6 +282,14 @@ extern int opal_error_code(int rc); ssize_t opal_msglog_copy(char *to, loff_t pos, size_t count); +static inline int opal_get_async_rc(struct opal_msg msg) +{ + if (msg.msg_type != OPAL_MSG_ASYNC_COMP) + return OPAL_PARAMETER; + else + return be64_to_cpu(msg.params[1]); +} + #endif /* __ASSEMBLY__ */ #endif /* _ASM_POWERPC_OPAL_H */ |