mbox series

[v4,00/17] powerpc/85xx: p2020: Create one unified machine description

Message ID cover.1677076552.git.christophe.leroy@csgroup.eu (mailing list archive)
Headers show
Series powerpc/85xx: p2020: Create one unified machine description | expand

Message

Christophe Leroy Feb. 22, 2023, 2:42 p.m. UTC
This patch series unifies all P2020 boards and machine descriptions into
one generic unified P2020 machine description. With this generic machine
description, kernel can boot on any P2020-based board with correct DTS
file.

Tested on CZ.NIC Turris 1.1 board with has Freescale P2020 processor.
Kernel during booting correctly detects P2020 and prints:
[    0.000000] Using Freescale P2020 machine description

Changes in v4:
* Added several preparatory cleanup patchs
* Minimised churn by not duplicating helpers at the first place
* Split main patch in two
* Dropped patchs 1 and 2
* Untested beyond basic build test

Changes in v3:
* Use 'if (IS_ENABLED(CONFIG_PPC_I8259))' instead of '#ifdef CONFIG_PPC_I8259'
* Simplify p2020_probe()
* Patches generated by -M and -C git options

Link to v2: https://lore.kernel.org/linuxppc-dev/20221224211425.14983-1-pali@kernel.org/

Changes in v2:
* Added patch "p2020: Move i8259 code into own function" (separated from the next one)
* Renamed CONFIG_P2020 to CONFIG_PPC_P2020
* Fixed descriptions

Link to v1: https://lore.kernel.org/linuxppc-dev/20220819191557.28116-1-pali@kernel.org/

Christophe Leroy (9):
  powerpc/fsl_uli1575: Misc cleanup
  powerpc/85xx: Rename setup_arch and pic_init on p1023
  powerpc/85xx: Remove DBG() macro
  powerpc/85xx: Remove #ifdefs CONFIG_PCI in mpc85xx_ds
  powerpc/85xx: mpc85xx_{ds/rdb} compact the call to mpic_alloc()
  powerpc/85xx: mpc85xx_{ds/rdb} replace BUG_ON() by WARN_ON()
  powerpc/85xx: mpc85xx_{ds/rdb} replace prink by pr_xxx macro
  powerpc/85xx: Remove #ifdefs CONFIG_PPC_I8259 in mpc85xx_ds
  powerpc/85xx: Remove #ifdef CONFIG_QUICC_ENGINE in mpc85xx_rdb

Pali Rohár (8):
  powerpc/85xx: p2020: Move all P2020 DS machine descriptions to p2020.c
  powerpc/85xx: p2020: Move all P2020 RDB machine descriptions to
    p2020.c
  powerpc/85xx: p2020: Move i8259 code into own function
  powerpc/85xx: mpc85xx_ds: Move PCI code into own file
  powerpc/85xx: p2020: Unify .setup_arch and .init_IRQ callbacks
  powerpc/85xx: p2020: Define just one machine description
  powerpc/85xx: p2020: Enable boards by new config option
    CONFIG_PPC_P2020
  powerpc: dts: turris1x.dts: Remove "fsl,P2020RDB-PC" compatible string

 arch/powerpc/boot/dts/turris1x.dts         |   2 +-
 arch/powerpc/include/asm/ppc-pci.h         |   2 +
 arch/powerpc/platforms/85xx/Kconfig        |  22 +++-
 arch/powerpc/platforms/85xx/Makefile       |   5 +-
 arch/powerpc/platforms/85xx/mpc85xx.h      |  12 ++
 arch/powerpc/platforms/85xx/mpc85xx_8259.c |  78 ++++++++++++
 arch/powerpc/platforms/85xx/mpc85xx_ds.c   | 133 ++-------------------
 arch/powerpc/platforms/85xx/mpc85xx_mds.c  |   7 --
 arch/powerpc/platforms/85xx/mpc85xx_rdb.c  |  79 ++----------
 arch/powerpc/platforms/85xx/mpc85xx_uli.c  |  64 ++++++++++
 arch/powerpc/platforms/85xx/p1023_rdb.c    |   8 +-
 arch/powerpc/platforms/85xx/p2020.c        |  95 +++++++++++++++
 arch/powerpc/platforms/fsl_uli1575.c       |   6 +-
 13 files changed, 301 insertions(+), 212 deletions(-)
 create mode 100644 arch/powerpc/platforms/85xx/mpc85xx_8259.c
 create mode 100644 arch/powerpc/platforms/85xx/mpc85xx_uli.c
 create mode 100644 arch/powerpc/platforms/85xx/p2020.c

