summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHeiko Stuebner <heiko@sntech.de>2019-09-25 20:40:56 +0200
committerKever Yang <kever.yang@rock-chips.com>2019-09-28 22:26:32 +0800
commit03f98b75e47ef9df890d92b4989fdd209ba55734 (patch)
treeb8a877876bae5332bf9233806a784a34365d6373
parentdfd590075ca263d6b3ed22465a94d33a8ee93e07 (diff)
downloadu-boot-03f98b75e47ef9df890d92b4989fdd209ba55734.tar.gz
u-boot-03f98b75e47ef9df890d92b4989fdd209ba55734.tar.bz2
u-boot-03f98b75e47ef9df890d92b4989fdd209ba55734.zip
rockchip: misc: read the correct number of bytes from the efuse
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@sntech.de> Reviewed-by: Philipp Tomsich <philipp.tomsich@theobroma-systems.com> Reviewed-by: Kever Yang<kever.yang@rock-chips.com>
-rw-r--r--arch/arm/mach-rockchip/misc.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/arch/arm/mach-rockchip/misc.c b/arch/arm/mach-rockchip/misc.c
index fdb763cc53..c0e4fdbc00 100644
--- a/arch/arm/mach-rockchip/misc.c
+++ b/arch/arm/mach-rockchip/misc.c
@@ -70,7 +70,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__);