aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorOvidiu Panait <ovpanait@gmail.com>2022-08-29 20:02:03 +0300
committerMichal Simek <michal.simek@amd.com>2022-09-13 11:32:48 +0200
commit3f351cd358a3581844f3cacdfe60710bf925d75d (patch)
tree546f6c4cbfc93a9ee9436645fc3aedfe48beff0c
parent3a6948ce711b8c7692a3e717021cc2b47e69fce7 (diff)
downloadu-boot-3f351cd358a3581844f3cacdfe60710bf925d75d.zip
u-boot-3f351cd358a3581844f3cacdfe60710bf925d75d.tar.gz
u-boot-3f351cd358a3581844f3cacdfe60710bf925d75d.tar.bz2
cpu: microblaze: add error handling in microblaze_cpu_get_desc()
Check snprintf() return value for errors. Make microblaze_cpu_get_desc() directly return snprintf() error code if ret < 0. Otherwise, if the return value is greater than or equal to size, the resulting string is truncated, so return -ENOSPC. Fixes: 816226d27e ("cpu: add CPU driver for microblaze") Signed-off-by: Ovidiu Panait <ovpanait@gmail.com> Link: https://lore.kernel.org/r/20220829170205.1274484-2-ovpanait@gmail.com Signed-off-by: Michal Simek <michal.simek@amd.com>
-rw-r--r--drivers/cpu/microblaze_cpu.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/drivers/cpu/microblaze_cpu.c b/drivers/cpu/microblaze_cpu.c
index 969a104..b9d0792 100644
--- a/drivers/cpu/microblaze_cpu.c
+++ b/drivers/cpu/microblaze_cpu.c
@@ -97,8 +97,10 @@ static int microblaze_cpu_get_desc(const struct udevice *dev, char *buf,
ret = snprintf(buf, size,
"MicroBlaze @ %uMHz, Rev: %s, FPGA family: %s",
cpu_freq_mhz, cpu_ver, fpga_family);
+ if (ret < 0)
+ return ret;
- return 0;
+ return (ret >= size) ? -ENOSPC : 0;
}
static int microblaze_cpu_get_info(const struct udevice *dev,