Re: [PATCH v2 11/11] usb: musb: da8xx: Remove mach code

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




On 3/17/2016 5:26 AM, David Lechner wrote:

Use the new phy-da8xx-usb driver to take the place of the mach code that
pokes CFGCHIP2 in the da8xx musb glue driver.

Signed-off-by: David Lechner <david@xxxxxxxxxxxxxx>
---

v2 changes: This is part of a previous patch that was split. This version uses
the new phy driver instead of a second clock. It also gets rid of more mach
code.


  drivers/usb/musb/da8xx.c | 126 ++++++++++++-----------------------------------
  1 file changed, 31 insertions(+), 95 deletions(-)

diff --git a/drivers/usb/musb/da8xx.c b/drivers/usb/musb/da8xx.c
index 50f07a5..1d51711 100644
--- a/drivers/usb/musb/da8xx.c
+++ b/drivers/usb/musb/da8xx.c
@@ -30,13 +30,11 @@
  #include <linux/clk.h>
  #include <linux/err.h>
  #include <linux/io.h>
+#include <linux/phy/phy.h>
  #include <linux/platform_device.h>
  #include <linux/dma-mapping.h>
  #include <linux/usb/usb_phy_generic.h>

-#include <mach/da8xx.h>
-#include <linux/platform_data/usb-davinci.h>

   I guess we can move this header back into mach/ now?

[...]
@@ -383,31 +335,18 @@ static irqreturn_t da8xx_musb_interrupt(int irq, void *hci)
  	return ret;
  }

+extern int da8xx_usb20_phy_set_mode(struct phy *phy, enum musb_mode mode);
+

You now need to select your new PHY driver since otherwise the kernel won't build. You can remove "depends on BROKEN" as well since your patch is un-breaking it. :-)

[...]
@@ -425,19 +364,24 @@ static int da8xx_musb_init(struct musb *musb)
[...]
  	/* Start the on-chip PHY and its PLL. */
-	phy_on();
+	phy_power_on(glue->phy);

   What about phy_init()?

@@ -448,9 +392,12 @@ fail:

  static int da8xx_musb_exit(struct musb *musb)
  {
+	struct da8xx_glue *glue = dev_get_drvdata(musb->controller->parent);
+
  	del_timer_sync(&otg_workaround);

-	phy_off();
+	phy_power_off(glue->phy);

   phy_exit()?

[...]
@@ -503,19 +450,19 @@ static int da8xx_probe(struct platform_device *pdev)
[...]

  	glue->dev			= &pdev->dev;
  	pdata->platform_ops		= &da8xx_ops;

-	glue->phy = usb_phy_generic_register();
-	if (IS_ERR(glue->phy)) {
-		ret = PTR_ERR(glue->phy);
-		goto err5;
+	glue->usb_phy = usb_phy_generic_register();

   Hm, do we still need the USB PHY? It does nothing IIRC...

[...]

MBR, Sergei

--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Device Tree Compilter]     [Device Tree Spec]     [Linux Driver Backports]     [Video for Linux]     [Linux USB Devel]     [Linux PCI Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Yosemite Backpacking]
  Powered by Linux