[PATCH v2 00/31] QOMify PPC4xx devices and minor clean ups

BALATON Zoltan posted 31 patches 1 year, 7 months ago
Failed in applying to current master (apply log)
hw/intc/ppc-uic.c         |   26 +-
hw/ppc/Kconfig            |    3 +-
hw/ppc/ppc405.h           |  190 +++++--
hw/ppc/ppc405_boards.c    |  384 ++++++++-----
hw/ppc/ppc405_uc.c        | 1078 ++++++++++++-------------------------
hw/ppc/ppc440.h           |    5 +-
hw/ppc/ppc440_bamboo.c    |   63 ++-
hw/ppc/ppc440_uc.c        |   57 +-
hw/ppc/ppc4xx_devs.c      |  670 +++++++++++++++++------
hw/ppc/ppc4xx_pci.c       |   31 +-
hw/ppc/sam460ex.c         |   52 +-
hw/ppc/trace-events       |    3 -
hw/ppc/virtex_ml507.c     |    7 +-
include/hw/intc/ppc-uic.h |    6 +-
include/hw/ppc/ppc4xx.h   |  118 +++-
15 files changed, 1477 insertions(+), 1216 deletions(-)
[PATCH v2 00/31] QOMify PPC4xx devices and minor clean ups
Posted by BALATON Zoltan 1 year, 7 months ago
Hello,

This is based on gitlab.com/danielhb/qemu/tree/ppc-7.2

This series contains the rest of Cédric's OOM'ify patches modified
according my review comments and some other clean ups I've noticed
along the way.

v2 now also includes the sdram changes after some clean up to simplify
it. This should now be the same state as Cédric's series. I shall
continue with the ppc440_sdram DDR2 controller model used by the
sam460ex but that needs a bit more chnages. But it is independent of
this series so this can be merged now and I can follow up later in a
separate series.

Regards,
BALATON Zoltan

BALATON Zoltan (31):
  ppc/ppc4xx: Introduce a DCR device model
  ppc/ppc405: QOM'ify CPC
  ppc/ppc405: QOM'ify GPT
  ppc/ppc405: QOM'ify OCM
  ppc/ppc405: QOM'ify GPIO
  ppc/ppc405: QOM'ify DMA
  ppc/ppc405: QOM'ify EBC
  ppc/ppc405: QOM'ify OPBA
  ppc/ppc405: QOM'ify POB
  ppc/ppc405: QOM'ify PLB
  ppc/ppc405: QOM'ify MAL
  ppc4xx: Move PLB model to ppc4xx_devs.c
  ppc4xx: Rename ppc405-plb to ppc4xx-plb
  ppc4xx: Move EBC model to ppc4xx_devs.c
  ppc4xx: Rename ppc405-ebc to ppc4xx-ebc
  ppc/ppc405: Use an embedded PPCUIC model in SoC state
  hw/intc/ppc-uic: Convert ppc-uic to a PPC4xx DCR device
  ppc/ppc405: Use an explicit I2C object
  ppc/ppc405: QOM'ify FPGA
  ppc405: Move machine specific code to ppc405_boards.c
  hw/ppc/Kconfig: Remove PPC405 dependency from sam460ex
  hw/ppc/Kconfig: Move imply before select
  ppc/ppc4xx: Fix sdram trace events
  ppc4xx: Fix code style problems reported by checkpatch
  ppc440_bamboo: Remove unnecessary memsets
  ppc4xx: Introduce Ppc4xxSdramBank struct
  ppc4xx_sdram: Get rid of the init RAM hack
  ppc4xx: Use Ppc4xxSdramBank in ppc4xx_sdram_banks()
  ppc440_bamboo: Add missing 4 MiB valid memory size
  ppc4xx_sdram: Move size check to ppc4xx_sdram_init()
  ppc4xx_sdram: QOM'ify

 hw/intc/ppc-uic.c         |   26 +-
 hw/ppc/Kconfig            |    3 +-
 hw/ppc/ppc405.h           |  190 +++++--
 hw/ppc/ppc405_boards.c    |  384 ++++++++-----
 hw/ppc/ppc405_uc.c        | 1078 ++++++++++++-------------------------
 hw/ppc/ppc440.h           |    5 +-
 hw/ppc/ppc440_bamboo.c    |   63 ++-
 hw/ppc/ppc440_uc.c        |   57 +-
 hw/ppc/ppc4xx_devs.c      |  670 +++++++++++++++++------
 hw/ppc/ppc4xx_pci.c       |   31 +-
 hw/ppc/sam460ex.c         |   52 +-
 hw/ppc/trace-events       |    3 -
 hw/ppc/virtex_ml507.c     |    7 +-
 include/hw/intc/ppc-uic.h |    6 +-
 include/hw/ppc/ppc4xx.h   |  118 +++-
 15 files changed, 1477 insertions(+), 1216 deletions(-)

