[GIT PULL 5/7] ARM: SoC driver updates for v4.8

From: Olof Johansson
Date: Mon Aug 01 2016 - 17:43:17 EST


Driver updates for ARM SoCs.

A slew of changes this release cycle. The reset driver tree, that we merge
through arm-soc for historical reasons, is also sizable this time around.

Among the changes:

- clps711x: Treewide changes to compatible strings, merged here for simplicity.
- Qualcomm: SCM firmware driver cleanups, move to platform driver
- ux500: Major cleanups, removal of old mach-specific infrastructure.
- Atmel external bus memory driver
- Move of brcmstb platform to the rest of bcm
- PMC driver updates for tegra, various fixes and improvements
- Samsung platform driver updates to support 64-bit Exynos platforms
- Reset controller cleanups moving to devm_reset_controller_register() APIs
- Reset controller driver for Amlogic Meson
- Reset controller driver for Hisilicon hi6220
- ARM SCPI power domain support



Conflicts:

arch/arm/mach-exynos/Kconfig:
Add/add. Keep both sides. Feel free to fix sorting.

drivers/soc/samsung/pm_domains.c:
Conflict between *_relaxed() changes and
INT_LOCAL_PWR_EN->pd->local_pwr_cfg changes. Keep the *relaxed version
but replace INT_LOCAL_PWR_EN with the variable.

----------------------------------------------------------------

The following changes since commit fa8fc918c695d84b6f14a940ac7b7eac779bcef5:

Merge branch 'next/defconfig' into HEAD

are available in the git repository at:

git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc.git tags/armsoc-drivers

for you to fetch changes up to f8c6d88b2c874295f49b9ad1ca0826b9a8ef3180:

Merge tag 'samsung-drivers-4.8-3' of git://git.kernel.org/pub/scm/linux/kernel/git/krzk/linux into next/drivers

----------------------------------------------------------------

Alexander Shiyan (7):
clk: clps711x: Changing the compatibility string to match with the smallest supported chip
clocksource: clps711x: Changing the compatibility string to match with the smallest supported chip
irqchip: clps711x: Changing the compatibility string to match with the smallest supported chip
serial: clps711x: Changing the compatibility string to match with the smallest supported chip
pwm: clps711x: Changing the compatibility string to match with the smallest supported chip
input: clps711x-keypad: Changing the compatibility string to match with the smallest supported chip
video: clps711x-fb: Changing the compatibility string to match with the smallest supported chip

Amitoj Kaur Chawla (2):
memory: tegra: tegra124-emc: Add missing of_node_put()
memory: tegra: mc: Add missing of_node_put()

Andrew F. Davis (2):
Documentation: dt: reset: Add TI syscon reset binding
reset: add TI SYSCON based reset driver

Andy Gross (7):
firmware: qcom: scm: Convert SCM to platform driver
firmware: qcom: scm: Use atomic SCM for cold boot
firmware: qcom: scm: Generalize shared error map
firmware: qcom: scm: Convert to streaming DMA APIS
Merge tag 'qcom-drivers-for-4.8' into HEAD
firmware: qcom_scm: Add missing is_available API
firmware: qcom: scm: Change initcall to subsys

Arnd Bergmann (19):
Merge tag 'reset-for-4.8-3' of git://git.pengutronix.de/git/pza/linux into next/drivers
Merge tag 'omap-for-v4.8/ir-rx51-signed' of git://git.kernel.org/.../tmlind/linux-omap into next/drivers
firmware: scpi: add CONFIG_OF dependency
soc: raspberrypi-power: add CONFIG_OF dependency
Merge tag 'arm-soc/for-4.8/maintainers-part2' of http://github.com/Broadcom/stblinux into next/drivers
ARM: ux500: remove unused regulator data
ARM: ux500: move ab8500_regulator_plat_data into driver
ASoC: ab8500-codec: remove platform data based probe
mfd: db8500 stop passing around platform data
ARM: ux500: move l2x0 init to .init_irq
ARM: ux500: use CLK_OF_DECLARE()
ARM: ux500: remove cpu_is_u* helpers
ARM: ux500: consolidate soc_device code in id.c
ARM: ux500: call ux500_setup_id later
ARM: ux500: move soc_id driver to drivers/soc
ARM: ux500: consolidate base platform files
Merge tag 'qcom-drivers-for-4.8-2' of git://git.kernel.org/.../agross/linux into next/drivers
Merge tag 'ux500-cleanup-bundle' of git://git.kernel.org/.../linusw/linux-stericsson into next/drivers
Merge tag 'samsung-drivers-4.8-3' of git://git.kernel.org/.../krzk/linux into next/drivers

