Skip to content

Commit

Permalink
Documentation: dt: add common bindings for hwspinlock
Browse files Browse the repository at this point in the history
This patch adds the generic common bindings used to represent
a hwlock device and use/request locks in a device-tree build.

Each hwspinlock provider should have the '#hwlock-cells' property,
which represents the number of cells to be used for representing
a specific hwspinlock. Client users shall use the property
'hwlocks' for requesting specific lock(s).

Note that the document is named hwlock.txt deliberately to keep
it a bit more generic.

Cc: Rob Herring <robh+dt@kernel.org>
Signed-off-by: Suman Anna <s-anna@ti.com>
Reviewed-by: Bjorn Andersson <bjorn.andersson@sonymobile.com>
Acked-by: Mark Rutland <mark.rutland@arm.com>
Signed-off-by: Ohad Ben-Cohen <ohad@wizery.com>
  • Loading branch information
Suman Anna authored and Ohad Ben-Cohen committed May 2, 2015
1 parent b787f68 commit 0ce8cf2
Showing 1 changed file with 59 additions and 0 deletions.
59 changes: 59 additions & 0 deletions Documentation/devicetree/bindings/hwlock/hwlock.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,59 @@
Generic hwlock bindings
=======================

Generic bindings that are common to all the hwlock platform specific driver
implementations.

Please also look through the individual platform specific hwlock binding
documentations for identifying any additional properties specific to that
platform.

hwlock providers:
=================

Required properties:
- #hwlock-cells: Specifies the number of cells needed to represent a
specific lock.

hwlock users:
=============

Consumers that require specific hwlock(s) should specify them using the
property "hwlocks", and an optional "hwlock-names" property.

Required properties:
- hwlocks: List of phandle to a hwlock provider node and an
associated hwlock args specifier as indicated by
#hwlock-cells. The list can have just a single hwlock
or multiple hwlocks, with each hwlock represented by
a phandle and a corresponding args specifier.

Optional properties:
- hwlock-names: List of hwlock name strings defined in the same order
as the hwlocks, with one name per hwlock. Consumers can
use the hwlock-names to match and get a specific hwlock.


1. Example of a node using a single specific hwlock:

The following example has a node requesting a hwlock in the bank defined by
the node hwlock1. hwlock1 is a hwlock provider with an argument specifier
of length 1.

node {
...
hwlocks = <&hwlock1 2>;
...
};

2. Example of a node using multiple specific hwlocks:

The following example has a node requesting two hwlocks, a hwlock within
the hwlock device node 'hwlock1' with #hwlock-cells value of 1, and another
hwlock within the hwlock device node 'hwlock2' with #hwlock-cells value of 2.

node {
...
hwlocks = <&hwlock1 2>, <&hwlock2 0 3>;
...
};

0 comments on commit 0ce8cf2

Please sign in to comment.