From patchwork Wed Jan 21 04:51:32 2015 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Joonyoung Shim X-Patchwork-Id: 431355 X-Patchwork-Delegate: promsoft@gmail.com Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from theia.denx.de (theia.denx.de [85.214.87.163]) by ozlabs.org (Postfix) with ESMTP id 71EB114029E for ; Wed, 21 Jan 2015 15:51:22 +1100 (AEDT) Received: from localhost (localhost [127.0.0.1]) by theia.denx.de (Postfix) with ESMTP id F275A4B61C; Wed, 21 Jan 2015 05:51:19 +0100 (CET) Received: from theia.denx.de ([127.0.0.1]) by localhost (theia.denx.de [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id f-ljRXsvsQh3; Wed, 21 Jan 2015 05:51:19 +0100 (CET) Received: from theia.denx.de (localhost [127.0.0.1]) by theia.denx.de (Postfix) with ESMTP id 576F54B60B; Wed, 21 Jan 2015 05:51:19 +0100 (CET) Received: from localhost (localhost [127.0.0.1]) by theia.denx.de (Postfix) with ESMTP id D26044B60B for ; Wed, 21 Jan 2015 05:51:14 +0100 (CET) Received: from theia.denx.de ([127.0.0.1]) by localhost (theia.denx.de [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id QkMDdif1mfVy for ; Wed, 21 Jan 2015 05:51:14 +0100 (CET) X-policyd-weight: NOT_IN_SBL_XBL_SPAMHAUS=-1.5 NOT_IN_SPAMCOP=-1.5 NOT_IN_BL_NJABL=-1.5 (only DNSBL check requested) Received: from mailout1.samsung.com (mailout1.samsung.com [203.254.224.24]) by theia.denx.de (Postfix) with ESMTPS id 6577E4B600 for ; Wed, 21 Jan 2015 05:51:12 +0100 (CET) Received: from epcpsbgr3.samsung.com (u143.gpu120.samsung.co.kr [203.254.230.143]) by mailout1.samsung.com (Oracle Communications Messaging Server 7u4-24.01 (7.0.4.24.0) 64bit (built Nov 17 2011)) with ESMTP id <0NII004DUG584T60@mailout1.samsung.com> for u-boot@lists.denx.de; Wed, 21 Jan 2015 13:51:08 +0900 (KST) Received: from epcpsbgm2.samsung.com ( [172.20.52.112]) by epcpsbgr3.samsung.com (EPCPMTA) with SMTP id AE.C6.18484.C303FB45; Wed, 21 Jan 2015 13:51:08 +0900 (KST) X-AuditID: cbfee68f-f791c6d000004834-73-54bf303c5d76 Received: from epmmp2 ( [203.254.227.17]) by epcpsbgm2.samsung.com (EPCPMTA) with SMTP id 10.EF.09430.C303FB45; Wed, 21 Jan 2015 13:51:08 +0900 (KST) Received: from localhost.localdomain ([10.252.81.123]) by mmp2.samsung.com (Oracle Communications Messaging Server 7u4-24.01 (7.0.4.24.0) 64bit (built Nov 17 2011)) with ESMTPA id <0NII00CRDG588990@mmp2.samsung.com>; Wed, 21 Jan 2015 13:51:08 +0900 (KST) From: Joonyoung Shim To: u-boot@lists.denx.de Date: Wed, 21 Jan 2015 13:51:32 +0900 Message-id: <1421815892-13160-1-git-send-email-jy0922.shim@samsung.com> X-Mailer: git-send-email 1.9.1 X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFlrELMWRmVeSWpSXmKPExsWyRsSkQNfGYH+IwZXrehYv7l1kseg40sJo 8XZvJ7sDs8fZOzsYPfq2rGIMYIrisklJzcksSy3St0vgyrj9ZApbwWLein99b5gbGGdxdzFy ckgImEjMmXCBFcIWk7hwbz1bFyMXh5DAUkaJZVfnMsEUdR94zwqRmM4ocXfNDiYIp41J4vfu SewgVWwCehJ3th0H6xARkJD41X+VEcRmFjCUmLr0MBuILSzgLXHi4n4WEJtFQFVi9u+lYDW8 Au4Si2/fYoPYJidx8thksG0SAmfYJL6sbWWCaBCQ+Db5EFAzB1BCVmLTAWaIekmJgytusExg FFzAyLCKUTS1ILmgOCm9yFivODG3uDQvXS85P3cTIzDoTv971r+D8e4B60OMAhyMSjy8LxT3 hwixJpYVV+YeYjQF2jCRWUo0OR8Y2nkl8YbGZkYWpiamxkbmlmZK4rwLpX4GCwmkJ5akZqem FqQWxReV5qQWH2Jk4uCUamAUfLlZ4OFOOf6ClXry2z1+uAg+3FpxyfXRh+fKjQ1rt8g2Ox95 7Vm5ZPPMS2y/Mg/VRttyvlkvzOeovKS8RP2v5S4mN9WnzesaluWfKuGJDTaaILpI+44mg9zn XXZ+1Uwxf39MW3ln7SyBD0nOW1o3npkzZe6yFV6xFSrNDJkfG65q8q+aKrlbiaU4I9FQi7mo OBEAvQdd1DUCAAA= X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFnrDLMWRmVeSWpSXmKPExsVy+t9jQV0bg/0hBidOq1u8uHeRxaLjSAuj xdu9newOzB5n7+xg9OjbsooxgCmqgdEmIzUxJbVIITUvOT8lMy/dVsk7ON453tTMwFDX0NLC XEkhLzE31VbJxSdA1y0zB2iLkkJZYk4pUCggsbhYSd8O04TQEDddC5jGCF3fkCC4HiMDNJCw hjHj9pMpbAWLeSv+9b1hbmCcxd3FyMkhIWAi0X3gPSuELSZx4d56ti5GLg4hgemMEnfX7GCC cNqYJH7vnsQOUsUmoCdxZ9txJhBbREBC4lf/VUYQm1nAUGLq0sNsILawgLfEiYv7WUBsFgFV idm/l4LV8Aq4Syy+fYsNYpucxMljk1knMHIvYGRYxSiaWpBcUJyUnmukV5yYW1yal66XnJ+7 iREc0s+kdzCuarA4xCjAwajEw/tCcX+IEGtiWXFl7iFGCQ5mJRFeRQmgEG9KYmVValF+fFFp TmrxIUZToO0TmaVEk/OB8ZZXEm9obGJmZGlkbmhhZGyuJM6rZN8WIiSQnliSmp2aWpBaBNPH xMEp1cA47ads+aklLqulMmrr2trf1sy06Y/ja+SezKV49vXUVN1VVu9CWv7wluz0FJnjlDBV aLWgUfrFxT//Pn/8Y/Ge4N1qjyZ+DmQNrF10IUhnV9Ey94hvfTru/F1fDhQdWfDnwmrLdHX7 ay+vzTjcfz3v7cqCm+s6rW6H/Yx+9DRnYvE35bSoMzP3KLEUZyQaajEXFScCAKjyOa1/AgAA DLP-Filter: Pass X-MTR: 20000000000000000@CPGS X-CFilter-Loop: Reflected Subject: [U-Boot] [PATCH] EXYNOS5: Add function to enable exynos5420 usbdev phy ctrl X-BeenThere: u-boot@lists.denx.de X-Mailman-Version: 2.1.13 Precedence: list List-Id: U-Boot discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , MIME-Version: 1.0 Sender: u-boot-bounces@lists.denx.de Errors-To: u-boot-bounces@lists.denx.de Exynos5420 has different registers with other exynos5 SoCs to control usb device phy, so need separated function to enable exynos5420 usb device phy. Signed-off-by: Joonyoung Shim --- I used "usbdev" instead of "usbdrd" on function name because registers name prefix is usbdev_. arch/arm/cpu/armv7/exynos/power.c | 28 ++++++++++++++++++++++++++-- 1 file changed, 26 insertions(+), 2 deletions(-) diff --git a/arch/arm/cpu/armv7/exynos/power.c b/arch/arm/cpu/armv7/exynos/power.c index 1520d64..1b12051 100644 --- a/arch/arm/cpu/armv7/exynos/power.c +++ b/arch/arm/cpu/armv7/exynos/power.c @@ -102,10 +102,34 @@ static void exynos5_set_usbdrd_phy_ctrl(unsigned int enable) } } +static void exynos5420_set_usbdev_phy_ctrl(unsigned int enable) +{ + struct exynos5420_power *power = + (struct exynos5420_power *)samsung_get_base_power(); + + if (enable) { + /* Enabling USBDEV_PHY */ + setbits_le32(&power->usbdev_phy_control, + POWER_USB_DRD_PHY_CTRL_EN); + setbits_le32(&power->usbdev1_phy_control, + POWER_USB_DRD_PHY_CTRL_EN); + } else { + /* Disabling USBDEV_PHY */ + clrbits_le32(&power->usbdev_phy_control, + POWER_USB_DRD_PHY_CTRL_EN); + clrbits_le32(&power->usbdev1_phy_control, + POWER_USB_DRD_PHY_CTRL_EN); + } +} + void set_usbdrd_phy_ctrl(unsigned int enable) { - if (cpu_is_exynos5()) - exynos5_set_usbdrd_phy_ctrl(enable); + if (cpu_is_exynos5()) { + if (proid_is_exynos5420() || proid_is_exynos5800()) + exynos5420_set_usbdev_phy_ctrl(enable); + else + exynos5_set_usbdrd_phy_ctrl(enable); + } } static void exynos5_dp_phy_control(unsigned int enable)