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

From: Christophe Leroy
Date: Wed Feb 22 2023 - 09:43:36 EST


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@xxxxxxxxxx/

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@xxxxxxxxxx/

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