All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Michael S. Tsirkin" <mst@redhat.com>
To: Jason Baron <jbaron@redhat.com>
Cc: agraf@suse.de, aliguori@us.ibm.com, juzhang@redhat.com,
	jan.kiszka@siemens.com, qemu-devel@nongnu.org, armbru@redhat.com,
	blauwirbel@gmail.com, yamahata@valinux.co.jp,
	alex.williamson@redhat.com, kevin@koconnor.net, avi@redhat.com,
	mkletzan@redhat.com, pbonzini@redhat.com, lcapitulino@redhat.com,
	afaerber@suse.de, kraxel@redhat.com
Subject: Re: [Qemu-devel] [PATCH v3 00/26] q35 qemu support
Date: Sun, 21 Oct 2012 14:36:20 +0200	[thread overview]
Message-ID: <20121021123620.GB3772@redhat.com> (raw)
In-Reply-To: <cover.1350677360.git.jbaron@redhat.com>

On Fri, Oct 19, 2012 at 04:43:25PM -0400, Jason Baron wrote:
> Hi,
> 
> Qemu bits for q35 support, I'm posting the seabios changes separately. The
> patches require '-M pc_q35' and -L 'seabios dir with q35 changes' on the
> qemu command line. Hopefully, we can make it the default for x86 at some future
> point when we feel comfortable with it.
> 
> The current patches have been tested with basic install testing and memory testing
> on f16, f17, windows 7 and windows 8. They can be run on the various BSD flavors
> by adding a 'piix4-ide' device to the pci bus. ie: -device piix4-ide. Patches
> have also been reported to work with a small dsdt change on OSX 10.6 as well.
> 
> I've dropped the ahci migration bits, which means q35 is not migratable at the
> moment. I simply haven't had time to make them more complete yet.
> 
> I'm hoping that we'll come to some agreement on the minimal functionality
> required for q35 to be merged.
> 
> Git trees:
> 
> git://github.com/jibaron/q35-qemu.git
> git://github.com/jibaron/q35-seabios.git
> 
> 
> Notes:
> 
> I've dropped automatic load of the dsdt table on the piix for now. We can't
> pull this in until we have snapshot of the dsdt aml, and I wanted it to be
> done at a clean seabios freeze point (Although I guess that could be the
> current snapshot). I don't see the harm in pulling this in later though.
> 
> I've also gone to a model of the pci host being sparse:
> 
> 00:00.0 Host bridge: Intel Corporation 82G33/G31/P35/P31 Express DRAM Controller
> 00:01.0 VGA compatible controller: Cirrus Logic GD 5446
> 00:02.0 Ethernet controller: Intel Corporation 82540EM Gigabit Ethernet Controller (rev 03)
> 00:1f.0 ISA bridge: Intel Corporation 82801IB (ICH9) LPC Interface Controller (rev 02)
> 00:1f.2 SATA controller: Intel Corporation 82801IR/IO/IH (ICH9R/DO/DH) 6 port SATA AHCI Controller (rev 02)
> 00:1f.3 SMBus: Intel Corporation 82801I (ICH9 Family) SMBus Controller (rev 02)
> 
> The idea is only to populate the essential stuff at 1f, and have the rest
> filled out via command line options. In this way we have minimal bus configuration
> with 1 slot occupied as in piix. Should make things easier for libvirt. And this
> way user has complete control over things. For example, I have added support that
> when '-usb' is passed the usb controllers for ich9 are filled out.
> 
> Todo:
> 
> -add ahci migration back (need to cover more fields, but basically works)
> -add base addr for hpet in LPC device (for osx per agraf)
> -convert hotplug to use MemoryRegionPortio for hotplug (need an IsaDevice?)

- add acpi hotplug for devices behind bridge
  (this is needed so we can add e.g. PCI devices behind a bridge
   in a compliant way)