Comments

Pali Rohár Feb. 22, 2023, 6:22 p.m. UTC | #1
On Wednesday 22 February 2023 15:42:47 Christophe Leroy wrote:
> This patch series unifies all P2020 boards and machine descriptions into
> one generic unified P2020 machine description. With this generic machine
> description, kernel can boot on any P2020-based board with correct DTS
> file.
> 
> Tested on CZ.NIC Turris 1.1 board with has Freescale P2020 processor.
> Kernel during booting correctly detects P2020 and prints:
> [    0.000000] Using Freescale P2020 machine description
> 
> Changes in v4:
> * Added several preparatory cleanup patchs
> * Minimised churn by not duplicating helpers at the first place
> * Split main patch in two
> * Dropped patchs 1 and 2
> * Untested beyond basic build test

Changes looks good. I'm happy with them. You can add my:

Reviewed-by: Pali Rohár <pali@kernel.org>

> Changes in v3:
> * Use 'if (IS_ENABLED(CONFIG_PPC_I8259))' instead of '#ifdef CONFIG_PPC_I8259'
> * Simplify p2020_probe()
> * Patches generated by -M and -C git options
> 
> Link to v2: https://lore.kernel.org/linuxppc-dev/20221224211425.14983-1-pali@kernel.org/
> 
> Changes in v2:
> * Added patch "p2020: Move i8259 code into own function" (separated from the next one)
> * Renamed CONFIG_P2020 to CONFIG_PPC_P2020
> * Fixed descriptions
> 
> Link to v1: https://lore.kernel.org/linuxppc-dev/20220819191557.28116-1-pali@kernel.org/
> 
> Christophe Leroy (9):
>   powerpc/fsl_uli1575: Misc cleanup
>   powerpc/85xx: Rename setup_arch and pic_init on p1023
>   powerpc/85xx: Remove DBG() macro
>   powerpc/85xx: Remove #ifdefs CONFIG_PCI in mpc85xx_ds
>   powerpc/85xx: mpc85xx_{ds/rdb} compact the call to mpic_alloc()
>   powerpc/85xx: mpc85xx_{ds/rdb} replace BUG_ON() by WARN_ON()
>   powerpc/85xx: mpc85xx_{ds/rdb} replace prink by pr_xxx macro
>   powerpc/85xx: Remove #ifdefs CONFIG_PPC_I8259 in mpc85xx_ds
>   powerpc/85xx: Remove #ifdef CONFIG_QUICC_ENGINE in mpc85xx_rdb
> 
> Pali Rohár (8):
>   powerpc/85xx: p2020: Move all P2020 DS machine descriptions to p2020.c
>   powerpc/85xx: p2020: Move all P2020 RDB machine descriptions to
>     p2020.c
>   powerpc/85xx: p2020: Move i8259 code into own function
>   powerpc/85xx: mpc85xx_ds: Move PCI code into own file
>   powerpc/85xx: p2020: Unify .setup_arch and .init_IRQ callbacks
>   powerpc/85xx: p2020: Define just one machine description
>   powerpc/85xx: p2020: Enable boards by new config option
>     CONFIG_PPC_P2020
>   powerpc: dts: turris1x.dts: Remove "fsl,P2020RDB-PC" compatible string
> 
>  arch/powerpc/boot/dts/turris1x.dts         |   2 +-
>  arch/powerpc/include/asm/ppc-pci.h         |   2 +
>  arch/powerpc/platforms/85xx/Kconfig        |  22 +++-
>  arch/powerpc/platforms/85xx/Makefile       |   5 +-
>  arch/powerpc/platforms/85xx/mpc85xx.h      |  12 ++
>  arch/powerpc/platforms/85xx/mpc85xx_8259.c |  78 ++++++++++++
>  arch/powerpc/platforms/85xx/mpc85xx_ds.c   | 133 ++-------------------
>  arch/powerpc/platforms/85xx/mpc85xx_mds.c  |   7 --
>  arch/powerpc/platforms/85xx/mpc85xx_rdb.c  |  79 ++----------
>  arch/powerpc/platforms/85xx/mpc85xx_uli.c  |  64 ++++++++++
>  arch/powerpc/platforms/85xx/p1023_rdb.c    |   8 +-
>  arch/powerpc/platforms/85xx/p2020.c        |  95 +++++++++++++++
>  arch/powerpc/platforms/fsl_uli1575.c       |   6 +-
>  13 files changed, 301 insertions(+), 212 deletions(-)
>  create mode 100644 arch/powerpc/platforms/85xx/mpc85xx_8259.c
>  create mode 100644 arch/powerpc/platforms/85xx/mpc85xx_uli.c
>  create mode 100644 arch/powerpc/platforms/85xx/p2020.c
> 
> -- 
> 2.39.1
>
Christophe Leroy Feb. 23, 2023, 8:37 a.m. UTC | #2
Le 22/02/2023 à 19:22, Pali Rohár a écrit :
> On Wednesday 22 February 2023 15:42:47 Christophe Leroy wrote:
>> This patch series unifies all P2020 boards and machine descriptions into
>> one generic unified P2020 machine description. With this generic machine
>> description, kernel can boot on any P2020-based board with correct DTS
>> file.
>>
>> Tested on CZ.NIC Turris 1.1 board with has Freescale P2020 processor.
>> Kernel during booting correctly detects P2020 and prints:
>> [    0.000000] Using Freescale P2020 machine description
>>
>> Changes in v4:
>> * Added several preparatory cleanup patchs
>> * Minimised churn by not duplicating helpers at the first place
>> * Split main patch in two
>> * Dropped patchs 1 and 2
>> * Untested beyond basic build test
> 
> Changes looks good. I'm happy with them. You can add my:
> 
> Reviewed-by: Pali Rohár <pali@kernel.org>

