提交 3bd4be3a 编写于 作者: A Aurelien Jarno

lsi53c895a: fix endianness issues

lsi_ram_read*() and lsi_ram_write*() are not consistent, one uses
leXX_to_cpu() the other uses nothing. As the comment above the RAM
declaration says: "Script ram is stored as 32-bit words in host
byteorder.", remove the leXX_to_cpu() calls.

This fixes the boot of an ARM versatile machine on MIPS and PowerPC
hosts.
Signed-off-by: NAurelien Jarno <aurelien@aurel32.net>
上级 d30df5ce
......@@ -1930,7 +1930,7 @@ static uint32_t lsi_ram_readw(void *opaque, target_phys_addr_t addr)
val = s->script_ram[addr >> 2];
if (addr & 2)
val >>= 16;
return le16_to_cpu(val);
return val;
}
static uint32_t lsi_ram_readl(void *opaque, target_phys_addr_t addr)
......@@ -1938,7 +1938,7 @@ static uint32_t lsi_ram_readl(void *opaque, target_phys_addr_t addr)
LSIState *s = opaque;
addr &= 0x1fff;
return le32_to_cpu(s->script_ram[addr >> 2]);
return s->script_ram[addr >> 2];
}
static CPUReadMemoryFunc * const lsi_ram_readfn[3] = {
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册