Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752678AbdFLOZq (ORCPT ); Mon, 12 Jun 2017 10:25:46 -0400 Received: from mx07-00252a01.pphosted.com ([62.209.51.214]:38774 "EHLO mx07-00252a01.pphosted.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752171AbdFLOZl (ORCPT ); Mon, 12 Jun 2017 10:25:41 -0400 From: Phil Elwell Subject: [PATCH v2 4/4] ARM: dts: bcm283x: Add and use bcm2835-aux-intc To: Thomas Gleixner , Jason Cooper , Marc Zyngier , Rob Herring , Mark Rutland , Florian Fainelli , Stefan Wahren , Eric Anholt , Russell King , Michael Turquette , Stephen Boyd , devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-rpi-kernel@lists.infradead.org, linux-clk@vger.kernel.org Message-ID: <248bb555-6dff-daf5-ca63-7d55c2992fce@raspberrypi.org> Date: Mon, 12 Jun 2017 15:25:33 +0100 User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:52.0) Gecko/20100101 Thunderbird/52.1.1 MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Language: en-GB Content-Transfer-Encoding: 7bit X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10432:,, definitions=2017-06-12_10:,, signatures=0 X-Proofpoint-Spam-Details: rule=outbound_spam_notspam policy=outbound_spam score=0 priorityscore=1501 malwarescore=0 suspectscore=0 phishscore=0 bulkscore=0 spamscore=0 clxscore=1015 lowpriorityscore=0 impostorscore=0 adultscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.0.1-1703280000 definitions=main-1706120249 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 2668 Lines: 83 Add a DT node for the AUX interrupt controller, updating the AUX peripheral nodes to make use of it. Note that the IO region overlaps that of the AUX clock driver, but by the time the intc driver appears in the tree the clock driver should have been updated to ioremap the region without reserving it, along with preparing for a point in the future where the clock node MEM resource may be shrunk to the single word it actually needs. Signed-off-by: Phil Elwell --- arch/arm/boot/dts/bcm283x.dtsi | 27 +++++++++++++++++++++++---- 1 file changed, 23 insertions(+), 4 deletions(-) diff --git a/arch/arm/boot/dts/bcm283x.dtsi b/arch/arm/boot/dts/bcm283x.dtsi index cc721a4..1febb6e 100644 --- a/arch/arm/boot/dts/bcm283x.dtsi +++ b/arch/arm/boot/dts/bcm283x.dtsi @@ -1,6 +1,7 @@ #include #include #include +#include #include /* firmware-provided startup stubs live here, where the secondary CPUs are @@ -459,7 +460,22 @@ status = "disabled"; }; - aux: aux@0x7e215000 { + auxintc: interrupt-controller@7e215000 { + compatible = "brcm,bcm2835-aux-intc"; + reg = <0x7e215000 0x4>; + interrupts = <1 29>; + interrupt-controller; + #interrupt-cells = <1>; + }; + + /* + * N.B. This node overlaps with the previous node, + * but the updated driver remaps the region without + * reserving it. After a suitable period this + * node can be reduced to cover only the single word + * at 7e215004. + */ + aux: aux@7e215000 { compatible = "brcm,bcm2835-aux"; #clock-cells = <1>; reg = <0x7e215000 0x8>; @@ -469,7 +485,8 @@ uart1: serial@7e215040 { compatible = "brcm,bcm2835-aux-uart"; reg = <0x7e215040 0x40>; - interrupts = <1 29>; + interrupt-parent = <&auxintc>; + interrupts = ; clocks = <&aux BCM2835_AUX_CLOCK_UART>; status = "disabled"; }; @@ -477,7 +494,8 @@ spi1: spi@7e215080 { compatible = "brcm,bcm2835-aux-spi"; reg = <0x7e215080 0x40>; - interrupts = <1 29>; + interrupt-parent = <&auxintc>; + interrupts = ; clocks = <&aux BCM2835_AUX_CLOCK_SPI1>; #address-cells = <1>; #size-cells = <0>; @@ -487,7 +505,8 @@ spi2: spi@7e2150c0 { compatible = "brcm,bcm2835-aux-spi"; reg = <0x7e2150c0 0x40>; - interrupts = <1 29>; + interrupt-parent = <&auxintc>; + interrupts = ; clocks = <&aux BCM2835_AUX_CLOCK_SPI2>; #address-cells = <1>; #size-cells = <0>; -- 1.9.1