Thread (19 messages) 19 messages, 5 authors, 2023-11-23

Re: [PATCH v4 1/5] RISC-V: Add stubs for sbi_console_putchar/getchar()

From: Samuel Holland <samuel.holland@sifive.com>
Date: 2023-11-23 14:45:21
Also in: linux-riscv, linux-serial, lkml

Hi Anup,

On 2023-11-23 4:38 AM, Anup Patel wrote:
On Wed, Nov 22, 2023 at 4:06 AM Samuel Holland
[off-list ref] wrote:
quoted
On 2023-11-17 9:38 PM, Anup Patel wrote:
quoted
The functions sbi_console_putchar() and sbi_console_getchar() are
not defined when CONFIG_RISCV_SBI_V01 is disabled so let us add
stub of these functions to avoid "#ifdef" on user side.

Signed-off-by: Anup Patel <redacted>
Reviewed-by: Andrew Jones <redacted>
---
 arch/riscv/include/asm/sbi.h | 5 +++++
 1 file changed, 5 insertions(+)
diff --git a/arch/riscv/include/asm/sbi.h b/arch/riscv/include/asm/sbi.h
index 0892f4421bc4..66f3933c14f6 100644
--- a/arch/riscv/include/asm/sbi.h
+++ b/arch/riscv/include/asm/sbi.h
@@ -271,8 +271,13 @@ struct sbiret sbi_ecall(int ext, int fid, unsigned long arg0,
                      unsigned long arg3, unsigned long arg4,
                      unsigned long arg5);

+#ifdef CONFIG_RISCV_SBI_V01
 void sbi_console_putchar(int ch);
 int sbi_console_getchar(void);
+#else
+static inline void sbi_console_putchar(int ch) { }
+static inline int sbi_console_getchar(void) { return -ENOENT; }
"The SBI call returns the byte on success, or -1 for failure."

So -ENOENT is not really an appropriate value to return here.
Actually, I had -1 over here previously but based on GregKH's
suggestion, we are now returning proper Linux error code here.

Also, all users of sbi_console_getchar() onlyl expect a negative
value upon error so better to return proper Linux error code.
Alright, makes sense to me.

Regards,
Samuel
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help