Ben Dooks (3):
soc: brcmstb: fix warning from missing include
memory: samsung: endian fixes for IO
cpufreq: s5pv210: use relaxed IO accesors

Bjorn Andersson (6):
soc: qcom: wcnss_ctrl: Make wcnss_ctrl parent the other components
soc: qcom: smp2p: Correct addressing of outgoing value
soc: qcom: smp2p: Drop io-accessors
soc: qcom: Update properties for smem state referencing
firmware: qcom: scm: Peripheral Authentication Service
firmware: qcom: scm: Expose PAS command 10 as reset-controller

Boris Brezillon (2):
memory: add Atmel EBI (External Bus Interface) driver
memory: atmel-ebi: add DT bindings documentation

Chen Feng (1):
reset: hisilicon: Change to syscon register access

Chris Brand (1):
power: Introduce Broadcom kona reset driver

Florian Fainelli (1):
soc: Move brcmstb to bcm/brcmstb

Geert Uytterhoeven (1):
MAINTAINERS: Add file patterns for qcom device tree bindings

Ivaylo Dimitrov (5):
ir-rx51: Fix build after multiarch changes broke it
pwm: omap-dmtimer: Allow for setting dmtimer clock source
ir-rx51: use PWM framework instead of OMAP dmtimer
ir-rx51: add DT support to driver
ir-rx51: use hrtimer instead of dmtimer

John Youn (1):
reset: Return -ENOTSUPP when not configured

Jon Hunter (12):
soc/tegra: pmc: Initialise resets associated with a power partition
soc/tegra: pmc: Ensure powergate is available when powering on
soc/tegra: pmc: Fix early initialisation of PMC
soc/tegra: pmc: Don't populate SoC data until register space is mapped
soc/tegra: pmc: Ensure mutex is always initialised
soc/tegra: pmc: Add missing of_node_put()
soc/tegra: pmc: Don't probe PMC if early initialisation fails
soc/tegra: pmc: Add specific error messages
soc/tegra: pmc: Initialise power partitions early
soc/tegra: pmc: Enable XUSB partitions on boot
dt-bindings: bus: Add documentation for Tegra210 ACONNECT
bus: Add support for Tegra ACONNECT

Julia Lawall (1):
memory: tegra: Delete unneeded of_node_put()

Krzysztof Kozlowski (5):
ARM: EXYNOS: Move pm_domains driver to drivers/soc/samsung
soc: samsung: pm_domains: Prepare for supporting ARMv8 Exynos
soc: samsung: pm_domains: Enable COMPILE_TEST for build coverage
Merge branch 'for-v4.8/media/exynos-mfc' of git://linuxtv.org/snawrocki/samsung into for-v4.8/exynos-mfc
soc: samsung: pmu: Constify arrays with PMU data

Kumar Gala (1):
firmware: qcom: scm: Add support for ARM64 SoCs

Marek Szyprowski (3):
ARM: EXYNOS: Remove code for MFC custom reserved memory handling
ARM: dts: exynos: Convert MFC device to generic reserved memory bindings
ARM: dts: exynos: Enable MFC device on Exynos4412 Odroid boards

