mirror of
https://github.com/u-boot/u-boot.git
synced 2025-05-08 19:11:53 +00:00
lib: Add a function to convert a string to a hex value
Add an xtoa() function, similar to itoa() but for hex instead. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Artem Lapkin <email2tema@gmail.com> Tested-by: Artem Lapkin <email2tema@gmail.com>
This commit is contained in:
parent
3bfb0f719a
commit
4a255ea3b6
3 changed files with 56 additions and 4 deletions
|
@ -816,11 +816,12 @@ int vprintf(const char *fmt, va_list args)
|
|||
}
|
||||
#endif
|
||||
|
||||
static char local_toa[22];
|
||||
|
||||
char *simple_itoa(ulong i)
|
||||
{
|
||||
/* 21 digits plus null terminator, good for 64-bit or smaller ints */
|
||||
static char local[22];
|
||||
char *p = &local[21];
|
||||
char *p = &local_toa[21];
|
||||
|
||||
*p-- = '\0';
|
||||
do {
|
||||
|
@ -830,6 +831,21 @@ char *simple_itoa(ulong i)
|
|||
return p + 1;
|
||||
}
|
||||
|
||||
char *simple_xtoa(ulong num)
|
||||
{
|
||||
/* 16 digits plus nul terminator, good for 64-bit or smaller ints */
|
||||
char *p = &local_toa[17];
|
||||
|
||||
*--p = '\0';
|
||||
do {
|
||||
p -= 2;
|
||||
hex_byte_pack(p, num & 0xff);
|
||||
num >>= 8;
|
||||
} while (num > 0);
|
||||
|
||||
return p;
|
||||
}
|
||||
|
||||
/* We don't seem to have %'d in U-Boot */
|
||||
void print_grouped_ull(unsigned long long int_val, int digits)
|
||||
{
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue