Patchwork acpi: beginnings of piix acpi interface doc

login
register
mail settings
Submitter Michael S. Tsirkin
Date March 12, 2012, 9:35 a.m.
Message ID <20120312093510.GA32194@redhat.com>
Download mbox | patch
Permalink /patch/146055/
State New
Headers show

Comments

Michael S. Tsirkin - March 12, 2012, 9:35 a.m.
Before we start tweaking and enhancing hardware, I think
it makes sense to document what we currently have, to make
sure we stay compatible.
This documents the hotplug interface for piix.
Stubs for cpu hotplug, PM.

Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
---
 docs/acpi.txt |   32 ++++++++++++++++++++++++++++++++
 1 files changed, 32 insertions(+), 0 deletions(-)
 create mode 100644 docs/acpi.txt
Gleb Natapov - March 12, 2012, 11:14 a.m.
On Mon, Mar 12, 2012 at 11:35:29AM +0200, Michael S. Tsirkin wrote:
> Before we start tweaking and enhancing hardware, I think
> it makes sense to document what we currently have, to make
> sure we stay compatible.
> This documents the hotplug interface for piix.
> Stubs for cpu hotplug, PM.
> 
We already have docs/specs/acpi_pci_hotplug.txt, no?

> Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
> ---
>  docs/acpi.txt |   32 ++++++++++++++++++++++++++++++++
>  1 files changed, 32 insertions(+), 0 deletions(-)
>  create mode 100644 docs/acpi.txt
> 
> diff --git a/docs/acpi.txt b/docs/acpi.txt
> new file mode 100644
> index 0000000..4938d48
> --- /dev/null
> +++ b/docs/acpi.txt
> @@ -0,0 +1,32 @@
> +QEMU exposes the following registers to guests,
> +intended primarily for use by the ACPI interface.
> +
> +PCI Hotplug
> +----
> +
> +Events use the standard GPE register:
> +GPE  0xafe0 - an ACPI GPE register
> +
> +Hotplug events set GPE bit 1 (mask 0x2)
> +
> +The following registers are used for PCI hotplug.
> +Each register is 32 bit (4 bytes) long, and has little endian format.
> +Bits 0-31 in each register correspond to slots 0-31 on the root bus,
> +respectively.
> +
> +UP   0xae00 - RO - Bit set by host on device insertion (note:existing implementations
> +                   trigger device check event)
> +DOWN 0xae04 - RO - Bit set by host on user eject request
> +EJ0  0xae08 - WO - Bit set by guest removes all power to device
> +RMV  0xae0c - RO - Bit set by host if slot supports hotplug
> +                   (can not change while guest is up)
> +
> +
> +Power management
> +----
> +TODO
> +
> +
> +CPU hotplug
> +----
> +TODO
> -- 
> 1.7.9.111.gf3fb0

--
			Gleb.
Michael S. Tsirkin - March 12, 2012, 1:24 p.m.
On Mon, Mar 12, 2012 at 01:14:10PM +0200, Gleb Natapov wrote:
> On Mon, Mar 12, 2012 at 11:35:29AM +0200, Michael S. Tsirkin wrote:
> > Before we start tweaking and enhancing hardware, I think
> > it makes sense to document what we currently have, to make
> > sure we stay compatible.
> > This documents the hotplug interface for piix.
> > Stubs for cpu hotplug, PM.
> > 
> We already have docs/specs/acpi_pci_hotplug.txt, no?

Indeed. I didn't notice it.
Alex, so if you change this device you probably want to update the spec
:)

> > Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
> > ---
> >  docs/acpi.txt |   32 ++++++++++++++++++++++++++++++++
> >  1 files changed, 32 insertions(+), 0 deletions(-)
> >  create mode 100644 docs/acpi.txt
> > 
> > diff --git a/docs/acpi.txt b/docs/acpi.txt
> > new file mode 100644
> > index 0000000..4938d48
> > --- /dev/null
> > +++ b/docs/acpi.txt
> > @@ -0,0 +1,32 @@
> > +QEMU exposes the following registers to guests,
> > +intended primarily for use by the ACPI interface.
> > +
> > +PCI Hotplug
> > +----
> > +
> > +Events use the standard GPE register:
> > +GPE  0xafe0 - an ACPI GPE register
> > +
> > +Hotplug events set GPE bit 1 (mask 0x2)
> > +
> > +The following registers are used for PCI hotplug.
> > +Each register is 32 bit (4 bytes) long, and has little endian format.
> > +Bits 0-31 in each register correspond to slots 0-31 on the root bus,
> > +respectively.
> > +
> > +UP   0xae00 - RO - Bit set by host on device insertion (note:existing implementations
> > +                   trigger device check event)
> > +DOWN 0xae04 - RO - Bit set by host on user eject request
> > +EJ0  0xae08 - WO - Bit set by guest removes all power to device
> > +RMV  0xae0c - RO - Bit set by host if slot supports hotplug
> > +                   (can not change while guest is up)
> > +
> > +
> > +Power management
> > +----
> > +TODO
> > +
> > +
> > +CPU hotplug
> > +----
> > +TODO
> > -- 
> > 1.7.9.111.gf3fb0
> 
> --
> 			Gleb.
Gleb Natapov - March 12, 2012, 1:25 p.m.
On Mon, Mar 12, 2012 at 03:24:39PM +0200, Michael S. Tsirkin wrote:
> On Mon, Mar 12, 2012 at 01:14:10PM +0200, Gleb Natapov wrote:
> > On Mon, Mar 12, 2012 at 11:35:29AM +0200, Michael S. Tsirkin wrote:
> > > Before we start tweaking and enhancing hardware, I think
> > > it makes sense to document what we currently have, to make
> > > sure we stay compatible.
> > > This documents the hotplug interface for piix.
> > > Stubs for cpu hotplug, PM.
> > > 
> > We already have docs/specs/acpi_pci_hotplug.txt, no?
> 
> Indeed. I didn't notice it.
The commit that adds it has your SOB :)

--
			Gleb.

Patch

diff --git a/docs/acpi.txt b/docs/acpi.txt
new file mode 100644
index 0000000..4938d48
--- /dev/null
+++ b/docs/acpi.txt
@@ -0,0 +1,32 @@ 
+QEMU exposes the following registers to guests,
+intended primarily for use by the ACPI interface.
+
+PCI Hotplug
+----
+
+Events use the standard GPE register:
+GPE  0xafe0 - an ACPI GPE register
+
+Hotplug events set GPE bit 1 (mask 0x2)
+
+The following registers are used for PCI hotplug.
+Each register is 32 bit (4 bytes) long, and has little endian format.
+Bits 0-31 in each register correspond to slots 0-31 on the root bus,
+respectively.
+
+UP   0xae00 - RO - Bit set by host on device insertion (note:existing implementations
+                   trigger device check event)
+DOWN 0xae04 - RO - Bit set by host on user eject request
+EJ0  0xae08 - WO - Bit set by guest removes all power to device
+RMV  0xae0c - RO - Bit set by host if slot supports hotplug
+                   (can not change while guest is up)
+
+
+Power management
+----
+TODO
+
+
+CPU hotplug
+----
+TODO