[PATCH 1/4] phy: Add provision for calibrating phy.
From: Vivek Gautam <hidden>
Date: 2014-07-09 09:02:39
Also in:
linux-samsung-soc, lkml
Hi, On Mon, Jun 9, 2014 at 9:19 AM, Pratyush Anand [off-list ref] wrote:
On Fri, Jun 06, 2014 at 08:12:12PM +0800, Vivek Gautam wrote:quoted
Some PHY controllers may need to calibrate certain PHY settings after initialization of the controller and sometimes even after initializing the PHY-consumer too. Add support for the same in order to let consumers do so in need. Signed-off-by: vivek Gautam <redacted> --- drivers/phy/phy-core.c | 36 ++++++++++++++++++++++++++++++++++++ include/linux/phy/phy.h | 7 +++++++ 2 files changed, 43 insertions(+)diff --git a/drivers/phy/phy-core.c b/drivers/phy/phy-core.c index 74d4346..92d31a3 100644 --- a/drivers/phy/phy-core.c +++ b/drivers/phy/phy-core.c@@ -376,6 +376,42 @@ int phy_power_off(struct phy *phy) EXPORT_SYMBOL_GPL(phy_power_off); /** + * phy_calibrate - calibrate a phy post initialization + * @phy: Pointer to 'phy' from consumer + * + * For certain PHYs, it may be needed to calibrate few phy parameters + * post initialization. The need to calibrate may arise after theFor USB you may need to calibrate phy after each new connection. If so, why not to use already existing struct usb_phy's notify_connect.
The phy_calibrate will rather be a one time phenomenon. On exynos atleast the case is : the phy settings for PIPE3 phy on DWC3 controller need to be configured post hcd reset. so that we don't need to re-configure these phy settings on every connect. Moreover *there are certain devices* which need these PHY settings even to show a connect-status-change. So, it would rather be not useful to create a 'phy_notify_connect' API in drivers/phy/ and use the same for this purpose. -- Best Regards Vivek Gautam Samsung R&D Institute, Bangalore India