On Wed, Nov 22, 2023 at 4:06 AM Samuel Holland <samuel.holland@xxxxxxxxxx> wrote: > > Hi Anup, > > On 2023-11-17 9:38 PM, Anup Patel wrote: > > 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 <apatel@xxxxxxxxxxxxxxxx> > > Reviewed-by: Andrew Jones <ajones@xxxxxxxxxxxxxxxx> > > --- > > 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. > > Regards, > Samuel > > > +#endif > > long sbi_get_mvendorid(void); > > long sbi_get_marchid(void); > > long sbi_get_mimpid(void); > Regards, Anup