-- 
2.30.4


Re: [PATCH v2 00/31] QOMify PPC4xx devices and minor clean ups
Posted by Cédric Le Goater 1 year, 7 months ago
Daniel,

On 8/17/22 17:08, BALATON Zoltan wrote:
> Hello,
> 
> This is based on gitlab.com/danielhb/qemu/tree/ppc-7.2
> 
> This series contains the rest of Cédric's OOM'ify patches modified
> according my review comments and some other clean ups I've noticed
> along the way.

I think patches 01-24 are good for merge.
  
> v2 now also includes the sdram changes after some clean up to simplify
> it. This should now be the same state as Cédric's series. I shall
> continue with the ppc440_sdram DDR2 controller model used by the
> sam460ex but that needs a bit more chnages. But it is independent of
> this series so this can be merged now and I can follow up later in a
> separate series.

I will take a look at the SDRAM changes later.

Thanks,

C.


  
> Regards,
> BALATON Zoltan
> 
> BALATON Zoltan (31):
>    ppc/ppc4xx: Introduce a DCR device model
>    ppc/ppc405: QOM'ify CPC
>    ppc/ppc405: QOM'ify GPT
>    ppc/ppc405: QOM'ify OCM
>    ppc/ppc405: QOM'ify GPIO
>    ppc/ppc405: QOM'ify DMA
>    ppc/ppc405: QOM'ify EBC
>    ppc/ppc405: QOM'ify OPBA
>    ppc/ppc405: QOM'ify POB
>    ppc/ppc405: QOM'ify PLB
>    ppc/ppc405: QOM'ify MAL
>    ppc4xx: Move PLB model to ppc4xx_devs.c
>    ppc4xx: Rename ppc405-plb to ppc4xx-plb
>    ppc4xx: Move EBC model to ppc4xx_devs.c
>    ppc4xx: Rename ppc405-ebc to ppc4xx-ebc
>    ppc/ppc405: Use an embedded PPCUIC model in SoC state
>    hw/intc/ppc-uic: Convert ppc-uic to a PPC4xx DCR device
>    ppc/ppc405: Use an explicit I2C object
>    ppc/ppc405: QOM'ify FPGA
>    ppc405: Move machine specific code to ppc405_boards.c
>    hw/ppc/Kconfig: Remove PPC405 dependency from sam460ex
>    hw/ppc/Kconfig: Move imply before select
>    ppc/ppc4xx: Fix sdram trace events
>    ppc4xx: Fix code style problems reported by checkpatch
>    ppc440_bamboo: Remove unnecessary memsets
>    ppc4xx: Introduce Ppc4xxSdramBank struct
>    ppc4xx_sdram: Get rid of the init RAM hack
>    ppc4xx: Use Ppc4xxSdramBank in ppc4xx_sdram_banks()
>    ppc440_bamboo: Add missing 4 MiB valid memory size
>    ppc4xx_sdram: Move size check to ppc4xx_sdram_init()
>    ppc4xx_sdram: QOM'ify
> 
>   hw/intc/ppc-uic.c         |   26 +-
>   hw/ppc/Kconfig            |    3 +-
>   hw/ppc/ppc405.h           |  190 +++++--
>   hw/ppc/ppc405_boards.c    |  384 ++++++++-----
>   hw/ppc/ppc405_uc.c        | 1078 ++++++++++++-------------------------
>   hw/ppc/ppc440.h           |    5 +-
>   hw/ppc/ppc440_bamboo.c    |   63 ++-
>   hw/ppc/ppc440_uc.c        |   57 +-
>   hw/ppc/ppc4xx_devs.c      |  670 +++++++++++++++++------
>   hw/ppc/ppc4xx_pci.c       |   31 +-
>   hw/ppc/sam460ex.c         |   52 +-
>   hw/ppc/trace-events       |    3 -
>   hw/ppc/virtex_ml507.c     |    7 +-
>   include/hw/intc/ppc-uic.h |    6 +-
>   include/hw/ppc/ppc4xx.h   |  118 +++-
>   15 files changed, 1477 insertions(+), 1216 deletions(-)
> 


