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

Message ID 20230408140122.25293-1-pali@kernel.org
Headers
Series powerpc/85xx: p2020: Create one unified machine description |

Message

Pali Rohár April 8, 2023, 2:01 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 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@kernel.org/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@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 (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