[PATCH v2 00/23] QUICC Engine support on ARM

From: Rasmus Villemoes
Date: Fri Oct 25 2019 - 08:41:08 EST


There have been several attempts in the past few years to allow
building the QUICC engine drivers for platforms other than PPC. This
is yet another attempt.

In v2, I've fixed a few style issues. But more importantly, it now
contains enough to actually remove the PPC32 dependency from
CONFIG_QUICC_ENGINE, so that's what the last patch does.

I haven't found a way to address Christophe's concern over the
performance impact of using the (on powerpc) out-of-line iowrite32be
instead of out_be32. I could of course introduce some qe_ prefixed
helpers (similar to the already added qe_clrsetbits ones) and make
their definition dependent on PPC32 or not, but that seems to be a bit
ugly.

Rasmus Villemoes (23):
soc: fsl: qe: remove space-before-tab
soc: fsl: qe: drop volatile qualifier of struct qe_ic::regs
soc: fsl: qe: avoid ppc-specific io accessors
soc: fsl: qe: replace spin_event_timeout by readx_poll_timeout_atomic
soc: fsl: qe: qe.c: guard use of pvr_version_is() with CONFIG_PPC32
soc: fsl: qe: avoid tail comments in qe_ic.h
soc: fsl: qe: merge qe_ic.h into qe_ic.c
soc: fsl: qe: drop unneeded #includes
soc: fsl: qe: move qe_ic_cascade_* functions to qe_ic.c
soc: fsl: qe: use qe_ic_cascade_{low,high}_mpic also on 83xx
soc: fsl: qe: rename qe_ic_cascade_low_mpic -> qe_ic_cascade_low
soc: fsl: qe: drop assign-only high_active in qe_ic_init
soc: fsl: qe: remove pointless sysfs registration in qe_ic.c
soc: fsl: qe: move calls of qe_ic_init out of arch/powerpc/
powerpc/83xx: remove mpc83xx_ipic_and_qe_init_IRQ
powerpc/85xx: remove mostly pointless mpc85xx_qe_init()
soc: fsl: qe: make qe_ic_cascade_* static
soc: fsl: qe: remove unused qe_ic_set_* functions
net: ethernet: freescale: make UCC_GETH explicitly depend on PPC32
serial: make SERIAL_QE depend on PPC32
serial: ucc_uart.c: explicitly include asm/cpm.h
soc/fsl/qe/qe.h: remove include of asm/cpm.h
soc: fsl: qe: remove PPC32 dependency from CONFIG_QUICC_ENGINE

arch/powerpc/platforms/83xx/km83xx.c | 3 +-
arch/powerpc/platforms/83xx/misc.c | 23 --
arch/powerpc/platforms/83xx/mpc832x_mds.c | 3 +-
arch/powerpc/platforms/83xx/mpc832x_rdb.c | 3 +-
arch/powerpc/platforms/83xx/mpc836x_mds.c | 3 +-
arch/powerpc/platforms/83xx/mpc836x_rdk.c | 3 +-
arch/powerpc/platforms/83xx/mpc83xx.h | 7 -
arch/powerpc/platforms/85xx/common.c | 23 --
arch/powerpc/platforms/85xx/corenet_generic.c | 12 -
arch/powerpc/platforms/85xx/mpc85xx.h | 2 -
arch/powerpc/platforms/85xx/mpc85xx_mds.c | 28 --
arch/powerpc/platforms/85xx/mpc85xx_rdb.c | 18 --
arch/powerpc/platforms/85xx/twr_p102x.c | 16 -
drivers/net/ethernet/freescale/Kconfig | 1 +
drivers/soc/fsl/qe/Kconfig | 2 +-
drivers/soc/fsl/qe/gpio.c | 30 +-
drivers/soc/fsl/qe/qe.c | 59 ++--
drivers/soc/fsl/qe/qe_ic.c | 289 ++++++++++--------
drivers/soc/fsl/qe/qe_ic.h | 99 ------
drivers/soc/fsl/qe/qe_io.c | 42 ++-
drivers/soc/fsl/qe/qe_tdm.c | 8 +-
drivers/soc/fsl/qe/ucc.c | 16 +-
drivers/soc/fsl/qe/ucc_fast.c | 70 ++---
drivers/soc/fsl/qe/ucc_slow.c | 38 +--
drivers/soc/fsl/qe/usb.c | 2 +-
drivers/tty/serial/Kconfig | 1 +
drivers/tty/serial/ucc_uart.c | 1 +
include/soc/fsl/qe/qe.h | 1 -
include/soc/fsl/qe/qe_ic.h | 69 -----
29 files changed, 299 insertions(+), 573 deletions(-)
delete mode 100644 drivers/soc/fsl/qe/qe_ic.h

--
2.23.0