mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Kishon Vijay Abraham I <kishon@ti.com>
To: <gregkh@linuxfoundation.org>
Cc: <kishon@ti.com>, <linux-kernel@vger.kernel.org>
Subject: [PATCH 18/25] usb: dwc3: host: convey the PHYs to xhci
Date: Thu, 27 Nov 2014 11:56:10 +0530	[thread overview]
Message-ID: <1417069577-1169-19-git-send-email-kishon@ti.com> (raw)
In-Reply-To: <1417069577-1169-1-git-send-email-kishon@ti.com>

From: Heikki Krogerus <heikki.krogerus@linux.intel.com>

On some platforms a PHY may need to be handled also in the
host controller driver. Exynos5420 SoC requires some "PHY
tuning" based on the USB speed. This patch delivers dwc3's
PHYs to the xhci platform device when it's created.

Signed-off-by: Heikki Krogerus <heikki.krogerus@linux.intel.com>
Tested-by: Vivek Gautam <gautam.vivek@samsung.com>
Acked-by: Felipe Balbi <balbi@ti.com>
Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com>
---
 drivers/usb/dwc3/host.c |   22 ++++++++++++++++------
 1 file changed, 16 insertions(+), 6 deletions(-)

diff --git a/drivers/usb/dwc3/host.c b/drivers/usb/dwc3/host.c
index dcb8ca0..12bfd3c 100644
--- a/drivers/usb/dwc3/host.c
+++ b/drivers/usb/dwc3/host.c
@@ -29,8 +29,7 @@ int dwc3_host_init(struct dwc3 *dwc)
 	xhci = platform_device_alloc("xhci-hcd", PLATFORM_DEVID_AUTO);
 	if (!xhci) {
 		dev_err(dwc->dev, "couldn't allocate xHCI device\n");
-		ret = -ENOMEM;
-		goto err0;
+		return -ENOMEM;
 	}
 
 	dma_set_coherent_mask(&xhci->dev, dwc->dev->coherent_dma_mask);
@@ -60,22 +59,33 @@ int dwc3_host_init(struct dwc3 *dwc)
 		goto err1;
 	}
 
+	phy_create_lookup(dwc->usb2_generic_phy, "usb2-phy",
+			  dev_name(&xhci->dev));
+	phy_create_lookup(dwc->usb3_generic_phy, "usb3-phy",
+			  dev_name(&xhci->dev));
+
 	ret = platform_device_add(xhci);
 	if (ret) {
 		dev_err(dwc->dev, "failed to register xHCI device\n");
-		goto err1;
+		goto err2;
 	}
 
 	return 0;
-
+err2:
+	phy_remove_lookup(dwc->usb2_generic_phy, "usb2-phy",
+			  dev_name(&xhci->dev));
+	phy_remove_lookup(dwc->usb3_generic_phy, "usb3-phy",
+			  dev_name(&xhci->dev));
 err1:
 	platform_device_put(xhci);
-
-err0:
 	return ret;
 }
 
 void dwc3_host_exit(struct dwc3 *dwc)
 {
+	phy_remove_lookup(dwc->usb2_generic_phy, "usb2-phy",
+			  dev_name(&dwc->xhci->dev));
+	phy_remove_lookup(dwc->usb3_generic_phy, "usb3-phy",
+			  dev_name(&dwc->xhci->dev));
 	platform_device_unregister(dwc->xhci);
 }
-- 
1.7.9.5


  parent reply	other threads:[~2014-11-27  6:26 UTC|newest]

Thread overview: 28+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-11-27  6:25 [GIT PULL 00/25] phy: for 3.19 Kishon Vijay Abraham I
2014-11-27  6:25 ` [PATCH 01/25] phy: Add PHY header file for DT x Driver defines Kishon Vijay Abraham I
2014-11-27  6:25 ` [PATCH 02/25] phy: miphy28lp: Add Device Tree bindings for the MiPHY28lp Kishon Vijay Abraham I
2014-11-27  6:25 ` [PATCH 03/25] phy: miphy28lp: Provide support for the MiPHY28lp Generic PHY Kishon Vijay Abraham I
2014-11-27  7:00   ` sanjeev sharma
2014-11-27  6:25 ` [PATCH 04/25] phy: miphy28lp: Add SSC support for SATA Kishon Vijay Abraham I
2014-11-27  6:25 ` [PATCH 05/25] phy: miphy28lp: Add SSC support for PCIE Kishon Vijay Abraham I
2014-11-27  6:25 ` [PATCH 06/25] phy: miphy28lp: Tune tx impedance across Soc cuts Kishon Vijay Abraham I
2014-11-27  6:25 ` [PATCH 07/25] phy: phy-core: use the np present in of_phandle_args to get the PHY Kishon Vijay Abraham I
2014-11-27  6:26 ` [PATCH 08/25] phy: sun4i: add support for USB phy0 Kishon Vijay Abraham I
2014-11-27  6:26 ` [PATCH 09/25] phy: berlin-sata: Move PHY_BASE into private data struct Kishon Vijay Abraham I
2014-11-27  6:26 ` [PATCH 10/25] phy: berlin-sata: Add support for BG2 SATA PHY Kishon Vijay Abraham I
2014-11-27  6:26 ` [PATCH 11/25] phy: berlin-sata: Document BG2 compatible Kishon Vijay Abraham I
2014-11-27  6:26 ` [PATCH 12/25] phy: add the Berlin USB PHY driver Kishon Vijay Abraham I
2014-11-27  6:26 ` [PATCH 13/25] Documentation: bindings: add doc for the Berlin USB PHY Kishon Vijay Abraham I
2014-11-27  6:26 ` [PATCH 14/25] phy: safer to_phy() macro Kishon Vijay Abraham I
2014-11-27  6:26 ` [PATCH 15/25] phy: improved lookup method Kishon Vijay Abraham I
2014-11-27  6:26 ` [PATCH 16/25] phy: twl4030: use the new " Kishon Vijay Abraham I
2014-11-27  6:26 ` [PATCH 17/25] phy: remove the old " Kishon Vijay Abraham I
2014-11-27  6:26 ` Kishon Vijay Abraham I [this message]
2014-11-27  6:26 ` [PATCH 19/25] phy: exynos5-usbdrd: Add pipe-clk, utmi-clk and itp-clk support Kishon Vijay Abraham I
2014-11-27  6:26 ` [PATCH 20/25] phy: exynos5-usbdrd: Add facility for VBUS-BOOST-5V supply Kishon Vijay Abraham I
2014-11-27  6:26 ` [PATCH 21/25] phy: exynos7-usbdrd: Update dependency for ARCH_EXYNOS Kishon Vijay Abraham I
2014-11-27  6:26 ` [PATCH 22/25] phy: Use PTR_ERR_OR_ZERO to fix warning raised by coccinelle Kishon Vijay Abraham I
2014-11-27  6:26 ` [PATCH 23/25] Phy: DT binding documentation for Marvell MVEBU SATA phy Kishon Vijay Abraham I
2014-11-27  6:26 ` [PATCH 24/25] Phy: DT binding documentation for the Armada 375 USB cluster binding Kishon Vijay Abraham I
2014-11-27  6:26 ` [PATCH 25/25] phy: add support for USB cluster on the Armada 375 SoC Kishon Vijay Abraham I
2014-11-27 16:49 ` [GIT PULL 00/25] phy: for 3.19 Greg KH

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1417069577-1169-19-git-send-email-kishon@ti.com \
    --to=kishon@ti.com \
    --cc=gregkh@linuxfoundation.org \
    --cc=linux-kernel@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®