From patchwork Sat Jul 21 10:32:08 2012 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Vivek Gautam X-Patchwork-Id: 1223601 Return-Path: X-Original-To: patchwork-linux-arm@patchwork.kernel.org Delivered-To: patchwork-process-083081@patchwork1.kernel.org Received: from merlin.infradead.org (merlin.infradead.org [205.233.59.134]) by patchwork1.kernel.org (Postfix) with ESMTP id 158EC3FC5A for ; Sat, 21 Jul 2012 10:29:04 +0000 (UTC) Received: from localhost ([::1] helo=merlin.infradead.org) by merlin.infradead.org with esmtp (Exim 4.76 #1 (Red Hat Linux)) id 1SsWrC-0003kI-31; Sat, 21 Jul 2012 10:24:18 +0000 Received: from mailout1.samsung.com ([203.254.224.24]) by merlin.infradead.org with esmtp (Exim 4.76 #1 (Red Hat Linux)) id 1SsWn4-0003GB-3v for linux-arm-kernel@lists.infradead.org; Sat, 21 Jul 2012 10:20:08 +0000 Received: from epcpsbgm2.samsung.com (mailout1.samsung.com [203.254.224.24]) by mailout1.samsung.com (Oracle Communications Messaging Server 7u4-24.01(7.0.4.24.0) 64bit (built Nov 17 2011)) with ESMTP id <0M7I00KQX9X3CWE0@mailout1.samsung.com> for linux-arm-kernel@lists.infradead.org; Sat, 21 Jul 2012 19:17:42 +0900 (KST) X-AuditID: cbfee61b-b7f566d000005c8a-8c-500a81c59943 Received: from epmmp1.local.host ( [203.254.227.16]) by epcpsbgm2.samsung.com (EPCPMTA) with SMTP id EF.C9.23690.5C18A005; Sat, 21 Jul 2012 19:17:41 +0900 (KST) Received: from localhost.localdomain ([107.108.73.106]) by mmp1.samsung.com (Oracle Communications Messaging Server 7u4-24.01 (7.0.4.24.0) 64bit (built Nov 17 2011)) with ESMTPA id <0M7I000KP9WQC260@mmp1.samsung.com> for linux-arm-kernel@lists.infradead.org; Sat, 21 Jul 2012 19:17:41 +0900 (KST) From: Vivek Gautam To: kgene.kim@samsung.com, l.majewski@samsung.com, kyungmin.park@samsung.com, thomas.abraham@linaro.org, linux-samsung-soc@vger.kernel.org, linux-arm-kernel@lists.infradead.org, devicetree-discuss@lists.ozlabs.org, m.szyprowski@samsung.com Subject: [PATCH 7/8 v2] ARM: EXYNOS5: Add XHCI device from device tree Date: Sat, 21 Jul 2012 16:02:08 +0530 Message-id: <1342866729-30460-8-git-send-email-gautam.vivek@samsung.com> X-Mailer: git-send-email 1.7.0.4 In-reply-to: <1342866729-30460-1-git-send-email-gautam.vivek@samsung.com> References: <1342866729-30460-1-git-send-email-gautam.vivek@samsung.com> X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFnrMJMWRmVeSWpSXmKPExsVy+t9jAd2jjVwBBjOWWVtsenyN1YHRY/OS +gDGKC6blNSczLLUIn27BK6MAws/MRZcE6/Y9O8qUwPjFuEuRk4OCQETiaW/9rND2GISF+6t Z+ti5OIQEljEKPGnYQ4zhLOBSeLAtv+sIFVsAroSTW93MYIkRAS+Mkqc/LoOrIpZYD+jxI/L n5hBqoQF3CReT3gF1sEioCpx9NFupi5GDg5eAQ+JqUv1INYpSLQuOwS2mlPAU2Ln1M9MILYQ UMnpG42MExh5FzAyrGIUTS1ILihOSs810itOzC0uzUvXS87P3cQI9voz6R2MqxosDjEKcDAq 8fAyLOMMEGJNLCuuzD3EKMHBrCTC+7qMK0CINyWxsiq1KD++qDQntfgQozQHi5I4r4n3V38h gfTEktTs1NSC1CKYLBMHp1QDI1vd9BcvGJ8uelavdZLJ9rPANn2LI+5eW15Vpxuxzm877hpT VP1x59rjxuwHd8ur+62aspHr6olfX0VevHzkvfZTQt6hT/+eZC1Rll/0KPvEotAC5/M80x+6 ZkhqthSGn/k+KetQ9b6uL25Vn5P9Z7tqKJ/K6jRvnvPklzb3vlxt86j0q+8quJVYijMSDbWY i4oTAT1RggH2AQAA X-TM-AS-MML: No X-Spam-Note: CRM114 invocation failed X-Spam-Score: -1.9 (-) X-Spam-Report: SpamAssassin version 3.3.2 on merlin.infradead.org summary: Content analysis details: (-1.9 points) pts rule name description ---- ---------------------- -------------------------------------------------- -0.0 T_RP_MATCHES_RCVD Envelope sender domain matches handover relay domain -1.9 BAYES_00 BODY: Bayes spam probability is 0 to 1% [score: 0.0000] Cc: yulgon.kim@samsung.com, av.tikhomirov@samsung.com, prashanth.g@samsung.com, boyko.lee@samsung.com, joshi@samsung.com, a.kesavan@samsung.com, olofj@google.com, ajaykumar.rs@samsung.com X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , MIME-Version: 1.0 Sender: linux-arm-kernel-bounces@lists.infradead.org Errors-To: linux-arm-kernel-bounces+patchwork-linux-arm=patchwork.kernel.org@lists.infradead.org This patch adds EHCI device from device tree for exynos5 and adds platform data. Signed-off-by: Vivek Gautam --- .../devicetree/bindings/usb/exynos-usb.txt | 19 +++++++++++++++++++ arch/arm/boot/dts/exynos5250.dtsi | 6 ++++++ arch/arm/mach-exynos/mach-exynos5-dt.c | 9 +++++++++ 3 files changed, 34 insertions(+), 0 deletions(-) diff --git a/Documentation/devicetree/bindings/usb/exynos-usb.txt b/Documentation/devicetree/bindings/usb/exynos-usb.txt index 45dadca..b2349fe 100644 --- a/Documentation/devicetree/bindings/usb/exynos-usb.txt +++ b/Documentation/devicetree/bindings/usb/exynos-usb.txt @@ -39,3 +39,22 @@ ehci { samsung,vbus-gpio = <&gpx2 6 1 3 3>; }; +XHCI +Required properties: + - compatible: should be "samsung,exynos-xhci" for USB 3.0 + DWC3 controller in host mode. + - reg: physical base address of the controller and length + of memory mapped. + - interrupts: interrupt number to the cpu. + - samsung,vbus-gpio: if present, specifies the GPIO + that needs to be pulled up for the bus to be powered. + +Optional properties: + - samsung,vbus-gpio: if present, specifies the GPIO + that needs to be pulled up for the bus to be powered. + +xhci { + compatible = "samsung,exynos-xhci"; + reg = <0x12000000 0x10000>; + interrupts = <0 72 0>; +}; diff --git a/arch/arm/boot/dts/exynos5250.dtsi b/arch/arm/boot/dts/exynos5250.dtsi index 988f52a..bc36584 100644 --- a/arch/arm/boot/dts/exynos5250.dtsi +++ b/arch/arm/boot/dts/exynos5250.dtsi @@ -70,6 +70,12 @@ interrupts = <0 71 0>; }; + xhci { + compatible = "samsung,exynos-xhci"; + reg = <0x12000000 0x10000>; + interrupts = <0 72 0>; + }; + rtc { compatible = "samsung,s3c6410-rtc"; reg = <0x101E0000 0x100>; diff --git a/arch/arm/mach-exynos/mach-exynos5-dt.c b/arch/arm/mach-exynos/mach-exynos5-dt.c index 0cc626e..fc1ed3f 100644 --- a/arch/arm/mach-exynos/mach-exynos5-dt.c +++ b/arch/arm/mach-exynos/mach-exynos5-dt.c @@ -10,6 +10,7 @@ */ #include +#include #include #include @@ -34,6 +35,12 @@ static struct s5p_ehci_platdata smdk5250_ehci_pdata = { .phy_exit = s5p_usb_phy_exit, }; +static struct dwc3_exynos_data smdk5250_xhci_pdata = { + .phy_type = S5P_USB_PHY_DRD, + .phy_init = s5p_usb_phy_init, + .phy_exit = s5p_usb_phy_exit, +}; + /* * The following lookup table is used to override device names when devices * are registered from device tree. This is temporarily added to enable @@ -73,6 +80,8 @@ static const struct of_dev_auxdata exynos5250_auxdata_lookup[] __initconst = { "exynos-ohci", &smdk5250_ohci_pdata), OF_DEV_AUXDATA("samsung,exynos-ehci", 0x12110000, "s5p-ehci", &smdk5250_ehci_pdata), + OF_DEV_AUXDATA("samsung,exynos-xhci", 0x12000000, + "exynos-dwc3", &smdk5250_xhci_pdata), {}, };