Commit 5e66abcf authored by Luca Weiss's avatar Luca Weiss Committed by Bjorn Andersson
Browse files

dt-bindings: soc: qcom,smsm: Allow specifying mboxes instead of qcom,ipc



The qcom,ipc-N properties are essentially providing a reference to a
mailbox, so allow using the mboxes property to do the same in a more
structured way.

Since multiple SMSM hosts are supported, we need to be able to provide
the correct mailbox for each host. The old qcom,ipc-N properties map to
the mboxes property by index, starting at 0 since that's a valid SMSM
host also.

Mark the older qcom,ipc-N as deprecated and update the example with
mboxes.

Signed-off-by: default avatarLuca Weiss <luca@z3ntu.xyz>
Reviewed-by: default avatarKrzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Link: https://lore.kernel.org/r/20240606-smsm-mbox-v2-1-8abe6b5f01da@z3ntu.xyz


Signed-off-by: default avatarBjorn Andersson <andersson@kernel.org>
parent 1b503fa2
Loading
Loading
Loading
Loading
+21 −9
Original line number Diff line number Diff line
@@ -33,6 +33,14 @@ properties:
      specifier of the column in the subscription matrix representing the local
      processor.

  mboxes:
    minItems: 1
    maxItems: 5
    description:
      Reference to the mailbox representing the outgoing doorbell in APCS for
      this client. Each entry represents the N:th remote processor by index
      (0-indexed).

  '#size-cells':
    const: 0

@@ -47,6 +55,7 @@ patternProperties:
    description:
      Three entries specifying the outgoing ipc bit used for signaling the N:th
      remote processor.
    deprecated: true

  "@[0-9a-f]$":
    type: object
@@ -98,7 +107,10 @@ required:
  - '#address-cells'
  - '#size-cells'

anyOf:
oneOf:
  - required:
      - mboxes
  - anyOf:
      - required:
          - qcom,ipc-1
      - required:
@@ -122,7 +134,7 @@ examples:
        compatible = "qcom,smsm";
        #address-cells = <1>;
        #size-cells = <0>;
        qcom,ipc-3 = <&apcs 8 19>;
        mboxes = <0>, <0>, <0>, <&apcs 19>;

        apps_smsm: apps@0 {
            reg = <0>;