mbox series

[v2,0/7] macio: remove PIC object property links

Message ID 20201229175619.6051-1-mark.cave-ayland@ilande.co.uk
Headers show
Series macio: remove PIC object property links | expand

Message

Mark Cave-Ayland Dec. 29, 2020, 5:56 p.m. UTC
This patchset follows on from the dicussion at https://lists.gnu.org/archive/html/qemu-devel/2020-11/msg02630.html
where the user_creatable flag for the macio devices was set back to false just
before the 5.2 release.

The underlying cause was that the PIC object property links were not being set
before realise. Whilst this cannot happen when launching the g3beige and mac99
machines from qemu-system-ppc, it caused some automated tests to fail.

Here we fix the real problem which is to move the PIC for both machines into the
macio device, which not only matches real hardware but also enables the PIC object
property links to be completely removed.

Patch 6 rewires the macio gpios for the mac99 machine as per Ben's original comment
after the OpenPIC device has been moved into the macio-newworld device, and then
finally patch 7 removes setting the user_creatable flag to false on the macio devices
once again.

Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>

v2:
- Add R-B tag for patch 1 from David
- Update commit messages to included more detail as requested by David


Mark Cave-Ayland (7):
  mac_oldworld: remove duplicate bus check for PPC_INPUT(env)
  mac_oldworld: move initialisation of grackle before heathrow
  macio: move heathrow PIC inside macio-oldworld device
  mac_newworld: delay wiring of PCI IRQs in New World machine
  macio: move OpenPIC inside macio-newworld device
  macio: wire macio GPIOs to OpenPIC using sysbus IRQs
  macio: don't set user_creatable to false

 hw/misc/macio/gpio.c          | 24 +++--------
 hw/misc/macio/macio.c         | 53 ++++++++++++------------
 hw/ppc/mac_newworld.c         | 71 ++++++++++++++++----------------
 hw/ppc/mac_oldworld.c         | 76 ++++++++++++++++-------------------
 include/hw/misc/macio/gpio.h  |  2 -
 include/hw/misc/macio/macio.h |  4 +-
 6 files changed, 104 insertions(+), 126 deletions(-)

Comments

Mark Cave-Ayland Jan. 7, 2021, 2:26 p.m. UTC | #1
On 29/12/2020 17:56, Mark Cave-Ayland wrote:

> This patchset follows on from the dicussion at https://lists.gnu.org/archive/html/qemu-devel/2020-11/msg02630.html
> where the user_creatable flag for the macio devices was set back to false just
> before the 5.2 release.
> 
> The underlying cause was that the PIC object property links were not being set
> before realise. Whilst this cannot happen when launching the g3beige and mac99
> machines from qemu-system-ppc, it caused some automated tests to fail.
> 
> Here we fix the real problem which is to move the PIC for both machines into the
> macio device, which not only matches real hardware but also enables the PIC object
> property links to be completely removed.
> 
> Patch 6 rewires the macio gpios for the mac99 machine as per Ben's original comment
> after the OpenPIC device has been moved into the macio-newworld device, and then
> finally patch 7 removes setting the user_creatable flag to false on the macio devices
> once again.
> 
> Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>
> 
> v2:
> - Add R-B tag for patch 1 from David
> - Update commit messages to included more detail as requested by David
> 
> 
> Mark Cave-Ayland (7):
>    mac_oldworld: remove duplicate bus check for PPC_INPUT(env)
>    mac_oldworld: move initialisation of grackle before heathrow
>    macio: move heathrow PIC inside macio-oldworld device
>    mac_newworld: delay wiring of PCI IRQs in New World machine
>    macio: move OpenPIC inside macio-newworld device
>    macio: wire macio GPIOs to OpenPIC using sysbus IRQs
>    macio: don't set user_creatable to false
> 
>   hw/misc/macio/gpio.c          | 24 +++--------
>   hw/misc/macio/macio.c         | 53 ++++++++++++------------
>   hw/ppc/mac_newworld.c         | 71 ++++++++++++++++----------------
>   hw/ppc/mac_oldworld.c         | 76 ++++++++++++++++-------------------
>   include/hw/misc/macio/gpio.h  |  2 -
>   include/hw/misc/macio/macio.h |  4 +-
>   6 files changed, 104 insertions(+), 126 deletions(-)

Any further thoughts on this? David has reviewed patches 1-5 but I've had no other 
feedback to date. If everyone is happy then I don't mind including this in a 
qemu-macppc PR.


ATB,

Mark.
David Gibson Jan. 7, 2021, 11:24 p.m. UTC | #2
On Thu, Jan 07, 2021 at 02:26:33PM +0000, Mark Cave-Ayland wrote:
> On 29/12/2020 17:56, Mark Cave-Ayland wrote:
> 
> > This patchset follows on from the dicussion at https://lists.gnu.org/archive/html/qemu-devel/2020-11/msg02630.html
> > where the user_creatable flag for the macio devices was set back to false just
> > before the 5.2 release.
> > 
> > The underlying cause was that the PIC object property links were not being set
> > before realise. Whilst this cannot happen when launching the g3beige and mac99
> > machines from qemu-system-ppc, it caused some automated tests to fail.
> > 
> > Here we fix the real problem which is to move the PIC for both machines into the
> > macio device, which not only matches real hardware but also enables the PIC object
> > property links to be completely removed.
> > 
> > Patch 6 rewires the macio gpios for the mac99 machine as per Ben's original comment
> > after the OpenPIC device has been moved into the macio-newworld device, and then
> > finally patch 7 removes setting the user_creatable flag to false on the macio devices
> > once again.
> > 
> > Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>
> > 
> > v2:
> > - Add R-B tag for patch 1 from David
> > - Update commit messages to included more detail as requested by David
> > 
> > 
> > Mark Cave-Ayland (7):
> >    mac_oldworld: remove duplicate bus check for PPC_INPUT(env)
> >    mac_oldworld: move initialisation of grackle before heathrow
> >    macio: move heathrow PIC inside macio-oldworld device
> >    mac_newworld: delay wiring of PCI IRQs in New World machine
> >    macio: move OpenPIC inside macio-newworld device
> >    macio: wire macio GPIOs to OpenPIC using sysbus IRQs
> >    macio: don't set user_creatable to false
> > 
> >   hw/misc/macio/gpio.c          | 24 +++--------
> >   hw/misc/macio/macio.c         | 53 ++++++++++++------------
> >   hw/ppc/mac_newworld.c         | 71 ++++++++++++++++----------------
> >   hw/ppc/mac_oldworld.c         | 76 ++++++++++++++++-------------------
> >   include/hw/misc/macio/gpio.h  |  2 -
> >   include/hw/misc/macio/macio.h |  4 +-
> >   6 files changed, 104 insertions(+), 126 deletions(-)
> 
> Any further thoughts on this? David has reviewed patches 1-5 but I've had no
> other feedback to date. If everyone is happy then I don't mind including
> this in a qemu-macppc PR.

I'm happy for you to do that.