Re: [PATCH] toradex: configblock: fix module revision in config block

2021-04-20 Thread Tom Rini
On Wed, Apr 07, 2021 at 03:28:24PM +0300, denys.droz...@toradex.com wrote:

> From: Denys Drozdov 
> 
> U-boot might display wrong module revision information
> for modules with an assembly version 'K'. "cfgblock create"
> does not takes into account all revision digits from PID8.
> 
> This fix takes into account all digits of PID8
> to store module revision.
> 
> Signed-off-by: Denys Drozdov 
> Reviewed-by: Oleksandr Suvorov 

Applied to u-boot/master, thanks!

-- 
Tom


signature.asc
Description: PGP signature


Re: [PATCH] toradex: configblock: fix module revision in config block

2021-04-07 Thread Oleksandr Suvorov
On Wed, Apr 7, 2021 at 3:31 PM  wrote:
>
> From: Denys Drozdov 
>
> U-boot might display wrong module revision information
> for modules with an assembly version 'K'. "cfgblock create"
> does not takes into account all revision digits from PID8.
>
> This fix takes into account all digits of PID8
> to store module revision.
>
> Signed-off-by: Denys Drozdov 

Reviewed-by: Oleksandr Suvorov 

> ---
>  board/toradex/common/tdx-cfg-block.c | 4 +++-
>  1 file changed, 3 insertions(+), 1 deletion(-)
>
> diff --git a/board/toradex/common/tdx-cfg-block.c 
> b/board/toradex/common/tdx-cfg-block.c
> index adab0a0802..9be58d538b 100644
> --- a/board/toradex/common/tdx-cfg-block.c
> +++ b/board/toradex/common/tdx-cfg-block.c
> @@ -555,6 +555,8 @@ static int get_cfgblock_interactive(void)
>  static int get_cfgblock_barcode(char *barcode, struct toradex_hw *tag,
> u32 *serial)
>  {
> +   char revision[3] = {barcode[6], barcode[7], '\0'};
> +
> if (strlen(barcode) < 16) {
> printf("Argument too short, barcode is 16 chars long\n");
> return -1;
> @@ -563,7 +565,7 @@ static int get_cfgblock_barcode(char *barcode, struct 
> toradex_hw *tag,
> /* Get hardware information from the first 8 digits */
> tag->ver_major = barcode[4] - '0';
> tag->ver_minor = barcode[5] - '0';
> -   tag->ver_assembly = barcode[7] - '0';
> +   tag->ver_assembly = simple_strtoul(revision, NULL, 10);
>
> barcode[4] = '\0';
> tag->prodid = simple_strtoul(barcode, NULL, 10);
> --
> 2.17.1
>


-- 
Best regards
Oleksandr Suvorov

Toradex AG
Ebenaustrasse 10 | 6048 Horw | Switzerland | T: +41 41 500 48 00


[PATCH] toradex: configblock: fix module revision in config block

2021-04-07 Thread denys . drozdov
From: Denys Drozdov 

U-boot might display wrong module revision information
for modules with an assembly version 'K'. "cfgblock create"
does not takes into account all revision digits from PID8.

This fix takes into account all digits of PID8
to store module revision.

Signed-off-by: Denys Drozdov 
---
 board/toradex/common/tdx-cfg-block.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/board/toradex/common/tdx-cfg-block.c 
b/board/toradex/common/tdx-cfg-block.c
index adab0a0802..9be58d538b 100644
--- a/board/toradex/common/tdx-cfg-block.c
+++ b/board/toradex/common/tdx-cfg-block.c
@@ -555,6 +555,8 @@ static int get_cfgblock_interactive(void)
 static int get_cfgblock_barcode(char *barcode, struct toradex_hw *tag,
u32 *serial)
 {
+   char revision[3] = {barcode[6], barcode[7], '\0'};
+
if (strlen(barcode) < 16) {
printf("Argument too short, barcode is 16 chars long\n");
return -1;
@@ -563,7 +565,7 @@ static int get_cfgblock_barcode(char *barcode, struct 
toradex_hw *tag,
/* Get hardware information from the first 8 digits */
tag->ver_major = barcode[4] - '0';
tag->ver_minor = barcode[5] - '0';
-   tag->ver_assembly = barcode[7] - '0';
+   tag->ver_assembly = simple_strtoul(revision, NULL, 10);
 
barcode[4] = '\0';
tag->prodid = simple_strtoul(barcode, NULL, 10);
-- 
2.17.1