From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S965276AbbLRIqt (ORCPT ); Fri, 18 Dec 2015 03:46:49 -0500 Received: from mail-bn1on0137.outbound.protection.outlook.com ([157.56.110.137]:43712 "EHLO na01-bn1-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S932099AbbLRIqq (ORCPT ); Fri, 18 Dec 2015 03:46:46 -0500 Authentication-Results: spf=none (sender IP is 192.88.168.50) smtp.mailfrom=lvd4224.freescale.com; vger.kernel.org; dkim=none (message not signed) header.d=none;vger.kernel.org; dmarc=none action=none header.from=freescale.com; From: Sriram Dash To: , CC: , , , , Sriram Dash Subject: [PATCH] drivers/usb : Port USB EHCI host driver for LS102xA Date: Fri, 18 Dec 2015 14:16:29 +0530 Message-ID: <1450428389-15584-1-git-send-email-sriram.dash@freescale.com> X-Mailer: git-send-email 1.7.7.4 X-EOPAttributedMessage: 0 X-Microsoft-Exchange-Diagnostics: 1;BN1BFFO11FD012;1:KaUYn0OK+R0ssbmcOTX2k1c/ovwMbVLNq6ITd7SORaesebuGRhG+EIwA2i2fl0dZ7JenSda0ZMk9ssLWiQqZ2cFgd/SdsTr3lBOvWN8Q1vzC5UiIUadwsujxT4AbO0Gy/HqFWLPB+AiU/j94CvQ0uNE0+Jjw7t4zz36eza1St48exomqpxuACKvNnfQvHGDn2FE7gBRl0ibQsn1/vv0Dpl5CvLQGPuEypWYGZf/64xE5lBnC6DaMTIbP2dRsXnE17VnY5ihUJ3zQOqTvMW6anW7FGsZ5oiFupupacH4lqYEX2Iqiu84KOu9yHbjfGLYMFHrgQiL0SHrkI1cduyXF9ttYciGXgH0fIiw4pihBc++E1LaZqgE5USvIYHrOAUp9 X-Forefront-Antispam-Report: CIP:192.88.168.50;CTRY:US;IPV:NLI;EFV:NLI;SFV:NSPM;SFS:(10019020)(6009001)(6039001)(2980300002)(428002)(189002)(199003)(36756003)(16796002)(1096002)(5003940100001)(50466002)(86372001)(48376002)(47776003)(103686003)(50986999)(19580395003)(5001770100001)(81156007)(19580405001)(1220700001)(92566002)(97736004)(107886002)(87936001)(46386002)(4001430100002)(45336002)(6806005)(42186005)(5001960100002)(5008740100001)(229853001)(105586002)(33646002)(52956003)(50226001)(90966002)(101416001)(106466001)(586003)(189998001)(217873001);DIR:OUT;SFP:1102;SCL:1;SRVR:SN1PR0301MB2128;H:tx30smr01.am.freescale.net;FPR:;SPF:None;PTR:InfoDomainNonexistent;MX:1;A:0;LANG:en; MIME-Version: 1.0 Content-Type: text/plain X-Microsoft-Exchange-Diagnostics: 1;SN1PR0301MB2128;2:QNVRT04vzjyWX/8nG51NK+J/OIqyvEr2Snrs1Uga7SebY6ERfcmyodwlSaAsXd1X+DF/h1mV2dLbAnX0HK/Pa4FLVM/a8YfHp2kgzeXjWTLp1zMccK8Vj50zZ+bQSij5F1AJVOc7dNIep7aQ4P9Ptw==;3:nH4IP19q2MJ+tIOWfoz7XE3o2XQHXfXoXABavg0SDzG6dh2mscx5hXtlJy9590NUt7ORUj/hUfunjxppqyGBdfdgtrBXlsrsa/HdPO/bv+hBqg4ib2/BwxySgR0Z0aFIx7XhHdMcfYs48NO+Qppn8+DCfRD/2zcgkF1W4sPw3LVeNZsfgEoYgTIdSqjb6ILeeSRgBaWZUMZMGUGyfrOImX4Za+Au6Bq2s3f8dTkt1vI=;25:IipujVlSNXOiDySftMABj4L8zhu5/p+1rKxbddIzeWuHGBi7WGWeTalwNplc0tykiB6kttMMwQDP/4pylL8H0tJV9Wo52iimTMAt3ygRgjerw/OKnLOqnCD0paBnIij4IyU1NDQMTUH99B6KY5Fg8SvR13ta6IbqSNmEmJbUoNicmgHbt5c9CeEuqFt6cP0SJXHMBxVoN5TuLPHL41vM88N/7emJTNfF3KVenAcgVZKFp2kIlPMO6dtvTiQJJ6Zj6EUaCbjYk8krMODk8FuDCA== X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:;SRVR:SN1PR0301MB2128; X-Microsoft-Exchange-Diagnostics: 1;SN1PR0301MB2128;20:OBLZVdst8h0/9P2MTLGMibeatT2osHk6psRC6EnStLhGHR7Wv0TmAUF1k0BoyXfSNivzzf4CHzyZnveT9DG7SmrtTj4p82IvP5MdHCTdgP7GQkt/Gglzk/M0WZ6xSHqy6fV6SggEIPZqllO6xhRfe74QioGWI4DWEIXP+pWyfLveyCU7W0s4qX9zcq1D79w5QfXr9uGr0FQ1uiDMrx9tRDRDtcZDorkOxJJTqJX8QWeXxNTMBmY6XP1I+7SUjPutCWLrth99FeXJcyEeki3G5oymCbVsITV9vjZkhlj5ic7nibXMyInv1U4USwv9wtltmKaqHzifbO5HFENm7xb7l+s4AOF/6azGDz4KWn3CgJQ=;4:bXuOtEoukD/geBYfaNP4OXdvgnwWVCpivjTmwAKVPXrihOf6/f2UcH4u5AzIADOPZfEECREG066C+Yt+QTGkfn5u3dfL/cug5TCgPUOCvhHAsKekJsCeQ8rfmdkJqr4Ugoj22y0FnLYxOmwYJAHZsb5eFbRXzB2wM2wzbY4Mtz59EfoiGNhfUtzzLbIrQWlRDIf0U6qR1uIhGwAElG5XAB67tr+DCquko+EjB610+ELgFR/DjF4JUvIkYOGTt5BdeO9GW5YnpnH+g/cVFC4uahT/9yv4SEb//u+GTinoGZmpGcFdXCaqQyYoZnbmSJ1JMJmGLT35SBMg/HDlQZpxqT25adBDE0uh3iAWWwYb5HgJYfrCU+UhWlGUd4cLRBe6gh4O+AziqP6XMXrtpNBRw/rUPGESyvHshyi5va9s51rxzLLGDRjvJDd0STrmHmId X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(101931422205132); X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(601004)(2401047)(520078)(5005006)(8121501046)(3002001)(10201501046);SRVR:SN1PR0301MB2128;BCL:0;PCL:0;RULEID:;SRVR:SN1PR0301MB2128; X-Forefront-PRVS: 07943272E1 X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1;SN1PR0301MB2128;23:oStVsYKMiSBRDRw5qL3Js1Cos4FpBHsxq56a1SF?= =?us-ascii?Q?/oQCRD98DFuooiTP2zUT6Ty5pyx0kqxZnWMZKvUg9fSbkblWj2lpxHKjCehQ?= =?us-ascii?Q?TQuuHsgjaABrLjvsknqK5W7obGlMAKNuIKK2Vscvo0kUsK6xp+0w0VDxN3Tn?= =?us-ascii?Q?gMmCLAgomAhbvp8yF6qpJsOmkyI4OCjAFGqj3Azk277s+yRyjkC4hspeAzTb?= =?us-ascii?Q?dNsRbYg/r0S27Crzm2G4TmNXsf0wyFbppzGj64JFiq0qoOD3hWPFqguvw2G/?= =?us-ascii?Q?a7AFTQVCYuJDu+A3RawLQGrTNhdpWRymseX5P9JpvhALqmluK/P2njSkTkBH?= =?us-ascii?Q?K2cVDx0q/ZBo0K9rYJXsOAiTbIW6AfthPCnpDy5trbcqENI750+yEV9fws6S?= =?us-ascii?Q?zMTAAQruCBBUc3kGw9BC0dxuhVZxgmyUntHkkwk/ztJ67JU5ow9EHL6fJhfy?= =?us-ascii?Q?wlyVvTfKvbXBXhrJSlRIsnm1GVliAZAcbK3pQOf+0FlVTsQsKc289X9A242S?= =?us-ascii?Q?sXVw1NzZdx37E6ueo4Rt9MxCtKSQuIi+aDCtKsBWDqO/OenmYOGAdVaVxM7r?= =?us-ascii?Q?0Pf60xLx0nPuj7K2S+KhbdjsqUVx6CWRuaUfUrVnYMDdwtHk/RwCDwhMSRCg?= =?us-ascii?Q?DmerAWsKn5VqsYWijlbVhQkbLkt2Xq02poo93DWhonK/+9jIbira0s8uvy1G?= =?us-ascii?Q?a8cE4lQjTTEH3i4DtmZxiwDrPk8l7cQjFBXkwQ+pe+kZU/JD5PAupkAMNx7b?= =?us-ascii?Q?InLzkT9jL2K2AT80GgAng2SdplRRgAq4oir7x6+A2iyxU3HpTFK7KLUKHDGZ?= =?us-ascii?Q?MubHMVBRDPjHQrEsj3fPtlcx88hVKGdKxvRHjmuCIqYR+NHWtDZ98KJMoe6t?= =?us-ascii?Q?oIDVMqgxJOQBlyp8Wk3lADNQIaR4+GmG/N66XhqvaWjwoyg0wpJFl6PFaWWF?= =?us-ascii?Q?FM+5FeYQKM8ZJzbTrMPWl3KJOgJTVHPrk4xjDOhlyIVm53RlPVY7wJnzGogC?= =?us-ascii?Q?0rn45aun2WY0Cv8fnYspm0ogS7xqpEg8iRtlWM5sLrERTpKPKKN/3Ih1aeY6?= =?us-ascii?Q?iHJ4JH/HVPUeln7DvalDzUeuusz2hIAYO+n595z94Bl7IHlLrad0aMw62vts?= =?us-ascii?Q?DVpE0kajVH7mUBpVrNxT/zgdxh8yJHCxQ?= X-Microsoft-Exchange-Diagnostics: 1;SN1PR0301MB2128;5:Tm+9QuhrLQwwS5xYYmiNXepvzT/WZxDC1a0fNgfOp/WMRrDgues7PNA4seBTtcUZCKTeH1WhsZNQHcnhqmKCNSfPA7E84CgRXhCr79tKKtKz4G+sVDaXAIjINQz3veAw8sru140ECONCY3igdPf8gA==;24:E0kHIAmLcKxdk8oEw5kv6CzNnyzj+WEreNnAFsInnFiESPvMdliDA2LOycVQns5T1Ff9QIhbukuLHVh5bduFDRbiTd9anwb23Kp0Wj6EmKw= X-OriginatorOrg: freescale.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 18 Dec 2015 08:46:33.3477 (UTC) X-MS-Exchange-CrossTenant-Id: 710a03f5-10f6-4d38-9ff4-a80b81da590d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=710a03f5-10f6-4d38-9ff4-a80b81da590d;Ip=[192.88.168.50];Helo=[tx30smr01.am.freescale.net] X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: SN1PR0301MB2128 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Change Power architecture specific APIs such as in_be32/out_be32 for registers read/write. Instead using ioread/writebe32 which are defined for power as well as arm architecture Signed-off-by: Nikhil Badola Signed-off-by: Sriram Dash Signed-off-by: Ramneek Mehresh --- drivers/usb/host/ehci-fsl.c | 24 ++++++++++++++---------- 1 file changed, 14 insertions(+), 10 deletions(-) diff --git a/drivers/usb/host/ehci-fsl.c b/drivers/usb/host/ehci-fsl.c index 3b6eb21..9f5ffb6 100644 --- a/drivers/usb/host/ehci-fsl.c +++ b/drivers/usb/host/ehci-fsl.c @@ -35,6 +35,7 @@ #include #include #include +#include #include "ehci.h" #include "ehci-fsl.h" @@ -241,7 +242,8 @@ static int ehci_fsl_setup_phy(struct usb_hcd *hcd, * to portsc */ if (pdata->check_phy_clk_valid) { - if (!(in_be32(non_ehci + FSL_SOC_USB_CTRL) & PHY_CLK_VALID)) { + if (!(ioread32be(non_ehci + FSL_SOC_USB_CTRL) & + PHY_CLK_VALID)) { dev_warn(hcd->self.controller, "USB PHY clock invalid\n"); return -EINVAL; @@ -273,9 +275,11 @@ static int ehci_fsl_usb_setup(struct ehci_hcd *ehci) /* Setup Snooping for all the 4GB space */ /* SNOOP1 starts from 0x0, size 2G */ - out_be32(non_ehci + FSL_SOC_USB_SNOOP1, 0x0 | SNOOP_SIZE_2GB); + iowrite32be(0x0 | SNOOP_SIZE_2GB, + non_ehci + FSL_SOC_USB_SNOOP1); /* SNOOP2 starts from 0x80000000, size 2G */ - out_be32(non_ehci + FSL_SOC_USB_SNOOP2, 0x80000000 | SNOOP_SIZE_2GB); + iowrite32be(0x80000000 | SNOOP_SIZE_2GB, + non_ehci + FSL_SOC_USB_SNOOP2); } /* Deal with USB erratum A-005275 */ @@ -309,13 +313,13 @@ static int ehci_fsl_usb_setup(struct ehci_hcd *ehci) if (pdata->have_sysif_regs) { #ifdef CONFIG_FSL_SOC_BOOKE - out_be32(non_ehci + FSL_SOC_USB_PRICTRL, 0x00000008); - out_be32(non_ehci + FSL_SOC_USB_AGECNTTHRSH, 0x00000080); + iowrite32be(0x00000008, non_ehci + FSL_SOC_USB_PRICTRL); + iowrite32be(0x00000080, non_ehci + FSL_SOC_USB_AGECNTTHRSH); #else - out_be32(non_ehci + FSL_SOC_USB_PRICTRL, 0x0000000c); - out_be32(non_ehci + FSL_SOC_USB_AGECNTTHRSH, 0x00000040); + iowrite32be(0x0000000c, non_ehci + FSL_SOC_USB_PRICTRL); + iowrite32be(0x00000040, non_ehci + FSL_SOC_USB_AGECNTTHRSH); #endif - out_be32(non_ehci + FSL_SOC_USB_SICTRL, 0x00000001); + iowrite32be(0x00000001, non_ehci + FSL_SOC_USB_SICTRL); } return 0; @@ -554,7 +558,7 @@ static int ehci_fsl_drv_suspend(struct device *dev) if (!fsl_deep_sleep()) return 0; - ehci_fsl->usb_ctrl = in_be32(non_ehci + FSL_SOC_USB_CTRL); + ehci_fsl->usb_ctrl = ioread32be(non_ehci + FSL_SOC_USB_CTRL); return 0; } @@ -577,7 +581,7 @@ static int ehci_fsl_drv_resume(struct device *dev) usb_root_hub_lost_power(hcd->self.root_hub); /* Restore USB PHY settings and enable the controller. */ - out_be32(non_ehci + FSL_SOC_USB_CTRL, ehci_fsl->usb_ctrl); + iowrite32be(ehci_fsl->usb_ctrl, non_ehci + FSL_SOC_USB_CTRL); ehci_reset(ehci); ehci_fsl_reinit(ehci); -- 2.1.0