Re: [PATCH v3 1/3] QE: move qe code from arch/powerpc to drivers/soc

From: Kumar Gala
Date: Thu Oct 30 2014 - 09:37:12 EST



On Oct 30, 2014, at 2:31 AM, Zhao Qiang <B45475@xxxxxxxxxxxxx> wrote:

> LS1 is arm cpu and it has qe ip block.
> move qe code from platform directory to public directory.
>
> QE is an IP block integrates several comunications peripheral
> controllers. It can implement a variety of applications, such
> as uart, usb and tdm and so on.
>
> Signed-off-by: Zhao Qiang <B45475@xxxxxxxxxxxxx>
> ---
> Changes for v2:
> - move code to driver/soc
> Changes for v3:
> - change drivers/soc/qe to drivers/soc/fsl-qe
>
> arch/powerpc/Kconfig | 2 -
> arch/powerpc/platforms/83xx/km83xx.c | 4 +-
> arch/powerpc/platforms/83xx/misc.c | 2 +-
> arch/powerpc/platforms/83xx/mpc832x_mds.c | 4 +-
> arch/powerpc/platforms/83xx/mpc832x_rdb.c | 4 +-
> arch/powerpc/platforms/83xx/mpc836x_mds.c | 4 +-
> arch/powerpc/platforms/83xx/mpc836x_rdk.c | 4 +-
> arch/powerpc/platforms/85xx/common.c | 2 +-
> arch/powerpc/platforms/85xx/corenet_generic.c | 2 +-
> arch/powerpc/platforms/85xx/mpc85xx_mds.c | 4 +-
> arch/powerpc/platforms/85xx/mpc85xx_rdb.c | 4 +-
> arch/powerpc/platforms/85xx/twr_p102x.c | 4 +-
> arch/powerpc/platforms/Kconfig | 19 ---------
> arch/powerpc/sysdev/Makefile | 1 -
> arch/powerpc/sysdev/qe_lib/Kconfig | 27 -------------
> drivers/net/ethernet/freescale/fsl_pq_mdio.c | 2 +-
> drivers/net/ethernet/freescale/ucc_geth.c | 8 ++--
> drivers/net/ethernet/freescale/ucc_geth.h | 8 ++--
> drivers/soc/Kconfig | 2 +
> drivers/soc/Makefile | 1 +
> drivers/soc/fsl-qe/Kconfig | 45 ++++++++++++++++++++++
> .../sysdev/qe_lib => drivers/soc/fsl-qe}/Makefile | 0
> .../sysdev/qe_lib => drivers/soc/fsl-qe}/gpio.c | 2 +-
> .../sysdev/qe_lib => drivers/soc/fsl-qe}/qe.c | 4 +-
> .../sysdev/qe_lib => drivers/soc/fsl-qe}/qe_ic.c | 2 +-
> .../sysdev/qe_lib => drivers/soc/fsl-qe}/qe_ic.h | 2 +-
> .../sysdev/qe_lib => drivers/soc/fsl-qe}/qe_io.c | 2 +-
> .../sysdev/qe_lib => drivers/soc/fsl-qe}/ucc.c | 6 +--
> .../qe_lib => drivers/soc/fsl-qe}/ucc_fast.c | 8 ++--
> .../qe_lib => drivers/soc/fsl-qe}/ucc_slow.c | 8 ++--
> .../sysdev/qe_lib => drivers/soc/fsl-qe}/usb.c | 4 +-
> drivers/spi/spi-fsl-cpm.c | 2 +-
> drivers/tty/serial/ucc_uart.c | 2 +-
> drivers/usb/gadget/fsl_qe_udc.c | 2 +-
> drivers/usb/host/fhci-hcd.c | 2 +-
> drivers/usb/host/fhci-hub.c | 2 +-
> drivers/usb/host/fhci-sched.c | 2 +-
> drivers/usb/host/fhci.h | 4 +-
> .../include/asm => include/linux/fsl}/immap_qe.h | 0
> .../powerpc/include/asm => include/linux/fsl}/qe.h | 2 +-
> .../include/asm => include/linux/fsl}/qe_ic.h | 0
> .../include/asm => include/linux/fsl}/ucc.h | 4 +-
> .../include/asm => include/linux/fsl}/ucc_fast.h | 6 +--
> .../include/asm => include/linux/fsl}/ucc_slow.h | 6 +--
> 44 files changed, 112 insertions(+), 113 deletions(-)
> delete mode 100644 arch/powerpc/sysdev/qe_lib/Kconfig
> create mode 100644 drivers/soc/fsl-qe/Kconfig
> rename {arch/powerpc/sysdev/qe_lib => drivers/soc/fsl-qe}/Makefile (100%)
> rename {arch/powerpc/sysdev/qe_lib => drivers/soc/fsl-qe}/gpio.c (99%)
> rename {arch/powerpc/sysdev/qe_lib => drivers/soc/fsl-qe}/qe.c (99%)
> rename {arch/powerpc/sysdev/qe_lib => drivers/soc/fsl-qe}/qe_ic.c (99%)
> rename {arch/powerpc/sysdev/qe_lib => drivers/soc/fsl-qe}/qe_ic.h (98%)
> rename {arch/powerpc/sysdev/qe_lib => drivers/soc/fsl-qe}/qe_io.c (99%)
> rename {arch/powerpc/sysdev/qe_lib => drivers/soc/fsl-qe}/ucc.c (98%)
> rename {arch/powerpc/sysdev/qe_lib => drivers/soc/fsl-qe}/ucc_fast.c (98%)
> rename {arch/powerpc/sysdev/qe_lib => drivers/soc/fsl-qe}/ucc_slow.c (98%)
> rename {arch/powerpc/sysdev/qe_lib => drivers/soc/fsl-qe}/usb.c (96%)
> rename {arch/powerpc/include/asm => include/linux/fsl}/immap_qe.h (100%)
> rename {arch/powerpc/include/asm => include/linux/fsl}/qe.h (99%)
> rename {arch/powerpc/include/asm => include/linux/fsl}/qe_ic.h (100%)
> rename {arch/powerpc/include/asm => include/linux/fsl}/ucc.h (96%)
> rename {arch/powerpc/include/asm => include/linux/fsl}/ucc_fast.h (98%)
> rename {arch/powerpc/include/asm => include/linux/fsl}/ucc_slow.h (99%)


So you should be moving things to drivers/soc/fsl/qe/ not drivers/soc/fsl-qe/

The headers should be in include/soc/fsl, not include/linux/fsl

In addition before this move is accepted, other changes need to be made to convert to using standard frameworks for various functionality in QE lib.

1. gpio.c -> needs to be converted to GPIO framework and placed in drivers/gpio
2. qe_ic* should probably move into drivers/irqchip
3. qe_io.c should be converted over to pinmux and put in drivers/pinctrl
4. Some of the clock could should be looked to be converted to use the clk framework

These changes need to be addressed before any of the qe_lib code can get moved into drivers/soc

- k

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/