From 513f789f6b187faf1fd533dc6972bbfa021c4381 Mon Sep 17 00:00:00 2001 From: blueswir1 Date: Sun, 8 Mar 2009 09:51:29 +0000 Subject: [PATCH] Use firmware configuration instead of NVRAM (initial patch by Aurelien Jarno) Use firmware configuration device for boot device, kernel, initrd and kernel command line parameters on PPC, Sparc32 and Sparc64. Update OpenBIOS images to r479 which supports the change. git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6777 c046a42c-6fe2-441c-8c8c-71466251a162 --- hw/firmware_abi.h | 127 --------------------------------------- hw/ppc_mac.h | 1 + hw/ppc_newworld.c | 37 +++++++++++- hw/ppc_oldworld.c | 33 +++++----- hw/sun4m.c | 98 +++++++++++++----------------- hw/sun4u.c | 75 +++++------------------ pc-bios/README | 2 +- pc-bios/openbios-ppc | Bin 271336 -> 271336 bytes pc-bios/openbios-sparc32 | Bin 234116 -> 234116 bytes pc-bios/openbios-sparc64 | Bin 476064 -> 476064 bytes 10 files changed, 112 insertions(+), 261 deletions(-) diff --git a/hw/firmware_abi.h b/hw/firmware_abi.h index 713484d4146..54702b290e5 100644 --- a/hw/firmware_abi.h +++ b/hw/firmware_abi.h @@ -1,113 +1,6 @@ #ifndef FIRMWARE_ABI_H #define FIRMWARE_ABI_H -#ifndef __ASSEMBLY__ -/* Open Hack'Ware NVRAM configuration structure */ - -/* Version 3 */ -typedef struct ohwcfg_v3_t ohwcfg_v3_t; -struct ohwcfg_v3_t { - /* 0x00: structure identifier */ - uint8_t struct_ident[0x10]; - /* 0x10: structure version and NVRAM description */ - uint32_t struct_version; - uint16_t nvram_size; - uint16_t pad0; - uint16_t nvram_arch_ptr; - uint16_t nvram_arch_size; - uint16_t nvram_arch_crc; - uint8_t pad1[0x02]; - /* 0x20: host architecture */ - uint8_t arch[0x10]; - /* 0x30: RAM/ROM description */ - uint64_t RAM0_base; - uint64_t RAM0_size; - uint64_t RAM1_base; - uint64_t RAM1_size; - uint64_t RAM2_base; - uint64_t RAM2_size; - uint64_t RAM3_base; - uint64_t RAM3_size; - uint64_t ROM_base; - uint64_t ROM_size; - /* 0x80: Kernel description */ - uint64_t kernel_image; - uint64_t kernel_size; - /* 0x90: Kernel command line */ - uint64_t cmdline; - uint64_t cmdline_size; - /* 0xA0: Kernel boot image */ - uint64_t initrd_image; - uint64_t initrd_size; - /* 0xB0: NVRAM image */ - uint64_t NVRAM_image; - uint8_t pad2[8]; - /* 0xC0: graphic configuration */ - uint16_t width; - uint16_t height; - uint16_t depth; - uint16_t graphic_flags; - /* 0xC8: CPUs description */ - uint8_t nb_cpus; - uint8_t boot_cpu; - uint8_t nboot_devices; - uint8_t pad3[5]; - /* 0xD0: boot devices */ - uint8_t boot_devices[0x10]; - /* 0xE0 */ - uint8_t pad4[0x1C]; /* 28 */ - /* 0xFC: checksum */ - uint16_t crc; - uint8_t pad5[0x02]; -} __attribute__ (( packed )); - -#define OHW_GF_NOGRAPHICS 0x0001 - -static inline uint16_t -OHW_crc_update (uint16_t prev, uint16_t value) -{ - uint16_t tmp; - uint16_t pd, pd1, pd2; - - tmp = prev >> 8; - pd = prev ^ value; - pd1 = pd & 0x000F; - pd2 = ((pd >> 4) & 0x000F) ^ pd1; - tmp ^= (pd1 << 3) | (pd1 << 8); - tmp ^= pd2 | (pd2 << 7) | (pd2 << 12); - - return tmp; -} - -static inline uint16_t -OHW_compute_crc (ohwcfg_v3_t *header, uint32_t start, uint32_t count) -{ - uint32_t i; - uint16_t crc = 0xFFFF; - uint8_t *ptr = (uint8_t *)header; - int odd; - - odd = count & 1; - count &= ~1; - for (i = 0; i != count; i++) { - crc = OHW_crc_update(crc, (ptr[start + i] << 8) | ptr[start + i + 1]); - } - if (odd) { - crc = OHW_crc_update(crc, ptr[start + i] << 8); - } - - return crc; -} - -/* Sparc32 runtime NVRAM structure for SMP CPU boot */ -struct sparc_arch_cfg { - uint32_t smp_ctx; - uint32_t smp_ctxtbl; - uint32_t smp_entry; - uint8_t valid; - uint8_t unused[51]; -}; - /* OpenBIOS NVRAM partition */ struct OpenBIOS_nvpart_v1 { uint8_t signature; @@ -175,24 +68,4 @@ Sun_init_header(struct Sun_nvram *header, const uint8_t *macaddr, int machine_id header->checksum = tmp; } - -#else /* __ASSEMBLY__ */ - -/* Structure offsets for asm use */ - -/* Open Hack'Ware NVRAM configuration structure */ -#define OHW_ARCH_PTR 0x18 -#define OHW_RAM_SIZE 0x38 -#define OHW_BOOT_CPU 0xC9 - -/* Sparc32 runtime NVRAM structure for SMP CPU boot */ -#define SPARC_SMP_CTX 0x0 -#define SPARC_SMP_CTXTBL 0x4 -#define SPARC_SMP_ENTRY 0x8 -#define SPARC_SMP_VALID 0xc - -/* Sun IDPROM structure at the end of NVRAM */ -#define SPARC_MACHINE_ID 0x1fd9 - -#endif /* __ASSEMBLY__ */ #endif /* FIRMWARE_ABI_H */ diff --git a/hw/ppc_mac.h b/hw/ppc_mac.h index df148b2439e..74d19a19918 100644 --- a/hw/ppc_mac.h +++ b/hw/ppc_mac.h @@ -35,6 +35,7 @@ #define PROM_ADDR 0xfff00000 #define KERNEL_LOAD_ADDR 0x01000000 +#define CMDLINE_ADDR 0x017ff000 #define INITRD_LOAD_ADDR 0x01800000 #define ESCC_CLOCK 3686400 diff --git a/hw/ppc_newworld.c b/hw/ppc_newworld.c index b28586485b3..4a33ebde098 100644 --- a/hw/ppc_newworld.c +++ b/hw/ppc_newworld.c @@ -78,6 +78,12 @@ static CPUReadMemoryFunc *unin_read[] = { &unin_readl, }; +static int fw_cfg_boot_set(void *opaque, const char *boot_device) +{ + fw_cfg_add_i16(opaque, FW_CFG_BOOT_DEVICE, boot_device[0]); + return 0; +} + /* PowerPC Mac99 hardware initialisation */ static void ppc_core99_init (ram_addr_t ram_size, int vga_ram_size, const char *boot_device, @@ -167,9 +173,24 @@ static void ppc_core99_init (ram_addr_t ram_size, int vga_ram_size, } if (linux_boot) { + uint64_t lowaddr = 0; kernel_base = KERNEL_LOAD_ADDR; - /* now we can load the kernel */ - kernel_size = load_image(kernel_filename, phys_ram_base + kernel_base); + + /* Now we can load the kernel. The first step tries to load the kernel + supposing PhysAddr = 0x00000000. If that was wrong the kernel is + loaded again, the new PhysAddr being computed from lowaddr. */ + kernel_size = load_elf(kernel_filename, kernel_base, NULL, &lowaddr, NULL); + if (kernel_size > 0 && lowaddr != KERNEL_LOAD_ADDR) { + kernel_size = load_elf(kernel_filename, (2 * kernel_base) - lowaddr, + NULL, 0, NULL); + } + if (kernel_size < 0) + kernel_size = load_aout(kernel_filename, kernel_base, + ram_size - kernel_base); + if (kernel_size < 0) + kernel_size = load_image_targphys(kernel_filename, + kernel_base, + ram_size - kernel_base); if (kernel_size < 0) { cpu_abort(env, "qemu: could not load kernel '%s'\n", kernel_filename); @@ -321,6 +342,18 @@ static void ppc_core99_init (ram_addr_t ram_size, int vga_ram_size, fw_cfg_add_i32(fw_cfg, FW_CFG_ID, 1); fw_cfg_add_i64(fw_cfg, FW_CFG_RAM_SIZE, (uint64_t)ram_size); fw_cfg_add_i16(fw_cfg, FW_CFG_MACHINE_ID, ARCH_MAC99); + fw_cfg_add_i32(fw_cfg, FW_CFG_KERNEL_ADDR, kernel_base); + fw_cfg_add_i32(fw_cfg, FW_CFG_KERNEL_SIZE, kernel_size); + if (kernel_cmdline) { + fw_cfg_add_i32(fw_cfg, FW_CFG_KERNEL_CMDLINE, CMDLINE_ADDR); + pstrcpy_targphys(CMDLINE_ADDR, TARGET_PAGE_SIZE, kernel_cmdline); + } else { + fw_cfg_add_i32(fw_cfg, FW_CFG_KERNEL_CMDLINE, 0); + } + fw_cfg_add_i32(fw_cfg, FW_CFG_INITRD_ADDR, initrd_base); + fw_cfg_add_i32(fw_cfg, FW_CFG_INITRD_SIZE, initrd_size); + fw_cfg_add_i16(fw_cfg, FW_CFG_BOOT_DEVICE, ppc_boot_device); + qemu_register_boot_set(fw_cfg_boot_set, fw_cfg); } QEMUMachine core99_machine = { diff --git a/hw/ppc_oldworld.c b/hw/ppc_oldworld.c index 46d03625598..cba43cd278f 100644 --- a/hw/ppc_oldworld.c +++ b/hw/ppc_oldworld.c @@ -108,6 +108,12 @@ static int vga_osi_call (CPUState *env) return 1; /* osi_call handled */ } +static int fw_cfg_boot_set(void *opaque, const char *boot_device) +{ + fw_cfg_add_i16(opaque, FW_CFG_BOOT_DEVICE, boot_device[0]); + return 0; +} + static void ppc_heathrow_init (ram_addr_t ram_size, int vga_ram_size, const char *boot_device, const char *kernel_filename, @@ -118,8 +124,6 @@ static void ppc_heathrow_init (ram_addr_t ram_size, int vga_ram_size, CPUState *env = NULL, *envs[MAX_CPUS]; char buf[1024]; qemu_irq *pic, **heathrow_irqs; - nvram_t nvram; - m48t59_t *m48t59; int linux_boot, i; ram_addr_t ram_offset, vga_ram_offset, bios_offset, vga_bios_offset; uint32_t kernel_base, initrd_base; @@ -129,7 +133,7 @@ static void ppc_heathrow_init (ram_addr_t ram_size, int vga_ram_size, int vga_bios_size, bios_size; int pic_mem_index, nvram_mem_index, dbdma_mem_index, cuda_mem_index; int escc_mem_index, ide_mem_index[2]; - int ppc_boot_device; + uint16_t ppc_boot_device; BlockDriverState *hd[MAX_IDE_BUS * MAX_IDE_DEVS]; int index; void *fw_cfg; @@ -363,23 +367,24 @@ static void ppc_heathrow_init (ram_addr_t ram_size, int vga_ram_size, if (graphic_depth != 15 && graphic_depth != 32 && graphic_depth != 8) graphic_depth = 15; - m48t59 = m48t59_init(0, 0xFFF04000, 0x0074, NVRAM_SIZE, 59); - nvram.opaque = m48t59; - nvram.read_fn = &m48t59_read; - nvram.write_fn = &m48t59_write; - PPC_NVRAM_set_params(&nvram, NVRAM_SIZE, "HEATHROW", ram_size, - ppc_boot_device, kernel_base, kernel_size, - kernel_cmdline, - initrd_base, initrd_size, - /* XXX: need an option to load a NVRAM image */ - 0, - graphic_width, graphic_height, graphic_depth); /* No PCI init: the BIOS will do it */ fw_cfg = fw_cfg_init(0, 0, CFG_ADDR, CFG_ADDR + 2); fw_cfg_add_i32(fw_cfg, FW_CFG_ID, 1); fw_cfg_add_i64(fw_cfg, FW_CFG_RAM_SIZE, (uint64_t)ram_size); fw_cfg_add_i16(fw_cfg, FW_CFG_MACHINE_ID, ARCH_HEATHROW); + fw_cfg_add_i32(fw_cfg, FW_CFG_KERNEL_ADDR, kernel_base); + fw_cfg_add_i32(fw_cfg, FW_CFG_KERNEL_SIZE, kernel_size); + if (kernel_cmdline) { + fw_cfg_add_i32(fw_cfg, FW_CFG_KERNEL_CMDLINE, CMDLINE_ADDR); + pstrcpy_targphys(CMDLINE_ADDR, TARGET_PAGE_SIZE, kernel_cmdline); + } else { + fw_cfg_add_i32(fw_cfg, FW_CFG_KERNEL_CMDLINE, 0); + } + fw_cfg_add_i32(fw_cfg, FW_CFG_INITRD_ADDR, initrd_base); + fw_cfg_add_i32(fw_cfg, FW_CFG_INITRD_SIZE, initrd_size); + fw_cfg_add_i16(fw_cfg, FW_CFG_BOOT_DEVICE, ppc_boot_device); + qemu_register_boot_set(fw_cfg_boot_set, fw_cfg); } QEMUMachine heathrow_machine = { diff --git a/hw/sun4m.c b/hw/sun4m.c index 21667c038e3..681d9736e0f 100644 --- a/hw/sun4m.c +++ b/hw/sun4m.c @@ -174,24 +174,9 @@ void DMA_register_channel (int nchan, { } -static int nvram_boot_set(void *opaque, const char *boot_device) +static int fw_cfg_boot_set(void *opaque, const char *boot_device) { - unsigned int i; - uint8_t image[sizeof(ohwcfg_v3_t)]; - ohwcfg_v3_t *header = (ohwcfg_v3_t *)ℑ - m48t59_t *nvram = (m48t59_t *)opaque; - - for (i = 0; i < sizeof(image); i++) - image[i] = m48t59_read(nvram, i) & 0xff; - - pstrcpy((char *)header->boot_devices, sizeof(header->boot_devices), - boot_device); - header->nboot_devices = strlen(boot_device) & 0xff; - header->crc = cpu_to_be16(OHW_compute_crc(header, 0x00, 0xF8)); - - for (i = 0; i < sizeof(image); i++) - m48t59_write(nvram, i, image[i]); - + fw_cfg_add_i16(opaque, FW_CFG_BOOT_DEVICE, boot_device[0]); return 0; } @@ -204,48 +189,11 @@ static void nvram_init(m48t59_t *nvram, uint8_t *macaddr, const char *cmdline, unsigned int i; uint32_t start, end; uint8_t image[0x1ff0]; - ohwcfg_v3_t *header = (ohwcfg_v3_t *)ℑ - struct sparc_arch_cfg *sparc_header; struct OpenBIOS_nvpart_v1 *part_header; memset(image, '\0', sizeof(image)); - // Try to match PPC NVRAM - pstrcpy((char *)header->struct_ident, sizeof(header->struct_ident), - "QEMU_BIOS"); - header->struct_version = cpu_to_be32(3); /* structure v3 */ - - header->nvram_size = cpu_to_be16(0x2000); - header->nvram_arch_ptr = cpu_to_be16(sizeof(ohwcfg_v3_t)); - header->nvram_arch_size = cpu_to_be16(sizeof(struct sparc_arch_cfg)); - pstrcpy((char *)header->arch, sizeof(header->arch), arch); - header->nb_cpus = smp_cpus & 0xff; - header->RAM0_base = 0; - header->RAM0_size = cpu_to_be64((uint64_t)RAM_size); - pstrcpy((char *)header->boot_devices, sizeof(header->boot_devices), - boot_devices); - header->nboot_devices = strlen(boot_devices) & 0xff; - header->kernel_image = cpu_to_be64((uint64_t)KERNEL_LOAD_ADDR); - header->kernel_size = cpu_to_be64((uint64_t)kernel_size); - if (cmdline) { - pstrcpy_targphys(CMDLINE_ADDR, TARGET_PAGE_SIZE, cmdline); - header->cmdline = cpu_to_be64((uint64_t)CMDLINE_ADDR); - header->cmdline_size = cpu_to_be64((uint64_t)strlen(cmdline)); - } - // XXX add initrd_image, initrd_size - header->width = cpu_to_be16(width); - header->height = cpu_to_be16(height); - header->depth = cpu_to_be16(depth); - if (nographic) - header->graphic_flags = cpu_to_be16(OHW_GF_NOGRAPHICS); - - header->crc = cpu_to_be16(OHW_compute_crc(header, 0x00, 0xF8)); - - // Architecture specific header - start = sizeof(ohwcfg_v3_t); - sparc_header = (struct sparc_arch_cfg *)&image[start]; - sparc_header->valid = 0; - start += sizeof(struct sparc_arch_cfg); + start = 0; // OpenBIOS nvram variables // Variable partition @@ -277,8 +225,6 @@ static void nvram_init(m48t59_t *nvram, uint8_t *macaddr, const char *cmdline, for (i = 0; i < sizeof(image); i++) m48t59_write(nvram, i, image[i]); - - qemu_register_boot_set(nvram_boot_set, nvram); } static void *slavio_intctl; @@ -604,6 +550,18 @@ static void sun4m_hw_init(const struct sun4m_hwdef *hwdef, ram_addr_t RAM_size, fw_cfg_add_i64(fw_cfg, FW_CFG_RAM_SIZE, (uint64_t)ram_size); fw_cfg_add_i16(fw_cfg, FW_CFG_MACHINE_ID, hwdef->machine_id); fw_cfg_add_i16(fw_cfg, FW_CFG_SUN4M_DEPTH, graphic_depth); + fw_cfg_add_i32(fw_cfg, FW_CFG_KERNEL_ADDR, KERNEL_LOAD_ADDR); + fw_cfg_add_i32(fw_cfg, FW_CFG_KERNEL_SIZE, kernel_size); + if (kernel_cmdline) { + fw_cfg_add_i32(fw_cfg, FW_CFG_KERNEL_CMDLINE, CMDLINE_ADDR); + pstrcpy_targphys(CMDLINE_ADDR, TARGET_PAGE_SIZE, kernel_cmdline); + } else { + fw_cfg_add_i32(fw_cfg, FW_CFG_KERNEL_CMDLINE, 0); + } + fw_cfg_add_i32(fw_cfg, FW_CFG_INITRD_ADDR, INITRD_LOAD_ADDR); + fw_cfg_add_i32(fw_cfg, FW_CFG_INITRD_SIZE, 0); // not used + fw_cfg_add_i16(fw_cfg, FW_CFG_BOOT_DEVICE, boot_device[0]); + qemu_register_boot_set(fw_cfg_boot_set, fw_cfg); } enum { @@ -1362,6 +1320,19 @@ static void sun4d_hw_init(const struct sun4d_hwdef *hwdef, ram_addr_t RAM_size, fw_cfg_add_i32(fw_cfg, FW_CFG_ID, 1); fw_cfg_add_i64(fw_cfg, FW_CFG_RAM_SIZE, (uint64_t)ram_size); fw_cfg_add_i16(fw_cfg, FW_CFG_MACHINE_ID, hwdef->machine_id); + fw_cfg_add_i16(fw_cfg, FW_CFG_SUN4M_DEPTH, graphic_depth); + fw_cfg_add_i32(fw_cfg, FW_CFG_KERNEL_ADDR, KERNEL_LOAD_ADDR); + fw_cfg_add_i32(fw_cfg, FW_CFG_KERNEL_SIZE, kernel_size); + if (kernel_cmdline) { + fw_cfg_add_i32(fw_cfg, FW_CFG_KERNEL_CMDLINE, CMDLINE_ADDR); + pstrcpy_targphys(CMDLINE_ADDR, TARGET_PAGE_SIZE, kernel_cmdline); + } else { + fw_cfg_add_i32(fw_cfg, FW_CFG_KERNEL_CMDLINE, 0); + } + fw_cfg_add_i32(fw_cfg, FW_CFG_INITRD_ADDR, INITRD_LOAD_ADDR); + fw_cfg_add_i32(fw_cfg, FW_CFG_INITRD_SIZE, 0); // not used + fw_cfg_add_i16(fw_cfg, FW_CFG_BOOT_DEVICE, boot_device[0]); + qemu_register_boot_set(fw_cfg_boot_set, fw_cfg); } /* SPARCserver 1000 hardware initialisation */ @@ -1580,6 +1551,19 @@ static void sun4c_hw_init(const struct sun4c_hwdef *hwdef, ram_addr_t RAM_size, fw_cfg_add_i32(fw_cfg, FW_CFG_ID, 1); fw_cfg_add_i64(fw_cfg, FW_CFG_RAM_SIZE, (uint64_t)ram_size); fw_cfg_add_i16(fw_cfg, FW_CFG_MACHINE_ID, hwdef->machine_id); + fw_cfg_add_i16(fw_cfg, FW_CFG_SUN4M_DEPTH, graphic_depth); + fw_cfg_add_i32(fw_cfg, FW_CFG_KERNEL_ADDR, KERNEL_LOAD_ADDR); + fw_cfg_add_i32(fw_cfg, FW_CFG_KERNEL_SIZE, kernel_size); + if (kernel_cmdline) { + fw_cfg_add_i32(fw_cfg, FW_CFG_KERNEL_CMDLINE, CMDLINE_ADDR); + pstrcpy_targphys(CMDLINE_ADDR, TARGET_PAGE_SIZE, kernel_cmdline); + } else { + fw_cfg_add_i32(fw_cfg, FW_CFG_KERNEL_CMDLINE, 0); + } + fw_cfg_add_i32(fw_cfg, FW_CFG_INITRD_ADDR, INITRD_LOAD_ADDR); + fw_cfg_add_i32(fw_cfg, FW_CFG_INITRD_SIZE, 0); // not used + fw_cfg_add_i16(fw_cfg, FW_CFG_BOOT_DEVICE, boot_device[0]); + qemu_register_boot_set(fw_cfg_boot_set, fw_cfg); } /* SPARCstation 2 hardware initialisation */ diff --git a/hw/sun4u.c b/hw/sun4u.c index 55e38805161..a8c4347e125 100644 --- a/hw/sun4u.c +++ b/hw/sun4u.c @@ -89,24 +89,9 @@ void DMA_register_channel (int nchan, { } -static int nvram_boot_set(void *opaque, const char *boot_device) +static int fw_cfg_boot_set(void *opaque, const char *boot_device) { - unsigned int i; - uint8_t image[sizeof(ohwcfg_v3_t)]; - ohwcfg_v3_t *header = (ohwcfg_v3_t *)ℑ - m48t59_t *nvram = (m48t59_t *)opaque; - - for (i = 0; i < sizeof(image); i++) - image[i] = m48t59_read(nvram, i) & 0xff; - - pstrcpy((char *)header->boot_devices, sizeof(header->boot_devices), - boot_device); - header->nboot_devices = strlen(boot_device) & 0xff; - header->crc = cpu_to_be16(OHW_compute_crc(header, 0x00, 0xF8)); - - for (i = 0; i < sizeof(image); i++) - m48t59_write(nvram, i, image[i]); - + fw_cfg_add_i16(opaque, FW_CFG_BOOT_DEVICE, boot_device[0]); return 0; } @@ -124,51 +109,11 @@ static int sun4u_NVRAM_set_params (m48t59_t *nvram, uint16_t NVRAM_size, unsigned int i; uint32_t start, end; uint8_t image[0x1ff0]; - ohwcfg_v3_t *header = (ohwcfg_v3_t *)ℑ - struct sparc_arch_cfg *sparc_header; struct OpenBIOS_nvpart_v1 *part_header; memset(image, '\0', sizeof(image)); - // Try to match PPC NVRAM - pstrcpy((char *)header->struct_ident, sizeof(header->struct_ident), - "QEMU_BIOS"); - header->struct_version = cpu_to_be32(3); /* structure v3 */ - - header->nvram_size = cpu_to_be16(NVRAM_size); - header->nvram_arch_ptr = cpu_to_be16(sizeof(ohwcfg_v3_t)); - header->nvram_arch_size = cpu_to_be16(sizeof(struct sparc_arch_cfg)); - pstrcpy((char *)header->arch, sizeof(header->arch), arch); - header->nb_cpus = smp_cpus & 0xff; - header->RAM0_base = 0; - header->RAM0_size = cpu_to_be64((uint64_t)RAM_size); - pstrcpy((char *)header->boot_devices, sizeof(header->boot_devices), - boot_devices); - header->nboot_devices = strlen(boot_devices) & 0xff; - header->kernel_image = cpu_to_be64((uint64_t)kernel_image); - header->kernel_size = cpu_to_be64((uint64_t)kernel_size); - if (cmdline) { - pstrcpy_targphys(CMDLINE_ADDR, TARGET_PAGE_SIZE, cmdline); - header->cmdline = cpu_to_be64((uint64_t)CMDLINE_ADDR); - header->cmdline_size = cpu_to_be64((uint64_t)strlen(cmdline)); - } - header->initrd_image = cpu_to_be64((uint64_t)initrd_image); - header->initrd_size = cpu_to_be64((uint64_t)initrd_size); - header->NVRAM_image = cpu_to_be64((uint64_t)NVRAM_image); - - header->width = cpu_to_be16(width); - header->height = cpu_to_be16(height); - header->depth = cpu_to_be16(depth); - if (nographic) - header->graphic_flags = cpu_to_be16(OHW_GF_NOGRAPHICS); - - header->crc = cpu_to_be16(OHW_compute_crc(header, 0x00, 0xF8)); - - // Architecture specific header - start = sizeof(ohwcfg_v3_t); - sparc_header = (struct sparc_arch_cfg *)&image[start]; - sparc_header->valid = 0; - start += sizeof(struct sparc_arch_cfg); + start = 0; // OpenBIOS nvram variables // Variable partition @@ -200,8 +145,6 @@ static int sun4u_NVRAM_set_params (m48t59_t *nvram, uint16_t NVRAM_size, for (i = 0; i < sizeof(image); i++) m48t59_write(nvram, i, image[i]); - qemu_register_boot_set(nvram_boot_set, nvram); - return 0; } @@ -575,6 +518,18 @@ static void sun4uv_init(ram_addr_t RAM_size, int vga_ram_size, fw_cfg_add_i32(fw_cfg, FW_CFG_ID, 1); fw_cfg_add_i64(fw_cfg, FW_CFG_RAM_SIZE, (uint64_t)ram_size); fw_cfg_add_i16(fw_cfg, FW_CFG_MACHINE_ID, hwdef->machine_id); + fw_cfg_add_i32(fw_cfg, FW_CFG_KERNEL_ADDR, KERNEL_LOAD_ADDR); + fw_cfg_add_i32(fw_cfg, FW_CFG_KERNEL_SIZE, kernel_size); + if (kernel_cmdline) { + fw_cfg_add_i32(fw_cfg, FW_CFG_KERNEL_CMDLINE, CMDLINE_ADDR); + pstrcpy_targphys(CMDLINE_ADDR, TARGET_PAGE_SIZE, kernel_cmdline); + } else { + fw_cfg_add_i32(fw_cfg, FW_CFG_KERNEL_CMDLINE, 0); + } + fw_cfg_add_i32(fw_cfg, FW_CFG_INITRD_ADDR, INITRD_LOAD_ADDR); + fw_cfg_add_i32(fw_cfg, FW_CFG_INITRD_SIZE, initrd_size); + fw_cfg_add_i16(fw_cfg, FW_CFG_BOOT_DEVICE, boot_devices[0]); + qemu_register_boot_set(fw_cfg_boot_set, fw_cfg); } enum { diff --git a/pc-bios/README b/pc-bios/README index 247689bcdef..4b9b2c5bbf3 100644 --- a/pc-bios/README +++ b/pc-bios/README @@ -42,7 +42,7 @@ firmware implementation. The goal is to implement a 100% IEEE 1275-1994 (referred to as Open Firmware) compliant firmware. The included images for Sparc32, Sparc64 and PowerPC (for 32 and 64 bit - PPC CPUs) are built from OpenBIOS 1.0 release (SVN revision 463). + PPC CPUs) are built from OpenBIOS SVN revision 479. - The PXE roms come from Rom-o-Matic etherboot 5.4.2. pcnet32:pcnet32 -- [0x1022,0x2000] diff --git a/pc-bios/openbios-ppc b/pc-bios/openbios-ppc index 87fd91dab25f5a9937e0fe92c40fb0ac34614396..d0fa6c930c9bbdd4a05286811a71674acddcec19 100644 GIT binary patch delta 31140 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 delta 31171 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 HRQCS?#$E`I diff --git a/pc-bios/openbios-sparc32 b/pc-bios/openbios-sparc32 index 7a8eda91ce1761a9ae150210eae60c30a057b130..8f6289e052b6b93049b67c736c746cc297e677fc 100644 GIT binary patch delta 16712 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 delta 16929 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
AMcz-o!q6 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 -- 2.39.5