tizen: thordown: fix to check partition size more than 4GB
[profile/mobile/platform/kernel/u-boot-tm1.git] / property / thor_mode.c
index 80eb5e6..6e3a104 100644 (file)
@@ -178,6 +178,13 @@ static long long int process_rqt_download(const struct rqt_box *rqt)
                        ret = rsp->ack;
                }
 
+               if ((uint64_t)thor_file_size >
+                   (uint64_t)part_info.size * (uint64_t)part_info.blksz) {
+                       thor_debug("Too large binary\n");
+                       rsp->ack = -EFBIG;
+                       ret = rsp->ack;
+               }
+
                break;
        case RQT_DL_FILE_START:
                send_rsp(rsp);
@@ -334,3 +341,15 @@ void thor_mode(void)
 
        return;
 }
+
+int do_thor_down(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
+{
+       puts("TIZEN \"THOR\" Downloader\n");
+
+       thor_mode();
+}
+
+U_BOOT_CMD(thordown, 1, 1, do_thor_down,
+          "TIZEN \"THOR\" downloader",
+          ""
+);