#
9a2c674e |
|
15-Jun-2023 |
Stephan Gerhold <stephan@gerhold.net> |
dt-bindings: remoteproc: Add Qualcomm RPM processor/subsystem On Qualcomm platforms, most subsystems (e.g. audio/modem DSP) are described as remote processors in the device tree, with a dedicated node where properties and services related to them can be described. The Resource Power Manager (RPM) is also such a subsystem, with a remote processor that is running a special firmware. Unfortunately, the RPM never got a dedicated node representing it properly in the device tree. Most of the RPM services are described below a top-level /smd or /rpm-glink node. However, SMD/GLINK is just one of the communication channels to the RPM firmware. For example, the MPM interrupt functionality provided by the RPM does not use SMD/GLINK but writes directly to a special memory region allocated by the RPM firmware in combination with a mailbox. Currently there is no good place in the device tree to describe this functionality. It doesn't belong below SMD/GLINK but it's not an independent top-level device either. Introduce a new "qcom,rpm-proc" compatible that allows describing the RPM as a remote processor/subsystem like all others. The SMD/GLINK node is moved to a "smd-edge"/"glink-edge" subnode consistent with other existing bindings. Additional subnodes (e.g. interrupt-controller for MPM, rpm-master-stats) can be also added there. Deprecate using the old top-level /smd node since all SMD edges are now specified as subnodes of the remote processor. Signed-off-by: Stephan Gerhold <stephan@gerhold.net> Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> Link: https://lore.kernel.org/r/20230531-rpm-rproc-v3-6-a07dcdefd918@gerhold.net Signed-off-by: Bjorn Andersson <andersson@kernel.org>
|
#
547bed81 |
|
09-Sep-2022 |
Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> |
dt-bindings: remoteproc: qcom,smd-edge: define children SMD edge contains subnodes representing devices related to the remote processor. With limietd number of remote processors, there is a limited set of such devices. List all of them in smd-edge bindings so schema can strictly check for subnodes. Additional benefit is requirement of "qcom,smd-channels" for such subnodes, because their schema cannot enforce it (few devices like APR or FastRPC can be part of either SMD or GLINK edge). Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> Link: https://lore.kernel.org/r/20220909125403.803158-8-krzysztof.kozlowski@linaro.org Signed-off-by: Rob Herring <robh@kernel.org>
|
#
6dae25e4 |
|
09-Sep-2022 |
Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> |
dt-bindings: soc: qcom: smd: restrict child name to smd-edge Child node of SMD must be either smd-edge or rpm, so the pattern can be narrowed. Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> Link: https://lore.kernel.org/r/20220909125403.803158-7-krzysztof.kozlowski@linaro.org Signed-off-by: Rob Herring <robh@kernel.org>
|
#
568f83ff |
|
23-Jul-2022 |
Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> |
dt-bindings: soc: qcom: smd: reference SMD edge schema The child node of smd is an SMD edge representing remote subsystem. Bring back missing reference from previously sent patch (disappeared when applying). Link: https://lore.kernel.org/r/20220517070113.18023-9-krzysztof.kozlowski@linaro.org Fixes: 385fad1303af ("dt-bindings: remoteproc: qcom,smd-edge: define re-usable schema for smd-edge") Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> Acked-by: Rob Herring <robh@kernel.org> Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org> Link: https://lore.kernel.org/r/20220723082358.39544-1-krzysztof.kozlowski@linaro.org
|
#
385fad13 |
|
17-May-2022 |
Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> |
dt-bindings: remoteproc: qcom,smd-edge: define re-usable schema for smd-edge 'smd-edge' property appears in multiple bindings, so split it into one place which can be re-used. This reduces code duplication and adds strict schema matching for smd-edge nodes (instead of just "type:object"). Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> Reviewed-by: Rob Herring <robh@kernel.org> Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org> Link: https://lore.kernel.org/r/20220517070113.18023-9-krzysztof.kozlowski@linaro.org
|
#
9171c484 |
|
24-May-2022 |
Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> |
dt-bindings: soc: qcom,smd: do not use pattern for simple rpm-requests string patternProperties should not be used for properties with a simple string as name: Documentation/devicetree/bindings/soc/qcom/qcom,smd.yaml: patternProperties:^(.*-edge|rpm)$:patternProperties: '^rpm-requests$' should not be valid under {'pattern': '^\\^[a-zA-Z0-9,\\-._#]+\\$$'} Fixes: 375eed5f51a8 ("dt-bindings: soc: qcom,smd: convert to dtschema") Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> Acked-by: Rob Herring <robh@kernel.org> Signed-off-by: Rob Herring <robh@kernel.org> Link: https://lore.kernel.org/r/20220524070408.39505-1-krzysztof.kozlowski@linaro.org
|
#
375eed5f |
|
01-Apr-2022 |
Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> |
dt-bindings: soc: qcom,smd: convert to dtschema Convert the Qualcomm Shared Memory Driver bindings to DT Schema. Changes against original bindings: enforce only specific names of child nodes, instead of any names. Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> Reviewed-by: Rob Herring <robh@kernel.org> Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org> Link: https://lore.kernel.org/r/20220401201035.189106-9-krzysztof.kozlowski@linaro.org
|