From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752755AbbJHGYE (ORCPT ); Thu, 8 Oct 2015 02:24:04 -0400 Received: from mailout2.w1.samsung.com ([210.118.77.12]:27943 "EHLO mailout2.w1.samsung.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752565AbbJHGYB (ORCPT ); Thu, 8 Oct 2015 02:24:01 -0400 X-AuditID: cbfec7f5-f794b6d000001495-81-56160bfe01e6 Subject: Re: [RFT 0/3] usb: usb3503: Fix probing on Arndale board (missing phy) To: Krzysztof Kozlowski , Greg Kroah-Hartman , Peter Chen , Ben Gamari , Wolfram Sang , linux-usb@vger.kernel.org, linux-kernel@vger.kernel.org, devicetree@vger.kernel.org, Kukjin Kim , linux-arm-kernel@lists.infradead.org, linux-samsung-soc@vger.kernel.org References: <1444177807-15524-1-git-send-email-k.kozlowski@samsung.com> <56152BB2.4020202@samsung.com> <561606FE.2090007@samsung.com> Cc: Kevin Hilman , Arnd Bergmann , riku.voipio@linaro.org From: Marek Szyprowski Message-id: <56160BFD.4050702@samsung.com> Date: Thu, 08 Oct 2015 08:23:57 +0200 User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:38.0) Gecko/20100101 Thunderbird/38.3.0 MIME-version: 1.0 In-reply-to: <561606FE.2090007@samsung.com> Content-type: text/plain; charset=utf-8; format=flowed Content-transfer-encoding: 7bit X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFprGIsWRmVeSWpSXmKPExsVy+t/xy7r/uMXCDJ73Wln8nXSM3WLW/Lss FvOPnGO1aF68ns3i9QtDi/7Hr5ktnm5+zGSx6fE1VovLu+awWcw4v4/JYtGyVmaLY7P/Mll0 netnslh5YhazA5/H71+TGD3+He5n8ti0qpPN4861PWwe++euYffYvKTeo2/LKkaPM7+dPU6e esLi8XmTXABXFJdNSmpOZllqkb5dAlfGsTWdbAUTxCq2Pd3N1sD4QLCLkYNDQsBEovGCfhcj J5ApJnHh3nq2LkYuDiGBpYwST95PZIFwnjNKtJ28ygxSJSzgLzFj6SlmkISIwHRmiTszlzFD VLUzSnQsf8MCUsUsECdxe8c/sA42AUOJrrddbCA2r4CWxJG2p4wgNouAqsTSZ3fBakQFYiTe b1rFCFEjKPFj8j2wOZwC2hITLn1nhJhpJvHl5WFWCFteYvOat8wTGAVmIWmZhaRsFpKyBYzM qxhFU0uTC4qT0nON9IoTc4tL89L1kvNzNzFCYuvrDsalx6wOMQpwMCrx8P4wFgkTYk0sK67M PcQowcGsJMJrwiUWJsSbklhZlVqUH19UmpNafIhRmoNFSZx35q73IUIC6YklqdmpqQWpRTBZ Jg5OqQbG+JcX2c5FbVO6L7no2W3n/ouWfgfPL9m7PGffvkePpmizSzxxerzgfWqv6Fyfd6yM 0xi9ljlprlvzaOM/eeXTZS5+3VK+cezhBV9fzyzklp4dXuSXfUBx5ae04Mm7mFr+xXQmVetf WaY5az3nGl29DbcP/b+3+ZvMJZaLfv/aL/Z+Yfiz9IDXIyWW4oxEQy3mouJEAGKY0FOpAgAA Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hello, On 2015-10-08 08:02, Krzysztof Kozlowski wrote: > On 07.10.2015 23:26, Marek Szyprowski wrote: >> Hello, >> >> On 2015-10-07 02:30, Krzysztof Kozlowski wrote: >>> Introduction >>> ============ >>> This patchset tries to fix probing of usb3503 on Arndale board >>> if the Samsung PHY driver is probed later (or built as a module). >>> >>> *The patchset was not tested on Arndale board.* >>> I don't have that board. Please test it and say if the usb3503 >>> deferred probe >>> works fine and the issue is solved. >>> >>> The patchset was tested on Odroid U3 board (which is different!) >>> in a simulated environment. It is not sufficient testing. >>> >>> >>> Difference >>> ========== >>> The usb3503 device driver can be used as a I2C device (on Odroid U3) >>> or as a platform device connected through phy (on Arndale). In the second >>> case the necessary phy reference has to be obtained and enabled. >>> >>> For some details please look also at thread [0][1]. >>> >>> [0] >>> http://lists.infradead.org/pipermail/linux-arm-kernel/2015-June/348524.html >>> >>> [1] >>> http://lists.infradead.org/pipermail/linux-arm-kernel/2015-June/348875.html >>> >>> >> I'm not sure that this is the correct approach. usb3503 chip is simply >> connected >> to Exynos USB2 phy, so it visible on the USB bus. The real driver that >> controls USB2 >> PHY is Exynos EHCI driver and USB3503 should not mess around it. > The ehci node (usb@12110000) has one port configured and it takes one > PHY reference (phy of id 1 - USB host). I can't see driver taking > reference to HSIC0 or HSIC1 phys... Since I cannot diagnose the error I > don't know what is really expected here. It looks that EHCI in Exynos 5250 and 5420 still use old phy bindings. For the reference, see Exynos4 dts and exynos4412-odroidu3.dts to check how to enable more than one USB port (Odroid U3 has both HSIC ports enabled). > >> In my opinion all that is needed in case of Arndale board is forcing >> reset of >> usb3503 chip after successful EHCI and USB2 PHY initialization (for some >> reason >> initialization of usb3503 chip must be done after usb host initialization). >> However I have no idea which driver should trigger this reset. Right now >> I didn't >> find any good solution for additional control for devices which are on >> autoprobed >> bus like usb. > The reset is done at the end of usb3503's probe. The question "why > usb3503 has to be initialized after EHCI and USB PHY" is still valid... I remember that I saw some code to reset HSIC device after phy power on in case of HSIC-connected modem chip, so maybe this is somehow common for HSIC chips (which are some special case of 'embedded usb'). Best regards -- Marek Szyprowski, PhD Samsung R&D Institute Poland