Masahiro Yamada (7):
reset: add devm_reset_controller_register API
reset: ath79: use devm_reset_controller_register()
reset: pistachio: use devm_reset_controller_register()
reset: sunxi: use devm_reset_controller_register()
reset: socfpga: use devm_reset_controller_register()
reset: zynq: use devm_reset_controller_register()
reset: fix Kconfig menu to include reset drivers in sub-menu

Neil Armstrong (3):
reset: oxnas: Use devm register API and get rid of platform remove
reset: Add support for the Amlogic Meson SoC Reset Controller
dt-bindings: reset: Add bindings for the Meson SoC Reset Controller

Olof Johansson (16):
Merge tag 'reset-for-4.8' of git://git.pengutronix.de/git/pza/linux into next/drivers
Merge tag 'samsung-drivers-4.8' of git://git.kernel.org/.../krzk/linux into next/drivers
Merge tag 'renesas-rcar-sysc-for-v4.8' of git://git.kernel.org/.../horms/renesas into next/drivers
Merge tag 'at91-ab-4.8-drivers' of git://git.kernel.org/.../abelloni/linux into next/drivers
Merge tag 'reset-for-4.8-2' of git://git.pengutronix.de/git/pza/linux into next/drivers
Merge tag 'samsung-drivers-exynos-mfc-4.8' of git://git.kernel.org/.../krzk/linux into next/drivers
Merge tag 'arm-soc/for-4.8/drivers' of http://github.com/Broadcom/stblinux into next/drivers
Merge tag 'at91-ab-4.8-drivers2' of git://git.kernel.org/.../abelloni/linux into next/drivers
Merge tag 'scpi-updates-4.8' of git://git.kernel.org/.../sudeep.holla/linux into next/drivers
Merge tag 'gpmc-omap-for-v4.8' of https://github.com/rogerq/linux into next/drivers
Merge tag 'qcom-drivers-for-4.8' of git://git.kernel.org/.../agross/linux into next/drivers
Merge tag 'samsung-drivers-4.8-2' of git://git.kernel.org/.../krzk/linux into next/drivers
Merge tag 'renesas-rcar-sysc2-for-v4.8' of git://git.kernel.org/.../horms/renesas into next/drivers
Merge tag 'tegra-for-4.8-bus' of git://git.kernel.org/.../tegra/linux into next/drivers
Merge tag 'tegra-for-4.8-memory' of git://git.kernel.org/.../tegra/linux into next/drivers
Merge tag 'tegra-for-4.8-soc' of git://git.kernel.org/.../tegra/linux into next/drivers

Paul Gortmaker (4):
memory: omap-gpmc: make it explicitly non-modular
memory: samsung: exynos-srom: make it explicitly non-modular
memory: atmel-sdramc: make it explicitly non-modular
memory: atmel-ebi: make it explicitly non-modular

Philipp Zabel (1):
Merge branch 'reset/explicit-api' into reset/next

Roger Quadros (1):
memory: omap-gpmc: Move gpio functions out of #ifdef CONFIG_OF

Seung-Woo Kim (1):
memory: samsung: exynos-srom: Fix wrong count of registers

Sudeep Holla (6):
firmware: arm_scpi: remove dvfs_get packed structure
firmware: arm_scpi: mark scpi_get_sensor_value as static
firmware: arm_scpi: make it depend on MAILBOX instead of ARM_MHU
firmware: arm_scpi: add support for device power state management
Documentation: add DT bindings for ARM SCPI power domains
firmware: scpi: add device power domain support using genpd

Thierry Reding (3):
soc/tegra: pmc: Use register definitions instead of magic values
soc/tegra: pmc: Use whitespace more consistently
soc/tegra: Stub out PCIe IRQ workaround on 64-bit ARM

Xinliang Liu (3):
reset: hisilicon: Add media reset controller binding
arm64: dts: hi6220: Add media subsystem reset dts
reset: hisilicon: Add hi6220 media subsystem reset support


