0001 Generic hwlock bindings
0002 =======================
0003
0004 Generic bindings that are common to all the hwlock platform specific driver
0005 implementations.
0006
0007 Please also look through the individual platform specific hwlock binding
0008 documentations for identifying any additional properties specific to that
0009 platform.
0010
0011 hwlock providers:
0012 =================
0013
0014 Required properties:
0015 - #hwlock-cells: Specifies the number of cells needed to represent a
0016 specific lock.
0017
0018 hwlock users:
0019 =============
0020
0021 Consumers that require specific hwlock(s) should specify them using the
0022 property "hwlocks", and an optional "hwlock-names" property.
0023
0024 Required properties:
0025 - hwlocks: List of phandle to a hwlock provider node and an
0026 associated hwlock args specifier as indicated by
0027 #hwlock-cells. The list can have just a single hwlock
0028 or multiple hwlocks, with each hwlock represented by
0029 a phandle and a corresponding args specifier.
0030
0031 Optional properties:
0032 - hwlock-names: List of hwlock name strings defined in the same order
0033 as the hwlocks, with one name per hwlock. Consumers can
0034 use the hwlock-names to match and get a specific hwlock.
0035
0036
0037 1. Example of a node using a single specific hwlock:
0038
0039 The following example has a node requesting a hwlock in the bank defined by
0040 the node hwlock1. hwlock1 is a hwlock provider with an argument specifier
0041 of length 1.
0042
0043 node {
0044 ...
0045 hwlocks = <&hwlock1 2>;
0046 ...
0047 };
0048
0049 2. Example of a node using multiple specific hwlocks:
0050
0051 The following example has a node requesting two hwlocks, a hwlock within
0052 the hwlock device node 'hwlock1' with #hwlock-cells value of 1, and another
0053 hwlock within the hwlock device node 'hwlock2' with #hwlock-cells value of 2.
0054
0055 node {
0056 ...
0057 hwlocks = <&hwlock1 2>, <&hwlock2 0 3>;
0058 ...
0059 };