Hi Arnd,
Great thanks for your time! I appreciate it, those help me a lot. all the feedback and comment inline below :
On 4 May 2015 at 23:21, Arnd Bergmann arnd@arndb.de wrote:
On Monday 04 May 2015 20:04:44 fu.wei@linaro.org wrote:
From: Fu Wei fu.wei@linaro.org
Signed-off-by: Fu Wei fu.wei@linaro.org
.../devicetree/bindings/watchdog/sbsa-gwdt.txt | 41
++++++++++++++++++++++
1 file changed, 41 insertions(+) create mode 100644
Documentation/devicetree/bindings/watchdog/sbsa-gwdt.txt
diff --git a/Documentation/devicetree/bindings/watchdog/sbsa-gwdt.txt
b/Documentation/devicetree/bindings/watchdog/sbsa-gwdt.txt
new file mode 100644 index 0000000..14c9ec5 --- /dev/null +++ b/Documentation/devicetree/bindings/watchdog/sbsa-gwdt.txt @@ -0,0 +1,41 @@ +* SBSA(Server Base System Architecture) Generic Watchdog
+The SBSA Generic Watchdog Timer is used for resuming system operation +after two stages of timeout. +More details: ARM-DEN-0029 - Server Base System Architecture (SBSA)
+Required properties: +- compatible : Should at least contain "arm,sbsa-gwdt".
+- reg : base physical address of the frames and length of memory mapped
region.
+- reg-names : Should contain the resource reg names to show the order of
- the values in "reg".
- Must include the following entries : "refresh_frame", "control_frame".
I'd suggest naming them "refresh" and "control" without the _frame postfix.
OK, will fix it
+Note that #address-cells, #size-cells, and ranges shall be present to
ensure
+the CPU can address a frame's registers.
I don't see what you mean here. These properties should only be needed if there are child devices below the watchdog, but there are none.
For now, we only have AArch64 hardware , so #address-cells = <2>; #size-cells = <2>; are unnecessary,
but if there is some other Soc have this, maybe we need this. Maybe we can say: these shall be present if the parent device's ones are different from it
or just delete it
+watchdog@2a450000 {
compatible = "arm,sbsa-gwdt";
#address-cells = <2>;
#size-cells = <2>;
reg = <0x0 0x2a450000 0 0x10000
0x0 0x2a440000 0 0x10000>;
Better write this as
reg = <0x0 0x2a450000 0 0x10000>, <0x0 0x2a440000 0 0x10000>;
for consistency.
OK , will fix it
reg-names = "refresh_frame", "control_frame";
interrupts = <0 27 4>;
interrupt-names: "ws0"
typo.
Sorry, "interrupt-names" ?
timeout-sec = <10 5>;
+};
Arnd