> 
> Thanks,
> 
> -Jason
> Changes from v2:
>  -Patch restructure (broke out ich9 chips + data structures separately)
>  -added passthrough support
>  -add support for -usb to fill out host pci bus
>  -Dropped automatic load of dsdt table for piix
>  -cleanups
>  -dropped wmask on smbus (mst)
>  -sparse host bus
> 
> Changes from v1:
>  -Updated end of low mem from 0xe0000000 -> 0xb0000000 (Gerd Hoffmann)
>         -so 0xb000000-0xc000000 is memconfig
>         -0xc000000-0xfec00000 is 32-bit pci window
>  -style/various cleanups
>  -introduced IF_AHCI
>  -introduced mach_if
>  -split dsdt out of bios, now passed for piix4 as well (Paolo, Gerd)
>  -Removed add opaque argument to pci_map_irq_fn (Michael S. Tsirkin)
>  -removed patches that were merged in v1
> 
> 
> Isaku Yamahata (6):
>   pci: pci capability must be in PCI space
>   pci: introduce pci_swizzle_map_irq_fn() for standardized interrupt
>     pin swizzle
>   pc, pc_piix: split out pc nic initialization
>   pc/piix_pci: factor out smram/pam logic
>   pci_ids: add intel 82801BA pci-to-pci bridge id
>   q35: Introduce q35 pc based chipset emulator
> 
> Jan Kiszka (5):
>   pci: Add class 0xc05 as 'SMBus'
>   q35: Suppress SMM BIOS initialization under KVM
>   q35: Fix non-PCI IRQ processing in ich9_lpc_update_apic
>   q35: smbus: Remove PCI_STATUS_SIG_SYSTEM_ERROR and
>     PCI_STATUS_DETECTED_PARITY from w1cmask
>   q35: Add kvmclock support
> 
> Jason Baron (15):
>   blockdev: Introduce a default machine blockdev interface field,
>     QEMUMachine->mach_if
>   blockdev: Introduce IF_AHCI
>   pc: Move ioapic_init() from pc_piix.c to pc.c
>   pcie: pass pcie window size to pcie_host_mmcfg_update()
>   pcie: Convert PCIExpressHost to use the QOM.
>   ich9: Add acpi support and definitions
>   ich9: Add the lpc chip
>   ich9: Add smbus
>   ich9: Add i82801b11 dmi-to-pci bridge
>   Add i21154 bridge chip.
>   Add a fallback bios file search, if -L fails.
>   q35: automatically load the q35 dsdt table
>   q35: add acpi-based pci hotplug.
>   q35: fill in usb pci slots with -usb
>   ich9: add support pci assignment
> 
>  blockdev.c            |   17 ++-
>  blockdev.h            |   21 ++
>  hw/Makefile.objs      |    1 +
>  hw/acpi_ich9.c        |  492 +++++++++++++++++++++++++++++++++++++++++++
>  hw/acpi_ich9.h        |   57 +++++
>  hw/boards.h           |    2 +-
>  hw/device-hotplug.c   |    2 +-
>  hw/highbank.c         |    2 +-
>  hw/i21154.c           |  113 ++++++++++
>  hw/i21154.h           |    9 +
>  hw/i386/Makefile.objs |    2 +
>  hw/i82801b11.c        |  125 +++++++++++
>  hw/ich9.h             |  211 +++++++++++++++++++
>  hw/ide.h              |    6 +
>  hw/ide/ahci.c         |   18 ++
>  hw/ide/core.c         |   23 ++-
>  hw/leon3.c            |    2 +-
>  hw/lpc_ich9.c         |  558 +++++++++++++++++++++++++++++++++++++++++++++++++
>  hw/mips_jazz.c        |    4 +-
>  hw/pam.c              |  120 +++++++++++
>  hw/pam.h              |   98 +++++++++
>  hw/pc.c               |   58 +++++
>  hw/pc.h               |    7 +
>  hw/pc_piix.c          |   38 +---
>  hw/pc_q35.c           |  336 +++++++++++++++++++++++++++++
>  hw/pc_sysfw.c         |    2 +-
>  hw/pci.c              |   25 ++-
>  hw/pci.h              |    2 +
>  hw/pci_ids.h          |   16 ++
>  hw/pcie_host.c        |   35 +++-
>  hw/pcie_host.h        |   12 +-
>  hw/piix_pci.c         |   65 +-----
>  hw/puv3.c             |    2 +-
>  hw/q35.c              |  332 +++++++++++++++++++++++++++++
>  hw/q35.h              |  161 ++++++++++++++
>  hw/realview.c         |    6 +-
>  hw/smbus_ich9.c       |  163 ++++++++++++++
>  hw/spapr.c            |    2 +-
>  hw/sun4m.c            |   24 +-
>  hw/versatilepb.c      |    4 +-
>  hw/vexpress.c         |    4 +-
>  hw/xilinx_zynq.c      |    2 +-
>  vl.c                  |   56 ++++--
>  43 files changed, 3074 insertions(+), 161 deletions(-)
>  create mode 100644 hw/acpi_ich9.c
>  create mode 100644 hw/acpi_ich9.h
>  create mode 100644 hw/i21154.c
>  create mode 100644 hw/i21154.h
>  create mode 100644 hw/i82801b11.c
>  create mode 100644 hw/ich9.h
>  create mode 100644 hw/lpc_ich9.c
>  create mode 100644 hw/pam.c
>  create mode 100644 hw/pam.h
>  create mode 100644 hw/pc_q35.c
>  create mode 100644 hw/q35.c
>  create mode 100644 hw/q35.h
>  create mode 100644 hw/smbus_ich9.c

  parent reply	other threads:[~2012-10-21 11:34 UTC|newest]

