]> git.proxmox.com Git - mirror_qemu.git/commitdiff
pls3adsp1800: Base load_elf endianness on target endianness
authorEdgar E. Iglesias <edgar.iglesias@petalogix.com>
Mon, 21 Feb 2011 11:30:27 +0000 (12:30 +0100)
committerEdgar E. Iglesias <edgar.iglesias@petalogix.com>
Wed, 23 Feb 2011 11:31:53 +0000 (12:31 +0100)
Signed-off-by: Edgar E. Iglesias <edgar.iglesias@petalogix.com>
hw/petalogix_s3adsp1800_mmu.c

index 42de45963ba959179ad858015d13d7644dd55c0a..6ef4e6558841fa7b80b1a003ea69eed90bfbf795 100644 (file)
@@ -167,16 +167,21 @@ petalogix_s3adsp1800_init(ram_addr_t ram_size,
     if (kernel_filename) {
         uint64_t entry, low, high;
         uint32_t base32;
+        int big_endian = 0;
+
+#ifdef TARGET_WORDS_BIGENDIAN
+        big_endian = 1;
+#endif
 
         /* Boots a kernel elf binary.  */
         kernel_size = load_elf(kernel_filename, NULL, NULL,
                                &entry, &low, &high,
-                               1, ELF_MACHINE, 0);
+                               big_endian, ELF_MACHINE, 0);
         base32 = entry;
         if (base32 == 0xc0000000) {
             kernel_size = load_elf(kernel_filename, translate_kernel_address,
                                    NULL, &entry, NULL, NULL,
-                                   1, ELF_MACHINE, 0);
+                                   big_endian, ELF_MACHINE, 0);
         }
         /* Always boot into physical ram.  */
         boot_info.bootstrap_pc = ddr_base + (entry & 0x0fffffff);