[SeaBIOS] [PATCH] Add pvevent device driver
Hu Tao
hutao at cn.fujitsu.com
Thu Mar 14 10:33:19 CET 2013
On Thu, Mar 14, 2013 at 10:57:18AM +0200, Gleb Natapov wrote:
> On Thu, Mar 14, 2013 at 04:48:47PM +0800, Hu Tao wrote:
> > pvevent device is used to notify host(qemu) when guest panic
> > happens.
> >
> > ref: http://lists.nongnu.org/archive/html/qemu-devel/2013-03/msg02293.html
> >
> > Signed-off-by: Hu Tao <hutao at cn.fujitsu.com>
> > ---
> > src/acpi-dsdt-isa.dsl | 30 ++++++++++++++++++++++++++++++
> > 1 file changed, 30 insertions(+)
> >
> > diff --git a/src/acpi-dsdt-isa.dsl b/src/acpi-dsdt-isa.dsl
> > index 23761db..d083245 100644
> > --- a/src/acpi-dsdt-isa.dsl
> > +++ b/src/acpi-dsdt-isa.dsl
> > @@ -99,4 +99,34 @@ Scope(\_SB.PCI0.ISA) {
> > IRQNoFlags() { 3 }
> > })
> > }
> > +
> > + Device(PEVT) {
> > + Name(_HID, "MSFT0001")
> We cannot use MSFT!
OK, I see now, we have to use QEMU0001 or like. More question: if I
request ACPI ID: QEMU from pnpid at microsoft.com, who should be CCed,
Anthony, qemu-list or any others?
>
> > + OperationRegion(PEOR, SystemIO, 0x0505, 0x01)
> IO port should be received form QEMU by fw_cfg and patched here at run time.
If I'm right, io port can be passed to seabios through fw_cfg file
interface, but I'm still figuring out how to patch DSDT here and below at
run time. Maybe build_ssdt() is close to this.
>
> > + Field(PEOR, ByteAcc, NoLock, Preserve) {
> > + PEPT, 8,
> > + }
> > +
> > + Method(_STA, 0, NotSerialized) {
> > + Store(PEPT, Local0)
> > + If (LEqual(Local0, Zero)) {
> > + Return (0x00)
> > + } Else {
> > + Return (0x0F)
> > + }
> > + }
> No probing. If QEMU does not provide IO port function should be patched
> to return zero.
>
> > +
> > + Method(RDPT, 0, NotSerialized) {
> > + Store(PEPT, Local0)
> > + Return (Local0)
> > + }
> > +
> > + Method(WRPT, 1, NotSerialized) {
> > + Store(Arg0, PEPT)
> > + }
> > +
> > + Name(_CRS, ResourceTemplate() {
> > + IO(Decode16, 0x0505, 0x0505, 0x01, 0x01)
> > + })
> > + }
> > }
> > --
> > 1.8.1.4
>
> --
> Gleb.
More information about the SeaBIOS
mailing list