Am 06.05.2012 20:45, schrieb Blue Swirl:
> Check CPU ID if we're running on boot CPU. If so,
> don't use SMP table information since it may contain
> uninitialized or garbage values.
>
> Signed-off-by: Blue Swirl <blauwirbel(a)gmail.com>
> ---
> arch/sparc32/entry.S | 11 +++++++++++
> 1 file changed, 11 insertions(+)
I've still not got around to testing this on ppc yet, but on x86_64
valgrind was happy.
sparc64 seems to have a similar problem though according to valgrind:
==22736== Thread 3:
==22736== Conditional jump or move depends on uninitialised value(s)
==22736== at 0x2C8050: compute_all_sub (cc_helper.c:37)
==22736== by 0x2C84A8: helper_compute_psr (cc_helper.c:470)
==22736== by 0x9769447: ???
==22736== Uninitialised value was created by a heap allocation
==22736== at 0x4C27CE8: memalign (in
/usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
==22736== by 0x4C27D97: posix_memalign (in
/usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
==22736== by 0x256061: qemu_memalign (oslib-posix.c:93)
==22736== by 0x256109: qemu_vmalloc (oslib-posix.c:126)
==22736== by 0x2D1EF6: qemu_ram_alloc_from_ptr (exec.c:2664)
==22736== by 0x2F5FF6: memory_region_init_ram (memory.c:954)
==22736== by 0x303EFD: ram_init1 (sun4u.c:711)
==22736== by 0x268E1E: qdev_init (qdev.c:151)
==22736== by 0x268F5C: qdev_init_nofail (qdev.c:258)
==22736== by 0x304620: sun4uv_init (sun4u.c:729)
==22736== by 0x304F1F: sun4u_init (sun4u.c:932)
==22736== by 0x1846D8: main (vl.c:3519)
==22736==
==22736== Conditional jump or move depends on uninitialised value(s)
==22736== at 0x2C7F92: compute_all_sub_xcc (cc_helper.c:60)
==22736== by 0x2C84C2: helper_compute_psr (cc_helper.c:473)
==22736== by 0x9769447: ???
==22736== Uninitialised value was created by a heap allocation
==22736== at 0x4C27CE8: memalign (in
/usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
==22736== by 0x4C27D97: posix_memalign (in
/usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
==22736== by 0x256061: qemu_memalign (oslib-posix.c:93)
==22736== by 0x256109: qemu_vmalloc (oslib-posix.c:126)
==22736== by 0x2D1EF6: qemu_ram_alloc_from_ptr (exec.c:2664)
==22736== by 0x2F5FF6: memory_region_init_ram (memory.c:954)
==22736== by 0x303EFD: ram_init1 (sun4u.c:711)
==22736== by 0x268E1E: qdev_init (qdev.c:151)
==22736== by 0x268F5C: qdev_init_nofail (qdev.c:258)
==22736== by 0x304620: sun4uv_init (sun4u.c:729)
==22736== by 0x304F1F: sun4u_init (sun4u.c:932)
==22736== by 0x1846D8: main (vl.c:3519)
==22736==
==22736== Conditional jump or move depends on uninitialised value(s)
==22736== at 0x2C8050: compute_all_sub (cc_helper.c:37)
==22736== by 0x2C84A8: helper_compute_psr (cc_helper.c:470)
==22736== by 0x97C39BC: ???
==22736== Uninitialised value was created by a heap allocation
==22736== at 0x4C27CE8: memalign (in
/usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
==22736== by 0x4C27D97: posix_memalign (in
/usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
==22736== by 0x256061: qemu_memalign (oslib-posix.c:93)
==22736== by 0x256109: qemu_vmalloc (oslib-posix.c:126)
==22736== by 0x2D1EF6: qemu_ram_alloc_from_ptr (exec.c:2664)
==22736== by 0x2F5FF6: memory_region_init_ram (memory.c:954)
==22736== by 0x303EFD: ram_init1 (sun4u.c:711)
==22736== by 0x268E1E: qdev_init (qdev.c:151)
==22736== by 0x268F5C: qdev_init_nofail (qdev.c:258)
==22736== by 0x304620: sun4uv_init (sun4u.c:729)
==22736== by 0x304F1F: sun4u_init (sun4u.c:932)
==22736== by 0x1846D8: main (vl.c:3519)
==22736==
==22736== Conditional jump or move depends on uninitialised value(s)
==22736== at 0x2C7F92: compute_all_sub_xcc (cc_helper.c:60)
==22736== by 0x2C84C2: helper_compute_psr (cc_helper.c:473)
==22736== by 0x97C39BC: ???
==22736== Uninitialised value was created by a heap allocation
==22736== at 0x4C27CE8: memalign (in
/usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
==22736== by 0x4C27D97: posix_memalign (in
/usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
==22736== by 0x256061: qemu_memalign (oslib-posix.c:93)
==22736== by 0x256109: qemu_vmalloc (oslib-posix.c:126)
==22736== by 0x2D1EF6: qemu_ram_alloc_from_ptr (exec.c:2664)
==22736== by 0x2F5FF6: memory_region_init_ram (memory.c:954)
==22736== by 0x303EFD: ram_init1 (sun4u.c:711)
==22736== by 0x268E1E: qdev_init (qdev.c:151)
==22736== by 0x268F5C: qdev_init_nofail (qdev.c:258)
==22736== by 0x304620: sun4uv_init (sun4u.c:729)
==22736== by 0x304F1F: sun4u_init (sun4u.c:932)
==22736== by 0x1846D8: main (vl.c:3519)
==22736==
==22736== Conditional jump or move depends on uninitialised value(s)
==22736== at 0x2C83AF: compute_all_logic (cc_helper.c:37)
==22736== by 0x2C84A8: helper_compute_psr (cc_helper.c:470)
==22736== by 0x97C3A67: ???
==22736== Uninitialised value was created by a heap allocation
==22736== at 0x4C27CE8: memalign (in
/usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
==22736== by 0x4C27D97: posix_memalign (in
/usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
==22736== by 0x256061: qemu_memalign (oslib-posix.c:93)
==22736== by 0x256109: qemu_vmalloc (oslib-posix.c:126)
==22736== by 0x2D1EF6: qemu_ram_alloc_from_ptr (exec.c:2664)
==22736== by 0x2F5FF6: memory_region_init_ram (memory.c:954)
==22736== by 0x303EFD: ram_init1 (sun4u.c:711)
==22736== by 0x268E1E: qdev_init (qdev.c:151)
==22736== by 0x268F5C: qdev_init_nofail (qdev.c:258)
==22736== by 0x304620: sun4uv_init (sun4u.c:729)
==22736== by 0x304F1F: sun4u_init (sun4u.c:932)
==22736== by 0x1846D8: main (vl.c:3519)
==22736==
==22736== Conditional jump or move depends on uninitialised value(s)
==22736== at 0x2C8441: compute_all_logic_xcc (cc_helper.c:60)
==22736== by 0x2C84C2: helper_compute_psr (cc_helper.c:473)
==22736== by 0x97C3A67: ???
==22736== Uninitialised value was created by a heap allocation
==22736== at 0x4C27CE8: memalign (in
/usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
==22736== by 0x4C27D97: posix_memalign (in
/usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
==22736== by 0x256061: qemu_memalign (oslib-posix.c:93)
==22736== by 0x256109: qemu_vmalloc (oslib-posix.c:126)
==22736== by 0x2D1EF6: qemu_ram_alloc_from_ptr (exec.c:2664)
==22736== by 0x2F5FF6: memory_region_init_ram (memory.c:954)
==22736== by 0x303EFD: ram_init1 (sun4u.c:711)
==22736== by 0x268E1E: qdev_init (qdev.c:151)
==22736== by 0x268F5C: qdev_init_nofail (qdev.c:258)
==22736== by 0x304620: sun4uv_init (sun4u.c:729)
==22736== by 0x304F1F: sun4u_init (sun4u.c:932)
==22736== by 0x1846D8: main (vl.c:3519)
==22736==
==22736== Conditional jump or move depends on uninitialised value(s)
==22736== at 0x977207F: ???
==22736== Uninitialised value was created by a heap allocation
==22736== at 0x4C27CE8: memalign (in
/usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
==22736== by 0x4C27D97: posix_memalign (in
/usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
==22736== by 0x256061: qemu_memalign (oslib-posix.c:93)
==22736== by 0x256109: qemu_vmalloc (oslib-posix.c:126)
==22736== by 0x2D1EF6: qemu_ram_alloc_from_ptr (exec.c:2664)
==22736== by 0x2F5FF6: memory_region_init_ram (memory.c:954)
==22736== by 0x303EFD: ram_init1 (sun4u.c:711)
==22736== by 0x268E1E: qdev_init (qdev.c:151)
==22736== by 0x268F5C: qdev_init_nofail (qdev.c:258)
==22736== by 0x304620: sun4uv_init (sun4u.c:729)
==22736== by 0x304F1F: sun4u_init (sun4u.c:932)
==22736== by 0x1846D8: main (vl.c:3519)
==22736==
Andreas
--
SUSE LINUX Products GmbH, Maxfeldstr. 5, 90409 Nürnberg, Germany
GF: Jeff Hawn, Jennifer Guild, Felix Imendörffer; HRB 16746 AG Nürnberg
On Mon, May 21, 2012 at 7:10 PM, Blue Swirl <blauwirbel(a)gmail.com> wrote:
> On Sun, May 20, 2012 at 10:23 PM, Mark Cave-Ayland
> <mark.cave-ayland(a)ilande.co.uk> wrote:
>> On 19/05/12 18:21, Blue Swirl wrote:
>>
>>> On Sat, May 19, 2012 at 4:38 PM, Artyom Tarasenko<atar4qemu(a)gmail.com>
>>> wrote:
>>>>
>>>> Both Linux and MilaX complain about the missing eeprom / rtc-m48t59 node.
>>>> Since QEMU actually has this device I tried to add it, but not sure
>>>> where is it located.
>>
>>
>> Oooh this will be interesting as Milax currently fails when it fails to
>> detect this device - fixing it should get Solaris to boot further. This has
>> also been on my list for a while, but so much to do, not enough time...
>>
>>
>>>> In sun4u.c it's initialized like this:
>>>>
>>>> nvram = m48t59_init_isa(isa_bus, 0x0074, NVRAM_SIZE, 59);
>>>>
>>>> Is 0x74 the offset to the ISA bus? Then it's wired not as on Ultra-5:
>>>>
>>>> Node 0xf00662d8
>>>> address: fffba000
>>>> reg: 00000014.00000000.00002000
>>>> model: 'mk48t59'
>>>> name: 'eeprom'
>>>>
>>>> Here it looks like it had to be aligned to a beginning of a page,
>>>> which makes sense because of the large size...
>>>> So, where QEMU's 0x74 are coming from?
>>>
>>>
>>> It's the I/O port used by PPC. Looking at the reg, it should be using
>>> MMIO at address 0 instead.
>>
>>
>> FWIW I've just had a discussion on qemu-devel and the outcome was that the
>> <device>_init() functions are generally just shortcuts to the most common
>> "wiring" of the peripherals into a machine. So I suspect you'll need to copy
>> the _init() function as sun4_m48t59_init() and customise as required.
>
> We're now using m48t59_init_isa(), we could instead use m48t59_init()
> with zero ports. But this would create a SysBusDevice behind Ebus
> which is behind PCI, so PCI BAR changes would not propagate.
Yes, I rather thought about adding the mem_base parameter to the
m48t59_init_isa() function, similar to m48t59_init() .
--
Regards,
Artyom Tarasenko
solaris/sparc under qemu blog: http://tyom.blogspot.com/search/label/qemu
On 19/05/12 18:21, Blue Swirl wrote:
> On Sat, May 19, 2012 at 4:38 PM, Artyom Tarasenko<atar4qemu(a)gmail.com> wrote:
>> Both Linux and MilaX complain about the missing eeprom / rtc-m48t59 node.
>> Since QEMU actually has this device I tried to add it, but not sure
>> where is it located.
Oooh this will be interesting as Milax currently fails when it fails to
detect this device - fixing it should get Solaris to boot further. This
has also been on my list for a while, but so much to do, not enough time...
>> In sun4u.c it's initialized like this:
>>
>> nvram = m48t59_init_isa(isa_bus, 0x0074, NVRAM_SIZE, 59);
>>
>> Is 0x74 the offset to the ISA bus? Then it's wired not as on Ultra-5:
>>
>> Node 0xf00662d8
>> address: fffba000
>> reg: 00000014.00000000.00002000
>> model: 'mk48t59'
>> name: 'eeprom'
>>
>> Here it looks like it had to be aligned to a beginning of a page,
>> which makes sense because of the large size...
>> So, where QEMU's 0x74 are coming from?
>
> It's the I/O port used by PPC. Looking at the reg, it should be using
> MMIO at address 0 instead.
FWIW I've just had a discussion on qemu-devel and the outcome was that
the <device>_init() functions are generally just shortcuts to the most
common "wiring" of the peripherals into a machine. So I suspect you'll
need to copy the _init() function as sun4_m48t59_init() and customise as
required.
HTH,
Mark.
The official product name is written 'QEMU'.
Signed-off-by: Stefan Weil <sw(a)weilnetz.de>
---
arch/ppc/qemu/start.S | 2 +-
arch/ppc/qemu/tree.fs | 2 +-
arch/sparc32/ldscript | 2 +-
arch/sparc64/ldscript | 2 +-
drivers/pci_database.c | 2 +-
drivers/sbus.c | 6 +++---
6 files changed, 8 insertions(+), 8 deletions(-)
diff --git a/arch/ppc/qemu/start.S b/arch/ppc/qemu/start.S
index aa582e2..77ced18 100644
--- a/arch/ppc/qemu/start.S
+++ b/arch/ppc/qemu/start.S
@@ -701,7 +701,7 @@ _GLOBAL(flush_icache_range):
isync
blr
- /* Get RAM size from Qemu configuration device */
+ /* Get RAM size from QEMU configuration device */
#define CFG_ADDR 0xf0000510
#define FW_CFG_RAM_SIZE 0x03
diff --git a/arch/ppc/qemu/tree.fs b/arch/ppc/qemu/tree.fs
index e4115ea..1b9c293 100644
--- a/arch/ppc/qemu/tree.fs
+++ b/arch/ppc/qemu/tree.fs
@@ -1,4 +1,4 @@
-\ Qemu specific initialization code
+\ QEMU specific initialization code
\
\ This program is free software; you can redistribute it and/or
\ modify it under the terms of the GNU General Public License
diff --git a/arch/sparc32/ldscript b/arch/sparc32/ldscript
index 32c9445..b543c15 100644
--- a/arch/sparc32/ldscript
+++ b/arch/sparc32/ldscript
@@ -1,7 +1,7 @@
OUTPUT_FORMAT(elf32-sparc)
OUTPUT_ARCH(sparc)
-/* Qemu ELF loader can't handle very complex files, so we put ELFBoot
+/* QEMU ELF loader can't handle very complex files, so we put ELFBoot
info to rodata and put initctx to data.*/
ENTRY(trap_table)
diff --git a/arch/sparc64/ldscript b/arch/sparc64/ldscript
index 11167c0..d62ab78 100644
--- a/arch/sparc64/ldscript
+++ b/arch/sparc64/ldscript
@@ -1,7 +1,7 @@
OUTPUT_FORMAT(elf64-sparc)
OUTPUT_ARCH(sparc:v9)
-/* Qemu ELF loader can't handle very complex files, so we put ELFBoot
+/* QEMU ELF loader can't handle very complex files, so we put ELFBoot
info to rodata and put initctx to data.*/
ENTRY(trap_table)
diff --git a/drivers/pci_database.c b/drivers/pci_database.c
index ac47621..0983da3 100644
--- a/drivers/pci_database.c
+++ b/drivers/pci_database.c
@@ -176,7 +176,7 @@ static const pci_dev_t vga_devices[] = {
},
{
PCI_VENDOR_ID_QEMU, PCI_DEVICE_ID_QEMU_VGA,
- NULL, "QEMU,VGA", "Qemu VGA", "VGA\0",
+ NULL, "QEMU,VGA", "QEMU VGA", "VGA\0",
0, 0, 0,
NULL, NULL,
},
diff --git a/drivers/sbus.c b/drivers/sbus.c
index 1107c1d..3708a5e 100644
--- a/drivers/sbus.c
+++ b/drivers/sbus.c
@@ -429,7 +429,7 @@ ob_macio_init(unsigned int slot, uint64_t base, unsigned long offset)
static void
sbus_probe_slot_ss5(unsigned int slot, uint64_t base)
{
- // OpenBIOS and Qemu don't know how to do Sbus probing
+ // OpenBIOS and QEMU don't know how to do Sbus probing
switch(slot) {
case 3: // SUNW,tcx
ob_tcx_init(slot, "/iommu/sbus/SUNW,tcx");
@@ -451,7 +451,7 @@ sbus_probe_slot_ss5(unsigned int slot, uint64_t base)
static void
sbus_probe_slot_ss10(unsigned int slot, uint64_t base)
{
- // OpenBIOS and Qemu don't know how to do Sbus probing
+ // OpenBIOS and QEMU don't know how to do Sbus probing
switch(slot) {
case 2: // SUNW,tcx
ob_tcx_init(slot, "/iommu/sbus/SUNW,tcx");
@@ -469,7 +469,7 @@ sbus_probe_slot_ss10(unsigned int slot, uint64_t base)
static void
sbus_probe_slot_ss600mp(unsigned int slot, uint64_t base)
{
- // OpenBIOS and Qemu don't know how to do Sbus probing
+ // OpenBIOS and QEMU don't know how to do Sbus probing
switch(slot) {
case 2: // SUNW,tcx
ob_tcx_init(slot, "/iommu/sbus/SUNW,tcx");
--
1.7.9
Author: afaerber
Date: Sun May 20 18:07:35 2012
New Revision: 1060
URL: http://tracker.coreboot.org/trac/openbios/changeset/1060
Log:
Replace 'Qemu' by 'QEMU'
The official product name is written 'QEMU'.
Signed-off-by: Stefan Weil <sw(a)weilnetz.de>
Signed-off-by: Andreas Färber <afaerber(a)suse.de>
Modified:
trunk/openbios-devel/arch/ppc/qemu/start.S
trunk/openbios-devel/arch/ppc/qemu/tree.fs
trunk/openbios-devel/arch/sparc32/ldscript
trunk/openbios-devel/arch/sparc64/ldscript
trunk/openbios-devel/drivers/sbus.c
Modified: trunk/openbios-devel/arch/ppc/qemu/start.S
==============================================================================
--- trunk/openbios-devel/arch/ppc/qemu/start.S Sat May 19 12:38:26 2012 (r1059)
+++ trunk/openbios-devel/arch/ppc/qemu/start.S Sun May 20 18:07:35 2012 (r1060)
@@ -701,7 +701,7 @@
isync
blr
- /* Get RAM size from Qemu configuration device */
+ /* Get RAM size from QEMU configuration device */
#define CFG_ADDR 0xf0000510
#define FW_CFG_RAM_SIZE 0x03
Modified: trunk/openbios-devel/arch/ppc/qemu/tree.fs
==============================================================================
--- trunk/openbios-devel/arch/ppc/qemu/tree.fs Sat May 19 12:38:26 2012 (r1059)
+++ trunk/openbios-devel/arch/ppc/qemu/tree.fs Sun May 20 18:07:35 2012 (r1060)
@@ -1,4 +1,4 @@
-\ Qemu specific initialization code
+\ QEMU specific initialization code
\
\ This program is free software; you can redistribute it and/or
\ modify it under the terms of the GNU General Public License
Modified: trunk/openbios-devel/arch/sparc32/ldscript
==============================================================================
--- trunk/openbios-devel/arch/sparc32/ldscript Sat May 19 12:38:26 2012 (r1059)
+++ trunk/openbios-devel/arch/sparc32/ldscript Sun May 20 18:07:35 2012 (r1060)
@@ -1,7 +1,7 @@
OUTPUT_FORMAT(elf32-sparc)
OUTPUT_ARCH(sparc)
-/* Qemu ELF loader can't handle very complex files, so we put ELFBoot
+/* QEMU ELF loader can't handle very complex files, so we put ELFBoot
info to rodata and put initctx to data.*/
ENTRY(trap_table)
Modified: trunk/openbios-devel/arch/sparc64/ldscript
==============================================================================
--- trunk/openbios-devel/arch/sparc64/ldscript Sat May 19 12:38:26 2012 (r1059)
+++ trunk/openbios-devel/arch/sparc64/ldscript Sun May 20 18:07:35 2012 (r1060)
@@ -1,7 +1,7 @@
OUTPUT_FORMAT(elf64-sparc)
OUTPUT_ARCH(sparc:v9)
-/* Qemu ELF loader can't handle very complex files, so we put ELFBoot
+/* QEMU ELF loader can't handle very complex files, so we put ELFBoot
info to rodata and put initctx to data.*/
ENTRY(trap_table)
Modified: trunk/openbios-devel/drivers/sbus.c
==============================================================================
--- trunk/openbios-devel/drivers/sbus.c Sat May 19 12:38:26 2012 (r1059)
+++ trunk/openbios-devel/drivers/sbus.c Sun May 20 18:07:35 2012 (r1060)
@@ -429,7 +429,7 @@
static void
sbus_probe_slot_ss5(unsigned int slot, uint64_t base)
{
- // OpenBIOS and Qemu don't know how to do Sbus probing
+ // OpenBIOS and QEMU don't know how to do Sbus probing
switch(slot) {
case 3: // SUNW,tcx
ob_tcx_init(slot, "/iommu/sbus/SUNW,tcx");
@@ -451,7 +451,7 @@
static void
sbus_probe_slot_ss10(unsigned int slot, uint64_t base)
{
- // OpenBIOS and Qemu don't know how to do Sbus probing
+ // OpenBIOS and QEMU don't know how to do Sbus probing
switch(slot) {
case 2: // SUNW,tcx
ob_tcx_init(slot, "/iommu/sbus/SUNW,tcx");
@@ -469,7 +469,7 @@
static void
sbus_probe_slot_ss600mp(unsigned int slot, uint64_t base)
{
- // OpenBIOS and Qemu don't know how to do Sbus probing
+ // OpenBIOS and QEMU don't know how to do Sbus probing
switch(slot) {
case 2: // SUNW,tcx
ob_tcx_init(slot, "/iommu/sbus/SUNW,tcx");
On Sat, May 19, 2012 at 4:38 PM, Artyom Tarasenko <atar4qemu(a)gmail.com> wrote:
> Both Linux and MilaX complain about the missing eeprom / rtc-m48t59 node.
> Since QEMU actually has this device I tried to add it, but not sure
> where is it located.
> In sun4u.c it's initialized like this:
>
> nvram = m48t59_init_isa(isa_bus, 0x0074, NVRAM_SIZE, 59);
>
> Is 0x74 the offset to the ISA bus? Then it's wired not as on Ultra-5:
>
> Node 0xf00662d8
> address: fffba000
> reg: 00000014.00000000.00002000
> model: 'mk48t59'
> name: 'eeprom'
>
> Here it looks like it had to be aligned to a beginning of a page,
> which makes sense because of the large size...
> So, where QEMU's 0x74 are coming from?
It's the I/O port used by PPC. Looking at the reg, it should be using
MMIO at address 0 instead.
>
> --
> Regards,
> Artyom Tarasenko
>
> solaris/sparc under qemu blog: http://tyom.blogspot.com/search/label/qemu
Both Linux and MilaX complain about the missing eeprom / rtc-m48t59 node.
Since QEMU actually has this device I tried to add it, but not sure
where is it located.
In sun4u.c it's initialized like this:
nvram = m48t59_init_isa(isa_bus, 0x0074, NVRAM_SIZE, 59);
Is 0x74 the offset to the ISA bus? Then it's wired not as on Ultra-5:
Node 0xf00662d8
address: fffba000
reg: 00000014.00000000.00002000
model: 'mk48t59'
name: 'eeprom'
Here it looks like it had to be aligned to a beginning of a page,
which makes sense because of the large size...
So, where QEMU's 0x74 are coming from?
--
Regards,
Artyom Tarasenko
solaris/sparc under qemu blog: http://tyom.blogspot.com/search/label/qemu