mirror of https://gitlab.com/qemu-project/qemu
pls3adsp1800: Base load_elf endianness on target endianness
Signed-off-by: Edgar E. Iglesias <edgar.iglesias@petalogix.com>
This commit is contained in:
parent
c9f7383c6e
commit
082e5be809
|
@ -167,16 +167,21 @@ petalogix_s3adsp1800_init(ram_addr_t ram_size,
|
||||||
if (kernel_filename) {
|
if (kernel_filename) {
|
||||||
uint64_t entry, low, high;
|
uint64_t entry, low, high;
|
||||||
uint32_t base32;
|
uint32_t base32;
|
||||||
|
int big_endian = 0;
|
||||||
|
|
||||||
|
#ifdef TARGET_WORDS_BIGENDIAN
|
||||||
|
big_endian = 1;
|
||||||
|
#endif
|
||||||
|
|
||||||
/* Boots a kernel elf binary. */
|
/* Boots a kernel elf binary. */
|
||||||
kernel_size = load_elf(kernel_filename, NULL, NULL,
|
kernel_size = load_elf(kernel_filename, NULL, NULL,
|
||||||
&entry, &low, &high,
|
&entry, &low, &high,
|
||||||
1, ELF_MACHINE, 0);
|
big_endian, ELF_MACHINE, 0);
|
||||||
base32 = entry;
|
base32 = entry;
|
||||||
if (base32 == 0xc0000000) {
|
if (base32 == 0xc0000000) {
|
||||||
kernel_size = load_elf(kernel_filename, translate_kernel_address,
|
kernel_size = load_elf(kernel_filename, translate_kernel_address,
|
||||||
NULL, &entry, NULL, NULL,
|
NULL, &entry, NULL, NULL,
|
||||||
1, ELF_MACHINE, 0);
|
big_endian, ELF_MACHINE, 0);
|
||||||
}
|
}
|
||||||
/* Always boot into physical ram. */
|
/* Always boot into physical ram. */
|
||||||
boot_info.bootstrap_pc = ddr_base + (entry & 0x0fffffff);
|
boot_info.bootstrap_pc = ddr_base + (entry & 0x0fffffff);
|
||||||
|
|
Loading…
Reference in New Issue