]> git.ipfire.org Git - people/ms/u-boot.git/blobdiff - arch/arm/mach-imx/hab.c
imx: hab: Check if CSF contains deprecated commands
[people/ms/u-boot.git] / arch / arm / mach-imx / hab.c
index 7f66965af56275c8923a1b60b3656d0b82ceb9db..79e8bf697973b78d0c9a2e7d18cbc97c4834f075 100644 (file)
@@ -518,6 +518,26 @@ static bool csf_is_valid(struct ivt *ivt, ulong start_addr, size_t bytes)
        }
 
        do {
+               struct hab_hdr *cmd;
+
+               cmd = (struct hab_hdr *)&csf_hdr[offset];
+
+               switch (cmd->tag) {
+               case (HAB_CMD_WRT_DAT):
+                       puts("Error: Deprecated write command found\n");
+                       return false;
+               case (HAB_CMD_CHK_DAT):
+                       puts("Error: Deprecated check command found\n");
+                       return false;
+               case (HAB_CMD_SET):
+                       if (cmd->par == HAB_PAR_MID) {
+                               puts("Error: Deprecated Set MID command found\n");
+                               return false;
+                       }
+               default:
+                       break;
+               }
+
                cmd_hdr_len = get_csf_cmd_hdr_len(&csf_hdr[offset]);
                if (!cmd_hdr_len) {
                        puts("Error: Invalid command length\n");