Patchwork [PULL,for-1.6,000/173] QOM devices patch queue 2013-07-29

login
register
mail settings
Submitter Andreas Färber
Date July 29, 2013, 7:17 p.m.
Message ID <1375125630-24869-1-git-send-email-afaerber@suse.de>
Download mbox
Permalink /patch/262938/
State New
Headers show

Pull-request

git://github.com/afaerber/qemu-cpu.git tags/qom-devices-for-anthony

Comments

Andreas Färber - July 29, 2013, 7:17 p.m.
Hello Anthony,

This is my current QOM devices patch queue for 1.6-rc0. Please pull.

While rather large, changes are mainly mechanical and qtests have been provided
separately to catch any cast assertions.

FROM_SYSBUS(): 173 -> 0
DO_UPCAST(): 420 -> 359

Thanks,
Andreas

Cc: Anthony Liguori <anthony@codemonkey.ws>

Cc: Peter Crosthwaite <peter.crosthwaite@xilinx.com>
Cc: Hu Tao <hutao@cn.fujitsu.com>

Cc: Michael S. Tsirkin <mst@redhat.com> (pci)

The following changes since commit eddbf0ab9db8385d7cb57e23891c1d41488b303e:

  Merge remote-tracking branch 'stefanha/block' into staging (2013-07-29 11:33:48 -0500)

are available in the git repository at:


  git://github.com/afaerber/qemu-cpu.git tags/qom-devices-for-anthony

for you to fetch changes up to b67964d70219a864ec427e727754a205475c7d6c:

  sysbus: QOM parent field cleanup for SysBusDevice (2013-07-29 21:07:03 +0200)

----------------------------------------------------------------
QOM device refactorings

* Replace all uses of FROM_SYSBUS() macro with QOM cast macros
  i) "QOM cast cleanup for X"
     Indicates a mechanical 1:1 between TYPE_* and *State.
  ii) "QOM'ify X and Y"
      Indicates abstract types may have been inserted or similar changes
      to type hierarchy.
  ii) Renames
      Coding Style fixes such as CamelCase have been applied in some cases.
* Fix for sparc floppy - cf. ii) above
* Change PCI type hierarchy to provide PCI_BRIDGE() casts
* In doing so, prepare for adopting QOM realize

