From mboxrd@z Thu Jan 1 00:00:00 1970 From: Raveendra Padasalagi Subject: [PATCH v4 3/3] ARM: dts: use syscon in cygnus touchscreen dt node Date: Sat, 27 Feb 2016 12:29:56 +0530 Message-ID: <1456556396-4759-4-git-send-email-raveendra.padasalagi@broadcom.com> References: <1456556396-4759-1-git-send-email-raveendra.padasalagi@broadcom.com> Return-path: In-Reply-To: <1456556396-4759-1-git-send-email-raveendra.padasalagi@broadcom.com> Sender: linux-input-owner@vger.kernel.org To: Dmitry Torokhov , Russell King , Rob Herring , Arnd Bergmann , devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-input@vger.kernel.org Cc: Pawel Moll , Mark Rutland , Ian Campbell , Kumar Gala , Jonathan Richardson , Jon Mason , Florian Fainelli , Anup Patel , Ray Jui , Scott Branden , linux-kernel@vger.kernel.org, bcm-kernel-feedback-list@broadcom.com, Raveendra Padasalagi List-Id: devicetree@vger.kernel.org In Cygnus SOC touch screen controller registers are shared with ADC and flex timer. Using readl/writel could lead to race condition. So touchscreen driver is enhanced to support syscon based register access to take care of mutually exclusive access. This patch enables syscon support in touchscreen driver by adding necessary properties in touchscreen dt node and in addition to this renamed existing "tsc" touchscreen node name to "touchscreen". Signed-off-by: Raveendra Padasalagi Reviewed-by: Ray Jui Reviewed-by: Scott Branden --- arch/arm/boot/dts/bcm-cygnus.dtsi | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/arch/arm/boot/dts/bcm-cygnus.dtsi b/arch/arm/boot/dts/bcm-cygnus.dtsi index 3878793..b42fe55 100644 --- a/arch/arm/boot/dts/bcm-cygnus.dtsi +++ b/arch/arm/boot/dts/bcm-cygnus.dtsi @@ -351,9 +351,16 @@ <&pinctrl 142 10 1>; }; - touchscreen: tsc@180a6000 { + ts_adc_syscon: ts_adc_syscon@180a6000 { + compatible = "brcm,iproc-ts-adc-syscon", "syscon"; + reg = <0x180a6000 0xc30>; + }; + + touchscreen: touchscreen@180a6000 { compatible = "brcm,iproc-touchscreen"; - reg = <0x180a6000 0x40>; + #address-cells = <1>; + #size-cells = <1>; + ts_syscon = <&ts_adc_syscon>; clocks = <&asiu_clks BCM_CYGNUS_ASIU_ADC_CLK>; clock-names = "tsc_clk"; interrupts = ; -- 1.9.1