msm: dev_tree: add support for multiple concatenated dev trees
The kernel build can suppor appending multiple device trees
after the zImage. We now iterate through the device trees
looking for a match according to
platform_id/hardware_id/soc_version in the device tree's /qcom,msm_id
node.
Change-Id: I5e6b3da7a9343af2eb1f8ac7890c06f1e2726134
Signed-off-by: Dima Zavin <dima@android.com>
Signed-off-by: Shashank Mittal <mittals@codeaurora.org>
diff --git a/app/aboot/aboot.c b/app/aboot/aboot.c
index a006ab1..2e4b820 100644
--- a/app/aboot/aboot.c
+++ b/app/aboot/aboot.c
@@ -765,7 +765,8 @@
*/
void *dtb;
dtb = dev_tree_appended((void*) hdr->kernel_addr,
- (void *)hdr->tags_addr, hdr->kernel_size);
+ hdr->kernel_size,
+ (void *)hdr->tags_addr);
if (!dtb) {
dprintf(CRITICAL, "ERROR: Appended Device Tree Blob not found\n");
return -1;
@@ -856,7 +857,8 @@
*/
void *dtb;
dtb = dev_tree_appended((void*) hdr->kernel_addr,
- (void *)hdr->tags_addr, hdr->kernel_size);
+ kernel_actual,
+ (void *)hdr->tags_addr);
if (!dtb) {
dprintf(CRITICAL, "ERROR: Appended Device Tree Blob not found\n");
return -1;
@@ -1421,7 +1423,8 @@
*/
if (!dtb_copied) {
void *dtb;
- dtb = dev_tree_appended((void *)hdr->kernel_addr, (void *)hdr->tags_addr, hdr->kernel_size);
+ dtb = dev_tree_appended((void *)hdr->kernel_addr, hdr->kernel_size,
+ (void *)hdr->tags_addr);
if (!dtb) {
fastboot_fail("dtb not found");
return;