Commit 472863ab authored by Linus Torvalds's avatar Linus Torvalds
Browse files
Pull remoteproc updates from Bjorn Andersson:

 - Transition the i.MX8MP DSP remoteproc driver to use the reset
   framework for driving the run/stall reset bits

 - Add support for managing the modem remoteprocessor on the Qualcomm
   MSM8226, MSM8926, and SM8750 platforms

* tag 'rproc-v6.15' of git://git.kernel.org/pub/scm/linux/kernel/git/remoteproc/linux: (28 commits)
  remoteproc: qcom_q6v5_pas: Make single-PD handling more robust
  remoteproc: qcom_q6v5_pas: Use resource with CX PD for MSM8226
  remoteproc: core: Clear table_sz when rproc_shutdown
  remoteproc: sysmon: Update qcom_add_sysmon_subdev() comment
  dt-bindings: remoteproc: Consolidate SC8180X and SM8150 PAS files
  irqdomain: remoteproc: Switch to of_fwnode_handle()
  remoteproc: qcom: pas: add minidump_id to SC7280 WPSS
  remoteproc: imx_dsp_rproc: Document run_stall struct member
  remoteproc: qcom: pas: Add SM8750 MPSS
  dt-bindings: remoteproc: Add SM8750 MPSS
  imx_dsp_rproc: Use reset controller API to control the DSP
  reset: imx8mp-audiomix: Add support for DSP run/stall
  reset: imx8mp-audiomix: Introduce active_low configuration option
  reset: imx8mp-audiomix: Prepare the code for more reset bits
  reset: imx8mp-audiomix: Add prefix for internal macro
  dt-bindings: dsp: fsl,dsp: Add resets property
  dt-bindings: reset: audiomix: Add reset ids for EARC and DSP
  remoteproc: qcom_wcnss: Handle platforms with only single power domain
  dt-bindings: remoteproc: qcom,wcnss-pil: Add support for single power-domain platforms
  remoteproc: qcom_q6v5_mss: Add modem support on MSM8926
  ...
parents 7d4eca7a e917b732
Loading
Loading
Loading
Loading
+23 −1
Original line number Diff line number Diff line
@@ -82,6 +82,15 @@ properties:
    description:
      Phandle to syscon block which provide access for processor enablement

  resets:
    minItems: 1

  reset-names:
    minItems: 1
    items:
      - const: runstall
      - const: softreset

required:
  - compatible
  - reg
@@ -164,6 +173,17 @@ allOf:
            - const: txdb1
            - const: rxdb0
            - const: rxdb1
  - if:
      properties:
        compatible:
          contains:
            enum:
              - fsl,imx8mp-dsp
              - fsl,imx8mp-hifi4
    then:
      required:
        - resets
        - reset-names

additionalProperties: false

@@ -186,6 +206,7 @@ examples:
    };
  - |
    #include <dt-bindings/clock/imx8mp-clock.h>
    #include <dt-bindings/reset/imx8mp-reset-audiomix.h>
    dsp_reserved: dsp@92400000 {
      reg = <0x92400000 0x1000000>;
      no-map;
@@ -220,5 +241,6 @@ examples:
               <&mu2 3 0>;
      memory-region = <&dsp_vdev0buffer>, <&dsp_vdev0vring0>,
                      <&dsp_vdev0vring1>, <&dsp_reserved>;
      fsl,dsp-ctrl = <&audio_blk_ctrl>;
      resets = <&audio_blk_ctrl IMX8MP_AUDIOMIX_DSP_RUNSTALL>;
      reset-names = "runstall";
    };
+59 −5
Original line number Diff line number Diff line
@@ -17,8 +17,10 @@ properties:
  compatible:
    oneOf:
      - enum:
          - qcom,msm8226-mss-pil
          - qcom,msm8909-mss-pil
          - qcom,msm8916-mss-pil
          - qcom,msm8926-mss-pil
          - qcom,msm8953-mss-pil
          - qcom,msm8974-mss-pil

@@ -70,16 +72,18 @@ properties:
    items:
      - description: CX proxy power domain (control handed over after startup)
      - description: MX proxy power domain (control handed over after startup)
                     (not valid for qcom,msm8226-mss-pil, qcom,msm8926-mss-pil
                     and qcom,msm8974-mss-pil)
      - description: MSS proxy power domain (control handed over after startup)
                     (only valid for qcom,msm8953-mss-pil)
    minItems: 2
    minItems: 1

  power-domain-names:
    items:
      - const: cx
      - const: mx
      - const: mx # not valid for qcom,msm8226-mss-pil, qcom-msm8926-mss-pil and qcom,msm8974-mss-pil
      - const: mss # only valid for qcom,msm8953-mss-pil
    minItems: 2
    minItems: 1

  pll-supply:
    description: PLL proxy supply (control handed over after startup)
@@ -106,6 +110,15 @@ properties:
    items:
      - const: stop

  qcom,ext-bhs-reg:
    $ref: /schemas/types.yaml#/definitions/phandle-array
    description: External power block headswitch (BHS) register
                 (only valid for qcom,msm8226-mss-pil)
    items:
      - items:
          - description: phandle to external BHS syscon region
          - description: offset to the external BHS register

  qcom,halt-regs:
    $ref: /schemas/types.yaml#/definitions/phandle-array
    description:
