summaryrefslogtreecommitdiff
path: root/meta-arm/meta-arm-bsp/recipes-kernel/linux/linux-arm64-ack-5.10/tc/0003-dt-bindings-mailbox-arm-mhuv2-Add-bindings.patch
diff options
context:
space:
mode:
Diffstat (limited to 'meta-arm/meta-arm-bsp/recipes-kernel/linux/linux-arm64-ack-5.10/tc/0003-dt-bindings-mailbox-arm-mhuv2-Add-bindings.patch')
-rw-r--r--meta-arm/meta-arm-bsp/recipes-kernel/linux/linux-arm64-ack-5.10/tc/0003-dt-bindings-mailbox-arm-mhuv2-Add-bindings.patch241
1 files changed, 0 insertions, 241 deletions
diff --git a/meta-arm/meta-arm-bsp/recipes-kernel/linux/linux-arm64-ack-5.10/tc/0003-dt-bindings-mailbox-arm-mhuv2-Add-bindings.patch b/meta-arm/meta-arm-bsp/recipes-kernel/linux/linux-arm64-ack-5.10/tc/0003-dt-bindings-mailbox-arm-mhuv2-Add-bindings.patch
deleted file mode 100644
index 1da75ea84e..0000000000
--- a/meta-arm/meta-arm-bsp/recipes-kernel/linux/linux-arm64-ack-5.10/tc/0003-dt-bindings-mailbox-arm-mhuv2-Add-bindings.patch
+++ /dev/null
@@ -1,241 +0,0 @@
-From cdda49168d42c897574388356555f8130c021bb5 Mon Sep 17 00:00:00 2001
-From: Viresh Kumar <viresh.kumar@linaro.org>
-Date: Tue, 17 Nov 2020 15:32:05 +0530
-Subject: [PATCH 03/22] dt-bindings: mailbox : arm,mhuv2: Add bindings
-
-This patch adds device tree binding for ARM Message Handling Unit (MHU)
-controller version 2.
-
-Based on earlier work by Morten Borup Petersen.
-
-Reviewed-by: Rob Herring <robh@kernel.org>
-Co-developed-by: Tushar Khandelwal <tushar.khandelwal@arm.com>
-Signed-off-by: Tushar Khandelwal <tushar.khandelwal@arm.com>
-Signed-off-by: Viresh Kumar <viresh.kumar@linaro.org>
-Signed-off-by: Jassi Brar <jaswinder.singh@linaro.org>
-
-Upstream-Status: Backport [https://lkml.org/lkml/2020/11/17/234]
-Signed-off-by: Arunachalam Ganapathy <arunachalam.ganapathy@arm.com>
----
- .../bindings/mailbox/arm,mhuv2.yaml | 209 ++++++++++++++++++
- 1 file changed, 209 insertions(+)
- create mode 100644 Documentation/devicetree/bindings/mailbox/arm,mhuv2.yaml
-
-diff --git a/Documentation/devicetree/bindings/mailbox/arm,mhuv2.yaml b/Documentation/devicetree/bindings/mailbox/arm,mhuv2.yaml
-new file mode 100644
-index 000000000000..6608545ea66f
---- /dev/null
-+++ b/Documentation/devicetree/bindings/mailbox/arm,mhuv2.yaml
-@@ -0,0 +1,209 @@
-+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
-+%YAML 1.2
-+---
-+$id: http://devicetree.org/schemas/mailbox/arm,mhuv2.yaml#
-+$schema: http://devicetree.org/meta-schemas/core.yaml#
-+
-+title: ARM MHUv2 Mailbox Controller
-+
-+maintainers:
-+ - Tushar Khandelwal <tushar.khandelwal@arm.com>
-+ - Viresh Kumar <viresh.kumar@linaro.org>
-+
-+description: |
-+ The Arm Message Handling Unit (MHU) Version 2 is a mailbox controller that has
-+ between 1 and 124 channel windows (each 32-bit wide) to provide unidirectional
-+ communication with remote processor(s), where the number of channel windows
-+ are implementation dependent.
-+
-+ Given the unidirectional nature of the controller, an MHUv2 mailbox may only
-+ be written to or read from. If a pair of MHU controllers is implemented
-+ between two processing elements to provide bidirectional communication, these
-+ must be specified as two separate mailboxes.
-+
-+ If the interrupts property is present in device tree node, then its treated as
-+ a "receiver" mailbox, otherwise a "sender".
-+
-+ An MHU controller must be specified along with the supported transport
-+ protocols. The transport protocols determine the method of data transmission
-+ as well as the number of provided mailbox channels.
-+
-+ Following are the possible transport protocols.
-+
-+ - Data-transfer: Each transfer is made of one or more words, using one or more
-+ channel windows.
-+
-+ - Doorbell: Each transfer is made up of single bit flag, using any one of the
-+ bits in a channel window. A channel window can support up to 32 doorbells
-+ and the entire window shall be used in doorbell protocol. Optionally, data
-+ may be transmitted through a shared memory region, wherein the MHU is used
-+ strictly as an interrupt generation mechanism but that is out of the scope
-+ of these bindings.
-+
-+# We need a select here so we don't match all nodes with 'arm,primecell'
-+select:
-+ properties:
-+ compatible:
-+ contains:
-+ enum:
-+ - arm,mhuv2-tx
-+ - arm,mhuv2-rx
-+ required:
-+ - compatible
-+
-+properties:
-+ compatible:
-+ oneOf:
-+ - description: Sender mode
-+ items:
-+ - const: arm,mhuv2-tx
-+ - const: arm,primecell
-+
-+ - description: Receiver-mode
-+ items:
-+ - const: arm,mhuv2-rx
-+ - const: arm,primecell
-+
-+ reg:
-+ maxItems: 1
-+
-+ interrupts:
-+ description: |
-+ The MHUv2 controller always implements an interrupt in the "receiver"
-+ mode, while the interrupt in the "sender" mode was not available in the
-+ version MHUv2.0, but the later versions do have it.
-+ maxItems: 1
-+
-+ clocks:
-+ maxItems: 1
-+
-+ clock-names:
-+ maxItems: 1
-+
-+ arm,mhuv2-protocols:
-+ $ref: /schemas/types.yaml#/definitions/uint32-matrix
-+ description: |
-+ The MHUv2 controller may contain up to 124 channel windows (each 32-bit
-+ wide). The hardware and the DT bindings allows any combination of those to
-+ be used for various transport protocols.
-+
-+ This property allows a platform to describe how these channel windows are
-+ used in various transport protocols. The entries in this property shall be
-+ present as an array of tuples, where each tuple describes details about
-+ one of the transport protocol being implemented over some channel
-+ window(s).
-+
-+ The first field of a tuple signifies the transfer protocol, 0 is reserved
-+ for doorbell protocol, and 1 is reserved for data-transfer protocol.
-+ Using any other value in the first field of a tuple makes it invalid.
-+
-+ The second field of a tuple signifies the number of channel windows where
-+ the protocol would be used and should be set to a non zero value. For
-+ doorbell protocol this field signifies the number of 32-bit channel
-+ windows that implement the doorbell protocol. For data-transfer protocol,
-+ this field signifies the number of 32-bit channel windows that implement
-+ the data-transfer protocol.
-+
-+ The total number of channel windows specified here shouldn't be more than
-+ the ones implemented by the platform, though one can specify lesser number
-+ of windows here than what the platform implements.
-+
-+ mhu: mailbox@2b1f0000 {
-+ ...
-+
-+ arm,mhuv2-protocols = <0 2>, <1 1>, <1 5>, <1 7>;
-+ }
-+
-+ The above example defines the protocols of an ARM MHUv2 mailbox
-+ controller, where a total of 15 channel windows are used. The first two
-+ windows are used in doorbell protocol (64 doorbells), followed by 1, 5 and
-+ 7 windows (separately) used in data-transfer protocol.
-+
-+ minItems: 1
-+ maxItems: 124
-+ items:
-+ items:
-+ - enum: [ 0, 1 ]
-+ - minimum: 0
-+ maximum: 124
-+
-+
-+ '#mbox-cells':
-+ description: |
-+ It is always set to 2. The first argument in the consumers 'mboxes'
-+ property represents the channel window group, which may be used in
-+ doorbell, or data-transfer protocol, and the second argument (only
-+ relevant in doorbell protocol, should be 0 otherwise) represents the
-+ doorbell number within the 32 bit wide channel window.
-+
-+ From the example given above for arm,mhuv2-protocols, here is how a client
-+ node can reference them.
-+
-+ mboxes = <&mhu 0 5>; // Channel Window Group 0, doorbell 5.
-+ mboxes = <&mhu 1 7>; // Channel Window Group 1, doorbell 7.
-+ mboxes = <&mhu 2 0>; // Channel Window Group 2, data transfer protocol with 1 window.
-+ mboxes = <&mhu 3 0>; // Channel Window Group 3, data transfer protocol with 5 windows.
-+ mboxes = <&mhu 4 0>; // Channel Window Group 4, data transfer protocol with 7 windows.
-+
-+ const: 2
-+
-+if:
-+ # Interrupt is compulsory for receiver
-+ properties:
-+ compatible:
-+ contains:
-+ const: arm,mhuv2-rx
-+then:
-+ required:
-+ - interrupts
-+
-+required:
-+ - compatible
-+ - reg
-+ - '#mbox-cells'
-+ - arm,mhuv2-protocols
-+
-+additionalProperties: false
-+
-+examples:
-+ # Multiple transport protocols implemented by the mailbox controllers
-+ - |
-+ soc {
-+ #address-cells = <2>;
-+ #size-cells = <2>;
-+
-+ mhu_tx: mailbox@2b1f0000 {
-+ #mbox-cells = <2>;
-+ compatible = "arm,mhuv2-tx", "arm,primecell";
-+ reg = <0 0x2b1f0000 0 0x1000>;
-+ clocks = <&clock 0>;
-+ clock-names = "apb_pclk";
-+ interrupts = <0 45 4>;
-+ arm,mhuv2-protocols = <1 5>, <1 2>, <1 5>, <1 7>, <0 2>;
-+ };
-+
-+ mhu_rx: mailbox@2b1f1000 {
-+ #mbox-cells = <2>;
-+ compatible = "arm,mhuv2-rx", "arm,primecell";
-+ reg = <0 0x2b1f1000 0 0x1000>;
-+ clocks = <&clock 0>;
-+ clock-names = "apb_pclk";
-+ interrupts = <0 46 4>;
-+ arm,mhuv2-protocols = <1 1>, <1 7>, <0 2>;
-+ };
-+
-+ mhu_client: scb@2e000000 {
-+ compatible = "fujitsu,mb86s70-scb-1.0";
-+ reg = <0 0x2e000000 0 0x4000>;
-+
-+ mboxes =
-+ //data-transfer protocol with 5 windows, mhu-tx
-+ <&mhu_tx 2 0>,
-+ //data-transfer protocol with 7 windows, mhu-tx
-+ <&mhu_tx 3 0>,
-+ //doorbell protocol channel 4, doorbell 27, mhu-tx
-+ <&mhu_tx 4 27>,
-+ //data-transfer protocol with 1 window, mhu-rx
-+ <&mhu_rx 0 0>;
-+ };
-+ };
---
-2.17.1
-