qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Isaku Yamahata <yamahata@valinux.co.jp>
To: qemu-devel@nongnu.org
Cc: blauwirbel@gmail.com, yamahata@valinux.co.jp, kraxel@redhat.com
Subject: [Qemu-devel] [PATCH 00/26] split out piix specific part from pc emulator and some clean ups
Date: Fri, 14 May 2010 16:28:58 +0900	[thread overview]
Message-ID: <cover.1273821065.git.yamahata@valinux.co.jp> (raw)

patch series description:
This patch series is for spliting out piix specific part from pc emulator
to make it easier to implement other pc chipset emulator.

I observed that make was confused not to rebuild files sometimes due to
splitting up a file into files. It results in duplicated/undefined symbols.
In that case, 'make clean;make' will fix it.


Blue, your patches were combied into 21/26, and 22/26. Please check it.
Your patches to acpi.c had some issues. I fixed them in this patch series.

1/2 acpi: remove static pm_state:
  The first argument, dev, of piix4_device_hotplug() is not
  PIIX4PMState device, but hot plugged device.
  So the container_of() doesn't make sense.
2/2 acpi: remove static gpe and pci0_status variables   
  The call back argument to pge_readb(), gpe_writeb() is struct gpe_regs.
  Not PIIX4PMState. 
  The callback argument pcihotplug_read(), pcihotplug_write() is
  struct pci_status. Not PIIX4PMState.
  Those argument type is void*, so compiler didn't catch it.

thanks,

Changes from V12:
- 2/26 acpi: split out apm register emulation from acpi.c
  The patch originally convert CMOS S3 code to qemu_irq. However
  the conversion is already done by Blue Swirl. So the patch was simplified.
- 22/26 pci hotadd, acpi_piix4: remove global variables
  Minor style fix according to Blue's patch.
- rebased to 5acd0646b6033d40ef5d0ae06338cc354108f640

Changes from V11:
- s/pc_smbus/pm_smbus/g, s/pc_apm/apm/g and so on
  because it isn't pc specifc. mips also uses it.
- No logic changes.

Changes from V10:
- pass DeviceState* to pc_smbus_init(), now info qtree shows smbus.
- change pci hotplug argument from void * to DeviceState*.

Changes from V9:
- rebased 502e64fe23f19c086d42f6178cdda19e58996080
- use qemu_irq to remove global variables, rtc_state
- make rtc_xxx functions accept/return ISADevice and related clean ups
- pci hot plug clean up
- removed #ifdef DEBUG patches.


Changes from V8:
- make rtc_xxx functions accept/return ISADevice.
- move up ioapic initalization patch.
- fixed up copyright notice.

Changes from V7:
- rebased to fe0d61231eb6be6a83c54f4a2795f924ee963f8f

Changes from v6:
- rebased to 731c54f86988d3f28268f184fabfe9b2a32fb5d3

Changes from v5:
- rebased 0.11.0-rc0
- changed qemu_system_powerdown_register() to call
  qemu_system_shutdown_request() if qemu_system_shutdown() is called before
  registering.

Changes from v4:
- fix version number.
- rebased anthony's staging tree whose latest change set is
  62969268f876c547ee64da6d60e0f363e0f1df75

Changes from v3:
- move qemu_system_powerdown() in vl.c and more generic
  following the comment by Marcelo Tosatti <mtosatti@redhat.com>
  acpi.c: make qemu_system_powerdown() piix independent.
- define cmos_set_s3_resume_init() and cmos_set_s3_resume() in pc.c
  even if TARGET_I386 isn't defined following th ecommit by
  Paolo Bonzini <bonzini@gnu.org>
  pc.c: remove a global variable, RTCState *rtc_state.
- minor compilation fixes

Changes from v2:
- clean up pc_pci_device_init() not to use unnecessary braces.

Changes from v1:
- make patches full bisectable
- typo s/allocte/allocate/
- some minor fixes
- dropped a merged patch

