mtd: cleanup unused code and variables in fis.c
[openwrt/staging/lynxis.git] / package / system / mtd / src / fis.c
index b50411cfebb0892bb7631aa0d0577fda90b7c462..8bde9af6dc699b5fa616db44117280a6557d7506 100644 (file)
@@ -139,8 +139,6 @@ done:
 int
 fis_remap(struct fis_part *old, int n_old, struct fis_part *new, int n_new)
 {
-       struct fis_image_desc *fisdir = NULL;
-       struct fis_image_desc *redboot = NULL;
        struct fis_image_desc *first = NULL;
        struct fis_image_desc *last = NULL;
        struct fis_image_desc *first_fb = NULL;
@@ -164,12 +162,6 @@ fis_remap(struct fis_part *old, int n_old, struct fis_part *new, int n_new)
                if (!desc->hdr.name[0] || (desc->hdr.name[0] == 0xff))
                        break;
 
-               if (!strcmp((char *) desc->hdr.name, "FIS directory"))
-                       fisdir = desc;
-
-               if (!strcmp((char *) desc->hdr.name, "RedBoot"))
-                       redboot = desc;
-
                /* update max offset */
                if (offset < desc->hdr.flash_base)
                        offset = desc->hdr.flash_base;
@@ -210,18 +202,6 @@ fis_remap(struct fis_part *old, int n_old, struct fis_part *new, int n_new)
 
        size = offset - first_fb->hdr.flash_base;
 
-#ifdef notyet
-       desc = first - 1;
-       if (redboot && (desc >= redboot)) {
-               if (first->hdr.flash_base - desc->hdr.size > desc->hdr.flash_base) {
-                       int delta = first->hdr.flash_base - desc->hdr.size - desc->hdr.flash_base;
-
-                       offset -= delta;
-                       size += delta;
-               }
-       }
-#endif
-
        last++;
        desc = first + n_new;
        offset = first_fb->hdr.flash_base;
@@ -243,14 +223,14 @@ fis_remap(struct fis_part *old, int n_old, struct fis_part *new, int n_new)
                memset(desc, 0, sizeof(struct fis_image_desc));
                memcpy(desc->hdr.name, part->name, sizeof(desc->hdr.name));
                desc->crc.desc = 0;
-               desc->crc.file = 0;
+               desc->crc.file = part->crc;
 
                desc->hdr.flash_base = offset;
                desc->hdr.mem_base = part->loadaddr;
                desc->hdr.entry_point = part->loadaddr;
                desc->hdr.size = (part->size > 0) ? part->size : size;
-               desc->hdr.data_length = desc->hdr.size;
-
+               desc->hdr.data_length = (part->length > 0) ? part->length :
+                                                               desc->hdr.size;
                offset += desc->hdr.size;
                size -= desc->hdr.size;
        }