From 893ec7807779aa34ce49866f03e49c592fff9543 Mon Sep 17 00:00:00 2001 From: sanshan zhang Date: Thu, 8 Jun 2017 10:41:38 +0800 Subject: MA-9702-2 [Android] Enable booti for android arm64. boot_addr_start for booti should be the addr of Image rather than boot.img, so need read Image into hdr->kernel_addr. change the offset for bootloader. booti do not call android_image_get_kernel to init android env. booti can't load boot.img, so it can't init android env. init android env through android_image_get_kernel. Change-Id: Ifb990ee9c5710ce7bd5fa9a0d4221dcb0e52d341 Signed-off-by: sanshan zhang --- include/android_image.h | 12 ++++++++++++ include/image.h | 1 + 2 files changed, 13 insertions(+) (limited to 'include') diff --git a/include/android_image.h b/include/android_image.h index 094d60a..1c70bf8 100644 --- a/include/android_image.h +++ b/include/android_image.h @@ -66,4 +66,16 @@ struct andr_img_hdr { * 6. if second_size != 0: jump to second_addr * else: jump to kernel_addr */ +struct header_image { + uint32_t code0; /* Executable code */ + uint32_t code1; /* Executable code */ + uint64_t text_offset; /* Image load offset, LE */ + uint64_t image_size; /* Effective Image size, LE */ + uint64_t res1; /* reserved */ + uint64_t res2; /* reserved */ + uint64_t res3; /* reserved */ + uint64_t res4; /* reserved */ + uint32_t magic; /* Magic number */ + uint32_t res5; +}; #endif diff --git a/include/image.h b/include/image.h index dd4c8e3..54a5d8e 100644 --- a/include/image.h +++ b/include/image.h @@ -1245,6 +1245,7 @@ int android_image_get_fdt(const struct andr_img_hdr *hdr, ulong android_image_get_end(const struct andr_img_hdr *hdr); ulong android_image_get_kload(const struct andr_img_hdr *hdr); void android_print_contents(const struct andr_img_hdr *hdr); +bool image_arm64(void *images); #endif /* CONFIG_ANDROID_BOOT_IMAGE */ -- cgit v1.1