Thread overview: 87+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-10-19 20:43 [Qemu-devel] [PATCH v3 00/26] q35 qemu support Jason Baron
2012-10-19 20:43 ` [Qemu-devel] [PATCH v3 01/26] blockdev: Introduce a default machine blockdev interface field, QEMUMachine->mach_if Jason Baron
2012-10-22 10:47   ` Michael S. Tsirkin
2012-10-22 11:26     ` Kevin Wolf
2012-10-22 18:02       ` Jason Baron
2012-10-24 13:12   ` Markus Armbruster
2012-10-24 19:41     ` Jason Baron
2012-10-26 10:28       ` Markus Armbruster
2012-10-26  9:53   ` Markus Armbruster
2012-10-19 20:43 ` [Qemu-devel] [PATCH v3 02/26] blockdev: Introduce IF_AHCI Jason Baron
2012-10-22 10:48   ` Michael S. Tsirkin
2012-10-22 11:40     ` Kevin Wolf
2012-10-22 18:11       ` Jason Baron
2012-10-24 15:50         ` Markus Armbruster
2012-10-24 19:36           ` Jason Baron
2012-10-26 12:56             ` Markus Armbruster
2012-10-19 20:43 ` [Qemu-devel] [PATCH v3 03/26] pci: pci capability must be in PCI space Jason Baron
2012-10-22 10:48   ` Michael S. Tsirkin
2012-10-19 20:43 ` [Qemu-devel] [PATCH v3 04/26] pci: introduce pci_swizzle_map_irq_fn() for standardized interrupt pin swizzle Jason Baron
2012-10-22 10:51   ` Michael S. Tsirkin
2012-10-19 20:43 ` [Qemu-devel] [PATCH v3 05/26] pc, pc_piix: split out pc nic initialization Jason Baron
2012-10-22 13:27   ` Michael S. Tsirkin
2012-10-19 20:43 ` [Qemu-devel] [PATCH v3 06/26] pc: Move ioapic_init() from pc_piix.c to pc.c Jason Baron
2012-10-22 13:28   ` Michael S. Tsirkin
2012-10-19 20:43 ` [Qemu-devel] [PATCH v3 07/26] pc/piix_pci: factor out smram/pam logic Jason Baron
2012-10-22 11:05   ` Michael S. Tsirkin
2012-10-29 16:21   ` Michael S. Tsirkin
2012-10-19 20:43 ` [Qemu-devel] [PATCH v3 08/26] pci_ids: add intel 82801BA pci-to-pci bridge id Jason Baron
2012-10-22 10:51   ` Michael S. Tsirkin
2012-10-19 20:43 ` [Qemu-devel] [PATCH v3 09/26] pci: Add class 0xc05 as 'SMBus' Jason Baron
2012-10-22 10:52   ` Michael S. Tsirkin
2012-10-19 20:43 ` [Qemu-devel] [PATCH v3 10/26] pcie: pass pcie window size to pcie_host_mmcfg_update() Jason Baron
2012-10-22 10:54   ` Michael S. Tsirkin
2012-10-19 20:43 ` [Qemu-devel] [PATCH v3 12/26] ich9: Add acpi support and definitions Jason Baron
2012-10-22 11:07   ` Michael S. Tsirkin
2012-10-22 11:22   ` Michael S. Tsirkin
2012-10-29 16:29   ` Michael S. Tsirkin
2012-10-19 20:43 ` [Qemu-devel] [PATCH v3 11/26] pcie: Convert PCIExpressHost to use the QOM Jason Baron
2012-10-22 10:55   ` Michael S. Tsirkin
2012-10-19 20:43 ` [Qemu-devel] [PATCH v3 13/26] ich9: Add the lpc chip Jason Baron
2012-10-22 11:12   ` Michael S. Tsirkin
2012-10-22 11:27   ` Michael S. Tsirkin
2012-10-23  4:22     ` Isaku Yamahata
2012-10-29 16:20   ` Michael S. Tsirkin
2012-10-19 20:43 ` [Qemu-devel] [PATCH v3 15/26] q35: Introduce q35 pc based chipset emulator Jason Baron
2012-10-19 20:43 ` [Qemu-devel] [PATCH v3 14/26] ich9: Add smbus Jason Baron
2012-10-22 11:13   ` Michael S. Tsirkin
2012-10-19 20:43 ` [Qemu-devel] [PATCH v3 16/26] ich9: Add i82801b11 dmi-to-pci bridge Jason Baron
2012-10-22 13:53   ` Michael S. Tsirkin
2012-10-19 20:43 ` [Qemu-devel] [PATCH v3 18/26] q35: Suppress SMM BIOS initialization under KVM Jason Baron
2012-10-19 20:43 ` [Qemu-devel] [PATCH v3 17/26] Add i21154 bridge chip Jason Baron
2012-10-22 13:26   ` Andreas Färber
2012-10-22 16:17     ` Michael S. Tsirkin
2012-10-22 18:18       ` Jason Baron
2012-10-22 18:53       ` Andreas Färber
2012-10-27 12:42       ` Blue Swirl
2012-10-22 14:03   ` Michael S. Tsirkin
2012-10-22 20:48     ` Jason Baron
2012-10-19 20:43 ` [Qemu-devel] [PATCH v3 19/26] q35: Fix non-PCI IRQ processing in ich9_lpc_update_apic Jason Baron
2012-10-22 14:04   ` Michael S. Tsirkin
2012-10-19 20:43 ` [Qemu-devel] [PATCH v3 20/26] q35: smbus: Remove PCI_STATUS_SIG_SYSTEM_ERROR and PCI_STATUS_DETECTED_PARITY from w1cmask Jason Baron
2012-10-21 12:26   ` Michael S. Tsirkin
2012-10-19 20:43 ` [Qemu-devel] [PATCH v3 21/26] q35: Add kvmclock support Jason Baron
2012-10-19 20:43 ` [Qemu-devel] [PATCH v3 22/26] Add a fallback bios file search, if -L fails Jason Baron
2012-10-21  7:26   ` Michael Tokarev
2012-10-21  9:52     ` Peter Maydell
2012-10-19 20:43 ` [Qemu-devel] [PATCH v3 23/26] q35: automatically load the q35 dsdt table Jason Baron
2012-10-19 20:43 ` [Qemu-devel] [PATCH v3 25/26] q35: fill in usb pci slots with -usb Jason Baron
2012-10-22  5:54   ` Gerd Hoffmann
2012-10-24 17:10   ` Paolo Bonzini
2012-10-19 20:43 ` [Qemu-devel] [PATCH v3 24/26] q35: add acpi-based pci hotplug Jason Baron
2012-10-22 14:09   ` Michael S. Tsirkin
2012-10-19 20:43 ` [Qemu-devel] [PATCH v3 26/26] ich9: add support pci assignment Jason Baron
2012-10-20 16:15 ` [Qemu-devel] [PATCH v3 00/26] q35 qemu support Michael Tokarev
2012-10-21 12:36 ` Michael S. Tsirkin [this message]
2012-10-21 12:43 ` Michael S. Tsirkin
2012-10-22  5:58   ` Gerd Hoffmann
2012-10-22 10:08     ` Michael S. Tsirkin
2012-10-22 10:37       ` Gerd Hoffmann
2012-10-22 13:16         ` Michael S. Tsirkin
2012-10-22 13:00           ` Eric Blake
2012-10-22 14:23             ` Michael S. Tsirkin
2012-10-22 14:03               ` Eric Blake
2012-10-22 14:39                 ` Alexander Graf
2012-10-22 15:37           ` Anthony Liguori
2012-10-27  8:12             ` Michael Tokarev
2012-10-22 13:34 ` Michael S. Tsirkin

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=20121021123620.GB3772@redhat.com \
    --to=mst@redhat.com \
    --cc=afaerber@suse.de \
    --cc=agraf@suse.de \
    --cc=alex.williamson@redhat.com \
    --cc=aliguori@us.ibm.com \
    --cc=armbru@redhat.com \
    --cc=avi@redhat.com \
    --cc=blauwirbel@gmail.com \
    --cc=jan.kiszka@siemens.com \
    --cc=jbaron@redhat.com \
    --cc=juzhang@redhat.com \
    --cc=kevin@koconnor.net \
    --cc=kraxel@redhat.com \
    --cc=lcapitulino@redhat.com \
    --cc=mkletzan@redhat.com \
    --cc=pbonzini@redhat.com \
    --cc=qemu-devel@nongnu.org \
    --cc=yamahata@valinux.co.jp \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.