Re: [RFC PATCH 3/6] usb: otg: utils: change the phy lib to support multiple PHYs of same type

2013-01-17 Thread Roger Quadros
On 01/16/2013 05:00 PM, Kishon Vijay Abraham I wrote:
 In order to add support for multipe PHY's of the same type, the API's
 for adding PHY and getting PHY has been changed. Now the binding
 information of the PHY and controller should be done in platform file
 using usb_bind_phy API. And for getting a PHY, the device pointer of the
 USB controller and an index should be passed. Based on the binding
 information that is added in the platform file, get_phy will return the
 approappropriate PHY.
 
 Signed-off-by: Kishon Vijay Abraham I kis...@ti.com
 ---
  arch/arm/mach-shmobile/board-marzen.c |2 +-
  drivers/power/ab8500_charger.c|2 +-
  drivers/power/isp1704_charger.c   |2 +-
  drivers/power/pda_power.c |2 +-
  drivers/power/twl4030_charger.c   |2 +-
  drivers/usb/chipidea/udc.c|2 +-
  drivers/usb/dwc3/core.c   |4 +-
  drivers/usb/gadget/fsl_udc_core.c |2 +-
  drivers/usb/gadget/mv_udc_core.c  |2 +-
  drivers/usb/gadget/omap_udc.c |2 +-
  drivers/usb/gadget/pxa25x_udc.c   |2 +-
  drivers/usb/gadget/pxa27x_udc.c   |2 +-
  drivers/usb/gadget/s3c-hsudc.c|2 +-
  drivers/usb/host/ehci-fsl.c   |2 +-
  drivers/usb/host/ehci-msm.c   |2 +-
  drivers/usb/host/ehci-mv.c|2 +-
  drivers/usb/host/ehci-tegra.c |2 +-
  drivers/usb/host/ohci-omap.c  |2 +-
  drivers/usb/musb/am35x.c  |2 +-
  drivers/usb/musb/blackfin.c   |2 +-
  drivers/usb/musb/da8xx.c  |2 +-
  drivers/usb/musb/davinci.c|2 +-
  drivers/usb/musb/musb_dsps.c  |2 +-
  drivers/usb/musb/omap2430.c   |2 +-
  drivers/usb/musb/tusb6010.c   |2 +-
  drivers/usb/musb/ux500.c  |2 +-
  drivers/usb/otg/ab8500-usb.c  |3 +-
  drivers/usb/otg/fsl_otg.c |5 ++-
  drivers/usb/otg/gpio_vbus.c   |3 +-
  drivers/usb/otg/isp1301_omap.c|3 +-
  drivers/usb/otg/msm_otg.c |3 +-
  drivers/usb/otg/mv_otg.c  |3 +-
  drivers/usb/otg/nop-usb-xceiv.c   |3 +-
  drivers/usb/otg/otg.c |   67 
 +++--
  drivers/usb/otg/twl4030-usb.c |3 +-
  drivers/usb/phy/mv_u3d_phy.c  |3 +-
  drivers/usb/phy/omap-usb2.c   |   11 ++
  drivers/usb/phy/rcar-phy.c|3 +-
  include/linux/usb/phy.h   |   12 +++---
  39 files changed, 87 insertions(+), 89 deletions(-)

I think it better to leave the existing add/get APIs as they are add add
new APIs that support multiple PHYs. You could probably mark the old
ones as deprecated.

That way you don't need to wait till all users are converted and tested.

e.g. you could name the new APIs as

usb_add_phy_dev(struct usb_phy *phy);
usb_get_phy_dev(struct device *dev, int index);

--
cheers,
-roger

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


Re: [RFC PATCH 3/6] usb: otg: utils: change the phy lib to support multiple PHYs of same type

2013-01-17 Thread kishon

Hi,

On Thursday 17 January 2013 09:37 PM, Roger Quadros wrote:

On 01/16/2013 05:00 PM, Kishon Vijay Abraham I wrote:

In order to add support for multipe PHY's of the same type, the API's
for adding PHY and getting PHY has been changed. Now the binding
information of the PHY and controller should be done in platform file
using usb_bind_phy API. And for getting a PHY, the device pointer of the
USB controller and an index should be passed. Based on the binding
information that is added in the platform file, get_phy will return the
approappropriate PHY.

