From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S933033AbcETMYa (ORCPT ); Fri, 20 May 2016 08:24:30 -0400 Received: from mout.kundenserver.de ([212.227.126.130]:61287 "EHLO mout.kundenserver.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S932526AbcETMY1 (ORCPT ); Fri, 20 May 2016 08:24:27 -0400 From: Arnd Bergmann To: Andy Gross Cc: Felipe Balbi , David Brown , Peter Chen , Greg Kroah-Hartman , Alan Stern , Mark Brown , Bjorn Andersson , Linux Kernel list , linux-arm-msm , linux-soc@vger.kernel.org, linux-usb@vger.kernel.org Subject: Re: [RFC 4/8] usb: phy: move TCSR driver into new file Date: Fri, 20 May 2016 14:24:14 +0200 Message-ID: <5468592.H0dRIBAxrx@wuerfel> User-Agent: KMail/4.11.5 (Linux/3.16.0-10-generic; KDE/4.11.5; x86_64; ; ) In-Reply-To: References: <1463606653-325131-1-git-send-email-arnd@arndb.de> <1463606653-325131-5-git-send-email-arnd@arndb.de> MIME-Version: 1.0 Content-Transfer-Encoding: 7Bit Content-Type: text/plain; charset="us-ascii" X-Provags-ID: V03:K0:75gssmEU9O5SlOz8ST98uOIP0VtA2xL5PpjPi+iD06z95RshNnq I5LyFcAOJRG7rimkR67w9Dnxzilv0RXGJt8ZGJAuz7vPTHixMtrabo1PCKAYoQQ90ZD9qVa yKehJWApBsu+e3j3mNc9hQsFgWuiUFWEf13cEWY3WGc65Igs+hdi1RM4nmrHddND3KvgyZX rsgxDA42wtko31yxYsg4Q== X-UI-Out-Filterresults: notjunk:1;V01:K0:A2/MUM4CsnA=:otrwtTSsybwlgJoZBzbDm7 MUg6H3kWk4dnzfAUdi+thotvj90bl+dwuKHxCflbBBcendOhKNmBkaSW7M3paBgZ9i9J6aCqu WiC7/URYxlCFC3V2Zs5fTecKAEVzEJTobzgjpM6cb7lclocW+W5biGpIIHPXnaBuj/BMVJ27F g57SLmaa/pBiXEyUUZg7c+zIMK99kzLiShFGJAJXmLT7b0A9+H3C7xN/zLV3GkzZaHbLAzsUP 3bAvOEDZGVvfAd8R2ZWb3FpQwlOOeFadWOiOmajralkh5Q2YHQB1GJJYxEv6W9zA4/9QWW95d ZXgzMFdBmRXulG2Obn1jInzF60xDnhgDtYOqR5y9rK/p7AKIbTS7mgj0O1LxlVarqUSRqrRET 8NNoUUmcIStcGX7dyP3lmjZEVaOq12NM9fCX7WOUzVgo+tErdgJheLt9G2SIYlWQAVlkL+cSs uN2eLWyVao01QuvNacpOiR/2er6IB3yTgVuJxP0Vc/YksVA2YhzayYFLo0vZZ0x8airnBv1SS Qjjp8xnisrqGrY3kzxrmPEM4FSDSF3XMMzy9HYc9tVCJr9ixNApk0ObOjseTHWOwSDxIgX3vY I6TbcKhueIVhOYbpgGwAswbtvVUsBMRkqMPfgkua/FP1cJJorE20s3rFWXWg/Kj4FFAme5jAN 73MVcBmF4bXNL6o3kNnwWJG2Q55yJW5ZDiN99Wrnh9w5LSJY4yTpUEb4dWEQeGL3h2BqaNXyz IJYFUeXdK97ALpdp Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Thursday 19 May 2016 14:08:43 Andy Gross wrote: > > + * - Tim > > + */ > > +int qcom_tcsr_phy_sel(u32 val) > > +{ > > + void __iomem *phy_select; > > + int ret; > > + > > + phy_select = ioremap(USB2_PHY_SEL, 4); > > + > > + if (!phy_select) { > > + ret = -ENOMEM; > > + goto out; > > + } > > + /* Enable second PHY with the OTG port */ > > + writel(0x1, phy_select); > > + ret = 0; > > +out: > > + iounmap(phy_select); > > + return ret; > > +} > > +EXPORT_SYMBOL_GPL(qcom_tcsr_phy_sel); > > I'd rather do something like what we did for the GSBI. It needed to > change some phy related bits in the TCSR as well. We defined the TCSR > as a syscon, with binding documentation under mfd. If we add a syscon > entry and use it if it is present, we can deal with that pretty > easily. The offsets change for each soc, and this would also fix that > issue because we can change offset based on tcsr compat. Works for me, but be aware that this will break the server chips, as ACPI has no support for regmap devices. I think that's fine, they should really handle this register access in the firmware anyway rather than relying on a hardcoded MMIO location. Arnd