----------------------------------------------------------------
Andreas Färber (171):
      fdc: Fix inheritence for SUNW,fdtwo
      ide: Introduce abstract QOM type for PCIIDEState
      cpu/a9mpcore: QOM casting cleanup
      timer/arm_mptimer: QOM cast cleanup
      cpu/a15mpcore: QOM cast cleanup
      arm11mpcore: QOM cast cleanups for ARM11MPCorePriveState
      arm11mpcore: QOM cast cleanups for mpcore_rirq_state
      pci-bridge: Turn PCIBridge into abstract QOM type
      pci-bridge-dev: QOM parent field cleanup
      pci-bridge/i82801b11: Rename parent field
      pcie_port: Turn PCIEPort and PCIESlot into abstract QOM types
      etraxfs_ser: QOM cast cleanups
      xilinx_uartlite: Rename xlx_uartlite to XilinxUARTLite
      xilinx_uartlite: QOM cast cleanups
      cs4231: QOM cast cleanup
      audio/marvell_88w8618: QOM cast cleanup
      milkymist-ac97: QOM cast cleanup
      pl041: Rename pl041_state to PL041State
      pl041: QOM cast cleanup
      onenand: QOM cast cleanup
      exynos4210_fimd: QOM cast cleanup
      g364fb: QOM cast cleanup
      jazz_led: QOM cast cleanup
      milkymist-tmu2: QOM cast cleanup
      milkymist-vgafb: QOM cast cleanup
      pl110: Rename pl110_state to PL110State
      pl110: QOM'ify pl110, pl110_versatile and pl111
      tcx: QOM cast cleanup
      imx_avic: QOM cast cleanup
      imx_ccm: QOM cast cleanup
      armv7m: QOM cast cleanup for BitBandState
      highbank: QOM cast cleanup for HighbankRegsState
      integratorcp: QOM cast cleanup for integratorcm_state
      integratorcp: QOM cast cleanup for icp_pic_state
      musicpal: QOM cast cleanup for mv88w8618_eth_state
      musicpal: QOM cast cleanup for musicpal_lcd_state
      musicpal: QOM cast cleanup mv88w8618_pic_state
      musicpal: QOM cast cleanup for mv88w8618_pit_state
      musicpal: QOM cast cleanup for mv88w8618_flashcfg
      musicpal: QOM cast cleanup for musicpal_gpio_state
      musicpal: QOM cast cleanup for musicpal_key_state
      pxa2xx: QOM cast cleanup for PXA2xxSSPState
      pxa2xx: QOM cast cleanup for PXA2xxRTCState
      pxa2xx: QOM cast cleanup for PXA2xxI2CState
      pxa2xx_gpio: QOM cast cleanup for PXA2xxGPIOInfo
      pxa2xx_pic: QOM cast cleanup for PXA2xxPICState
      spitz: QOM cast cleanup for SLNANDState
      spitz: QOM cast cleanup for SpitzKeyboardState
      stellaris: QOM cast cleanup for gptm_state
      stellaris: QOM cast cleanup for stellaris_i2c_state
      stellaris: QOM cast cleanup for stellaris_adc_state
      strongarm: QOM cast cleanup for StrongARMPICState
      strongarm: QOM cast cleanup for StrongARMRTCState
      strongarm: QOM cast cleanup for StrongARMGPIOInfo
      strongarm: QOM cast cleanup for StrongARMPPCInfo
      strongarm: QOM cast cleanup for StrongARMUARTState
      strongarm: QOM cast cleanup for StrongARMSSPState
      versatilepb: QOM cast cleanup for vpb_sic_state
      cadence_uart: QOM cast cleanup
      escc: QOM cast cleanup
      exynos4210_uart: QOM cast cleanup
      grlib_apbuart: QOM cast cleanup
      imx_serial: QOM cast cleanup
      lm32_juart: Relocate and tidy header
      lm32_juart: QOM cast cleanup
      lm32_uart: QOM cast cleanup
      milkymist-uart: QOM cast cleanup
      pl011: Rename pl011_state
      pl011: QOM'ify pl011 and pl011_luminary
      empty_slot: QOM cast cleanup
      pl080: Rename pl080_state to PL080State
      pl080: QOM'ify pl080 and pl081
      puv3_dma: QOM cast cleanup
      pxa2xx_dma: QOM cast cleanup
      sparc32_dma: QOM cast cleanup
      sun4m_iommu: QOM cast cleanup
      omap_gpio: QOM cast cleanup for omap_gpif_s
      omap_gpio: QOM cast cleanup for omap2_gpif_s
      pl061: Rename pl061_state to PL061State
      pl061: QOM'ify pl061 and pl061_luminary
      puv3_gpio: QOM cast cleanup
      gpio/zaurus: QOM cast cleanup
      bitbang_i2c: QOM cast cleanup
      omap_i2c: QOM cast cleanup
      versatile_i2c: QOM cast cleanup
      milkymist-softusb: QOM cast cleanup
      pl050: Rename pl050_state to PL050State
      pl050: QOM'ify pl050_keyboard and pl050_mouse
      arm_gic: QOM cast cleanup
      etraxfs_pic: QOM cast cleanup
      exynos4210_combiner: QOM cast cleanup
      exynos4210_gic: QOM cast cleanup for exynos4210.gic
      exynos4210_gic: QOM cast cleanup for exynos4210.irq_gate
      grlib_irqmp: QOM cast cleanup
      lm32_pic: QOM cast cleanup
      omap_intc: QOM'ify omap-intc and omap2-intc
      pl190: Rename pl190_state to PL190State
      pl190: QOM cast cleanup
      puv3_intc: QOM cast cleanup
      realview_gic: QOM cast cleanup
      slavio_intctl: QOM cast cleanup
      xilinx_intc: QOM cast cleanup
      arm_l2x0: Rename l2x0_state to L2x0State
      arm_l2x0: QOM cast cleanup
      arm_sysctl: QOM cast cleanup
      eccmemctl: QOM cast cleanup
      exynos4210_pmu: QOM cast cleanup
      lm32_sys: QOM cast cleanup
      milkymist-hpdmc: QOM cast cleanup
      milkymist-pfpu: QOM cast cleanup
      mst_fpga: QOM cast cleanup
      puv3_pm: QOM cast cleanup
      slavio_misc: QOM cast cleanup for MiscState
      slavio_misc: QOM cast cleanup for APCState
      zynq_slcr: QOM cast cleanup
      cadence_gem: QOM cast cleanup
      etraxfs_eth: QOM cast cleanup
      etraxfs_eth: Rename fs_eth to ETRAXFSEthState
      lan9118: QOM cast cleanup
      lance: QOM cast cleanup
      milkymist-minimac2: QOM cast cleanup
      smc91c111: QOM cast cleanup
      stellaris_enet: QOM cast cleanup
      stellaris_enet: Fix NetClientInfo::cleanup
      xgmac: QOM cast cleanup
      xilinx_ethlite: QOM cast cleanup
      ds1225y: Drop bogus qdev field from NvRamState
      ds1225y: QOM cast cleanup for SysBusNvRamState
      ppce500_spin: QOM cast cleanup
      milkymist-memcard: QOM cast cleanup
      pl181: Rename pl181_state to PL181State
      pl181: QOM cast cleanup
      sun4m: QOM cast cleanup for IDRegState
      sun4m: QOM cast cleanup for AFXState
      sun4m: QOM cast cleanup for PROMState
      sun4m: QOM cast cleanup for RamDevice
      sun4u: QOM cast cleanup for PROMState
      sun4u: QOM cast cleanup for RamDevice
      pl022: Rename pl022_state to PL022State
      pl022: QOM cast cleanup
      xilinx_spi: QOM cast cleanup
      arm_timer: Rename sp804_state to SP804State
      arm_timer: QOM cast cleanup for SP804State
      arm_timer: QOM cast cleanup for icp_pit_state
      cadence_ttc: QOM cast cleanup
      etraxfs_timer: Rename etrax_timer to ETRAXTimerState
      etraxfs_timer: QOM cast cleanup
      exynos4210_mct: QOM cast cleanup
      exynos4210_pwm: QOM cast cleanup
      exynos4210_rtc: QOM cast cleanup
      grlib_gptimer: QOM cast cleanup
      lm32_timer: QOM cast cleanup
      m48t59: QOM cast cleanup for M48t59SysBusState
      milkymist-sysctl: QOM cast cleanup
      pl031: Rename pl031_state to PL031State
      pl031: QOM cast cleanup
      puv3_ost: QOM cast cleanup
      pxa2xx_timer: QOM'ify pxa25x-timer and pxa27x-timer
      slavio_timer: QOM cast cleanup
      tusb6010: QOM cast cleanup
      xilinx_timer: QOM cast cleanup
      sysbus: Drop FROM_SYSBUS()
      sysbus: Remove unused sysbus_new() prototype
      exynos4210_i2c: QOM cast cleanup
      opencores_eth: QOM cast cleanup
      mipsnet: QOM cast cleanup
      kvmvapic: QOM cast cleanup
      kvm/ioapic: QOM cast cleanup
      ioapic: QOM cast cleanup
      spapr_pci: QOM cast cleanup
      sysbus: QOM parent field cleanup for SysBusDevice