Signed-off-by: Kishon Vijay Abraham I kis...@ti.com
---
  arch/arm/mach-shmobile/board-marzen.c |2 +-
  drivers/power/ab8500_charger.c|2 +-
  drivers/power/isp1704_charger.c   |2 +-
  drivers/power/pda_power.c |2 +-
  drivers/power/twl4030_charger.c   |2 +-
  drivers/usb/chipidea/udc.c|2 +-
  drivers/usb/dwc3/core.c   |4 +-
  drivers/usb/gadget/fsl_udc_core.c |2 +-
  drivers/usb/gadget/mv_udc_core.c  |2 +-
  drivers/usb/gadget/omap_udc.c |2 +-
  drivers/usb/gadget/pxa25x_udc.c   |2 +-
  drivers/usb/gadget/pxa27x_udc.c   |2 +-
  drivers/usb/gadget/s3c-hsudc.c|2 +-
  drivers/usb/host/ehci-fsl.c   |2 +-
  drivers/usb/host/ehci-msm.c   |2 +-
  drivers/usb/host/ehci-mv.c|2 +-
  drivers/usb/host/ehci-tegra.c |2 +-
  drivers/usb/host/ohci-omap.c  |2 +-
  drivers/usb/musb/am35x.c  |2 +-
  drivers/usb/musb/blackfin.c   |2 +-
  drivers/usb/musb/da8xx.c  |2 +-
  drivers/usb/musb/davinci.c|2 +-
  drivers/usb/musb/musb_dsps.c  |2 +-
  drivers/usb/musb/omap2430.c   |2 +-
  drivers/usb/musb/tusb6010.c   |2 +-
  drivers/usb/musb/ux500.c  |2 +-
  drivers/usb/otg/ab8500-usb.c  |3 +-
  drivers/usb/otg/fsl_otg.c |5 ++-
  drivers/usb/otg/gpio_vbus.c   |3 +-
  drivers/usb/otg/isp1301_omap.c|3 +-
  drivers/usb/otg/msm_otg.c |3 +-
  drivers/usb/otg/mv_otg.c  |3 +-
  drivers/usb/otg/nop-usb-xceiv.c   |3 +-
  drivers/usb/otg/otg.c |   67 +++--
  drivers/usb/otg/twl4030-usb.c |3 +-
  drivers/usb/phy/mv_u3d_phy.c  |3 +-
  drivers/usb/phy/omap-usb2.c   |   11 ++
  drivers/usb/phy/rcar-phy.c|3 +-
  include/linux/usb/phy.h   |   12 +++---
  39 files changed, 87 insertions(+), 89 deletions(-)


I think it better to leave the existing add/get APIs as they are add add
new APIs that support multiple PHYs. You could probably mark the old
ones as deprecated.

That way you don't need to wait till all users are converted and tested.


Makes sense. Will do that :-)

Thanks
Kishon
--
To unsubscribe from this list: send the line unsubscribe linux-usb in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[RFC PATCH 3/6] usb: otg: utils: change the phy lib to support multiple PHYs of same type

2013-01-16 Thread Kishon Vijay Abraham I
In order to add support for multipe PHY's of the same type, the API's
for adding PHY and getting PHY has been changed. Now the binding
information of the PHY and controller should be done in platform file
using usb_bind_phy API. And for getting a PHY, the device pointer of the
USB controller and an index should be passed. Based on the binding
information that is added in the platform file, get_phy will return the
approappropriate PHY.

Signed-off-by: Kishon Vijay Abraham I kis...@ti.com
---
 arch/arm/mach-shmobile/board-marzen.c |2 +-
 drivers/power/ab8500_charger.c|2 +-
 drivers/power/isp1704_charger.c   |2 +-
 drivers/power/pda_power.c |2 +-
 drivers/power/twl4030_charger.c   |2 +-
 drivers/usb/chipidea/udc.c|2 +-
 drivers/usb/dwc3/core.c   |4 +-
 drivers/usb/gadget/fsl_udc_core.c |2 +-
 drivers/usb/gadget/mv_udc_core.c  |2 +-
 drivers/usb/gadget/omap_udc.c |2 +-
 drivers/usb/gadget/pxa25x_udc.c   |2 +-
 drivers/usb/gadget/pxa27x_udc.c   |2 +-
 drivers/usb/gadget/s3c-hsudc.c|2 +-
 drivers/usb/host/ehci-fsl.c   |2 +-
 drivers/usb/host/ehci-msm.c   |2 +-
 drivers/usb/host/ehci-mv.c|2 +-
 drivers/usb/host/ehci-tegra.c |2 +-
 drivers/usb/host/ohci-omap.c  |2 +-
 drivers/usb/musb/am35x.c  |2 +-
 drivers/usb/musb/blackfin.c   |2 +-
 drivers/usb/musb/da8xx.c  |2 +-
 drivers/usb/musb/davinci.c|2 +-
 drivers/usb/musb/musb_dsps.c  |2 +-
 drivers/usb/musb/omap2430.c   |2 +-
 drivers/usb/musb/tusb6010.c   |2 +-
 drivers/usb/musb/ux500.c  |2 +-
 drivers/usb/otg/ab8500-usb.c  |3 +-
 drivers/usb/otg/fsl_otg.c |5 ++-
 drivers/usb/otg/gpio_vbus.c   |3 +-
 drivers/usb/otg/isp1301_omap.c|3 +-
 drivers/usb/otg/msm_otg.c |3 +-
 drivers/usb/otg/mv_otg.c  |3 +-
 drivers/usb/otg/nop-usb-xceiv.c   |3 +-
 drivers/usb/otg/otg.c |   67 +++--
 drivers/usb/otg/twl4030-usb.c |3 +-
 drivers/usb/phy/mv_u3d_phy.c  |3 +-
 drivers/usb/phy/omap-usb2.c   |   11 ++
 drivers/usb/phy/rcar-phy.c|3 +-
 include/linux/usb/phy.h   |   12 +++---
 39 files changed, 87 insertions(+), 89 deletions(-)