Re: [PATCH v2 00/31] QOMify PPC4xx devices and minor clean ups
Posted by Daniel Henrique Barboza 1 year, 7 months ago

On 8/18/22 10:17, Cédric Le Goater wrote:
> Daniel,
> 
> On 8/17/22 17:08, BALATON Zoltan wrote:
>> Hello,
>>
>> This is based on gitlab.com/danielhb/qemu/tree/ppc-7.2
>>
>> This series contains the rest of Cédric's OOM'ify patches modified
>> according my review comments and some other clean ups I've noticed
>> along the way.
> 
> I think patches 01-24 are good for merge.

Queued in gitlab.com/danielhb/qemu/tree/ppc-7.2 (with the v3 of patch 21).


Daniel

> 
>> v2 now also includes the sdram changes after some clean up to simplify
>> it. This should now be the same state as Cédric's series. I shall
>> continue with the ppc440_sdram DDR2 controller model used by the
>> sam460ex but that needs a bit more chnages. But it is independent of
>> this series so this can be merged now and I can follow up later in a
>> separate series.
> 
> I will take a look at the SDRAM changes later.
> 
> Thanks,
> 
> C.
> 
> 
> 
>> Regards,
>> BALATON Zoltan
>>
>> BALATON Zoltan (31):
>>    ppc/ppc4xx: Introduce a DCR device model
>>    ppc/ppc405: QOM'ify CPC
>>    ppc/ppc405: QOM'ify GPT
>>    ppc/ppc405: QOM'ify OCM
>>    ppc/ppc405: QOM'ify GPIO
>>    ppc/ppc405: QOM'ify DMA
>>    ppc/ppc405: QOM'ify EBC
>>    ppc/ppc405: QOM'ify OPBA
>>    ppc/ppc405: QOM'ify POB
>>    ppc/ppc405: QOM'ify PLB
>>    ppc/ppc405: QOM'ify MAL
>>    ppc4xx: Move PLB model to ppc4xx_devs.c
>>    ppc4xx: Rename ppc405-plb to ppc4xx-plb
>>    ppc4xx: Move EBC model to ppc4xx_devs.c
>>    ppc4xx: Rename ppc405-ebc to ppc4xx-ebc
>>    ppc/ppc405: Use an embedded PPCUIC model in SoC state
>>    hw/intc/ppc-uic: Convert ppc-uic to a PPC4xx DCR device
>>    ppc/ppc405: Use an explicit I2C object
>>    ppc/ppc405: QOM'ify FPGA
>>    ppc405: Move machine specific code to ppc405_boards.c
>>    hw/ppc/Kconfig: Remove PPC405 dependency from sam460ex
>>    hw/ppc/Kconfig: Move imply before select
>>    ppc/ppc4xx: Fix sdram trace events
>>    ppc4xx: Fix code style problems reported by checkpatch
>>    ppc440_bamboo: Remove unnecessary memsets
>>    ppc4xx: Introduce Ppc4xxSdramBank struct
>>    ppc4xx_sdram: Get rid of the init RAM hack
>>    ppc4xx: Use Ppc4xxSdramBank in ppc4xx_sdram_banks()
>>    ppc440_bamboo: Add missing 4 MiB valid memory size
>>    ppc4xx_sdram: Move size check to ppc4xx_sdram_init()
>>    ppc4xx_sdram: QOM'ify
>>
>>   hw/intc/ppc-uic.c         |   26 +-
>>   hw/ppc/Kconfig            |    3 +-
>>   hw/ppc/ppc405.h           |  190 +++++--
>>   hw/ppc/ppc405_boards.c    |  384 ++++++++-----
>>   hw/ppc/ppc405_uc.c        | 1078 ++++++++++++-------------------------
>>   hw/ppc/ppc440.h           |    5 +-
>>   hw/ppc/ppc440_bamboo.c    |   63 ++-
>>   hw/ppc/ppc440_uc.c        |   57 +-
>>   hw/ppc/ppc4xx_devs.c      |  670 +++++++++++++++++------
>>   hw/ppc/ppc4xx_pci.c       |   31 +-
>>   hw/ppc/sam460ex.c         |   52 +-
>>   hw/ppc/trace-events       |    3 -
>>   hw/ppc/virtex_ml507.c     |    7 +-
>>   include/hw/intc/ppc-uic.h |    6 +-
>>   include/hw/ppc/ppc4xx.h   |  118 +++-
>>   15 files changed, 1477 insertions(+), 1216 deletions(-)
>>
> 

