]> git.ipfire.org Git - people/ms/u-boot.git/blobdiff - common/image-android.c
imx: hab: Check if CSF is valid before authenticating image
[people/ms/u-boot.git] / common / image-android.c
index c668407817c8701a7bcce11450f300362ab0b390..5ad3a1fa38a7d32daec1bb967a403a6da96ac90f 100644 (file)
@@ -72,7 +72,7 @@ int android_image_get_kernel(const struct andr_img_hdr *hdr, int verify,
                len += strlen(hdr->cmdline);
        }
 
-       char *bootargs = getenv("bootargs");
+       char *bootargs = env_get("bootargs");
        if (bootargs)
                len += strlen(bootargs);
 
@@ -90,7 +90,7 @@ int android_image_get_kernel(const struct andr_img_hdr *hdr, int verify,
        if (*hdr->cmdline)
                strcat(newbootargs, hdr->cmdline);
 
-       setenv("bootargs", newbootargs);
+       env_set("bootargs", newbootargs);
 
        if (os_data) {
                *os_data = (ulong)hdr;
@@ -146,6 +146,25 @@ int android_image_get_ramdisk(const struct andr_img_hdr *hdr,
        return 0;
 }
 
+int android_image_get_second(const struct andr_img_hdr *hdr,
+                             ulong *second_data, ulong *second_len)
+{
+       if (!hdr->second_size) {
+               *second_data = *second_len = 0;
+               return -1;
+       }
+
+       *second_data = (unsigned long)hdr;
+       *second_data += hdr->page_size;
+       *second_data += ALIGN(hdr->kernel_size, hdr->page_size);
+       *second_data += ALIGN(hdr->ramdisk_size, hdr->page_size);
+
+       printf("second address is 0x%lx\n",*second_data);
+
+       *second_len = hdr->second_size;
+       return 0;
+}
+
 #if !defined(CONFIG_SPL_BUILD)
 /**
  * android_print_contents - prints out the contents of the Android format image