On 19/05/12 18:21, Blue Swirl wrote:
On Sat, May 19, 2012 at 4:38 PM, Artyom Tarasenkoatar4qemu@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.