Messages in this thread | | | From | Arnd Bergmann <> | Date | Wed, 6 Mar 2019 16:34:07 +0100 | Subject | [GIT PULL 3/6] ARM: SoC driver updates for 5.1 |
| |
The following changes since commit f17b5f06cb92ef2250513a1e154c47b78df07d40:
Linux 5.0-rc4 (2019-01-27 15:18:05 -0800)
are available in the Git repository at:
git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc.git tags/armsoc-drivers
for you to fetch changes up to 8ceb820b69fe6ff58234ff604146a9e88e6c1974:
Merge tag 'soc-fsl-next-v5.1-4' of git://git.kernel.org/pub/scm/linux/kernel/git/leo/linux into arm/drivers (2019-03-01 15:05:54 +0100)
---------------------------------------------------------------- ARM: SoC driver updates for 5.1
As usual, the drivers/tee and drivers/reset subsystems get merged here, with the expected set of smaller updates and some new hardware support. The tee subsystem now supports device drivers to be attached to a tee, the first example here is a random number driver with its implementation in the secure world.
Three new power domain drivers get added for specific chip families: - Broadcom BCM283x chips (used in Raspberry Pi) - Qualcomm Snapdragon phone chips - Xilinx ZynqMP FPGA SoCs
One new driver is added to talk to the BPMP firmware on NVIDIA Tegra210
Existing drivers are extended for new SoC variants from NXP, NVIDIA, Amlogic and Qualcomm.
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
---------------------------------------------------------------- Abel Vesa (1): soc: imx: Break dependency on SOC_IMX8MQ for GPCv2
Aisheng Dong (3): dt-bindings: fsl: scu: add fallback compatible string for power domain dt-bindings: fsl: scu: add imx8qm scu power domain support firmware: imx: scu-pd: add fallback compatible string support
Alexey Khoroshilov (1): soc: qcom: gsbi: Fix error handling in gsbi_probe()
Amit Kucheria (1): MAINTAINERS: update list of qcom drivers
Andrey Smirnov (3): dt-bindings: reset: imx7: Document usage on i.MX8MQ SoCs reset: imx7: Add plubming to support multiple IP variants reset: imx7: Add support for i.MX8MQ IP block variant
Andy Gross (2): Merge tag 'qcom-fixes-for-5.0-rc1' into drivers-for-5.1 soc: qcom: llcc-slice: Fix typos
Arnd Bergmann (19): Merge tag 'soc-fsl-next-v5.1-2' of git://git.kernel.org/.../leo/linux into arm/drivers Merge tag 'zynqmp-soc-for-v5.1' of https://github.com/Xilinx/linux-xlnx into arm/drivers Merge tag 'imx-drivers-5.1' of git://git.kernel.org/.../shawnguo/linux into arm/drivers Merge tag 'amlogic-drivers' of git://git.kernel.org/.../khilman/linux-amlogic into arm/drivers Merge tag 'reset-for-5.1' of git://git.pengutronix.de/git/pza/linux into arm/drivers Merge tag 'tegra-for-5.1-firmware' of git://git.kernel.org/.../tegra/linux into arm/drivers Merge tag 'tegra-for-5.1-soc' of git://git.kernel.org/.../tegra/linux into arm/drivers Merge tag 'tegra-for-5.1-cpufreq' of git://git.kernel.org/.../tegra/linux into arm/drivers Merge tag 'tegra-for-5.1-clk' of git://git.kernel.org/.../tegra/linux into arm/drivers Merge tag 'hisi-drivers-for-5.1' of git://github.com/hisilicon/linux-hisi into arm/drivers Merge tag 'tee-bus-for-5.1' of https://git.linaro.org/people/jens.wiklander/linux-tee into arm/drivers Merge tag 'qcom-drivers-for-5.1' of git://git.kernel.org/.../agross/linux into arm/drivers Merge tag 'arm-soc/for-5.1/drivers' of https://github.com/Broadcom/stblinux into arm/drivers Merge tag 'drivers_soc_for_5.1' of git://git.kernel.org/.../ssantosh/linux-keystone into arm/drivers Merge tag 'qcom-drivers-for-5.1-2' of git://git.kernel.org/.../agross/linux into arm/drivers Merge tag 'qcom-drivers-for-5.1-3' of git://git.kernel.org/.../agross/linux into arm/drivers Merge tag 'soc-fsl-next-v5.1-3' of git://git.kernel.org/.../leo/linux into arm/drivers Merge tag 'tee-misc-for-v5.1' of https://git.linaro.org/people/jens.wiklander/linux-tee into arm/drivers Merge tag 'soc-fsl-next-v5.1-4' of git://git.kernel.org/.../leo/linux into arm/drivers
Bjorn Andersson (1): soc: qcom: rpmpd: Drop family A RPM dependency
Colin Ian King (1): soc: fsl: dpio: fix memory leak of a struct qbman on error exit path
Craig Tatlor (1): soc: qcom: smd-rpm: Add sdm660 compatible
Dan Carpenter (1): soc: fsl: dpio: Use after free in dpaa2_dpio_remove()
Daniel Baluta (1): firmware: imx: Add support to start/stop a CPU
Eric Anholt (5): dt-bindings: soc: Add a new binding for the BCM2835 PM node. (v4) bcm2835-pm: Move bcm2835-watchdog's DT probe to an MFD. soc: bcm: bcm2835-pm: Add support for power domains under a new binding. ARM: bcm283x: Extend the WDT DT node out to cover the whole PM block. (v4) ARM: bcm283x: Switch V3D over to using the PM driver instead of firmware.
Evan Green (2): soc: qcom: rmtfs-mem: Add class to enable uevents soc: qcom: rmtfs-mem: Make sysfs attributes world-readable
Florian Fainelli (3): dt-bindings: reset: Add document for Broadcom STB reset controller reset: Add Broadcom STB SW_INIT reset controller driver Merge tag 'tags/bcm2835-drivers-next-2019-02-01' into drivers/next
Horia Geantă (1): soc: fsl: guts: make fsl_guts_get_svr() static
Igor Opaniuk (1): tee: add cancellation support to client interface
Ioana Ciocoi Radulescu (2): soc: fsl: dpio: Add prefetch instruction soc: fsl: dpio: Change bpid type to u16
Ioana Ciornei (3): soc: fsl: dpio: enable frame data cache stashing per software portal soc: fsl: dpio: configure cache stashing destination dpaa2-eth: configure the cache stashing amount on a queue
Jerome Brunet (3): dt-bindings: amlogic: add new compatible devices to clk_measure soc: amlogic: clk-measure: add axg and g12a support dt-bindings: reset: meson: add g12a bindings
Jerome Forissier (1): tee: optee: update optee_msg.h and optee_smc.h to dual license
John Garry (1): bus: hisi_lpc: Don't fail probe for unrecognised child devices
Jolly Shah (2): firmware: xilinx: Implement ZynqMP power management APIs drivers: soc: xilinx: Add ZynqMP power domain driver
Jon Hunter (1): soc/tegra: pmc: Make tegra_powergate_is_powered() a local function
Jordan Crouse (2): qcom: soc: llcc-slice: Clear the global drv_data pointer on error qcom: soc: llcc-slice: Consolidate some code
Joseph Lo (8): soc/tegra: fuse: Fix typo in tegra210_init_speedo_data clk: tegra: dfll: CVB calculation alignment with the regulator clk: tegra: dfll: support PWM regulator control clk: tegra: dfll: round down voltages based on alignment clk: tegra: dfll: add CVB tables for Tegra210 cpufreq: tegra124: do not handle the CPU rail cpufreq: tegra124: extend to support Tegra210 cpufreq: dt-platdev: add Tegra210 to blacklist
Li Yang (1): soc: fsl: guts: reuse machine name from device tree
Lucas Stach (2): soc: imx: gpcv2: handle additional power-down bits in handshake register soc: imx: gpcv2: handle reset clocks
Mikko Perttunen (1): soc/tegra: pmc: Support systems where PMC is marked secure
Nathan Chancellor (3): soc: ti: knav_dma: Use proper enum in pktdma_init_chan tee: optee: Initialize some structs using memset instead of braces hwrng: optee: Initialize some structs using memset instead of braces
Nava kishore Manne (6): firmware: xilinx: Add reset API's dt-bindings: reset: Add bindings for ZynqMP reset driver reset: reset-zynqmp: Adding support for Xilinx zynqmp reset controller. firmware: xilinx: Add zynqmp_pm_get_chipid() API dt-bindings: nvmem: Add bindings for ZynqMP nvmem driver nvmem: zynqmp: Added zynqmp nvmem firmware driver
Neil Armstrong (1): soc: amlogic: canvas: Fix meson_canvas_get when probe failed
Peter De Schrijver (2): clk: tegra: dfll: registration for multiple SoCs clk: tegra: dfll: build clk-dfll.c for Tegra124 and Tegra210
Philipp Zabel (3): MAINTAINERS: use include/linux/reset for reset controller related headers reset: sunxi: declare sun6i_reset_init in a header file reset: socfpga: declare socfpga_reset_init in a header file
Rajan Vaja (4): dt-bindings: soc: Add ZynqMP PM bindings drivers: soc: xilinx: Add ZynqMP PM driver dt-bindings: power: Add ZynqMP power domain bindings firmware: xilinx: Add APIs to control node status/power
Rajendra Nayak (8): dt-bindings: opp: Introduce opp-level bindings OPP: Add support for parsing the 'opp-level' property dt-bindings: power: Add qcom rpm power domain driver bindings soc: qcom: rpmpd: Add a Power domain driver to model corners soc: qcom: rpmpd: Add support for get/set performance state soc: qcom: rpmhpd: Add RPMh power domain driver soc: qcom: rpmhpd: Mark mx as a parent for cx soc: qcom: update config dependencies for QCOM_RPMPD
Raju P.L.S.S.S.N (1): drivers: qcom: rpmh: avoid sending sleep/wake sets immediately
Stefan Wahren (3): soc: bcm2835: sync firmware properties with downstream firmware: raspberrypi: notify VC4 firmware of a reboot soc: bcm: Make PM driver default for BCM2835
Stephen Boyd (1): soc: qcom: rpmh: Avoid accessing freed memory from batch API
Sumit Garg (5): tee: add supp_nowait flag in tee_context struct tee: add bus driver framework for TEE based devices tee: optee: add TEE bus device enumeration support hwrng: add OP-TEE based rng driver tee: fix possible error pointer ctx dereferencing
Sven Van Asbroeck (3): dt-bindings: bus: imx-weim: document multiple address ranges per child node bus: imx-weim: support multiple address ranges per child node bus: imx-weim: guard against timing configuration conflicts
Thierry Reding (9): soc/tegra: pmc: Use TEGRA186_ prefix for GPIO names soc/tegra: pmc: Sort includes alphabetically soc/tegra: pmc: Add missing kerneldoc firmware: tegra: bpmp-tegra186: Remove unused includes soc/tegra: pmc: Pass struct tegra_pmc * where possible soc/tegra: pmc: Make alignment consistent soc/tegra: pmc: Explicitly initialize all fields firmware: tegra: Conditionally support SoC generations firmware/tegra: Enable Tegra186 BPMP support on Tegra194
Timo Alho (4): soc/tegra: fuse: Fix illegal free of IO base address firmware: tegra: Reword messaging terminology firmware: tegra: Refactor BPMP driver firmware: tegra: add bpmp driver for Tegra210
Wei Yongjun (3): soc: bcm: bcm2835-pm: Make local symbol static clk: tegra: dfll: Make symbol 'tegra210_cpu_cvb_tables' static hwrng: make symbol 'optee_rng_id_table' static
Yangtao Li (1): firmware: ti_sci: Change to use DEFINE_SHOW_ATTRIBUTE macro
YueHaibing (2): hwrng: Fix unsigned comparison with less than zero tee: optee: Fix unsigned comparison with less than zero
wen yang (1): soc: amlogic: add missing of_node_put()
Documentation/devicetree/bindings/arm/freescale/fsl,scu.txt | 8 +- Documentation/devicetree/bindings/bus/imx-weim.txt | 32 ++- Documentation/devicetree/bindings/nvmem/xlnx,zynqmp-nvmem.txt | 46 ++++ Documentation/devicetree/bindings/opp/opp.txt | 3 + Documentation/devicetree/bindings/power/fsl,imx-gpcv2.txt | 3 + Documentation/devicetree/bindings/power/qcom,rpmpd.txt | 145 +++++++++++++ Documentation/devicetree/bindings/power/reset/xlnx,zynqmp-power.txt | 25 +++ Documentation/devicetree/bindings/power/xlnx,zynqmp-genpd.txt | 34 +++ Documentation/devicetree/bindings/reset/brcm,brcmstb-reset.txt | 27 +++ Documentation/devicetree/bindings/reset/fsl,imx7-src.txt | 7 +- Documentation/devicetree/bindings/reset/xlnx,zynqmp-reset.txt | 52 +++++ Documentation/devicetree/bindings/soc/amlogic/clk-measure.txt | 2 + Documentation/devicetree/bindings/soc/bcm/brcm,bcm2835-pm.txt | 46 ++++ Documentation/devicetree/bindings/soc/qcom/qcom,smd-rpm.txt | 1 + MAINTAINERS | 38 +++- arch/arm/boot/dts/bcm2835-rpi.dtsi | 4 - arch/arm/boot/dts/bcm283x.dtsi | 17 +- arch/arm/mach-bcm/Kconfig | 1 + arch/arm/mach-socfpga/socfpga.c | 3 +- arch/arm/mach-sunxi/sunxi.c | 2 +- drivers/bus/fsl-mc/fsl-mc-allocator.c | 11 + drivers/bus/fsl-mc/mc-io.c | 13 ++ drivers/bus/hisi_lpc.c | 5 +- drivers/bus/imx-weim.c | 70 ++++-- drivers/char/hw_random/Kconfig | 15 ++ drivers/char/hw_random/Makefile | 1 + drivers/char/hw_random/optee-rng.c | 306 ++++++++++++++++++++++++++ drivers/clk/tegra/Kconfig | 5 + drivers/clk/tegra/Makefile | 2 +- drivers/clk/tegra/clk-dfll.c | 459 +++++++++++++++++++++++++++++++++------ drivers/clk/tegra/clk-dfll.h | 6 +- drivers/clk/tegra/clk-tegra124-dfll-fcpu.c | 520 ++++++++++++++++++++++++++++++++++++++++++-- drivers/clk/tegra/cvb.c | 12 +- drivers/clk/tegra/cvb.h | 7 +- drivers/cpufreq/Kconfig.arm | 4 +- drivers/cpufreq/cpufreq-dt-platdev.c | 1 + drivers/cpufreq/tegra124-cpufreq.c | 44 +--- drivers/crypto/caam/caamalg_qi2.c | 6 +- drivers/firmware/imx/misc.c | 38 ++++ drivers/firmware/imx/scu-pd.c | 1 + drivers/firmware/raspberrypi.c | 11 + drivers/firmware/tegra/Makefile | 3 + drivers/firmware/tegra/bpmp-private.h | 34 +++ drivers/firmware/tegra/bpmp-tegra186.c | 305 ++++++++++++++++++++++++++ drivers/firmware/tegra/bpmp-tegra210.c | 243 +++++++++++++++++++++ drivers/firmware/tegra/bpmp.c | 376 +++++++++++++------------------- drivers/firmware/ti_sci.c | 21 +- drivers/firmware/xilinx/Kconfig | 1 + drivers/firmware/xilinx/zynqmp.c | 166 ++++++++++++++ drivers/mfd/Makefile | 1 + drivers/mfd/bcm2835-pm.c | 92 ++++++++ drivers/net/ethernet/freescale/dpaa2/dpaa2-eth.c | 16 +- drivers/nvmem/Kconfig | 10 + drivers/nvmem/Makefile | 2 + drivers/nvmem/zynqmp_nvmem.c | 86 ++++++++ drivers/opp/core.c | 18 ++ drivers/opp/of.c | 2 + drivers/opp/opp.h | 2 + drivers/reset/Kconfig | 12 +- drivers/reset/Makefile | 2 + drivers/reset/reset-brcmstb.c | 132 +++++++++++ drivers/reset/reset-imx7.c | 172 +++++++++++++-- drivers/reset/reset-socfpga.c | 2 +- drivers/reset/reset-sunxi.c | 1 + drivers/reset/reset-zynqmp.c | 114 ++++++++++ drivers/soc/amlogic/meson-canvas.c | 18 +- drivers/soc/amlogic/meson-clk-measure.c | 196 +++++++++++++++++ drivers/soc/bcm/Kconfig | 12 + drivers/soc/bcm/Makefile | 1 + drivers/soc/bcm/bcm2835-power.c | 661 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++ drivers/soc/fsl/Kconfig | 1 + drivers/soc/fsl/dpio/dpio-cmd.h | 6 + drivers/soc/fsl/dpio/dpio-driver.c | 93 ++++++-- drivers/soc/fsl/dpio/dpio-service.c | 46 +++- drivers/soc/fsl/dpio/dpio.c | 39 ++++ drivers/soc/fsl/dpio/dpio.h | 9 + drivers/soc/fsl/dpio/qbman-portal.c | 5 +- drivers/soc/fsl/guts.c | 10 +- drivers/soc/imx/Kconfig | 2 +- drivers/soc/imx/gpcv2.c | 76 ++++++- drivers/soc/qcom/Kconfig | 18 ++ drivers/soc/qcom/Makefile | 2 + drivers/soc/qcom/llcc-sdm845.c | 6 + drivers/soc/qcom/llcc-slice.c | 101 ++++++--- drivers/soc/qcom/qcom_gsbi.c | 7 +- drivers/soc/qcom/rmtfs_mem.c | 32 ++- drivers/soc/qcom/rpmh.c | 37 ++-- drivers/soc/qcom/rpmhpd.c | 406 ++++++++++++++++++++++++++++++++++ drivers/soc/qcom/rpmpd.c | 315 +++++++++++++++++++++++++++ drivers/soc/qcom/smd-rpm.c | 1 + drivers/soc/tegra/fuse/fuse-tegra.c | 12 +- drivers/soc/tegra/fuse/speedo-tegra210.c | 2 +- drivers/soc/tegra/pmc.c | 424 ++++++++++++++++++++++++------------ drivers/soc/ti/knav_dma.c | 2 +- drivers/soc/xilinx/Kconfig | 20 ++ drivers/soc/xilinx/Makefile | 2 + drivers/soc/xilinx/zynqmp_pm_domains.c | 321 +++++++++++++++++++++++++++ drivers/soc/xilinx/zynqmp_power.c | 178 +++++++++++++++ drivers/tee/optee/Makefile | 1 + drivers/tee/optee/core.c | 4 + drivers/tee/optee/device.c | 160 ++++++++++++++ drivers/tee/optee/optee_msg.h | 26 +-- drivers/tee/optee/optee_private.h | 3 + drivers/tee/optee/optee_smc.h | 26 +-- drivers/tee/optee/supp.c | 10 +- drivers/tee/tee_core.c | 78 ++++++- drivers/watchdog/bcm2835_wdt.c | 26 +-- include/dt-bindings/power/qcom-rpmpd.h | 39 ++++ include/dt-bindings/power/xlnx-zynqmp-power.h | 39 ++++ include/dt-bindings/reset/amlogic,meson-g12a-reset.h | 134 ++++++++++++ include/dt-bindings/reset/imx8mq-reset.h | 64 ++++++ include/dt-bindings/reset/xlnx-zynqmp-resets.h | 130 +++++++++++ include/dt-bindings/soc/bcm2835-pm.h | 28 +++ include/linux/firmware/imx/svc/misc.h | 3 + include/linux/firmware/xlnx-zynqmp.h | 184 ++++++++++++++++ include/linux/fsl/guts.h | 2 - include/linux/fsl/mc.h | 1 + include/linux/mfd/bcm2835-pm.h | 14 ++ include/linux/mod_devicetable.h | 9 + include/linux/pm_opp.h | 7 + include/linux/reset/socfpga.h | 7 + include/linux/reset/sunxi.h | 7 + include/linux/soc/qcom/llcc-qcom.h | 6 + include/linux/tee_drv.h | 50 ++++- include/soc/bcm2835/raspberrypi-firmware.h | 4 + include/soc/fsl/dpaa2-io.h | 15 +- include/soc/tegra/bpmp.h | 13 +- include/soc/tegra/pmc.h | 6 - scripts/mod/devicetable-offsets.c | 3 + scripts/mod/file2alias.c | 19 ++ 130 files changed, 7252 insertions(+), 773 deletions(-) create mode 100644 Documentation/devicetree/bindings/nvmem/xlnx,zynqmp-nvmem.txt create mode 100644 Documentation/devicetree/bindings/power/qcom,rpmpd.txt create mode 100644 Documentation/devicetree/bindings/power/reset/xlnx,zynqmp-power.txt create mode 100644 Documentation/devicetree/bindings/power/xlnx,zynqmp-genpd.txt create mode 100644 Documentation/devicetree/bindings/reset/brcm,brcmstb-reset.txt create mode 100644 Documentation/devicetree/bindings/reset/xlnx,zynqmp-reset.txt create mode 100644 Documentation/devicetree/bindings/soc/bcm/brcm,bcm2835-pm.txt create mode 100644 drivers/char/hw_random/optee-rng.c create mode 100644 drivers/firmware/tegra/bpmp-private.h create mode 100644 drivers/firmware/tegra/bpmp-tegra186.c create mode 100644 drivers/firmware/tegra/bpmp-tegra210.c create mode 100644 drivers/mfd/bcm2835-pm.c create mode 100644 drivers/nvmem/zynqmp_nvmem.c create mode 100644 drivers/reset/reset-brcmstb.c create mode 100644 drivers/reset/reset-zynqmp.c create mode 100644 drivers/soc/bcm/bcm2835-power.c create mode 100644 drivers/soc/qcom/rpmhpd.c create mode 100644 drivers/soc/qcom/rpmpd.c create mode 100644 drivers/soc/xilinx/zynqmp_pm_domains.c create mode 100644 drivers/soc/xilinx/zynqmp_power.c create mode 100644 drivers/tee/optee/device.c create mode 100644 include/dt-bindings/power/qcom-rpmpd.h create mode 100644 include/dt-bindings/power/xlnx-zynqmp-power.h create mode 100644 include/dt-bindings/reset/amlogic,meson-g12a-reset.h create mode 100644 include/dt-bindings/reset/imx8mq-reset.h create mode 100644 include/dt-bindings/reset/xlnx-zynqmp-resets.h create mode 100644 include/dt-bindings/soc/bcm2835-pm.h create mode 100644 include/linux/mfd/bcm2835-pm.h create mode 100644 include/linux/reset/socfpga.h create mode 100644 include/linux/reset/sunxi.h
| |