[RFC PATCH 00/18] ARM: msm multiplatform support

Ulf Hansson ulf.hansson at linaro.org
Thu Mar 5 08:40:18 PST 2015


On 4 March 2015 at 20:32, Arnd Bergmann <arnd at arndb.de> wrote:
> This is my final piece of the puzzle for ARMv6/v7 multiplatform
> support. In combination with the other patches that are now
> at git://kernel.org/pub/scm/linux/kernel/git/arnd/playground.git
> multiplatform-4.0-rc2 and the at91 and shmobile parts from other
> developers, you can now build one kernel that includes all
> ARMv6 and ARMv7 targets we support in Linux.
>
> Since mach-msm has seen very few updates over the last years,
> it was more work to get to this point than the others, and
> some patches are more of a band-aid than a proper solution.
> Still, I think that each patch in the series is an improvement
> over the status-quo and I really want to see the last one
> merged into 4.1 and it depends on all the other ones.
>
> Stephen Boyd mentioned on IRC that he has been workin on
> a similar series, and I'm more than happy to replace some
> of this work with patches that he has done, as long as we
> can still have the full multiplatform support for 4.1.
>
> Since a lot of the patches are nontrivial and I have not
> been able to test any of this, I'm posting it as an RFC,
> but I'm also very interested in people testing it.
>
>         Arnd
>
> Arnd Bergmann (18):
>   serial: remove obsolete msm_serial_hs driver
>   mmc: msm: move data mover into mmc driver
>   mmc: msm: pass dmov resources via device
>   mmc: msm: move clk-reset logic to platform
>   ARM: msm: fix qsd8x50 rev.a support
>   ARM: msm: fix mach/msm_iomap.h inclusions
>   ARM: msm: fix sirc code for multiplatform
>   ARM: msm: fix gpiomux config for multiplatform
>   ARM: msm: fix vic irqchip for multiplatform
>   gpio: move msm-v1 driver to mach-msm
>   clocksource: qcom: make mach-msm and mach-qcom coexist
>   ARM: msm: make smd behave like a normal driver
>   ARM: msm: rename conflicting symbols
>   ARM: msm: pass gpio irq range as resource
>   ARM: msm: clean up irq handling
>   ARM: msm: make msm_smd.h global
>   ARM: msm: make all header files local
>   ARM: msm: enable multiplatform support
>
>  arch/arm/Kconfig                                   |   12 -
>  arch/arm/configs/msm_defconfig                     |    7 +
>  arch/arm/mach-msm/Kconfig                          |   91 +-
>  arch/arm/mach-msm/Makefile                         |   11 +-
>  arch/arm/mach-msm/board-halibut.c                  |   31 +-
>  arch/arm/mach-msm/board-msm7x30.c                  |   98 +-
>  arch/arm/mach-msm/board-qsd8x50.c                  |  138 +-
>  arch/arm/mach-msm/board-sapphire.c                 |   17 +-
>  arch/arm/mach-msm/board-trout-gpio.c               |    7 +-
>  arch/arm/mach-msm/board-trout-mmc.c                |   33 +-
>  arch/arm/mach-msm/board-trout-panel.c              |    8 +-
>  arch/arm/mach-msm/board-trout.c                    |   26 +-
>  arch/arm/mach-msm/board-trout.h                    |    2 +-
>  arch/arm/mach-msm/{include/mach => }/clk.h         |    0
>  arch/arm/mach-msm/clock-pcom.c                     |    5 +-
>  arch/arm/mach-msm/clock.c                          |    2 +-
>  arch/arm/mach-msm/clock.h                          |    2 +-
>  arch/arm/mach-msm/common.h                         |   16 +-
>  arch/arm/mach-msm/devices-msm7x00.c                |  169 +-
>  arch/arm/mach-msm/devices-msm7x30.c                |   78 +-
>  arch/arm/mach-msm/devices-qsd8x50.c                |  152 +-
>  arch/arm/mach-msm/devices.h                        |   67 +-
>  arch/arm/mach-msm/dma.c                            |  298 ----
>  {drivers/gpio => arch/arm/mach-msm}/gpio-msm-v1.c  |   33 +-
>  arch/arm/mach-msm/gpiomux-8x50.c                   |    2 +-
>  arch/arm/mach-msm/gpiomux-v1.h                     |    9 +-
>  arch/arm/mach-msm/gpiomux.c                        |   18 +-
>  arch/arm/mach-msm/gpiomux.h                        |   10 +-
>  arch/arm/mach-msm/include/mach/dma.h               |  151 --
>  arch/arm/mach-msm/include/mach/entry-macro.S       |   36 -
>  arch/arm/mach-msm/include/mach/hardware.h          |   18 -
>  arch/arm/mach-msm/include/mach/irqs.h              |   37 -
>  arch/arm/mach-msm/include/mach/sirc.h              |   98 -
>  arch/arm/mach-msm/io.c                             |  161 --
>  arch/arm/mach-msm/irq-vic.c                        |  146 +-
>  arch/arm/mach-msm/irq.c                            |   29 +-
>  arch/arm/mach-msm/{include/mach => }/irqs-7x00.h   |    3 +
>  arch/arm/mach-msm/{include/mach => }/irqs-7x30.h   |    2 +
>  arch/arm/mach-msm/{include/mach => }/irqs-8x50.h   |   42 +
>  arch/arm/mach-msm/last_radio_log.c                 |    1 -
>  arch/arm/mach-msm/{include/mach => }/msm_gpiomux.h |    0
>  .../mach-msm/{include/mach => }/msm_iomap-7x00.h   |    5 +-
>  .../mach-msm/{include/mach => }/msm_iomap-7x30.h   |    2 -
>  .../mach-msm/{include/mach => }/msm_iomap-8x50.h   |   12 +-
>  arch/arm/mach-msm/{include/mach => }/msm_iomap.h   |   24 +-
>  arch/arm/mach-msm/proc_comm.c                      |   12 +-
>  arch/arm/mach-msm/proc_comm.h                      |    2 +
>  arch/arm/mach-msm/sirc.c                           |   44 +-
>  arch/arm/mach-msm/sirc.h                           |   34 +
>  arch/arm/mach-msm/smd.c                            |  135 +-
>  arch/arm/mach-msm/smd_debug.c                      |  143 +-
>  arch/arm/mach-msm/smd_private.h                    |   67 +-
>  arch/arm/mach-msm/vreg.c                           |    2 +-
>  arch/arm/mach-msm/{include/mach => }/vreg.h        |    0
>  drivers/char/msm_smd_pkt.c                         |    2 +-
>  drivers/clocksource/qcom-timer.c                   |    3 +-
>  drivers/gpio/Kconfig                               |    8 -
>  drivers/gpio/Makefile                              |    1 -
>  drivers/mmc/host/msm_sdcc.c                        |  384 +++-

