Re: [RESEND PATCH 1/7] devicetree: bindings: Document domains controller bindings

From: Benjamin GAIGNARD
Date: Mon Apr 29 2019 - 04:50:34 EST



On 3/18/19 11:05 AM, Benjamin Gaignard wrote:
> Document commons domains controller bindings for controller
> and client devices.
>
> Signed-off-by: Benjamin Gaignard <benjamin.gaignard@xxxxxx>

Hi Rob,

In the first version of this series you have asked me to rework the
framework description.
Does this v2 feel better for you ?

Benjamin

> ---
> .../bindings/bus/domains/domainsctrl.txt | 55 ++++++++++++++++++++++
> 1 file changed, 55 insertions(+)
> create mode 100644 Documentation/devicetree/bindings/bus/domains/domainsctrl.txt
>
> diff --git a/Documentation/devicetree/bindings/bus/domains/domainsctrl.txt b/Documentation/devicetree/bindings/bus/domains/domainsctrl.txt
> new file mode 100644
> index 000000000000..f82e5e11ea64
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/bus/domains/domainsctrl.txt
> @@ -0,0 +1,55 @@
> +Common Domains Controller bindings properties
> +
> +Bus domains controllers allow to divided system on chip into multiple domains
> +that can be used to select by who hardware blocks could be accessed.
> +A domain could be a cluster of CPUs (or coprocessors), a range of addresses or
> +a group of hardware blocks.
> +
> +This device tree bindings can be used to bind bus domain consumer devices with
> +their bus domains provided by bus domains controllers. A bus domain provider
> +can be represented by any node in the device tree and can provide one or more
> +bus domains. A consumer node can refer to the provider by a phandle and a set
> +of phandle arguments of length specified by the #domainctrl-cells property in
> +the bus domain provider node.
> +
> +==Bus domain provider==
> +
> +Required properties:
> +- #domainctrl-cells : Number of cells in a bus domain specifier;
> + Can be any value as specified by device tree binding
> + documentation of a particular provider.
> +
> +==Bus domain consumer==
> +
> +Required properties:
> +- domainsctrl-X : A list of bus domain specifiers, as defined by
> + bindings of the bus domain controller that is the
> + bus domain provider.
> +
> +Optional properties:
> +- domainsctrl-names : A list of bus domain name string sorted in the same
> + order as the domainsctrl-X proprerties. Consumer
> + drivers will use domainsctrl-names to match bus
> + domains with bus domains specifiers.
> + Note that "default" and "unbind" are reserved names
> + used by the framework.
> +
> +Example of usage with:
> +- a domains controller with a 2 parameters cell
> +- a domains controller with a 3 parameters cell
> +- a client device node using the both controllers and 2 configurations
> + named "default" and "unbind"
> +
> +ctrl0: ctrl@0 {
> + #domainctrl-cells = <2>;
> +};
> +
> +ctrl1: ctrl@1 {
> + #domainctrl-cells = <3>;
> +};
> +
> +foo@0 {
> + domains-names = "default", "unbind";
> + domainctrl-0 = <&ctrl0 1 2>, <&ctrl1 3 4 5>;
> + domainctrl-1 = <&ctrl0 6 7>, <&ctrl1 8 9 0>;
> +};