A few new errors have been added with SBI V3.0, maps them as close as
possible to errno values.

Signed-off-by: Clément Léger <cle...@rivosinc.com>
---
 arch/riscv/include/asm/sbi.h | 9 +++++++++
 1 file changed, 9 insertions(+)

diff --git a/arch/riscv/include/asm/sbi.h b/arch/riscv/include/asm/sbi.h
index bb077d0c912f..d11d22717b49 100644
--- a/arch/riscv/include/asm/sbi.h
+++ b/arch/riscv/include/asm/sbi.h
@@ -536,11 +536,20 @@ static inline int sbi_err_map_linux_errno(int err)
        case SBI_SUCCESS:
                return 0;
        case SBI_ERR_DENIED:
+       case SBI_ERR_DENIED_LOCKED:
                return -EPERM;
        case SBI_ERR_INVALID_PARAM:
+       case SBI_ERR_INVALID_STATE:
+       case SBI_ERR_BAD_RANGE:
                return -EINVAL;
        case SBI_ERR_INVALID_ADDRESS:
                return -EFAULT;
+       case SBI_ERR_NO_SHMEM:
+               return -ENOMEM;
+       case SBI_ERR_TIMEOUT:
+               return -ETIME;
+       case SBI_ERR_IO:
+               return -EIO;
        case SBI_ERR_NOT_SUPPORTED:
        case SBI_ERR_FAILURE:
        default:
-- 
2.47.2


Reply via email to