mbox series

[v2,00/24] Fixes around device realization

Message ID 20200528110444.20456-1-armbru@redhat.com
Headers show
Series Fixes around device realization | expand

Message

Markus Armbruster May 28, 2020, 11:04 a.m. UTC
This fixes a bunch of bugs I ran into while reworking how qdevs plug
into buses.

I instrumented the code a bit to flush out instances of bug patterns.
I posted these hacks separately as '[PATCH not-for-merge 0/5]
Instrumentation for "Fixes around device realization"'.  PATCH 2/5
since became "[PATCH 0/2] qom: Make "info qom-tree" show children
sorted".  It should be applied first.

v2:
* Rebased
* PATCH 01: Also fix MMIO addresses, with Alistair's help
* PATCH 04+05: Replaced by better patches from Cédric
* PATCH 01-03+06+08-11+18: Commit messages improved [Peter, Paolo]
* PATCH 08+09+18: Avoid qdev_init_nofail() [Peter]
* PATCH 22: Assertion simplified

Based-on: Message-Id: <20200527084754.7531-1-armbru@redhat.com>

Cédric Le Goater (2):
  arm/aspeed: Compute the number of CPUs from the SoC definition
  arm/aspeed: Rework NIC attachment

Markus Armbruster (22):
  arm/stm32f405: Fix realization of "stm32f2xx-adc" devices
  display/xlnx_dp: Fix to realize "i2c-ddc" and "aux-to-i2c-bridge"
  sd/pxa2xx_mmci: Fix to realize "pxa2xx-mmci" device
  armv7m: Delete unused "ARM,bitband-memory" devices
  auxbus: Fix aux-to-i2c-bridge to be a subtype of aux-slave
  mac_via: Fix to realize "mos6522-q800-via*" devices
  macio: Fix to realize "mos6522-cuda" and "mos6522-pmu" devices
  macio: Delete unused "macio-gpio" devices
  pnv/phb4: Delete unused "pnv-phb4-pec-stack" devices
  MAINTAINERS: Make section PowerNV cover pci-host/pnv* as well
  ppc4xx: Drop redundant device realization
  macio: Put "macio-nvram" device on the macio bus
  macio: Fix macio-bus to be a subtype of System bus
  ppc/pnv: Put "*-pnv-chip" and "pnv-xive" on the main system bus
  pnv/psi: Correct the pnv-psi* devices not to be sysbus devices
  display/sm501 display/ati: Fix to realize "i2c-ddc"
  riscv: Fix to put "riscv.hart_array" devices on sysbus
  riscv: Fix type of SiFive[EU]SocState, member parent_obj
  sparc/leon3: Fix to put grlib,* devices on sysbus
  qdev: Assert devices are plugged into a bus that can take them
  sd: Hide the qdev-but-not-quite thing created by sd_init()
  qdev: Assert onboard devices all get realized properly

 include/hw/arm/aspeed.h     |  6 ++++++
 include/hw/arm/aspeed_soc.h |  1 -
 include/hw/ppc/pnv_psi.h    |  2 +-
 include/hw/riscv/sifive_e.h |  2 +-
 include/hw/riscv/sifive_u.h |  2 +-
 hw/arm/armv7m.c             |  6 ++++--
 hw/arm/aspeed.c             | 42 ++++++++++++++++++++++++++++++++-----
 hw/arm/aspeed_ast2600.c     | 23 +++++++-------------
 hw/arm/aspeed_soc.c         | 12 ++---------
 hw/arm/stm32f405_soc.c      | 23 +++++++++++---------
 hw/core/qdev.c              | 19 +++++++++++++++++
 hw/display/ati.c            |  2 ++
 hw/display/sm501.c          |  2 ++
 hw/display/xlnx_dp.c        |  4 ++++
 hw/misc/auxbus.c            |  2 +-
 hw/misc/mac_via.c           |  5 +++++
 hw/misc/macio/cuda.c        | 10 ++++-----
 hw/misc/macio/macio.c       |  7 +++++--
 hw/misc/macio/pmu.c         | 10 ++++-----
 hw/pci-host/pnv_phb4_pec.c  |  3 +++
 hw/ppc/pnv.c                |  6 +++---
 hw/ppc/pnv_psi.c            |  2 +-
 hw/ppc/ppc440_uc.c          |  2 --
 hw/riscv/sifive_e.c         |  5 ++---
 hw/riscv/sifive_u.c         | 14 ++++++-------
 hw/riscv/spike.c            | 12 +++++------
 hw/riscv/virt.c             |  4 ++--
 hw/sd/pxa2xx_mmci.c         |  1 +
 hw/sd/sd.c                  | 40 ++++++++++++++++++++++++-----------
 hw/sparc/leon3.c            |  4 ++--
 MAINTAINERS                 |  2 ++
 31 files changed, 177 insertions(+), 98 deletions(-)

