qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [Qemu-devel] [PATCH RFC 0/7] pass cpu online/offline event bewteen QEMU and linux kernel by ACPI Embedded Controller
@ 2013-05-29  1:47 liguang
  2013-05-29  1:47 ` [Qemu-devel] [PATCH RFC 1/7] acpi: add ACPI Embedded Controller support liguang
                   ` (7 more replies)
  0 siblings, 8 replies; 12+ messages in thread
From: liguang @ 2013-05-29  1:47 UTC (permalink / raw)
  To: qemu-devel
  Cc: Kevin Wolf, Anthony Liguori, Juan Quintela, Stefan Berger,
	Michael S. Tsirkin, Markus Armbruster, Christian Borntraeger,
	Alexander Graf, Joel Schopp, Gerd Hoffmann, Igor Mammedov,
	Paolo Bonzini, Luiz Capitulino, Andreas Färber, liguang,
	Isaku Yamahata

patch 1 adds ACPI Embedded Controller (EC),
refer-to:
ACPI SPEC v5 chapter 12
"ACPI Embedded Controller Interface Specification"

EC is a standard ACPI device, it plays flexible roles,
especially be event carrier, it can pass events between platform
and OS, so OS can execute _Qxx method which defined
by yourself and query EC's ACPI space which can be a buffer for
many purposes

here, I want to deliver CPU online/offline event between
OS and QEMU for CPU hotplug feature, then we will don't
need to "echo 1 > /sys/devices/system/cpu/cpu1/online"
again after 'cpu-add' and also for offline to do real cpu
removal.
what I am trying to do is emulated physical addition/removal
(like described by linux kernel document for cpu hotplug --
linux-2.6/Documentation/cpu-hotplug.txt) for QEMU.

these RFC patches are sent for demo what I am trying to do.

the design process simply like following:

cpu-add/del --> EC space & sci setting --> kernel EC driver gpe handler
                                                  I
                                                  V
                                      listen cpu hotplug event
                                                  I
                                                  V
                                      query EC space for cpu status
                                                  I
                                                  V
									trigger cpu online/offline process


Li Guang (7)
	 acpi: add ACPI Embedded Controller support
	 ich9: add notifer for ec to generate sci
	 ec: add operations for _Qxx events
	 piix4: add notifer for ec to generate sci
	 piix4: add events for cpu hotplug
	 qmp: add 'cpu-del' command
	 pc: add EC qdev init for piix & q35

default-configs/x86_64-softmmu.mak |   1 +
hw/acpi/Makefile.objs              |   1 +
hw/acpi/ec.c                       | 225 ++++++++++++++++++++++++++++++++++++
hw/acpi/ich9.c                     |  15 +++++++++++++++
hw/acpi/piix4.c                    |  22 ++++++++++++++
hw/i386/pc.c                       |  30 ++++++++++++++++++++++++++++--
hw/i386/pc_piix.c                  |   7 +
hw/i386/pc_q35.c                   |   6 +
include/hw/acpi/ec.h               |  39 ++++++
include/hw/acpi/ich9.h             |   1 +
include/hw/boards.h                |   5 +++--
include/hw/i386/pc.h               |   1 +
qapi-schema.json                   |  13 +++++++++++++
qmp-commands.hx                    |  23 +++++++++++++++++++++++
qmp.c                              |   9 +++++++++
15 files changed, 390 insertions(+), 8 deletions(-)
 create mode 100644 hw/acpi/ec.c
 create mode 100644 include/hw/acpi/ec.h

^ permalink raw reply	[flat|nested] 12+ messages in thread

end of thread, other threads:[~2013-05-31  1:13 UTC | newest]

Thread overview: 12+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-05-29  1:47 [Qemu-devel] [PATCH RFC 0/7] pass cpu online/offline event bewteen QEMU and linux kernel by ACPI Embedded Controller liguang
2013-05-29  1:47 ` [Qemu-devel] [PATCH RFC 1/7] acpi: add ACPI Embedded Controller support liguang
2013-05-29  1:47 ` [Qemu-devel] [PATCH RFC 2/7] ich9: add notifer for ec to generate sci liguang
2013-05-29  1:47 ` [Qemu-devel] [PATCH RFC 3/7] ec: add operations for _Qxx events liguang
2013-05-29  1:47 ` [Qemu-devel] [PATCH RFC 4/7] piix4: add notifer for ec to generate sci liguang
2013-05-29  1:47 ` [Qemu-devel] [PATCH RFC 5/7] piix4: add events for cpu hotplug liguang
2013-05-29  1:47 ` [Qemu-devel] [PATCH RFC 6/7] qmp: add 'cpu-del' command liguang
2013-05-29  2:33   ` Eric Blake
2013-05-29  2:43     ` li guang
2013-05-29  1:47 ` [Qemu-devel] [PATCH RFC 7/7] pc: add EC qdev init for piix & q35 liguang
2013-05-30 14:14 ` [Qemu-devel] [PATCH RFC 0/7] pass cpu online/offline event bewteen QEMU and linux kernel by ACPI Embedded Controller Igor Mammedov
2013-05-31  0:13   ` li guang

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).