diff --git a/arch/arm/mach-shmobile/board-marzen.c 
b/arch/arm/mach-shmobile/board-marzen.c
index 449f928..abe482d 100644
--- a/arch/arm/mach-shmobile/board-marzen.c
+++ b/arch/arm/mach-shmobile/board-marzen.c
@@ -320,7 +320,7 @@ static struct platform_device *marzen_late_devices[] 
__initdata = {
 void __init marzen_init_late(void)
 {
/* get usb phy */
-   phy = usb_get_phy(USB_PHY_TYPE_USB2);
+   phy = usb_get_phy(ehci0_device.dev, 0);
 
shmobile_init_late();
platform_add_devices(marzen_late_devices,
diff --git a/drivers/power/ab8500_charger.c b/drivers/power/ab8500_charger.c
index 3be9c0e..d20561a 100644
--- a/drivers/power/ab8500_charger.c
+++ b/drivers/power/ab8500_charger.c
@@ -2694,7 +2694,7 @@ static int ab8500_charger_probe(struct platform_device 
*pdev)
goto free_ac;
}
 
-   di-usb_phy = usb_get_phy(USB_PHY_TYPE_USB2);
+   di-usb_phy = usb_get_phy(di-dev, 0);
if (IS_ERR_OR_NULL(di-usb_phy)) {
dev_err(di-dev, failed to get usb transceiver\n);
ret = -EINVAL;
diff --git a/drivers/power/isp1704_charger.c b/drivers/power/isp1704_charger.c
index 176ad59..dfbe597 100644
--- a/drivers/power/isp1704_charger.c
+++ b/drivers/power/isp1704_charger.c
@@ -415,7 +415,7 @@ static int isp1704_charger_probe(struct platform_device 
*pdev)
if (!isp)
return -ENOMEM;
 
-   isp-phy = usb_get_phy(USB_PHY_TYPE_USB2);
+   isp-phy = usb_get_phy(pdev-dev, 0);
if (IS_ERR_OR_NULL(isp-phy))
goto fail0;
 
diff --git a/drivers/power/pda_power.c b/drivers/power/pda_power.c
index 7df7c5f..64d79f7 100644
--- a/drivers/power/pda_power.c
+++ b/drivers/power/pda_power.c
@@ -316,7 +316,7 @@ static int pda_power_probe(struct platform_device *pdev)
}
 
 #ifdef CONFIG_USB_OTG_UTILS
-   transceiver = usb_get_phy(USB_PHY_TYPE_USB2);
+   transceiver = usb_get_phy(pdev-dev, 0);
if (!IS_ERR_OR_NULL(transceiver)) {
if (!pdata-is_usb_online)
pdata-is_usb_online = otg_is_usb_online;
diff --git a/drivers/power/twl4030_charger.c b/drivers/power/twl4030_charger.c
index a69d0d1..f53b417 100644
--- a/drivers/power/twl4030_charger.c
+++ b/drivers/power/twl4030_charger.c
@@ -552,7 +552,7 @@ static int __init twl4030_bci_probe(struct platform_device 
*pdev)
 
INIT_WORK(bci-work, twl4030_bci_usb_work);
 
-   bci-transceiver = usb_get_phy(USB_PHY_TYPE_USB2);
+   

Re: [RFC PATCH 3/6] usb: otg: utils: change the phy lib to support multiple PHYs of same type

2013-01-16 Thread Simon Horman
On Wed, Jan 16, 2013 at 08:30:59PM +0530, Kishon Vijay Abraham I wrote:
 In order to add support for multipe PHY's of the same type, the API's
 for adding PHY and getting PHY has been changed. Now the binding
 information of the PHY and controller should be done in platform file
 using usb_bind_phy API. And for getting a PHY, the device pointer of the
 USB controller and an index should be passed. Based on the binding
 information that is added in the platform file, get_phy will return the
 approappropriate PHY.
 
 Signed-off-by: Kishon Vijay Abraham I kis...@ti.com
 ---
  arch/arm/mach-shmobile/board-marzen.c |2 +-

Modification to the above file:

Acked-by: Simon Horman horms+rene...@verge.net.au
--
To unsubscribe from this list: send the line unsubscribe linux-usb in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html