[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [RFC 0/9] Introduce light weight PC platform pc-lite
From: |
Chao Peng |
Subject: |
[Qemu-devel] [RFC 0/9] Introduce light weight PC platform pc-lite |
Date: |
Fri, 17 Jun 2016 04:14:08 -0400 |
This patchset is against commit 585fcd4 (Merge remote-tracking branch
'remotes/bonzini/tags/for-upstream' into staging) on master branch. I
also put it on github:
https://github.com/chao-p/qemu pc-lite-v1
Although we have run the patchset internally for a while but it is still
considered as RFC. Any comments (coding style or design issue) are
welcome.
Introduction
============
The patch series introduces a new platform pc-lite, which is designed to
be a virtual and light weight x86 PC platform. It is not designed to be
compatible with old hardware and system. Instead, It removes the burden
of legacy devices and emulates new fast hardware as much as possible. It
is expected to be used together with optimized guest (though unoptimized
guest works as well) to gain fast booting and small footprint benefits
that are difficult to achieve for traditional hardware-emulated
platform.
Basically:
- it removes old ISA devices and support only PCI devices;
- it removes 8259, instead use MSI as much as possible. IOAPIC and PCI
PIN are still kept to support ACPI SCI;
- it supports PCIE ( you can use MMFG instead of 0xcf8/0xcfc port
access);
- it gets rid of legacy firmware interfaces and supports ACPI tables;
- it loads guest kernel directly, no BIOS, no bootloader, no realmode
code;
- it supports CPU/memory/PCI hotplug;
- it is FAST;
However:
- it supports KVM-host only at present;
- it supports Linux-guest only at present;
- You may need carefully configure guest kernel;
- You are forced to use virtio-serial-pci, old 8250/16550 is not there;
Want to have a try?
===================
Please follow https://github.com/chao-p/qemu-lite-tools.
Thanks,
Chao
Chao Peng (6):
acpi: introduce light weight ACPI PM emulation pm-lite
pci: introduce light weight PCIE Host emulation pci-lite
acpi: add support for pc-lite platform
pc: skip setting CMOS data when RTC device is unavailable
pc: support direct loading protected/long mode kernel
pc: introduce light weight PC board pc-lite
Haozhong Zhang (3):
acpi: expose data structurs and functions of BIOS linker loader
acpi: expose acpi_checksum()
acpi: patch guest ACPI for pc-lite
default-configs/i386-softmmu.mak | 1 +
default-configs/x86_64-softmmu.mak | 1 +
docs/specs/acpi_cpu_hotplug.txt | 1 +
hw/acpi/Makefile.objs | 2 +-
hw/acpi/bios-linker-loader.c | 83 +------
hw/acpi/core.c | 2 +-
hw/acpi/nvdimm.c | 6 +-
hw/acpi/pm_lite.c | 446 +++++++++++++++++++++++++++++++++++
hw/i386/Makefile.objs | 2 +-
hw/i386/acpi-build.c | 180 +++++++++-----
hw/i386/pc.c | 263 ++++++++++++++++++---
hw/i386/pc_lite.c | 205 ++++++++++++++++
hw/i386/pc_lite_acpi.c | 299 +++++++++++++++++++++++
hw/i386/pc_piix.c | 2 +
hw/i386/pc_q35.c | 2 +
hw/pci-host/Makefile.objs | 1 +
hw/pci-host/pci_lite.c | 259 ++++++++++++++++++++
include/hw/acpi/acpi.h | 2 +
include/hw/acpi/bios-linker-loader.h | 85 +++++++
include/hw/acpi/pc-hotplug.h | 1 +
include/hw/acpi/pm_lite.h | 6 +
include/hw/i386/pc.h | 17 ++
include/hw/i386/pc_lite_acpi.h | 10 +
23 files changed, 1697 insertions(+), 179 deletions(-)
create mode 100644 hw/acpi/pm_lite.c
create mode 100644 hw/i386/pc_lite.c
create mode 100644 hw/i386/pc_lite_acpi.c
create mode 100644 hw/pci-host/pci_lite.c
create mode 100644 include/hw/acpi/pm_lite.h
create mode 100644 include/hw/i386/pc_lite_acpi.h
--
1.8.3.1
- [Qemu-devel] [RFC 0/9] Introduce light weight PC platform pc-lite,
Chao Peng <=
- [Qemu-devel] [RFC 2/9] pci: introduce light weight PCIE Host emulation pci-lite, Chao Peng, 2016/06/17
- [Qemu-devel] [RFC 3/9] acpi: add support for pc-lite platform, Chao Peng, 2016/06/17
- [Qemu-devel] [RFC 1/9] acpi: introduce light weight ACPI PM emulation pm-lite, Chao Peng, 2016/06/17
- [Qemu-devel] [RFC 7/9] pc: skip setting CMOS data when RTC device is unavailable, Chao Peng, 2016/06/17
- [Qemu-devel] [RFC 5/9] acpi: expose acpi_checksum(), Chao Peng, 2016/06/17
- [Qemu-devel] [RFC 4/9] acpi: expose data structurs and functions of BIOS linker loader, Chao Peng, 2016/06/17
- [Qemu-devel] [RFC 8/9] pc: support direct loading protected/long mode kernel, Chao Peng, 2016/06/17
- [Qemu-devel] [RFC 6/9] acpi: patch guest ACPI for pc-lite, Chao Peng, 2016/06/17
- [Qemu-devel] [RFC 9/9] pc: introduce light weight PC board pc-lite, Chao Peng, 2016/06/17
- Re: [Qemu-devel] [RFC 0/9] Introduce light weight PC platform pc-lite, Paolo Bonzini, 2016/06/17