Commit ff6862c2 authored by Linus Torvalds's avatar Linus Torvalds
Browse files
Pull ARM driver updates from Arnd Bergmann:
 "The drivers branch for 6.1 is a bit larger than for most releases.

  Most of the changes come from SoC maintainers for the drivers/soc
  subsystem:

   - A new driver for error handling on the NVIDIA Tegra 'control
     backbone' bus.

   - A new driver for Qualcomm LLCC/DDR bandwidth measurement

   - New Rockchip rv1126 and rk3588 power domain drivers

   - DT binding updates for memory controllers, older Rockchip SoCs,
     various Mediatek devices, Qualcomm SCM firmware

   - Minor updates to Hisilicon LPC bus, the Allwinner SRAM driver, the
     Apple rtkit firmware driver, Tegra firmware

   - Minor updates for SoC drivers (Samsung, Mediatek, Renesas, Tegra,
     Qualcomm, Broadcom, NXP, ...)

  There are also some separate subsystem with downstream maintainers
  that merge updates this way:

   - Various updates and new drivers in the memory controller subsystem
     for Mediatek and Broadcom SoCs

   - Small set of changes in preparation to add support for FF-A v1.1
     specification later, in the Arm FF-A firmware subsystem

   - debugfs support in the PSCI firmware subsystem"

* tag 'arm-drivers-6.1' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc: (149 commits)
  ARM: remove check for CONFIG_DEBUG_LL_SER3
  firmware/psci: Add debugfs support to ease debugging
  firmware/psci: Print a warning if PSCI doesn't accept PC mode
  dt-bindings: memory: snps,dw-umctl2-ddrc: Extend schema with IRQs/resets/clocks props
  dt-bindings: memory: snps,dw-umctl2-ddrc: Replace opencoded numbers with macros
  dt-bindings: memory: snps,dw-umctl2-ddrc: Use more descriptive device name
  dt-bindings: memory: synopsys,ddrc-ecc: Detach Zynq DDRC controller support
  soc: sunxi: sram: Add support for the D1 system control
  soc: sunxi: sram: Export the LDO control register
  soc: sunxi: sram: Save a pointer to the OF match data
  soc: sunxi: sram: Return void from the release function
  soc: apple: rtkit: Add apple_rtkit_poll
  soc: imx: add i.MX93 media blk ctrl driver
  soc: imx: add i.MX93 SRC power domain driver
  soc: imx: imx8m-blk-ctrl: Use genpd_xlate_onecell
  soc: imx: imx8mp-blk-ctrl: handle PCIe PHY resets
  soc: imx: imx8m-blk-ctrl: add i.MX8MP VPU blk ctrl
  soc: imx: add i.MX8MP HDMI blk ctrl HDCP/HRV_MWR
  soc: imx: add icc paths for i.MX8MP hsio/hdmi blk ctrl
  soc: imx: add icc paths for i.MX8MP media blk ctrl
  ...
parents 40285e64 44137949
Loading
Loading
Loading
Loading
+15 −0
Original line number Diff line number Diff line
What:		/sys/bus/platform/devices/*/srpd
Date:		July 2022
KernelVersion:	5.21
Contact:	Florian Fainelli <f.fainelli@gmail.com>
Description:
		Self Refresh Power Down (SRPD) inactivity timeout counted in
		internal DDR controller clock cycles. Possible values range
		from 0 (disable inactivity timeout) to 65535 (0xffff).

What:		/sys/bus/platform/devices/*/frequency
Date:		July 2022
KernelVersion:	5.21
Contact:	Florian Fainelli <f.fainelli@gmail.com>
Description:
		DDR PHY frequency in Hz.
+2 −9
Original line number Diff line number Diff line
@@ -187,15 +187,8 @@ Required properties:
Sequencer DRAM parameters and control registers. Used for Self-Refresh
Power-Down (SRPD), among other things.

Required properties:
- compatible     : should contain one of these
	"brcm,brcmstb-memc-ddr-rev-b.2.1"
	"brcm,brcmstb-memc-ddr-rev-b.2.2"
	"brcm,brcmstb-memc-ddr-rev-b.2.3"
	"brcm,brcmstb-memc-ddr-rev-b.3.0"
	"brcm,brcmstb-memc-ddr-rev-b.3.1"
	"brcm,brcmstb-memc-ddr"
- reg            : the MEMC DDR register range
See Documentation/devicetree/bindings/memory-controllers/brcm,brcmstb-memc-ddr.yaml for a
full list of supported compatible strings and properties.

Example:

+36 −22
Original line number Diff line number Diff line
@@ -554,8 +554,7 @@ properties:
              - engicam,imx6ul-isiot      # Engicam Is.IoT MX6UL eMMC/NAND Starter kit
              - fsl,imx6ul-14x14-evk      # i.MX6 UltraLite 14x14 EVK Board
              - karo,imx6ul-tx6ul         # Ka-Ro electronics TXUL-0010 Module
              - kontron,imx6ul-n6310-som  # Kontron N6310 SOM
              - kontron,imx6ul-n6311-som  # Kontron N6311 SOM
              - kontron,sl-imx6ul         # Kontron SL i.MX6UL SoM
              - prt,prti6g                # Protonic PRTI6G Board
              - technexion,imx6ul-pico-dwarf   # TechNexion i.MX6UL Pico-Dwarf
              - technexion,imx6ul-pico-hobbit  # TechNexion i.MX6UL Pico-Hobbit