Thanks.

However this series doesn't have the shape for getting merged yet, I've 
been very quick with the additional patches descriptions and I have not 
revisited the descriptions of pre-existing patches.

I was expecting you to take over. By the way there's no hurry I guess, 
we are already in the middle of the merge window, Michael usually 
doesn't take any more non-fixes patches once the merge window is open, 
so that series will go in 6.4

Christophe

> 
>> Changes in v3:
>> * Use 'if (IS_ENABLED(CONFIG_PPC_I8259))' instead of '#ifdef CONFIG_PPC_I8259'
>> * Simplify p2020_probe()
>> * Patches generated by -M and -C git options
>>
>> Link to v2: https://lore.kernel.org/linuxppc-dev/20221224211425.14983-1-pali@kernel.org/
>>
>> Changes in v2:
>> * Added patch "p2020: Move i8259 code into own function" (separated from the next one)
>> * Renamed CONFIG_P2020 to CONFIG_PPC_P2020
>> * Fixed descriptions
>>
>> Link to v1: https://lore.kernel.org/linuxppc-dev/20220819191557.28116-1-pali@kernel.org/
>>
>> Christophe Leroy (9):
>>    powerpc/fsl_uli1575: Misc cleanup
>>    powerpc/85xx: Rename setup_arch and pic_init on p1023
>>    powerpc/85xx: Remove DBG() macro
>>    powerpc/85xx: Remove #ifdefs CONFIG_PCI in mpc85xx_ds
>>    powerpc/85xx: mpc85xx_{ds/rdb} compact the call to mpic_alloc()
>>    powerpc/85xx: mpc85xx_{ds/rdb} replace BUG_ON() by WARN_ON()
>>    powerpc/85xx: mpc85xx_{ds/rdb} replace prink by pr_xxx macro
>>    powerpc/85xx: Remove #ifdefs CONFIG_PPC_I8259 in mpc85xx_ds
>>    powerpc/85xx: Remove #ifdef CONFIG_QUICC_ENGINE in mpc85xx_rdb
>>
>> Pali Rohár (8):
>>    powerpc/85xx: p2020: Move all P2020 DS machine descriptions to p2020.c
>>    powerpc/85xx: p2020: Move all P2020 RDB machine descriptions to
>>      p2020.c
>>    powerpc/85xx: p2020: Move i8259 code into own function
>>    powerpc/85xx: mpc85xx_ds: Move PCI code into own file
>>    powerpc/85xx: p2020: Unify .setup_arch and .init_IRQ callbacks
>>    powerpc/85xx: p2020: Define just one machine description
>>    powerpc/85xx: p2020: Enable boards by new config option
>>      CONFIG_PPC_P2020
>>    powerpc: dts: turris1x.dts: Remove "fsl,P2020RDB-PC" compatible string
>>
>>   arch/powerpc/boot/dts/turris1x.dts         |   2 +-
>>   arch/powerpc/include/asm/ppc-pci.h         |   2 +
>>   arch/powerpc/platforms/85xx/Kconfig        |  22 +++-
>>   arch/powerpc/platforms/85xx/Makefile       |   5 +-
>>   arch/powerpc/platforms/85xx/mpc85xx.h      |  12 ++
>>   arch/powerpc/platforms/85xx/mpc85xx_8259.c |  78 ++++++++++++
>>   arch/powerpc/platforms/85xx/mpc85xx_ds.c   | 133 ++-------------------
>>   arch/powerpc/platforms/85xx/mpc85xx_mds.c  |   7 --
>>   arch/powerpc/platforms/85xx/mpc85xx_rdb.c  |  79 ++----------
>>   arch/powerpc/platforms/85xx/mpc85xx_uli.c  |  64 ++++++++++
>>   arch/powerpc/platforms/85xx/p1023_rdb.c    |   8 +-
>>   arch/powerpc/platforms/85xx/p2020.c        |  95 +++++++++++++++
>>   arch/powerpc/platforms/fsl_uli1575.c       |   6 +-
>>   13 files changed, 301 insertions(+), 212 deletions(-)
>>   create mode 100644 arch/powerpc/platforms/85xx/mpc85xx_8259.c
>>   create mode 100644 arch/powerpc/platforms/85xx/mpc85xx_uli.c
>>   create mode 100644 arch/powerpc/platforms/85xx/p2020.c
>>
>> -- 
>> 2.39.1
>>
Michael Ellerman Feb. 23, 2023, 8:58 a.m. UTC | #3
Christophe Leroy <christophe.leroy@csgroup.eu> writes:
> Le 22/02/2023 à 19:22, Pali Rohár a écrit :
>> On Wednesday 22 February 2023 15:42:47 Christophe Leroy wrote:
>>> This patch series unifies all P2020 boards and machine descriptions into
>>> one generic unified P2020 machine description. With this generic machine
>>> description, kernel can boot on any P2020-based board with correct DTS
>>> file.
>>>
>>> Tested on CZ.NIC Turris 1.1 board with has Freescale P2020 processor.
>>> Kernel during booting correctly detects P2020 and prints:
>>> [    0.000000] Using Freescale P2020 machine description
>>>
>>> Changes in v4:
>>> * Added several preparatory cleanup patchs
>>> * Minimised churn by not duplicating helpers at the first place
>>> * Split main patch in two
>>> * Dropped patchs 1 and 2
>>> * Untested beyond basic build test
>> 
>> Changes looks good. I'm happy with them. You can add my:
>> 
>> Reviewed-by: Pali Rohár <pali@kernel.org>
>
> Thanks.
>
> However this series doesn't have the shape for getting merged yet, I've 
> been very quick with the additional patches descriptions and I have not 
> revisited the descriptions of pre-existing patches.
>
> I was expecting you to take over. By the way there's no hurry I guess, 
> we are already in the middle of the merge window, Michael usually 
> doesn't take any more non-fixes patches once the merge window is open, 
> so that series will go in 6.4

Correct.

I'll open next for new patches around 6.3-rc2, so in ~2.5 weeks from now.

cheers