Isaku Yamahata (26):
  acpi: split out piix4 smbus routines from acpi.c into pm_smbus.c
  acpi: split out apm register emulation from acpi.c
  acpi: add acpi constants from linux header files and use them.
  acpi: split acpi.c into the common part and the piix4 part.
  pc: initialize ioapic before use.
  pc, i440fx: Make smm enable/disable function i440fx independent.
  pc: make an unnecessary global variable, pit, local.
  pc: remove a global variable, floppy_controller.
  pc: remove global variable rtc_state by using qemu_irq.
  pc: introduce a function to allocate cpu irq.
  pc: make pc_init1() not refer ferr_irq directly.
  pc: split out cpu initialization from pc_init1() into pc_cpus_init().
  pc: split out memory allocation from pc_init1() into pc_memory_init()
  pc: split out vga initialization from pc_init1() into pc_vga_init().
  pc: split out basic device init from pc_init1() into
    pc_basic_device_init()
  pc: split out pci device init from pc_init1() into
    pc_pci_device_init()
  pc: split out piix specific part from pc.c into pc_piix.c
  pc: move rtc declarations from pc.h into a dedicated header file.
  rtc: make rtc_xxx accept/return ISADevice instead of RTCState.
  acpi_piix4: qdevfy.
  pci hotplug: add argument to pci hot plug callback.
  pci hotadd, acpi_piix4: remove global variables
  pm_smbus: remove #ifdef DEBUG.
  acpi_piix4: remove #ifdef DEBUG.
  apm: remove #ifdef DEBUG.
  mc146818rtc: remove #ifdef DEBUG_CMOS.

 Makefile.target  |    2 +
 hw/acpi.c        |  743 +-----------------------------------------------------
 hw/acpi.h        |   78 ++++++
 hw/acpi_piix4.c  |  602 +++++++++++++++++++++++++++++++++++++++++++
 hw/apm.c         |   87 +++++++
 hw/apm.h         |   22 ++
 hw/fdc.h         |    5 +
 hw/mc146818rtc.c |   44 ++--
 hw/mc146818rtc.h |   10 +
 hw/mips_jazz.c   |    1 +
 hw/mips_malta.c  |    3 +-
 hw/mips_r4k.c    |    3 +-
 hw/pc.c          |  423 +++++++------------------------
 hw/pc.h          |   48 +++-
 hw/pc_piix.c     |  316 +++++++++++++++++++++++
 hw/pci.c         |    8 +-
 hw/pci.h         |    4 +-
 hw/piix_pci.c    |    5 +-
 hw/pm_smbus.c    |  181 +++++++++++++
 hw/pm_smbus.h    |   21 ++
 hw/ppc_prep.c    |    1 +
 21 files changed, 1500 insertions(+), 1107 deletions(-)
 create mode 100644 hw/acpi.h
 create mode 100644 hw/acpi_piix4.c
 create mode 100644 hw/apm.c
 create mode 100644 hw/apm.h
 create mode 100644 hw/mc146818rtc.h
 create mode 100644 hw/pc_piix.c
 create mode 100644 hw/pm_smbus.c
 create mode 100644 hw/pm_smbus.h

             reply	other threads:[~2010-05-14  7:33 UTC|newest]

