Commit f7bcd4e373193fd3d78d7ee24c0a1bcca9dcc3a3

Authored by ths
1 parent 43c1b7e4

Different MIPS BIOS binary names per endianness, and more relaxed size

rules for the binaries, by Alec Voropay.


git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@2302 c046a42c-6fe2-441c-8c8c-71466251a162
Showing 1 changed file with 7 additions and 3 deletions
hw/mips_r4k.c
@@ -9,7 +9,11 @@ @@ -9,7 +9,11 @@
9 */ 9 */
10 #include "vl.h" 10 #include "vl.h"
11 11
  12 +#ifdef TARGET_BIG_ENDIAN
12 #define BIOS_FILENAME "mips_bios.bin" 13 #define BIOS_FILENAME "mips_bios.bin"
  14 +#else
  15 +#define BIOS_FILENAME "mipsel_bios.bin"
  16 +#endif
13 //#define BIOS_FILENAME "system.bin" 17 //#define BIOS_FILENAME "system.bin"
14 #ifdef MIPS_HAS_MIPS64 18 #ifdef MIPS_HAS_MIPS64
15 #define INITRD_LOAD_ADDR (int64_t)(int32_t)0x80800000 19 #define INITRD_LOAD_ADDR (int64_t)(int32_t)0x80800000
@@ -136,7 +140,7 @@ void mips_r4k_init (int ram_size, int vga_ram_size, int boot_device, @@ -136,7 +140,7 @@ void mips_r4k_init (int ram_size, int vga_ram_size, int boot_device,
136 { 140 {
137 char buf[1024]; 141 char buf[1024];
138 unsigned long bios_offset; 142 unsigned long bios_offset;
139 - int ret; 143 + int bios_size;
140 CPUState *env; 144 CPUState *env;
141 static RTCState *rtc_state; 145 static RTCState *rtc_state;
142 int i; 146 int i;
@@ -160,8 +164,8 @@ void mips_r4k_init (int ram_size, int vga_ram_size, int boot_device, @@ -160,8 +164,8 @@ void mips_r4k_init (int ram_size, int vga_ram_size, int boot_device,
160 run. */ 164 run. */
161 bios_offset = ram_size + vga_ram_size; 165 bios_offset = ram_size + vga_ram_size;
162 snprintf(buf, sizeof(buf), "%s/%s", bios_dir, BIOS_FILENAME); 166 snprintf(buf, sizeof(buf), "%s/%s", bios_dir, BIOS_FILENAME);
163 - ret = load_image(buf, phys_ram_base + bios_offset);  
164 - if (ret == BIOS_SIZE) { 167 + bios_size = load_image(buf, phys_ram_base + bios_offset);
  168 + if (bios_size > 0 & bios_size <= BIOS_SIZE) {
165 cpu_register_physical_memory((uint32_t)(0x1fc00000), 169 cpu_register_physical_memory((uint32_t)(0x1fc00000),
166 BIOS_SIZE, bios_offset | IO_MEM_ROM); 170 BIOS_SIZE, bios_offset | IO_MEM_ROM);
167 } else { 171 } else {