From: Eric Perie <eric.perie@yahoo.com>
Date: Sat, 13 Jul 2019 18:54:58 +0000 (-0400)
Subject: Add validation for icache/dcache arguments - arguments different from off/on/flush... 
X-Git-Tag: v2025.01-rc5-pxa1908~2859^2
X-Git-Url: http://git.dujemihanovic.xyz/img/login.html?a=commitdiff_plain;h=f043dc28e3cce115089fb9ab86bc6f4bc4a8a882;p=u-boot.git

Add validation for icache/dcache arguments - arguments different from off/on/flush are currently silently ignored.

Signed-off-by: Eric Perie <eric.perie@yahoo.com>
---

diff --git a/cmd/cache.c b/cmd/cache.c
index 233f428054..2c687173a8 100644
--- a/cmd/cache.c
+++ b/cmd/cache.c
@@ -22,7 +22,7 @@ void __weak invalidate_icache_all(void)
 static int do_icache(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
 {
 	switch (argc) {
-	case 2:			/* on / off	*/
+	case 2:			/* on / off / flush */
 		switch (parse_argv(argv[1])) {
 		case 0:
 			icache_disable();
@@ -33,6 +33,8 @@ static int do_icache(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
 		case 2:
 			invalidate_icache_all();
 			break;
+		default:
+			return CMD_RET_USAGE;
 		}
 		break;
 	case 1:			/* get status */
@@ -54,7 +56,7 @@ void __weak flush_dcache_all(void)
 static int do_dcache(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
 {
 	switch (argc) {
-	case 2:			/* on / off */
+	case 2:			/* on / off / flush */
 		switch (parse_argv(argv[1])) {
 		case 0:
 			dcache_disable();
@@ -65,6 +67,8 @@ static int do_dcache(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
 		case 2:
 			flush_dcache_all();
 			break;
+		default:
+			return CMD_RET_USAGE;
 		}
 		break;
 	case 1:			/* get status */