@@ -591,23 +590,17 @@ properties:
          - const: phytec,imx6ul-pcl063   # PHYTEC phyCORE-i.MX 6UL
          - const: fsl,imx6ul

      - description: Kontron N6310 S Board
      - description: Kontron BL i.MX6UL (N631X S) Board
        items:
          - const: kontron,imx6ul-n6310-s
          - const: kontron,imx6ul-n6310-som
          - const: kontron,bl-imx6ul       # Kontron BL i.MX6UL Carrier Board
          - const: kontron,sl-imx6ul       # Kontron SL i.MX6UL SoM
          - const: fsl,imx6ul

      - description: Kontron N6311 S Board
      - description: Kontron BL i.MX6UL 43 (N631X S 43) Board
        items:
          - const: kontron,imx6ul-n6311-s
          - const: kontron,imx6ul-n6311-som
          - const: fsl,imx6ul

      - description: Kontron N6310 S 43 Board
        items:
          - const: kontron,imx6ul-n6310-s-43
          - const: kontron,imx6ul-n6310-s
          - const: kontron,imx6ul-n6310-som
          - const: kontron,bl-imx6ul-43    # Kontron BL i.MX6UL Carrier Board with 4.3" Display
          - const: kontron,bl-imx6ul       # Kontron BL i.MX6UL Carrier Board
          - const: kontron,sl-imx6ul       # Kontron SL i.MX6UL SoM
          - const: fsl,imx6ul

      - description: TQ-Systems TQMa6UL1 SoM on MBa6ULx board
@@ -637,7 +630,7 @@ properties:
          - enum:
              - fsl,imx6ull-14x14-evk     # i.MX6 UltraLiteLite 14x14 EVK Board
              - joz,jozacp                # JOZ Access Point
              - kontron,imx6ull-n6411-som # Kontron N6411 SOM
              - kontron,sl-imx6ull        # Kontron SL i.MX6ULL SoM
              - myir,imx6ull-mys-6ulx-eval # MYiR Tech iMX6ULL Evaluation Board
              - toradex,colibri-imx6ull      # Colibri iMX6ULL Modules
              - toradex,colibri-imx6ull-emmc # Colibri iMX6ULL 1GB (eMMC) Module
@@ -698,10 +691,10 @@ properties:
          - const: toradex,colibri-imx6ull-wifi       # Colibri iMX6ULL Wi-Fi / BT Module
          - const: fsl,imx6ull

      - description: Kontron N6411 S Board
      - description: Kontron BL i.MX6ULL (N6411 S) Board
        items:
          - const: kontron,imx6ull-n6411-s
          - const: kontron,imx6ull-n6411-som
          - const: kontron,bl-imx6ull   # Kontron BL i.MX6ULL Carrier Board
          - const: kontron,sl-imx6ull   # Kontron SL i.MX6ULL SoM
          - const: fsl,imx6ull

      - description: TQ Systems TQMa6ULLx SoM on MBa6ULx board
@@ -825,13 +818,15 @@ properties:
              - emtrion,emcon-mx8mm-avari # emCON-MX8MM SoM on Avari Base
              - fsl,imx8mm-ddr4-evk       # i.MX8MM DDR4 EVK Board
              - fsl,imx8mm-evk            # i.MX8MM EVK Board
              - gateworks,imx8mm-gw7904
              - gw,imx8mm-gw71xx-0x       # i.MX8MM Gateworks Development Kit
              - gw,imx8mm-gw72xx-0x       # i.MX8MM Gateworks Development Kit
              - gw,imx8mm-gw73xx-0x       # i.MX8MM Gateworks Development Kit
              - gw,imx8mm-gw7901          # i.MX8MM Gateworks Board
              - gw,imx8mm-gw7902          # i.MX8MM Gateworks Board
              - gw,imx8mm-gw7903          # i.MX8MM Gateworks Board
              - kontron,imx8mm-n801x-som  # i.MX8MM Kontron SL (N801X) SOM
              - kontron,imx8mm-sl         # i.MX8MM Kontron SL (N801X) SOM
              - kontron,imx8mm-osm-s      # i.MX8MM Kontron OSM-S (N802X) SOM
              - menlo,mx8menlo            # i.MX8MM Menlo board with Verdin SoM
              - toradex,verdin-imx8mm     # Verdin iMX8M Mini Modules
              - toradex,verdin-imx8mm-nonwifi  # Verdin iMX8M Mini Modules without Wi-Fi / BT
@@ -850,8 +845,14 @@ properties:

      - description: Kontron BL i.MX8MM (N801X S) Board
        items:
          - const: kontron,imx8mm-n801x-s
          - const: kontron,imx8mm-n801x-som
          - const: kontron,imx8mm-bl
          - const: kontron,imx8mm-sl
          - const: fsl,imx8mm

      - description: Kontron BL i.MX8MM OSM-S (N802X S) Board
        items:
          - const: kontron,imx8mm-bl-osm-s
          - const: kontron,imx8mm-osm-s
          - const: fsl,imx8mm

      - description: Toradex Boards with Verdin iMX8M Mini Modules
