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: Aurelien Jarno <aurelien@aurel32.net>
This commit is contained in:
		
							parent
							
								
									d30df5cec9
								
							
						
					
					
						commit
						3bd4be3ada
					
				| @ -1930,7 +1930,7 @@ static uint32_t lsi_ram_readw(void *opaque, target_phys_addr_t addr) | |||||||
|     val = s->script_ram[addr >> 2]; |     val = s->script_ram[addr >> 2]; | ||||||
|     if (addr & 2) |     if (addr & 2) | ||||||
|         val >>= 16; |         val >>= 16; | ||||||
|     return le16_to_cpu(val); |     return val; | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| static uint32_t lsi_ram_readl(void *opaque, target_phys_addr_t addr) | 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; |     LSIState *s = opaque; | ||||||
| 
 | 
 | ||||||
|     addr &= 0x1fff; |     addr &= 0x1fff; | ||||||
|     return le32_to_cpu(s->script_ram[addr >> 2]); |     return s->script_ram[addr >> 2]; | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| static CPUReadMemoryFunc * const lsi_ram_readfn[3] = { | static CPUReadMemoryFunc * const lsi_ram_readfn[3] = { | ||||||
|  | |||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user
	 Aurelien Jarno
						Aurelien Jarno