Merge branch 'fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/evalenti/linux...
[linux/fpc-iii.git] / Documentation / devicetree / bindings / hwlock / hwlock.txt
blob085d1f5c916a42d53d06f70eddfb002634172b39
1 Generic hwlock bindings
2 =======================
4 Generic bindings that are common to all the hwlock platform specific driver
5 implementations.
7 Please also look through the individual platform specific hwlock binding
8 documentations for identifying any additional properties specific to that
9 platform.
11 hwlock providers:
12 =================
14 Required properties:
15 - #hwlock-cells:        Specifies the number of cells needed to represent a
16                         specific lock.
18 hwlock users:
19 =============
21 Consumers that require specific hwlock(s) should specify them using the
22 property "hwlocks", and an optional "hwlock-names" property.
24 Required properties:
25 - hwlocks:              List of phandle to a hwlock provider node and an
26                         associated hwlock args specifier as indicated by
27                         #hwlock-cells. The list can have just a single hwlock
28                         or multiple hwlocks, with each hwlock represented by
29                         a phandle and a corresponding args specifier.
31 Optional properties:
32 - hwlock-names:         List of hwlock name strings defined in the same order
33                         as the hwlocks, with one name per hwlock. Consumers can
34                         use the hwlock-names to match and get a specific hwlock.
37 1. Example of a node using a single specific hwlock:
39 The following example has a node requesting a hwlock in the bank defined by
40 the node hwlock1. hwlock1 is a hwlock provider with an argument specifier
41 of length 1.
43         node {
44                 ...
45                 hwlocks = <&hwlock1 2>;
46                 ...
47         };
49 2. Example of a node using multiple specific hwlocks:
51 The following example has a node requesting two hwlocks, a hwlock within
52 the hwlock device node 'hwlock1' with #hwlock-cells value of 1, and another
53 hwlock within the hwlock device node 'hwlock2' with #hwlock-cells value of 2.
55         node {
56                 ...
57                 hwlocks = <&hwlock1 2>, <&hwlock2 0 3>;
58                 ...
59         };