@@ -936,6 +937,13 @@ properties:
              - toradex,verdin-imx8mp-wifi  # Verdin iMX8M Plus Wi-Fi / BT Modules
          - const: fsl,imx8mp

      - description: Avnet (MSC Branded) Boards with SM2S i.MX8M Plus Modules
        items:
          - const: avnet,sm2s-imx8mp-14N0600E-ep1 # SM2S-IMX8PLUS-14N0600E on SM2-MB-EP1 Carrier Board
          - const: avnet,sm2s-imx8mp-14N0600E     # 14N0600E variant of SM2S-IMX8PLUS SoM
          - const: avnet,sm2s-imx8mp              # SM2S-IMX8PLUS SoM
          - const: fsl,imx8mp

      - description: Engicam i.Core MX8M Plus SoM based boards
        items:
          - enum:
@@ -1034,6 +1042,12 @@ properties:
              - toradex,colibri-imx8x     # Colibri iMX8X Modules
          - const: fsl,imx8qxp

      - description: i.MX8DXL based Boards
        items:
          - enum:
              - fsl,imx8dxl-evk           # i.MX8DXL EVK Board
          - const: fsl,imx8dxl

      - description: i.MX8QXP Boards with Toradex Coilbri iMX8X Modules
        items:
          - enum:
+4 −0
Original line number Diff line number Diff line
@@ -21,10 +21,12 @@ select:
        enum:
          - rockchip,px30-pmu
          - rockchip,rk3066-pmu
          - rockchip,rk3128-pmu
          - rockchip,rk3288-pmu
          - rockchip,rk3368-pmu
          - rockchip,rk3399-pmu
          - rockchip,rk3568-pmu
          - rockchip,rk3588-pmu

  required:
    - compatible
@@ -35,10 +37,12 @@ properties:
      - enum:
          - rockchip,px30-pmu
          - rockchip,rk3066-pmu
          - rockchip,rk3128-pmu
          - rockchip,rk3288-pmu
          - rockchip,rk3368-pmu
          - rockchip,rk3399-pmu
          - rockchip,rk3568-pmu
          - rockchip,rk3588-pmu
      - const: syscon
      - const: simple-mfd

+0 −61
Original line number Diff line number Diff line
QCOM Secure Channel Manager (SCM)

Qualcomm processors include an interface to communicate to the secure firmware.
This interface allows for clients to request different types of actions.  These
can include CPU power up/down, HDCP requests, loading of firmware, and other
assorted actions.

Required properties:
- compatible: must contain one of the following:
 * "qcom,scm-apq8064"
 * "qcom,scm-apq8084"
 * "qcom,scm-ipq4019"
 * "qcom,scm-ipq806x"
 * "qcom,scm-ipq8074"
 * "qcom,scm-mdm9607"
 * "qcom,scm-msm8226"
 * "qcom,scm-msm8660"
 * "qcom,scm-msm8916"
 * "qcom,scm-msm8953"
 * "qcom,scm-msm8960"
 * "qcom,scm-msm8974"
 * "qcom,scm-msm8976"
 * "qcom,scm-msm8994"
 * "qcom,scm-msm8996"
 * "qcom,scm-msm8998"
 * "qcom,scm-qcs404"
 * "qcom,scm-sc7180"
 * "qcom,scm-sc7280"
 * "qcom,scm-sm6125"
 * "qcom,scm-sdm845"
 * "qcom,scm-sdx55"
 * "qcom,scm-sdx65"
 * "qcom,scm-sm6350"
 * "qcom,scm-sm8150"
 * "qcom,scm-sm8250"
 * "qcom,scm-sm8350"
 * "qcom,scm-sm8450"
 and:
 * "qcom,scm"
- clocks: Specifies clocks needed by the SCM interface, if any:
 * core clock required for "qcom,scm-apq8064", "qcom,scm-msm8660" and
   "qcom,scm-msm8960"
 * core, iface and bus clocks required for "qcom,scm-apq8084",
   "qcom,scm-msm8916", "qcom,scm-msm8953", "qcom,scm-msm8974" and "qcom,scm-msm8976"
- clock-names: Must contain "core" for the core clock, "iface" for the interface
  clock and "bus" for the bus clock per the requirements of the compatible.
- qcom,dload-mode: phandle to the TCSR hardware block and offset of the
		   download mode control register (optional)
- interconnects: Specifies the bandwidth requirements of the SCM interface (optional)

Example for MSM8916:

	firmware {
		scm {
			compatible = "qcom,msm8916", "qcom,scm";
			clocks = <&gcc GCC_CRYPTO_CLK> ,
				 <&gcc GCC_CRYPTO_AXI_CLK>,
				 <&gcc GCC_CRYPTO_AHB_CLK>;
			clock-names = "core", "bus", "iface";
		};
	};
Loading