The goal from my side is to entirely remove this mmc driver and
instead convert to use the mmci host driver.

If I understand correctly, the current big blocker to reach that goal
is the DMA driver, since it's not converted to the DMA engine API? Do
you know if that's a correct statement?

Anyway, I suppose this patchset can be considered as step in the right
direction, even if I don't like to take patches for the msm_sdcc.c.

Kind regards
Uffe

>  drivers/tty/serial/Kconfig                         |   12 -
>  drivers/tty/serial/msm_serial_hs.c                 | 1874 --------------------
>  drivers/tty/serial/msm_smd_tty.c                   |    2 +-
>  .../include/mach => include/linux}/msm_smd.h       |    0
>  include/linux/platform_data/mmc-msm_sdcc.h         |    3 +
>  include/linux/platform_data/msm_serial_hs.h        |   49 -
>  65 files changed, 1419 insertions(+), 3467 deletions(-)
>  rename arch/arm/mach-msm/{include/mach => }/clk.h (100%)
>  delete mode 100644 arch/arm/mach-msm/dma.c
>  rename {drivers/gpio => arch/arm/mach-msm}/gpio-msm-v1.c (97%)
>  delete mode 100644 arch/arm/mach-msm/include/mach/dma.h
>  delete mode 100644 arch/arm/mach-msm/include/mach/entry-macro.S
>  delete mode 100644 arch/arm/mach-msm/include/mach/hardware.h
>  delete mode 100644 arch/arm/mach-msm/include/mach/irqs.h
>  delete mode 100644 arch/arm/mach-msm/include/mach/sirc.h
>  delete mode 100644 arch/arm/mach-msm/io.c
>  rename arch/arm/mach-msm/{include/mach => }/irqs-7x00.h (94%)
>  rename arch/arm/mach-msm/{include/mach => }/irqs-7x30.h (98%)
>  rename arch/arm/mach-msm/{include/mach => }/irqs-8x50.h (59%)
>  rename arch/arm/mach-msm/{include/mach => }/msm_gpiomux.h (100%)
>  rename arch/arm/mach-msm/{include/mach => }/msm_iomap-7x00.h (95%)
>  rename arch/arm/mach-msm/{include/mach => }/msm_iomap-7x30.h (97%)
>  rename arch/arm/mach-msm/{include/mach => }/msm_iomap-8x50.h (93%)
>  rename arch/arm/mach-msm/{include/mach => }/msm_iomap.h (74%)
>  create mode 100644 arch/arm/mach-msm/sirc.h
>  rename arch/arm/mach-msm/{include/mach => }/vreg.h (100%)
>  delete mode 100644 drivers/tty/serial/msm_serial_hs.c
>  rename {arch/arm/mach-msm/include/mach => include/linux}/msm_smd.h (100%)
>  delete mode 100644 include/linux/platform_data/msm_serial_hs.h
>
> --
> 2.1.0.rc2
>



More information about the linux-arm-kernel mailing list