[PATCH v5 00/13] powerpc/85xx: p2020: Create one unified machine description

From: Pali Rohár
Date: Sat Apr 08 2023 - 10:02:39 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 which has Freescale P2020 processor.
Kernel during booting correctly detects P2020 and prints:
[ 0.000000] Hardware name: Turris 1.1 e500v2 0x80211051 Freescale P2020

This patch series depends on another patch series "powerpc/fsl_uli1575: Cleanups":
https://lore.kernel.org/linuxppc-dev/20230408132151.8902-1-pali@xxxxxxxxxx/t/#u
(it was split from this one in v5)

Changes in v5:
* Split fsl_uli1575 patches to separate patch series as this one started to be too big.
* Fix commit messages
* Reduce includes
* Rebase on top of powerpc/next (b0bbe5a2915201e3231e788d716d39dc54493b03)
* Test all patches again on CZ.NIC Turris 1.1 board with P2020 processor

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 (6):
powerpc/85xx: Remove DBG() macro
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 (7):
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: mpc85xx_ds: Move i8259 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/platforms/85xx/Kconfig | 22 +++++-
arch/powerpc/platforms/85xx/Makefile | 4 +-
arch/powerpc/platforms/85xx/mpc85xx.h | 6 ++
arch/powerpc/platforms/85xx/mpc85xx_8259.c | 63 ++++++++++++++++
arch/powerpc/platforms/85xx/mpc85xx_ds.c | 87 +++-------------------
arch/powerpc/platforms/85xx/mpc85xx_mds.c | 7 --
arch/powerpc/platforms/85xx/mpc85xx_rdb.c | 63 +++-------------
arch/powerpc/platforms/85xx/p2020.c | 81 ++++++++++++++++++++
9 files changed, 191 insertions(+), 144 deletions(-)
create mode 100644 arch/powerpc/platforms/85xx/mpc85xx_8259.c
create mode 100644 arch/powerpc/platforms/85xx/p2020.c

--
2.20.1