Peter Crosthwaite (1):
      ide/piix: QOM casting sweep

Stefan Weil (1):
      musicpal: Fix typo in name of local function

 MAINTAINERS                            |   1 +
 hw/arm/armv7m.c                        |  16 ++--
 hw/arm/highbank.c                      |  16 ++--
 hw/arm/integratorcp.c                  |  76 +++++++++-------
 hw/arm/musicpal.c                      | 158 ++++++++++++++++++++++-----------
 hw/arm/pxa2xx.c                        |  79 +++++++++++------
 hw/arm/pxa2xx_gpio.c                   |  35 +++++---
 hw/arm/pxa2xx_pic.c                    |  18 ++--
 hw/arm/spitz.c                         |  41 +++++----
 hw/arm/stellaris.c                     |  75 ++++++++++------
 hw/arm/strongarm.c                     | 134 +++++++++++++++++-----------
 hw/arm/versatilepb.c                   |  37 ++++----
 hw/audio/cs4231.c                      |  15 ++--
 hw/audio/marvell_88w8618.c             |  14 +--
 hw/audio/milkymist-ac97.c              |  13 ++-
 hw/audio/pl041.c                       |  45 +++++-----
 hw/block/fdc.c                         |  88 +++++++++---------
 hw/block/onenand.c                     |  30 ++++---
 hw/char/cadence_uart.c                 |  10 ++-
 hw/char/escc.c                         |  19 ++--
 hw/char/etraxfs_ser.c                  |  37 ++++----
 hw/char/exynos4210_uart.c              |  26 +++---
 hw/char/grlib_apbuart.c                |  13 ++-
 hw/char/imx_serial.c                   |  16 ++--
 hw/char/lm32_juart.c                   |  21 +++--
 hw/char/lm32_uart.c                    |  12 ++-
 hw/char/milkymist-uart.c               |  15 ++--
 hw/char/pl011.c                        | 110 ++++++++++++-----------
 hw/char/xilinx_uartlite.c              |  30 ++++---
 hw/core/empty_slot.c                   |  14 +--
 hw/cpu/a15mpcore.c                     |  15 +++-
 hw/cpu/a9mpcore.c                      |  15 +++-
 hw/cpu/arm11mpcore.c                   |  42 +++++----
 hw/display/exynos4210_fimd.c           |  18 ++--
 hw/display/g364fb.c                    |  25 ++++--
 hw/display/jazz_led.c                  |  12 ++-
 hw/display/milkymist-tmu2.c            |  13 ++-
 hw/display/milkymist-vgafb.c           |  17 ++--
 hw/display/pl110.c                     | 137 ++++++++++++++--------------
 hw/display/tcx.c                       |  12 ++-
 hw/dma/pl080.c                         |  91 +++++++++----------
 hw/dma/puv3_dma.c                      |  12 ++-
 hw/dma/pxa2xx_dma.c                    |  20 +++--
 hw/dma/sparc32_dma.c                   |  23 +++--
 hw/dma/sun4m_iommu.c                   |  12 ++-
 hw/gpio/omap_gpio.c                    |  62 ++++++++-----
 hw/gpio/pl061.c                        | 110 +++++++++++------------
 hw/gpio/puv3_gpio.c                    |  12 ++-
 hw/gpio/zaurus.c                       |  19 ++--
 hw/i2c/bitbang_i2c.c                   |  24 +++--
 hw/i2c/exynos4210_i2c.c                |  12 +--
 hw/i2c/omap_i2c.c                      |  38 ++++----
 hw/i2c/versatile_i2c.c                 |  20 +++--
 hw/i386/kvm/ioapic.c                   |   4 +-
 hw/i386/kvmvapic.c                     |   4 +-
 hw/ide/cmd646.c                        |  62 +++++++------
 hw/ide/pci.c                           |  30 +++++--
 hw/ide/pci.h                           |   8 +-
 hw/ide/piix.c                          |  30 +++----
 hw/ide/via.c                           |  18 ++--
 hw/input/milkymist-softusb.c           |  14 +--
 hw/input/pl050.c                       |  82 +++++++++--------
 hw/intc/arm_gic.c                      |   5 +-
 hw/intc/arm_gic_common.c               |   2 +-
 hw/intc/etraxfs_pic.c                  |  22 +++--
 hw/intc/exynos4210_combiner.c          |  23 +++--
 hw/intc/exynos4210_gic.c               |  45 ++++++----
 hw/intc/gic_internal.h                 |   5 +-
 hw/intc/grlib_irqmp.c                  |  33 +++----
 hw/intc/imx_avic.c                     |  27 +++---
 hw/intc/ioapic.c                       |   2 +-
 hw/intc/lm32_pic.c                     |  27 +++---
 hw/intc/omap_intc.c                    |  57 +++++++-----
 hw/intc/pl190.c                        |  78 ++++++++--------
 hw/intc/puv3_intc.c                    |  23 +++--
 hw/intc/realview_gic.c                 |  20 +++--
 hw/intc/slavio_intctl.c                |  35 ++++----
 hw/intc/xilinx_intc.c                  |  19 ++--
 hw/lm32/lm32.h                         |   5 +-
 hw/misc/arm_l2x0.c                     |  36 ++++----
 hw/misc/arm_sysctl.c                   |  20 +++--
 hw/misc/eccmemctl.c                    |  17 ++--
 hw/misc/exynos4210_pmu.c               |  14 +--
 hw/misc/imx_ccm.c                      |  16 ++--
 hw/misc/lm32_sys.c                     |  12 ++-
 hw/misc/milkymist-hpdmc.c              |  13 ++-
 hw/misc/milkymist-pfpu.c               |  13 ++-
 hw/misc/mst_fpga.c                     |  68 +++++++-------
 hw/misc/puv3_pm.c                      |  12 ++-
 hw/misc/slavio_misc.c                  |  45 ++++++----
 hw/misc/zynq_slcr.c                    |  15 ++--
 hw/net/cadence_gem.c                   |  26 +++---
 hw/net/etraxfs_eth.c                   |  52 ++++++-----
 hw/net/lan9118.c                       |  26 +++---
 hw/net/lance.c                         |  24 +++--
 hw/net/milkymist-minimac2.c            |  27 +++---
 hw/net/mipsnet.c                       |  20 +++--
 hw/net/opencores_eth.c                 |  24 +++--
 hw/net/smc91c111.c                     |  30 ++++---
 hw/net/stellaris_enet.c                |  38 +++++---
 hw/net/xgmac.c                         |  46 +++++-----
 hw/net/xilinx_ethlite.c                |  20 +++--
 hw/nvram/ds1225y.c                     |  12 ++-
 hw/pci-bridge/dec.c                    |   4 +-
 hw/pci-bridge/i82801b11.c              |  10 ++-
 hw/pci-bridge/ioh3420.c                |  35 +++-----
 hw/pci-bridge/pci_bridge_dev.c         |  26 +++---
 hw/pci-bridge/xio3130_downstream.c     |  35 +++-----
 hw/pci-bridge/xio3130_upstream.c       |  26 ++----
 hw/pci-host/apb.c                      |   7 +-
 hw/pci/pci.c                           |   2 +-
 hw/pci/pci_bridge.c                    |  40 ++++++---
 hw/pci/pcie.c                          |   2 +-
 hw/pci/pcie_port.c                     |  52 +++++++++++
 hw/ppc/ppce500_spin.c                  |  14 +--
 hw/ppc/spapr_pci.c                     |   7 +-
 hw/sd/milkymist-memcard.c              |  14 +--
 hw/sd/pl181.c                          |  75 ++++++++--------
 hw/sparc/sun4m.c                       |  54 +++++++----
 hw/sparc64/sun4u.c                     |  29 +++---
 hw/ssi/pl022.c                         |  91 ++++++++++---------
 hw/ssi/xilinx_spi.c                    |  27 +++---
 hw/timer/arm_mptimer.c                 |  18 ++--
 hw/timer/arm_timer.c                   |  48 ++++++----
 hw/timer/cadence_ttc.c                 |  13 ++-
 hw/timer/etraxfs_timer.c               |  35 ++++----
 hw/timer/exynos4210_mct.c              |  13 ++-
 hw/timer/exynos4210_pwm.c              |  12 ++-
 hw/timer/exynos4210_rtc.c              |  13 ++-
 hw/timer/grlib_gptimer.c               |  13 ++-
 hw/timer/lm32_timer.c                  |  12 ++-
 hw/timer/m48t59.c                      |  16 ++--
 hw/timer/milkymist-sysctl.c            |  14 +--
 hw/timer/pl031.c                       |  44 ++++-----
 hw/timer/puv3_ost.c                    |  12 ++-
 hw/timer/pxa2xx_timer.c                |  42 ++++++---
 hw/timer/slavio_timer.c                |  13 ++-
 hw/timer/tusb6010.c                    |  26 +++---
 hw/timer/xilinx_timer.c                |  11 ++-
 include/hw/char/escc.h                 |   1 +
 include/hw/{lm32 => char}/lm32_juart.h |   8 +-
 include/hw/pci/pci_bus.h               |   7 +-
 include/hw/pci/pcie_port.h             |  14 ++-
 include/hw/sysbus.h                    |   9 +-
 include/hw/timer/m48t59.h              |   3 +
 target-lm32/op_helper.c                |   2 +-
 146 files changed, 2502 insertions(+), 1728 deletions(-)
 rename include/hw/{lm32 => char}/lm32_juart.h (65%)