.../devicetree/bindings/arm/arm,scpi.txt | 34 +
.../bindings/bus/nvidia,tegra210-aconnect.txt | 45 +
.../bindings/clock/clps711x-clock.txt | 4 +-
.../bindings/display/cirrus,clps711x-fb.txt | 4 +-
.../bindings/input/clps711x-keypad.txt | 4 +-
.../cirrus,clps711x-intc.txt | 4 +-
.../devicetree/bindings/media/nokia,n900-ir | 20 +
.../bindings/memory-controllers/atmel,ebi.txt | 136 +++
.../bindings/pwm/cirrus,clps711x-pwm.txt | 5 +-
.../bindings/pwm/pwm-omap-dmtimer.txt | 4 +
.../bindings/reset/amlogic,meson-reset.txt | 18 +
.../bindings/reset/hisilicon,hi6220-reset.txt | 4 +-
.../bindings/reset/ti-syscon-reset.txt | 91 ++
.../bindings/serial/cirrus,clps711x-uart.txt | 4 +-
.../devicetree/bindings/soc/qcom/qcom,smp2p.txt | 4 +-
.../devicetree/bindings/soc/qcom/qcom,smsm.txt | 4 +-
.../bindings/timer/cirrus,clps711x-timer.txt | 6 +-
Documentation/driver-model/devres.txt | 4 +
MAINTAINERS | 2 +-
.../boot/dts/exynos-mfc-reserved-memory.dtsi | 29 +
arch/arm/boot/dts/exynos4210-origen.dts | 4 +-
arch/arm/boot/dts/exynos4210-smdkv310.dts | 4 +-
arch/arm/boot/dts/exynos4412-odroid-common.dtsi | 6 +
arch/arm/boot/dts/exynos4412-origen.dts | 4 +-
arch/arm/boot/dts/exynos4412-smdk4412.dts | 4 +-
arch/arm/boot/dts/exynos5250-arndale.dts | 4 +-
arch/arm/boot/dts/exynos5250-smdk5250.dts | 4 +-
arch/arm/boot/dts/exynos5250-spring.dts | 4 +-
arch/arm/boot/dts/exynos5420-arndale-octa.dts | 4 +-
arch/arm/boot/dts/exynos5420-peach-pit.dts | 4 +-
arch/arm/boot/dts/exynos5420-smdk5420.dts | 4 +-
.../boot/dts/exynos5422-odroidxu3-common.dtsi | 4 +-
arch/arm/boot/dts/exynos5800-peach-pi.dts | 4 +-
arch/arm/mach-exynos/Kconfig | 1 +
arch/arm/mach-exynos/Makefile | 3 -
arch/arm/mach-exynos/exynos.c | 19 -
arch/arm/mach-exynos/mfc.h | 16 -
arch/arm/mach-exynos/s5p-dev-mfc.c | 93 --
arch/arm/mach-omap2/board-rx51-peripherals.c | 5 -
arch/arm/mach-omap2/pdata-quirks.c | 10 +-
arch/arm/mach-ux500/Makefile | 6 +-
arch/arm/mach-ux500/board-mop500-regulators.c | 1065 ------------------
arch/arm/mach-ux500/board-mop500-regulators.h | 24 -
arch/arm/mach-ux500/cache-l2x0.c | 67 --
arch/arm/mach-ux500/cpu-db8500.c | 139 ++-
arch/arm/mach-ux500/cpu.c | 148 ---
arch/arm/mach-ux500/id.c | 116 --
arch/arm/mach-ux500/id.h | 144 ---
arch/arm/mach-ux500/platsmp.c | 1 -
arch/arm/mach-ux500/setup.h | 12 -
arch/arm64/boot/dts/hisilicon/hi6220.dtsi | 2 +
drivers/bus/Kconfig | 13 +
drivers/bus/Makefile | 1 +
drivers/bus/tegra-aconnect.c | 112 ++
drivers/clk/clk-clps711x.c | 2 +-
drivers/clk/ux500/u8500_of_clk.c | 16 +-
drivers/clk/ux500/u8540_clk.c | 16 +-
drivers/clk/ux500/u9540_clk.c | 4 +-
drivers/clocksource/clps711x-timer.c | 2 +-
drivers/cpufreq/s5pv210-cpufreq.c | 68 +-
drivers/firmware/Kconfig | 12 +-
drivers/firmware/Makefile | 1 +
drivers/firmware/arm_scpi.c | 42 +-
drivers/firmware/qcom_scm-32.c | 327 +++---
drivers/firmware/qcom_scm-64.c | 307 ++++-
drivers/firmware/qcom_scm.c | 353 +++++-
drivers/firmware/qcom_scm.h | 47 +-
drivers/firmware/scpi_pm_domain.c | 163 +++
drivers/input/keyboard/clps711x-keypad.c | 4 +-
drivers/irqchip/irq-clps711x.c | 2 +-
drivers/media/rc/Kconfig | 2 +-
drivers/media/rc/ir-rx51.c | 229 ++--
drivers/memory/Kconfig | 11 +
drivers/memory/Makefile | 1 +
drivers/memory/atmel-ebi.c | 766 +++++++++++++
drivers/memory/atmel-sdramc.c | 11 +-
drivers/memory/omap-gpmc.c | 136 ++-
drivers/memory/samsung/exynos-srom.c | 41 +-
drivers/memory/tegra/mc.c | 10 +-
drivers/memory/tegra/tegra124-emc.c | 8 +-
drivers/mfd/ab8500-core.c | 4 -
drivers/mfd/ab8500-sysctrl.c | 34 -
drivers/mfd/db8500-prcmu.c | 10 +-
drivers/power/reset/Kconfig | 10 +
drivers/power/reset/Makefile | 1 +
drivers/power/reset/brcm-kona-reset.c | 73 ++
drivers/pwm/pwm-clps711x.c | 2 +-
drivers/pwm/pwm-omap-dmtimer.c | 12 +-
drivers/regulator/ab8500-ext.c | 465 +++++++-
drivers/reset/Kconfig | 14 +
drivers/reset/Makefile | 2 +
drivers/reset/core.c | 37 +
drivers/reset/hisilicon/hi6220_reset.c | 122 +-
drivers/reset/reset-ath79.c | 3 +-
drivers/reset/reset-meson.c | 136 +++
drivers/reset/reset-oxnas.c | 12 +-
drivers/reset/reset-pistachio.c | 12 +-
drivers/reset/reset-socfpga.c | 12 +-
drivers/reset/reset-sunxi.c | 12 +-
drivers/reset/reset-ti-syscon.c | 237 ++++
drivers/reset/reset-zynq.c | 12 +-
drivers/reset/sti/Kconfig | 1 -
drivers/soc/Kconfig | 2 +-
drivers/soc/Makefile | 2 +-
drivers/soc/bcm/Kconfig | 18 +-
drivers/soc/bcm/Makefile | 1 +
drivers/soc/{ => bcm}/brcmstb/Makefile | 0
drivers/soc/{ => bcm}/brcmstb/biuctrl.c | 1 +
drivers/soc/{ => bcm}/brcmstb/common.c | 0
drivers/soc/brcmstb/Kconfig | 10 -
drivers/soc/qcom/smem_state.c | 12 +-
drivers/soc/qcom/smp2p.c | 7 +-
drivers/soc/qcom/smsm.c | 2 +-
drivers/soc/qcom/wcnss_ctrl.c | 125 +-
drivers/soc/samsung/Kconfig | 4 +
drivers/soc/samsung/Makefile | 1 +
drivers/soc/samsung/exynos3250-pmu.c | 2 +-
drivers/soc/samsung/exynos5420-pmu.c | 2 +-
.../soc/samsung}/pm_domains.c | 34 +-
drivers/soc/tegra/pmc.c | 149 ++-
drivers/soc/ux500/Kconfig | 7 +
drivers/soc/ux500/Makefile | 1 +
drivers/soc/ux500/ux500-soc-id.c | 222 ++++
drivers/tty/serial/clps711x.c | 2 +-
drivers/video/fbdev/clps711x-fb.c | 4 +-
.../reset/amlogic,meson-gxbb-reset.h | 210 ++++
.../dt-bindings/reset/amlogic,meson8b-reset.h | 175 +++
include/dt-bindings/reset/hisi,hi6220-resets.h | 8 +
include/dt-bindings/reset/ti-syscon.h | 38 +
include/linux/mfd/abx500/ab8500-sysctrl.h | 6 -
include/linux/mfd/dbx500-prcmu.h | 10 -
include/linux/platform_data/clk-ux500.h | 17 -
include/linux/platform_data/media/ir-rx51.h | 3 -
include/linux/qcom_scm.h | 8 +
include/linux/reset-controller.h | 4 +
include/linux/reset.h | 4 +-
include/linux/scpi_protocol.h | 2 +
include/linux/soc/qcom/wcnss_ctrl.h | 8 +
include/soc/tegra/cpuidle.h | 2 +-
sound/soc/codecs/ab8500-codec.c | 33 +-
140 files changed, 4776 insertions(+), 2641 deletions(-)
create mode 100644 Documentation/devicetree/bindings/bus/nvidia,tegra210-aconnect.txt
create mode 100644 Documentation/devicetree/bindings/media/nokia,n900-ir
create mode 100644 Documentation/devicetree/bindings/memory-controllers/atmel,ebi.txt
create mode 100644 Documentation/devicetree/bindings/reset/amlogic,meson-reset.txt
create mode 100644 Documentation/devicetree/bindings/reset/ti-syscon-reset.txt
create mode 100644 arch/arm/boot/dts/exynos-mfc-reserved-memory.dtsi
delete mode 100644 arch/arm/mach-exynos/mfc.h
delete mode 100644 arch/arm/mach-exynos/s5p-dev-mfc.c
delete mode 100644 arch/arm/mach-ux500/board-mop500-regulators.c
delete mode 100644 arch/arm/mach-ux500/board-mop500-regulators.h
delete mode 100644 arch/arm/mach-ux500/cache-l2x0.c
delete mode 100644 arch/arm/mach-ux500/cpu.c
delete mode 100644 arch/arm/mach-ux500/id.c
delete mode 100644 arch/arm/mach-ux500/id.h
create mode 100644 drivers/bus/tegra-aconnect.c
create mode 100644 drivers/firmware/scpi_pm_domain.c
create mode 100644 drivers/memory/atmel-ebi.c
create mode 100644 drivers/power/reset/brcm-kona-reset.c
create mode 100644 drivers/reset/reset-meson.c
create mode 100644 drivers/reset/reset-ti-syscon.c
rename drivers/soc/{ => bcm}/brcmstb/Makefile (100%)
rename drivers/soc/{ => bcm}/brcmstb/biuctrl.c (98%)
rename drivers/soc/{ => bcm}/brcmstb/common.c (100%)
delete mode 100644 drivers/soc/brcmstb/Kconfig
rename {arch/arm/mach-exynos => drivers/soc/samsung}/pm_domains.c (85%)
create mode 100644 drivers/soc/ux500/Kconfig
create mode 100644 drivers/soc/ux500/Makefile
create mode 100644 drivers/soc/ux500/ux500-soc-id.c
create mode 100644 include/dt-bindings/reset/amlogic,meson-gxbb-reset.h
create mode 100644 include/dt-bindings/reset/amlogic,meson8b-reset.h
create mode 100644 include/dt-bindings/reset/ti-syscon.h
delete mode 100644 include/linux/platform_data/clk-ux500.h
create mode 100644 include/linux/soc/qcom/wcnss_ctrl.h