Comments

Markus Armbruster June 5, 2020, 3:01 p.m. UTC | #1
Needs a rebase now.

Paolo, would you like me to post the pull requests for my recent QOM
work myself?
Paolo Bonzini June 5, 2020, 8:30 p.m. UTC | #2
Yes please, my next pull request is already at 120 patches...

Paolo

Il ven 5 giu 2020, 17:01 Markus Armbruster <armbru@redhat.com> ha scritto:

> Needs a rebase now.
>
> Paolo, would you like me to post the pull requests for my recent QOM
> work myself?
>
>
Markus Armbruster June 8, 2020, 11:08 a.m. UTC | #3
Markus Armbruster <armbru@redhat.com> writes:

> This fixes a bunch of bugs I ran into while reworking how qdevs plug
> into buses.
>
> I instrumented the code a bit to flush out instances of bug patterns.
> I posted these hacks separately as '[PATCH not-for-merge 0/5]
> Instrumentation for "Fixes around device realization"'.  PATCH 2/5
> since became "[PATCH 0/2] qom: Make "info qom-tree" show children
> sorted".  It should be applied first.
>
> v2:
> * Rebased
> * PATCH 01: Also fix MMIO addresses, with Alistair's help
> * PATCH 04+05: Replaced by better patches from Cédric
> * PATCH 01-03+06+08-11+18: Commit messages improved [Peter, Paolo]
> * PATCH 08+09+18: Avoid qdev_init_nofail() [Peter]
> * PATCH 22: Assertion simplified
>
> Based-on: Message-Id: <20200527084754.7531-1-armbru@redhat.com>

Peter, you commented on v1 of PATCH 06 and 09.  Please review v2.

Mark, you commented on v1 of PATCH 10.  Please review v2.

PATCH 18 needs review.  Philippe, perhaps?
Mark Cave-Ayland June 8, 2020, 11:44 a.m. UTC | #4
On 08/06/2020 12:08, Markus Armbruster wrote:

> Markus Armbruster <armbru@redhat.com> writes:
> 
>> This fixes a bunch of bugs I ran into while reworking how qdevs plug
>> into buses.
>>
>> I instrumented the code a bit to flush out instances of bug patterns.
>> I posted these hacks separately as '[PATCH not-for-merge 0/5]
>> Instrumentation for "Fixes around device realization"'.  PATCH 2/5
>> since became "[PATCH 0/2] qom: Make "info qom-tree" show children
>> sorted".  It should be applied first.
>>
>> v2:
>> * Rebased
>> * PATCH 01: Also fix MMIO addresses, with Alistair's help
>> * PATCH 04+05: Replaced by better patches from Cédric
>> * PATCH 01-03+06+08-11+18: Commit messages improved [Peter, Paolo]
>> * PATCH 08+09+18: Avoid qdev_init_nofail() [Peter]
>> * PATCH 22: Assertion simplified
>>
>> Based-on: Message-Id: <20200527084754.7531-1-armbru@redhat.com>
> 
> Peter, you commented on v1 of PATCH 06 and 09.  Please review v2.
> 
> Mark, you commented on v1 of PATCH 10.  Please review v2.
> 
> PATCH 18 needs review.  Philippe, perhaps?

Will do. It has been sat on my TODO list for a while, so I'll quickly have a look now.


ATB,

Mark.