From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1761490AbbKUTDE (ORCPT ); Sat, 21 Nov 2015 14:03:04 -0500 Received: from proxima.lp0.eu ([81.2.80.65]:33799 "EHLO proxima.lp0.eu" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752787AbbKUTDA (ORCPT ); Sat, 21 Nov 2015 14:03:00 -0500 To: "devicetree@vger.kernel.org" , Ralf Baechle , Thomas Gleixner , Jason Cooper , Marc Zyngier , Kevin Cernekee , Florian Fainelli , Wim Van Sebroeck , Miguel Gaio , Maxime Bizon , Linux Kernel Mailing List , linux-mips@linux-mips.org, linux-watchdog@vger.kernel.org From: Simon Arlott Cc: Rob Herring , Pawel Moll , Mark Rutland , Ian Campbell , Kumar Gala Subject: [PATCH 1/4] clocksource: Add brcm,bcm6345-timer device tree binding Message-ID: <5650BFD6.5030700@simon.arlott.org.uk> Date: Sat, 21 Nov 2015 19:02:46 +0000 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.3.0 MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Add device tree binding for the BCM6345 timer. This is required for the BCM6345 watchdog which needs to respond to one of the timer interrupts. Signed-off-by: Simon Arlott --- .../bindings/timer/brcm,bcm6345-timer.txt | 57 ++++++++++++++++++++++ 1 file changed, 57 insertions(+) create mode 100644 Documentation/devicetree/bindings/timer/brcm,bcm6345-timer.txt diff --git a/Documentation/devicetree/bindings/timer/brcm,bcm6345-timer.txt b/Documentation/devicetree/bindings/timer/brcm,bcm6345-timer.txt new file mode 100644 index 0000000..2593907 --- /dev/null +++ b/Documentation/devicetree/bindings/timer/brcm,bcm6345-timer.txt @@ -0,0 +1,57 @@ +Broadcom BCM6345 Timer + +This block is a timer that is connected to one interrupt on the main interrupt +controller and functions as a programmable interrupt controller for timer events. + +- 3 to 4 independent timers with their own maskable level interrupt bit (but not + per CPU because there is only one parent interrupt and the timers share it) + +- 1 watchdog timer with an unmaskable level interrupt + +- Contains one enable/status word pair + +- No atomic set/clear operations + +The lack of per CPU ability of timers makes them unusable as a set of +clockevent devices, otherwise they could be attached to the remaining +interrupts. + +The BCM6318 also has a separate interrupt for every timer except the watchdog. + +Required properties: + +- compatible: should be "brcm,bcm-timer", "brcm,bcm6345-timer" +- reg: specifies the base physical address and size of the registers, excluding + the watchdog registers +- interrupt-controller: identifies the node as an interrupt controller +- #interrupt-cells: specifies the number of cells needed to encode an interrupt + source, should be 1. +- interrupt-parent: specifies the phandle to the parent interrupt controller(s) + this one is cascaded from +- interrupts: specifies the interrupt line(s) in the interrupt-parent controller + node for the main timer interrupt, followed by the individual timer interrupts + if present; valid values depend on the type of parent interrupt controller + +Example: + +timer: timer@0x10000080 { + compatible = "brcm,bcm63168-timer", "brcm,bcm6345-timer"; + reg = <0x10000080 0x1c>; + + interrupt-controller; + #interrupt-cells = <1>; + + interrupt-parent = <&periph_intc>; + interrupts = <0>; +}; + +timer: timer@0x10000040 { + compatible = "brcm,bcm6318-timer", "brcm,bcm6345-timer"; + reg = <0x10000040 0x28>; + + interrupt-controller; + #interrupt-cells = <1>; + + interrupt-parent = <&periph_intc>; + interrupts = <31>, <0>, <1>, <2>, <3>; +}; -- 2.1.4 -- Simon Arlott From mboxrd@z Thu Jan 1 00:00:00 1970 From: Simon Arlott Subject: [PATCH 1/4] clocksource: Add brcm,bcm6345-timer device tree binding Date: Sat, 21 Nov 2015 19:02:46 +0000 Message-ID: <5650BFD6.5030700@simon.arlott.org.uk> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit Return-path: Sender: devicetree-owner-u79uwXL29TY76Z2rM5mHXA@public.gmane.org To: "devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org" , Ralf Baechle , Thomas Gleixner , Jason Cooper , Marc Zyngier , Kevin Cernekee , Florian Fainelli , Wim Van Sebroeck , Miguel Gaio , Maxime Bizon , Linux Kernel Mailing List , linux-mips-6z/3iImG2C8G8FEW9MqTrA@public.gmane.org, linux-watchdog-u79uwXL29TY76Z2rM5mHXA@public.gmane.org Cc: Rob Herring , Pawel Moll , Mark Rutland , Ian Campbell , Kumar Gala List-Id: devicetree@vger.kernel.org Add device tree binding for the BCM6345 timer. This is required for the BCM6345 watchdog which needs to respond to one of the timer interrupts. Signed-off-by: Simon Arlott --- .../bindings/timer/brcm,bcm6345-timer.txt | 57 ++++++++++++++++++++++ 1 file changed, 57 insertions(+) create mode 100644 Documentation/devicetree/bindings/timer/brcm,bcm6345-timer.txt diff --git a/Documentation/devicetree/bindings/timer/brcm,bcm6345-timer.txt b/Documentation/devicetree/bindings/timer/brcm,bcm6345-timer.txt new file mode 100644 index 0000000..2593907 --- /dev/null +++ b/Documentation/devicetree/bindings/timer/brcm,bcm6345-timer.txt @@ -0,0 +1,57 @@ +Broadcom BCM6345 Timer + +This block is a timer that is connected to one interrupt on the main interrupt +controller and functions as a programmable interrupt controller for timer events. + +- 3 to 4 independent timers with their own maskable level interrupt bit (but not + per CPU because there is only one parent interrupt and the timers share it) + +- 1 watchdog timer with an unmaskable level interrupt + +- Contains one enable/status word pair + +- No atomic set/clear operations + +The lack of per CPU ability of timers makes them unusable as a set of +clockevent devices, otherwise they could be attached to the remaining +interrupts. + +The BCM6318 also has a separate interrupt for every timer except the watchdog. + +Required properties: + +- compatible: should be "brcm,bcm-timer", "brcm,bcm6345-timer" +- reg: specifies the base physical address and size of the registers, excluding + the watchdog registers +- interrupt-controller: identifies the node as an interrupt controller +- #interrupt-cells: specifies the number of cells needed to encode an interrupt + source, should be 1. +- interrupt-parent: specifies the phandle to the parent interrupt controller(s) + this one is cascaded from +- interrupts: specifies the interrupt line(s) in the interrupt-parent controller + node for the main timer interrupt, followed by the individual timer interrupts + if present; valid values depend on the type of parent interrupt controller + +Example: + +timer: timer@0x10000080 { + compatible = "brcm,bcm63168-timer", "brcm,bcm6345-timer"; + reg = <0x10000080 0x1c>; + + interrupt-controller; + #interrupt-cells = <1>; + + interrupt-parent = <&periph_intc>; + interrupts = <0>; +}; + +timer: timer@0x10000040 { + compatible = "brcm,bcm6318-timer", "brcm,bcm6345-timer"; + reg = <0x10000040 0x28>; + + interrupt-controller; + #interrupt-cells = <1>; + + interrupt-parent = <&periph_intc>; + interrupts = <31>, <0>, <1>, <2>, <3>; +}; -- 2.1.4 -- Simon Arlott -- To unsubscribe from this list: send the line "unsubscribe devicetree" in the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org More majordomo info at http://vger.kernel.org/majordomo-info.html