Commit 397c619c authored by Krzysztof Kozlowski's avatar Krzysztof Kozlowski Committed by Bjorn Andersson

dt-bindings: remoteproc: qcom,sc8280xp-pas: split into separate file

Split SC8280XP remote processor Peripheral Authentication Service bindings
into their own file to reduce complexity and make maintenance easier.

While moving correctly constrain the number of interrupts per specific
device.
Signed-off-by: default avatarKrzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Acked-by: default avatarRob Herring <robh@kernel.org>
Signed-off-by: default avatarBjorn Andersson <andersson@kernel.org>
Link: https://lore.kernel.org/r/20221124184333.133911-11-krzysztof.kozlowski@linaro.org
parent 41729b77
...@@ -30,9 +30,6 @@ properties: ...@@ -30,9 +30,6 @@ properties:
- qcom,sc8180x-adsp-pas - qcom,sc8180x-adsp-pas
- qcom,sc8180x-cdsp-pas - qcom,sc8180x-cdsp-pas
- qcom,sc8180x-mpss-pas - qcom,sc8180x-mpss-pas
- qcom,sc8280xp-adsp-pas
- qcom,sc8280xp-nsp0-pas
- qcom,sc8280xp-nsp1-pas
- qcom,sdm660-adsp-pas - qcom,sdm660-adsp-pas
- qcom,sdm845-adsp-pas - qcom,sdm845-adsp-pas
- qcom,sdm845-cdsp-pas - qcom,sdm845-cdsp-pas
...@@ -76,9 +73,6 @@ allOf: ...@@ -76,9 +73,6 @@ allOf:
- qcom,sc8180x-adsp-pas - qcom,sc8180x-adsp-pas
- qcom,sc8180x-cdsp-pas - qcom,sc8180x-cdsp-pas
- qcom,sc8180x-mpss-pas - qcom,sc8180x-mpss-pas
- qcom,sc8280xp-adsp-pas
- qcom,sc8280xp-nsp0-pas
- qcom,sc8280xp-nsp1-pas
- qcom,sdm845-adsp-pas - qcom,sdm845-adsp-pas
- qcom,sdm845-cdsp-pas - qcom,sdm845-cdsp-pas
then: then:
...@@ -123,9 +117,6 @@ allOf: ...@@ -123,9 +117,6 @@ allOf:
- qcom,qcs404-wcss-pas - qcom,qcs404-wcss-pas
- qcom,sc8180x-adsp-pas - qcom,sc8180x-adsp-pas
- qcom,sc8180x-cdsp-pas - qcom,sc8180x-cdsp-pas
- qcom,sc8280xp-adsp-pas
- qcom,sc8280xp-nsp0-pas
- qcom,sc8280xp-nsp1-pas
- qcom,sdm845-adsp-pas - qcom,sdm845-adsp-pas
- qcom,sdm845-cdsp-pas - qcom,sdm845-cdsp-pas
then: then:
...@@ -240,7 +231,6 @@ allOf: ...@@ -240,7 +231,6 @@ allOf:
enum: enum:
- qcom,sc8180x-adsp-pas - qcom,sc8180x-adsp-pas
- qcom,sc8180x-cdsp-pas - qcom,sc8180x-cdsp-pas
- qcom,sc8280xp-adsp-pas
then: then:
properties: properties:
power-domains: power-domains:
...@@ -252,22 +242,6 @@ allOf: ...@@ -252,22 +242,6 @@ allOf:
- const: lcx - const: lcx
- const: lmx - const: lmx
- if:
properties:
compatible:
contains:
enum:
- qcom,sc8280xp-nsp0-pas
- qcom,sc8280xp-nsp1-pas
then:
properties:
power-domains:
items:
- description: NSP power domain
power-domain-names:
items:
- const: nsp
- if: - if:
properties: properties:
compatible: compatible:
......
# SPDX-License-Identifier: GPL-2.0 OR BSD-2-Clause
%YAML 1.2
---
$id: http://devicetree.org/schemas/remoteproc/qcom,sc8280xp-pas.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#
title: Qualcomm SC8280XP Peripheral Authentication Service
maintainers:
- Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
description:
Qualcomm SC8280XP SoC Peripheral Authentication Service loads and boots
firmware on the Qualcomm DSP Hexagon cores.
properties:
compatible:
enum:
- qcom,sc8280xp-adsp-pas
- qcom,sc8280xp-nsp0-pas
- qcom,sc8280xp-nsp1-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
required:
- compatible
- reg
allOf:
- $ref: /schemas/remoteproc/qcom,pas-common.yaml#
- if:
properties:
compatible:
enum:
- qcom,sc8280xp-nsp0-pas
- qcom,sc8280xp-nsp1-pas
then:
properties:
interrupts:
maxItems: 5
interrupt-names:
maxItems: 5
else:
properties:
interrupts:
minItems: 6
interrupt-names:
minItems: 6
- if:
properties:
compatible:
enum:
- qcom,sc8280xp-adsp-pas
then:
properties:
power-domains:
items:
- description: LCX power domain
- description: LMX power domain
power-domain-names:
items:
- const: lcx
- const: lmx
else:
properties:
power-domains:
items:
- description: NSP power domain
power-domain-names:
items:
- const: nsp
unevaluatedProperties: false
examples:
- |
#include <dt-bindings/clock/qcom,rpmh.h>
#include <dt-bindings/interrupt-controller/arm-gic.h>
#include <dt-bindings/interrupt-controller/irq.h>
#include <dt-bindings/mailbox/qcom-ipcc.h>
#include <dt-bindings/power/qcom-rpmpd.h>
remoteproc@3000000 {
compatible = "qcom,sc8280xp-adsp-pas";
reg = <0x03000000 0x100>;
clocks = <&rpmhcc RPMH_CXO_CLK>;
clock-names = "xo";
firmware-name = "qcom/sc8280xp/qcadsp8280.mbn";
interrupts-extended = <&intc GIC_SPI 162 IRQ_TYPE_LEVEL_HIGH>,
<&smp2p_adsp_in 0 IRQ_TYPE_EDGE_RISING>,
<&smp2p_adsp_in 1 IRQ_TYPE_EDGE_RISING>,
<&smp2p_adsp_in 2 IRQ_TYPE_EDGE_RISING>,
<&smp2p_adsp_in 3 IRQ_TYPE_EDGE_RISING>,
<&smp2p_adsp_in 7 IRQ_TYPE_EDGE_RISING>;
interrupt-names = "wdog", "fatal", "ready",
"handover", "stop-ack", "shutdown-ack";
memory-region = <&pil_adsp_mem>;
power-domains = <&rpmhpd SC8280XP_LCX>,
<&rpmhpd SC8280XP_LMX>;
power-domain-names = "lcx", "lmx";
qcom,qmp = <&aoss_qmp>;
qcom,smem-states = <&smp2p_adsp_out 0>;
qcom,smem-state-names = "stop";
glink-edge {
interrupts-extended = <&ipcc IPCC_CLIENT_LPASS
IPCC_MPROC_SIGNAL_GLINK_QMP
IRQ_TYPE_EDGE_RISING>;
mboxes = <&ipcc IPCC_CLIENT_LPASS
IPCC_MPROC_SIGNAL_GLINK_QMP>;
label = "lpass";
qcom,remote-pid = <2>;
/* ... */
};
};
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment