[PATCH 00/20] ppc4xx_sdram QOMify and clean ups

BALATON Zoltan posted 20 patches 1 year, 7 months ago
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/qemu tags/patchew/cover.1660926381.git.balaton@eik.bme.hu
Maintainers: BALATON Zoltan <balaton@eik.bme.hu>
There is a newer version of this series
hw/ppc/meson.build      |   3 +-
hw/ppc/ppc405.h         |   8 +-
hw/ppc/ppc405_boards.c  |  19 +-
hw/ppc/ppc405_uc.c      |  33 +-
hw/ppc/ppc440.h         |   4 -
hw/ppc/ppc440_bamboo.c  |  29 +-
hw/ppc/ppc440_uc.c      | 267 +--------------
hw/ppc/ppc4xx_devs.c    | 413 -----------------------
hw/ppc/ppc4xx_sdram.c   | 723 ++++++++++++++++++++++++++++++++++++++++
hw/ppc/sam460ex.c       |  48 +--
hw/ppc/trace-events     |   1 +
include/hw/ppc/ppc4xx.h |  66 +++-
12 files changed, 844 insertions(+), 770 deletions(-)
create mode 100644 hw/ppc/ppc4xx_sdram.c
[PATCH 00/20] ppc4xx_sdram QOMify and 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 is the end of the QOMify series started by Cédric. This series
handles the SDRAM controller models to clean them up, QOMify and unify
them and at least partially clean up the mess that has accumulated
around these in the past. This includes the not yet merged patches
from the last series and new ones that change the DDR2 version used by
sam460ex. This is all I have for now I don't intend to make any more
bigger changes for this now.

Regards,
BALATON Zoltan

BALATON Zoltan (20):
  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
  ppc4xx_sdram: Drop extra zeros for readability
  ppc440_sdram: Split off map/unmap of sdram banks for later reuse
  ppc440_sdram: Implement enable bit in the DDR2 SDRAM controller
  ppc440_sdram: Get rid of the init RAM hack
  ppc440_sdram: Rename local variable for readibility
  ppc4xx_sdram: Rename functions to prevent name clashes
  ppc440_sdram: Move RAM size check to ppc440_sdram_init
  ppc440_sdram: QOM'ify
  ppc4xx_sdram: Move ppc4xx DDR and DDR2 SDRAM controller models
    together
  ppc4xx_sdram: Use hwaddr for memory bank size
  ppc4xx_sdram: Rename local state variable for brevity
  ppc4xx_sdram: Generalise bank setup
  ppc4xx_sdram: Convert DDR SDRAM controller to new bank handling

 hw/ppc/meson.build      |   3 +-
 hw/ppc/ppc405.h         |   8 +-
 hw/ppc/ppc405_boards.c  |  19 +-
 hw/ppc/ppc405_uc.c      |  33 +-
 hw/ppc/ppc440.h         |   4 -
 hw/ppc/ppc440_bamboo.c  |  29 +-
 hw/ppc/ppc440_uc.c      | 267 +--------------
 hw/ppc/ppc4xx_devs.c    | 413 -----------------------
 hw/ppc/ppc4xx_sdram.c   | 723 ++++++++++++++++++++++++++++++++++++++++
 hw/ppc/sam460ex.c       |  48 +--
 hw/ppc/trace-events     |   1 +
 include/hw/ppc/ppc4xx.h |  66 +++-
 12 files changed, 844 insertions(+), 770 deletions(-)
 create mode 100644 hw/ppc/ppc4xx_sdram.c

-- 
2.30.4


Re: [PATCH 00/20] ppc4xx_sdram QOMify and clean ups
Posted by BALATON Zoltan 1 year, 6 months ago
On Fri, 19 Aug 2022, BALATON Zoltan wrote:
> Hello,
>
> This is based on gitlab.com/danielhb/qemu/tree/ppc-7.2

Now that the queue is flushed it should apply on master so

Ping

Regards,
BALATON Zoltan

> This is the end of the QOMify series started by Cédric. This series
> handles the SDRAM controller models to clean them up, QOMify and unify
> them and at least partially clean up the mess that has accumulated
> around these in the past. This includes the not yet merged patches
> from the last series and new ones that change the DDR2 version used by
> sam460ex. This is all I have for now I don't intend to make any more
> bigger changes for this now.
>
> Regards,
> BALATON Zoltan
>
> BALATON Zoltan (20):
>  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
>  ppc4xx_sdram: Drop extra zeros for readability
>  ppc440_sdram: Split off map/unmap of sdram banks for later reuse
>  ppc440_sdram: Implement enable bit in the DDR2 SDRAM controller
>  ppc440_sdram: Get rid of the init RAM hack
>  ppc440_sdram: Rename local variable for readibility
>  ppc4xx_sdram: Rename functions to prevent name clashes
>  ppc440_sdram: Move RAM size check to ppc440_sdram_init
>  ppc440_sdram: QOM'ify
>  ppc4xx_sdram: Move ppc4xx DDR and DDR2 SDRAM controller models
>    together
>  ppc4xx_sdram: Use hwaddr for memory bank size
>  ppc4xx_sdram: Rename local state variable for brevity
>  ppc4xx_sdram: Generalise bank setup
>  ppc4xx_sdram: Convert DDR SDRAM controller to new bank handling
>
> hw/ppc/meson.build      |   3 +-
> hw/ppc/ppc405.h         |   8 +-
> hw/ppc/ppc405_boards.c  |  19 +-
> hw/ppc/ppc405_uc.c      |  33 +-
> hw/ppc/ppc440.h         |   4 -
> hw/ppc/ppc440_bamboo.c  |  29 +-
> hw/ppc/ppc440_uc.c      | 267 +--------------
> hw/ppc/ppc4xx_devs.c    | 413 -----------------------
> hw/ppc/ppc4xx_sdram.c   | 723 ++++++++++++++++++++++++++++++++++++++++
> hw/ppc/sam460ex.c       |  48 +--
> hw/ppc/trace-events     |   1 +
> include/hw/ppc/ppc4xx.h |  66 +++-
> 12 files changed, 844 insertions(+), 770 deletions(-)
> create mode 100644 hw/ppc/ppc4xx_sdram.c
>
>
Re: [PATCH 00/20] ppc4xx_sdram QOMify and clean ups
Posted by Cédric Le Goater 1 year, 6 months ago
On 9/1/22 23:02, BALATON Zoltan wrote:
> On Fri, 19 Aug 2022, BALATON Zoltan wrote:
>> Hello,
>>
>> This is based on gitlab.com/danielhb/qemu/tree/ppc-7.2
> 
> Now that the queue is flushed it should apply on master so


