[OpenBIOS] [PATCH] PPC64: Make OpenBIOS interrupt handlers 64bit aware

Alexander Graf alex at csgraf.de
Sat Feb 28 14:30:18 CET 2009


While booting a 64bit kernel, there is a small timeframe where OF and  
the kernel communicate with each other. Within that timeframe, DSI/ISI  
interrupts may occur, because some memory is not mapped yet.

Right now in case that happens, we jump into the DSI/ISI interrupt  
handler which clobbers the high 32 bits of the kernel's registers. In  
order to circumvent that, let's save/restore all 64 bits of all kernel  
registers when we get a DSI/ISI interrupt.

In order to make use of this patch in qemu, a separate patch is  
required that makes qemu not run the interrupt handlers from ROM, but  
from RAM. It will follow on the qemu list shortly.

This patch enables a PPC64 Linux kernel to boot up to the point where  
it tries to set up the SLB entries (slbmte), which is not yet  
implemented in qemu.

Signed-off-by: Alexander Graf <alex at csgraf.de>

-------------- next part --------------
A non-text attachment was scrubbed...
Name: ppc64-interrupt-handlers.patch
Type: application/octet-stream
Size: 7468 bytes
Desc: not available
URL: <http://lists.openbios.org/pipermail/openbios/attachments/20090228/8395e789/attachment.dmg>
-------------- next part --------------



More information about the OpenBIOS mailing list