Re: [PATCH v2 00/31] QOMify PPC4xx devices and minor clean ups
Posted by BALATON Zoltan 1 year, 7 months ago
On Thu, 18 Aug 2022, Cédric Le Goater wrote:
> Daniel,
>
> On 8/17/22 17:08, BALATON Zoltan wrote:
>> Hello,
>> 
>> This is based on gitlab.com/danielhb/qemu/tree/ppc-7.2
>> 
>> This series contains the rest of Cédric's OOM'ify patches modified
>> according my review comments and some other clean ups I've noticed
>> along the way.
>
> I think patches 01-24 are good for merge.

When merging note the v3 for patch 21.

>> v2 now also includes the sdram changes after some clean up to simplify
>> it. This should now be the same state as Cédric's series. I shall
>> continue with the ppc440_sdram DDR2 controller model used by the
>> sam460ex but that needs a bit more chnages. But it is independent of
>> this series so this can be merged now and I can follow up later in a
>> separate series.
>
> I will take a look at the SDRAM changes later.

OK, I'll probably resend these starting from patch 25 with some small 
chnages: the v3 I've sent for the last patch and one I noticed in patch 30 
which is just making ppc4xx_sdram_bank_sizes array local to 
ppc4xx_sdram_ddr_realize() as it's not used anywhere else and this avoids 
clash with similar array when I move the sam460 version here. Other than 
these These patches should be stable I'll just plan to add additional 
patches to handle the sam460ex SDRAM controller as well. If you have any 
comments to the current patches I can incorporate those in this new 
series.

Regards,
BALATON Zoltan
Re: [PATCH v2 00/31] QOMify PPC4xx devices and minor clean ups
Posted by BALATON Zoltan 1 year, 7 months ago
On Wed, 17 Aug 2022, BALATON Zoltan wrote:
> Hello,
>
> This is based on gitlab.com/danielhb/qemu/tree/ppc-7.2
>
> This series contains the rest of Cédric's OOM'ify patches modified
> according my review comments and some other clean ups I've noticed
> along the way.
>
> v2 now also includes the sdram changes after some clean up to simplify
> it. This should now be the same state as Cédric's series. I shall
> continue with the ppc440_sdram DDR2 controller model used by the
> sam460ex but that needs a bit more chnages. But it is independent of
> this series so this can be merged now and I can follow up later in a
> separate series.

I've resent fixed v3 patches for patch 21 and 31, hopefully there are no 
more missing pieces. Let me know if you want the whole series resent 
instead.

Regards,
BALATON Zoltan