[U-Boot] [PATCH] rockchip: misc: read the correct number of bytes from the efuse
Kever Yang
kever.yang at rock-chips.com
Fri Sep 27 00:58:19 UTC 2019
On 2019/9/26 上午2:40, Heiko Stuebner wrote:
> Originally the cpuid var the value gets read into was defined as
> u8 cpuid[RK3399_CPUID_LEN];
> hence the sizeof(cpuid) would return the correct the correct number
> of array elements.
>
> With the move to a separate function cpuid becomes a pointer and
> sizeof(cpuid) hence returns the pointer size - 8 in the arm64 case.
>
> We do have the actual id length available as function param so use
> it for actual amount of bytes to read.
>
> Fixes: 04825384999f ("rockchip: rk3399: derive ethaddr from cpuid")
> Signed-off-by: Heiko Stuebner <heiko at sntech.de>
Reviewed-by: Kever Yang<kever.yang at rock-chips.com>
Thanks,
- Kever
> ---
> arch/arm/mach-rockchip/misc.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/arch/arm/mach-rockchip/misc.c b/arch/arm/mach-rockchip/misc.c
> index 4423b296b1..bed4317f7e 100644
> --- a/arch/arm/mach-rockchip/misc.c
> +++ b/arch/arm/mach-rockchip/misc.c
> @@ -75,7 +75,7 @@ int rockchip_cpuid_from_efuse(const u32 cpuid_offset,
> }
>
> /* read the cpu_id range from the efuses */
> - ret = misc_read(dev, cpuid_offset, cpuid, sizeof(cpuid));
> + ret = misc_read(dev, cpuid_offset, cpuid, cpuid_length);
> if (ret) {
> debug("%s: reading cpuid from the efuses failed\n",
> __func__);
More information about the U-Boot
mailing list