@@ -207,17 +220,58 @@ allOf:
      required:
        - power-domains
        - power-domain-names
    else:

  - if:
      properties:
        compatible:
          contains:
            enum:
              - qcom,msm8909-mss-pil
              - qcom,msm8916-mss-pil
    then:
      properties:
        power-domains:
          minItems: 2
          maxItems: 2
        power-domain-names:
          minItems: 2
          maxItems: 2

  - if:
      properties:
        compatible:
          const: qcom,msm8974-mss-pil
          contains:
            enum:
              - qcom,msm8226-mss-pil
              - qcom,msm8926-mss-pil
              - qcom,msm8974-mss-pil
    then:
      properties:
        power-domains:
          maxItems: 1
        power-domain-names:
          maxItems: 1
      required:
        - mx-supply

  - if:
      properties:
        compatible:
          const: qcom,msm8226-mss-pil
    then:
      required:
        - qcom,ext-bhs-reg
    else:
      properties:
        qcom,ext-bhs-reg: false

  - if:
      properties:
        compatible:
          contains:
            enum:
              - qcom,msm8926-mss-pil
              - qcom,msm8974-mss-pil
    then:
      required:
        - mss-supply
+0 −96
Original line number Diff line number Diff line
# SPDX-License-Identifier: GPL-2.0 OR BSD-2-Clause
%YAML 1.2
---
$id: http://devicetree.org/schemas/remoteproc/qcom,sc8180x-pas.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Qualcomm SC8180X Peripheral Authentication Service

maintainers:
  - Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>

description:
  Qualcomm SC8180X SoC Peripheral Authentication Service loads and boots
  firmware on the Qualcomm DSP Hexagon cores.

properties:
  compatible:
    enum:
      - qcom,sc8180x-adsp-pas
      - qcom,sc8180x-cdsp-pas
      - qcom,sc8180x-mpss-pas

  reg:
    maxItems: 1

  clocks:
    items:
      - description: XO clock

  clock-names:
    items:
      - const: xo

  qcom,qmp:
    $ref: /schemas/types.yaml#/definitions/phandle
    description: Reference to the AOSS side-channel message RAM.

  smd-edge: false

  memory-region:
    maxItems: 1
    description: Reference to the reserved-memory for the Hexagon core

  firmware-name:
    maxItems: 1
    description: Firmware name for the Hexagon core

required:
  - compatible
  - reg
  - memory-region

allOf:
  - $ref: /schemas/remoteproc/qcom,pas-common.yaml#
  - if:
      properties:
        compatible:
          enum:
            - qcom,sc8180x-adsp-pas
            - qcom,sc8180x-cdsp-pas
    then:
      properties:
        interrupts:
          maxItems: 5
        interrupt-names:
          maxItems: 5
    else:
      properties:
        interrupts:
          minItems: 6
        interrupt-names:
          minItems: 6

  - if:
      properties:
        compatible:
          enum:
            - qcom,sc8180x-adsp-pas
            - qcom,sc8180x-cdsp-pas
    then:
      properties:
        power-domains:
          items:
            - description: LCX power domain
            - description: LMX power domain
        power-domain-names:
          items:
            - const: lcx
            - const: lmx
    else:
      properties:
        # TODO: incomplete
        power-domains: false
        power-domain-names: false

unevaluatedProperties: false
+1 −1
Original line number Diff line number Diff line
@@ -127,7 +127,7 @@ examples:
        clocks = <&rpmcc RPM_SMD_XO_CLK_SRC>;
        clock-names = "xo";

        firmware-name = "qcom/sm6115/adsp.mdt";
        firmware-name = "qcom/sm6115/adsp.mbn";

        interrupts-extended = <&intc GIC_SPI 282 IRQ_TYPE_EDGE_RISING>,
                              <&adsp_smp2p_in 0 IRQ_TYPE_EDGE_RISING>,
+7 −0
Original line number Diff line number Diff line
@@ -60,6 +60,9 @@ allOf:
      properties:
        compatible:
          enum:
            - qcom,sc8180x-adsp-pas
            - qcom,sc8180x-cdsp-pas
            - qcom,sc8180x-slpi-pas
            - qcom,sm8150-adsp-pas
            - qcom,sm8150-cdsp-pas
            - qcom,sm8150-slpi-pas
@@ -83,6 +86,8 @@ allOf:
      properties:
        compatible:
          enum:
            - qcom,sc8180x-adsp-pas
            - qcom,sc8180x-cdsp-pas
            - qcom,sm8150-adsp-pas
            - qcom,sm8150-cdsp-pas
            - qcom,sm8250-cdsp-pas
@@ -99,6 +104,7 @@ allOf:
      properties:
        compatible:
          enum:
            - qcom,sc8180x-mpss-pas
            - qcom,sm8150-mpss-pas
    then:
      properties:
@@ -115,6 +121,7 @@ allOf:
      properties:
        compatible:
          enum:
            - qcom,sc8180x-slpi-pas
            - qcom,sm8150-slpi-pas
            - qcom,sm8250-adsp-pas
            - qcom,sm8250-slpi-pas
Loading