[PATCH 1/3] include: debug_ll: define puthexc_ll

Sascha Hauer sha at pengutronix.de
Wed Nov 2 01:26:48 PDT 2022


On Wed, Oct 19, 2022 at 02:38:15PM +0200, Ahmad Fatoum wrote:
> puthex_ll prints a single zero-padded unsigned long, which for a single
> byte is not very readable, especially on 64-bit systems. Define
> puthexc_ll() as well, which just accepts a byte and formats its nibbles
> as hexadecimal characters.
> 
> Signed-off-by: Ahmad Fatoum <a.fatoum at pengutronix.de>
> ---
>  include/debug_ll.h | 16 ++++++++++++++--
>  1 file changed, 14 insertions(+), 2 deletions(-)

Applied, thanks

Sascha

> 
> diff --git a/include/debug_ll.h b/include/debug_ll.h
> index 735033b314cc..856a157bf52c 100644
> --- a/include/debug_ll.h
> +++ b/include/debug_ll.h
> @@ -33,17 +33,25 @@ static inline void putc_ll(char value)
>  	PUTC_LL(value);
>  }
>  
> -static inline void puthex_ll(unsigned long value)
> +static inline void puthexc_ll(unsigned char value)
>  {
>  	int i; unsigned char ch;
>  
> -	for (i = sizeof(unsigned long) * 2; i--; ) {
> +	for (i = 2; i--; ) {
>  		ch = ((value >> (i * 4)) & 0xf);
>  		ch += (ch >= 10) ? 'a' - 10 : '0';
>  		putc_ll(ch);
>  	}
>  }
>  
> +static inline void puthex_ll(unsigned long value)
> +{
> +	int i;
> +
> +	for (i = sizeof(unsigned long); i--; )
> +		puthexc_ll(value >> (i * 8));
> +}
> +
>  /*
>   * Be careful with puts_ll, it only works if the binary is running at the
>   * link address which often is not the case during early startup. If in doubt
> @@ -66,6 +74,10 @@ static inline void putc_ll(char value)
>  {
>  }
>  
> +static inline void puthexc_ll(unsigned char value)
> +{
> +}
> +
>  static inline void puthex_ll(unsigned long value)
>  {
>  }
> -- 
> 2.30.2
> 
> 
> 

-- 
Pengutronix e.K.                           |                             |
Steuerwalder Str. 21                       | http://www.pengutronix.de/  |
31137 Hildesheim, Germany                  | Phone: +49-5121-206917-0    |
Amtsgericht Hildesheim, HRA 2686           | Fax:   +49-5121-206917-5555 |



More information about the barebox mailing list