I will take a look (most likely next week) and It should reach 7.2.
No worries on that.

Have you anything else in plans ?

Thanks,

C.
Re: [PATCH 00/20] ppc4xx_sdram QOMify and clean ups
Posted by Cédric Le Goater 1 year, 6 months ago
On 9/2/22 10:35, Cédric Le Goater wrote:
> On 9/1/22 23:02, BALATON Zoltan wrote:
>> On Fri, 19 Aug 2022, BALATON Zoltan wrote:
>>> Hello,
>>>
>>> This is based on gitlab.com/danielhb/qemu/tree/ppc-7.2
>>
>> Now that the queue is flushed it should apply on master so
> 
> 
> I will take a look (most likely next week) and It should reach 7.2.
> No worries on that.

First comment, you should use :

   https://github.com/legoater/qemu-ppc-boot

and check that this command still runs :

   ./ppc-boot.sh -q --prefix=/path/to/qemu/  bamboo ref405ep

Thanks,

C.


Re: [PATCH 00/20] ppc4xx_sdram QOMify and clean ups
Posted by BALATON Zoltan 1 year, 6 months ago
On Fri, 2 Sep 2022, Cédric Le Goater wrote:
> On 9/2/22 10:35, Cédric Le Goater wrote:
>> On 9/1/22 23:02, BALATON Zoltan wrote:
>>> On Fri, 19 Aug 2022, BALATON Zoltan wrote:
>>>> Hello,
>>>> 
>>>> This is based on gitlab.com/danielhb/qemu/tree/ppc-7.2
>>> 
>>> Now that the queue is flushed it should apply on master so
>> 
>> 
>> I will take a look (most likely next week) and It should reach 7.2.
>> No worries on that.

No worries just pinged so it's not forgotten and I don't have to rebase it 
too much.

> First comment, you should use :
>
>  https://github.com/legoater/qemu-ppc-boot
>
> and check that this command still runs :
>
>  ./ppc-boot.sh -q --prefix=/path/to/qemu/  bamboo ref405ep

The bamboo and sam460ex still work, the ref450ep seems to have a problem, 
I'll try to find what. On master I get:

qemu-system-ppc: warning: hub port hub0port0 has no peer
qemu-system-ppc: warning: hub 0 with no nics
qemu-system-ppc: warning: netdev hub0port0 has no peer
qemu-system-ppc: warning: requested NIC (#net062, model rtl8139) was not 
created (not supported by this machine?)
Memory <- <0x0 0x8000000> (128MB)
CPU clock-frequency <- 0x1fca055 (33MHz)
CPU timebase-frequency <- 0x1fca055 (33MHz)
/plb: clock-frequency <- 0 (0MHz)
/plb/opb: clock-frequency <- 0 (0MHz)
/plb/ebc: clock-frequency <- 0 (0MHz)
/plb/opb/serial@ef600300: clock-frequency <- 7441e (0MHz)
/plb/opb/serial@ef600400: clock-frequency <- 7441e (0MHz)
ethernet0: local-mac-address <- 00:00:00:00:00:00
ethernet1: local-mac-address <- 00:00:07:f2:81:55
Fixing devtree for 4M Flash

while after patches it's

qemu-system-ppc: warning: hub 0 with no nics
qemu-system-ppc: warning: netdev hub0port0 has no peer
qemu-system-ppc: warning: requested NIC (#net053, model rtl8139) was not 
created (not supported by this machine?)
Memory <- <0x0 0x0> (0MB)
CPU clock-frequency <- 0x0 (0MHz)
CPU timebase-frequency <- 0x0 (0MHz)
/plb: clock-frequency <- 0 (0MHz)
/plb/opb: clock-frequency <- 0 (0MHz)
/plb/ebc: clock-frequency <- 0 (0MHz)
/plb/opb/serial@ef600300: clock-frequency <- 0 (0MHz)
/plb/opb/serial@ef600400: clock-frequency <- 0 (0MHz)
ethernet0: local-mac-address <- 00:00:00:00:00:00
ethernet1: local-mac-address <- 00:00:00:00:00:00
Trimming devtree for single serial/eth board
Fixing devtree for 4M Flash

Looks like the device tree is not the same. Any hints where this comes 
from?

Regards,
BALATON Zoltan