From: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
Date: Mon, 17 Apr 2023 23:37:21 +0000 (+0200)
Subject: imx8mn: buffer overflow in low_drive_gpu_freq()
X-Git-Tag: v2025.01-rc5-pxa1908~1015^2~21
X-Git-Url: http://git.dujemihanovic.xyz/%22http:/kyber.dk/phpMyBuilder/static/%7B%7B?a=commitdiff_plain;h=76ce66408dfccb491114d721260717ae76795b4d;p=u-boot.git

imx8mn: buffer overflow in low_drive_gpu_freq()

Avoid a buffer overflow if assigned-clock-rates has less than two elements.

Fixes: 98bcdf16356c ("imx8mn: Add low drive mode support for DDR4/LPDDR4 EVK")
Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
Reviewed-by: Peng Fan <peng.fan@nxp.com>
Reviewed-by: Peng Fan <peng.fan@nxp.com>
---

diff --git a/arch/arm/mach-imx/imx8m/soc.c b/arch/arm/mach-imx/imx8m/soc.c
index df865e997d..20672ded96 100644
--- a/arch/arm/mach-imx/imx8m/soc.c
+++ b/arch/arm/mach-imx/imx8m/soc.c
@@ -914,6 +914,8 @@ static int low_drive_gpu_freq(void *blob)
 
 	if (cnt != 7)
 		printf("Warning: %s, assigned-clock-rates count %d\n", nodes_path_8mn[0], cnt);
+	if (cnt < 2)
+		return -1;
 
 	assignedclks[cnt - 1] = 200000000;
 	assignedclks[cnt - 2] = 200000000;