[OpenBIOS] [Qemu-discuss] Qemu-system-sparc: What would I need to change to add functionality to save the nvram content between boots ?

Mark Cave-Ayland mark.cave-ayland at ilande.co.uk
Sun Sep 13 17:14:05 CET 2015


On 11/09/15 19:01, Programmingkid wrote:

> On Sep 11, 2015, at 12:00 PM, qemu-discuss-request at nongnu.org
> <mailto:qemu-discuss-request at nongnu.org> wrote:
> 
>> On 10/09/2015 8:58 AM, Maximilian H. wrote:
>>> Hello,
>>>
>>> I was looking into what parts would need change to save and restore the
>>> nvram content for the qemu-system-sparc vm between boots.
>>>
>>> I see the code in hw/timer/m48t59.c that implements the nvram.
>>>
>>> So some questions arise, and before I spend too much time poking around
>>> the still unknown code, I'd thought I ask first.
>>>
>>> 1. Command line processing starts in vl.c in the main fct there ? Can I
>>> add a command line argument there, say "-sparcnvram" ?
>>>
>>> 2. In hw/timer/m48t59.c has no functionality that I see from having a
>>> look at it (not in depth) to save or restore the nvram's contents for
>>> sparc. Is there a general facility that qemu has that provides such a
>>> functionality - i.e. is there a general qemu save and restore framework ?
>>>
>>> 3. Is there an example somebody could point me to that implements
>>> something similar ? Imitation is the sincerest of flattery ....
>>>
>>> 4. All the alarm and watchdog functionality that the m48t08 provides, is
>>> that used on sparc too ?
>>>
>>> 5. Besides what is in
>>> http://wiki.qemu.org/Documentation/GettingStartedDevelopers, is there
>>> some qemu coding documentation to make it faster for somebody unfamilar
>>> with qemu's code like me to be able to implement something ? I'd like to
>>> spend a few evenings on this, produce a patch and move on.
>>>
>>> Thanks
>>> BR
>>> Max.
>>
> 
> This sounds like a good idea. Having OpenBIOS settings actually be saved
> between boots
> would make things more real. 
> 
> Mark, do you think it is possible for a QEMU command line option to
> actually load the
> saved OpenBIOS settings from a file and restore them into memory? I'm
> thinking something
> along the lines of -prom-memory <file name>. 
> 
> Max, there is a project that you should probably look at called
> OpenBIOS. It implements
> an implementation of Open Firmware. Here is where more info can be
> found: http://www.openfirmware.info/Welcome_to_OpenBIOS. If you do want
> to implement this feature,
> it would help to know how the BIOS is implemented. 

>From memory the reason this hasn't been done is because the NVRAM
interface is used across multiple architectures and there hasn't been a
solution devised that would work well enough for all of them. Then again
as the BIOSs involved have continued to develop, it may be now that some
of the issues can now be solved so it never hurts to ask on the -devel list.

May I ask why you want to save the NVRAM state between boots on SPARC?
My guess would be that you're using a real SS-5 PROM image and looking
to avoid having to type boot commands into the terminal after every
reset. If this is the case then you may be pleasantly surprised using
QEMU 2.4 with the built-in OpenBIOS as there were fixes applied during
the last development cycle that were enough to allow SunOS 4.1.4 to boot.

If this solution works for you and you are keen use the alarm/watchdog
features then there may be some scope to add the required features to
QEMU/OpenBIOS in future.


ATB,

Mark.




More information about the OpenBIOS mailing list