lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:   Mon, 29 May 2017 11:09:19 +0200
From:   Philipp Zabel <p.zabel@...gutronix.de>
To:     Joel Stanley <joel@....id.au>
Cc:     Rob Herring <robh+dt@...nel.org>,
        Mark Rutland <mark.rutland@....com>,
        devicetree@...r.kernel.org, linux-kernel@...r.kernel.org,
        Benjamin Herrenschmidt <benh@...nel.crashing.org>,
        Andrew Jeffery <andrew@...id.au>
Subject: Re: [PATCH 1/2] dt-bindings: reset: Add bindings for basic reset
 controller

Hi Joel,

On Fri, 2017-05-26 at 13:32 +1000, Joel Stanley wrote:
> This adds the bindings documentation for a basic single-register reset
> controller.
> 
> The bindings describe a single 32-bit register that contains up to 32
> reset lines, each deasserted by clearing the appropriate bit in the
> register.
>
> Signed-off-by: Joel Stanley <joel@....id.au>
> ---
>  .../devicetree/bindings/reset/reset-basic.txt      | 31 ++++++++++++++++++++++
>  1 file changed, 31 insertions(+)
>  create mode 100644 Documentation/devicetree/bindings/reset/reset-basic.txt
> 
> diff --git a/Documentation/devicetree/bindings/reset/reset-basic.txt b/Documentation/devicetree/bindings/reset/reset-basic.txt
> new file mode 100644
> index 000000000000..7341e04e7904
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/reset/reset-basic.txt
> @@ -0,0 +1,31 @@
> +Basic single-register reset controller
> +======================================
> +
> +This describes a generic reset controller where the reset lines are controlled
> +by single bits within a 32-bit memory location. The memory location is assumed
> +to be part of a syscon regmap.

There are a few more assumptions. First, that the reset line is asserted
by setting the corresponding bits, and that it is deasserted by clearing
them. Further, that the bits are not auto-clearing. And then, that the
same bit can be read back to provide the current reset line status.

> +Reset controller required properties:
> + - compatible: should be "reset-basic"
> + - #reset-cells: must be set to 1
> + - reg: reset register location within regmap
> +
> +Device node required properties:
> + - resets phandle
> + - bit number, counting from zero, for the desired reset line. Max is 31.
> +
> +Example:
> +
> +syscon {
> +	compatible = "syscon";
> +
> +	uart_rest: rest@0c {

The device node name should be "reset-controller", and leading zeroes
should be dropped from the address part:

	uart_rest: reset-controller@c {

> +		compatible = "reset-basic";

Maybe this is not necessary for the example, but the compatible should
contain a vendor/hardware specific string first.

> +		#reset-cells = <1>;
> +		reg = <0x0c>;
> +	};
> +}
> +
> +&uart {
> +	resets = <&uart_rest 0x04>;

I'd use decimal here.

regards
Philipp

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