[PATCH v8 06/11] lib: sbi: print add 'o' type

Himanshu Chauhan hchauhan at ventanamicro.com
Thu Jul 6 04:17:12 PDT 2023


Hi Xiang,

On 05/07/23 8:06 pm, Xiang W wrote:
> Add o type for print to print octal numbers
>
> Signed-off-by: Xiang W <wxjstz at 126.com>
> Reviewed-by: Anup Patel <anup at brainfault.org>
> ---
>   lib/sbi/sbi_console.c | 7 ++++---
>   1 file changed, 4 insertions(+), 3 deletions(-)
>
> diff --git a/lib/sbi/sbi_console.c b/lib/sbi/sbi_console.c
> index 7dd023f..2a43e16 100644
> --- a/lib/sbi/sbi_console.c
> +++ b/lib/sbi/sbi_console.c
> @@ -327,7 +327,8 @@ static int print(char **out, u32 *out_len, const char *format, va_list args)
>   					     width, flags, *format);
>   				continue;
>   			}
> -			if ((*format == 'u') || (*format == 'x') || (*format == 'X')) {
> +			if ((*format == 'u') || (*format == 'o')
> +					 || (*format == 'x') || (*format == 'X')) {
>   				pc += printi(out, out_len, va_arg(args, unsigned int),
>   					     width, flags, *format);
>   				continue;
> @@ -341,7 +342,7 @@ static int print(char **out, u32 *out_len, const char *format, va_list args)
>   				type = 'i';
>   				if (format[1] == 'l') {
>   					++format;
> -					if ((format[1] == 'u')
> +					if ((format[1] == 'u') || (format[1] == 'o')
>   							|| (format[1] == 'd') || (format[1] == 'i')
>   							|| (format[1] == 'x') || (format[1] == 'X')) {

With %ld format, I have seen than 'd' is printed as it is. Can you take 
care of that in this patch?

Regards

Himanshu


>   						++format;
> @@ -351,7 +352,7 @@ static int print(char **out, u32 *out_len, const char *format, va_list args)
>   						width, flags, type);
>   					continue;
>   				}
> -				if ((format[1] == 'u')
> +				if ((format[1] == 'u') || (format[1] == 'o')
>   						|| (format[1] == 'd') || (format[1] == 'i')
>   						|| (format[1] == 'x') || (format[1] == 'X')) {
>   					++format;

-- 
Thanks & Regards
Himanshu




More information about the opensbi mailing list