Thread overview: 29+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-05-14  7:28 Isaku Yamahata [this message]
2010-05-14  7:28 ` [Qemu-devel] [PATCH 01/26] acpi: split out piix4 smbus routines from acpi.c into pm_smbus.c Isaku Yamahata
2010-05-14  7:29 ` [Qemu-devel] [PATCH 02/26] acpi: split out apm register emulation from acpi.c Isaku Yamahata
2010-05-14  7:29 ` [Qemu-devel] [PATCH 03/26] acpi: add acpi constants from linux header files and use them Isaku Yamahata
2010-05-14  7:29 ` [Qemu-devel] [PATCH 04/26] acpi: split acpi.c into the common part and the piix4 part Isaku Yamahata
2010-05-14  7:29 ` [Qemu-devel] [PATCH 05/26] pc: initialize ioapic before use Isaku Yamahata
2010-05-14  7:29 ` [Qemu-devel] [PATCH 06/26] pc, i440fx: Make smm enable/disable function i440fx independent Isaku Yamahata
2010-05-14  7:29 ` [Qemu-devel] [PATCH 07/26] pc: make an unnecessary global variable, pit, local Isaku Yamahata
2010-05-14  7:29 ` [Qemu-devel] [PATCH 08/26] pc: remove a global variable, floppy_controller Isaku Yamahata
2010-05-14  7:29 ` [Qemu-devel] [PATCH 09/26] pc: remove global variable rtc_state by using qemu_irq Isaku Yamahata
2010-05-14  7:29 ` [Qemu-devel] [PATCH 10/26] pc: introduce a function to allocate cpu irq Isaku Yamahata
2010-05-14  7:29 ` [Qemu-devel] [PATCH 11/26] pc: make pc_init1() not refer ferr_irq directly Isaku Yamahata
2010-05-14  7:29 ` [Qemu-devel] [PATCH 12/26] pc: split out cpu initialization from pc_init1() into pc_cpus_init() Isaku Yamahata
2010-05-14  7:29 ` [Qemu-devel] [PATCH 13/26] pc: split out memory allocation from pc_init1() into pc_memory_init() Isaku Yamahata
2010-05-14  7:29 ` [Qemu-devel] [PATCH 14/26] pc: split out vga initialization from pc_init1() into pc_vga_init() Isaku Yamahata
2010-05-14  7:29 ` [Qemu-devel] [PATCH 15/26] pc: split out basic device init from pc_init1() into pc_basic_device_init() Isaku Yamahata
2010-05-14  7:29 ` [Qemu-devel] [PATCH 16/26] pc: split out pci device init from pc_init1() into pc_pci_device_init() Isaku Yamahata
2010-05-14  7:29 ` [Qemu-devel] [PATCH 17/26] pc: split out piix specific part from pc.c into pc_piix.c Isaku Yamahata
2010-05-14  7:29 ` [Qemu-devel] [PATCH 18/26] pc: move rtc declarations from pc.h into a dedicated header file Isaku Yamahata
2010-05-14  7:29 ` [Qemu-devel] [PATCH 19/26] rtc: make rtc_xxx accept/return ISADevice instead of RTCState Isaku Yamahata
2010-05-14  7:29 ` [Qemu-devel] [PATCH 20/26] acpi_piix4: qdevfy Isaku Yamahata
2010-05-14  7:29 ` [Qemu-devel] [PATCH 21/26] pci hotplug: add argument to pci hot plug callback Isaku Yamahata
2010-05-14  7:29 ` [Qemu-devel] [PATCH 22/26] pci hotadd, acpi_piix4: remove global variables Isaku Yamahata
2010-05-14  7:29 ` [Qemu-devel] [PATCH 23/26] pm_smbus: remove #ifdef DEBUG Isaku Yamahata
2010-05-14  7:29 ` [Qemu-devel] [PATCH 24/26] acpi_piix4: " Isaku Yamahata
2010-05-14  7:29 ` [Qemu-devel] [PATCH 25/26] apm: " Isaku Yamahata
2010-05-14  7:29 ` [Qemu-devel] [PATCH 26/26] mc146818rtc: remove #ifdef DEBUG_CMOS Isaku Yamahata
2010-05-15 17:02 ` [Qemu-devel] Re: [PATCH 00/26] split out piix specific part from pc emulator and some clean ups Blue Swirl
2010-05-17 11:18   ` Markus Armbruster

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=cover.1273821065.git.yamahata@valinux.co.jp \
    --to=yamahata@valinux.co.jp \
    --cc=blauwirbel@gmail.com \
    --cc=kraxel@redhat.com \
    --cc=qemu-devel@nongnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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).