Hi Kishon, Thanks for the explanation. On Thu, Jan 17, 2013 at 6:01 PM, kishon <kishon@xxxxxx> wrote: > Hi, > > > On Thursday 17 January 2013 05:41 PM, Vivek Gautam wrote: >> >> Hi Kishon, >> >> >> On Wed, Jan 16, 2013 at 8:30 PM, Kishon Vijay Abraham I <kishon@xxxxxx> >> wrote: >>> >>> This is in preparation for the changes in PHY library to support adding >>> and getting multiple PHYs of the same type. In the new design, the >>> binding information between the PHY and the USB controller should be >>> specified in the platform specific initialization code. So it's been >>> done for OMAP platforms here. >>> >>> Signed-off-by: Kishon Vijay Abraham I <kishon@xxxxxx> >>> --- >>> This kind-of binding should be done in all the platforms (I've done only >>> for OMAP platform). >>> arch/arm/mach-omap2/usb-musb.c | 7 ++++++- >>> 1 file changed, 6 insertions(+), 1 deletion(-) >>> >>> diff --git a/arch/arm/mach-omap2/usb-musb.c >>> b/arch/arm/mach-omap2/usb-musb.c >>> index 9d27e3f..bbe2fa5 100644 >>> --- a/arch/arm/mach-omap2/usb-musb.c >>> +++ b/arch/arm/mach-omap2/usb-musb.c >>> @@ -24,6 +24,7 @@ >>> #include <linux/dma-mapping.h> >>> #include <linux/io.h> >>> #include <linux/usb/musb.h> >>> +#include <linux/usb/phy.h> >>> >>> #include "omap_device.h" >>> #include "soc.h" >>> @@ -85,8 +86,12 @@ void __init usb_musb_init(struct omap_musb_board_data >>> *musb_board_data) >>> musb_plat.mode = board_data->mode; >>> musb_plat.extvbus = board_data->extvbus; >>> >>> - if (cpu_is_omap44xx()) >>> + if (cpu_is_omap44xx()) { >>> musb_plat.has_mailbox = true; >>> + usb_bind_phy("musb-hdrc.0.auto", 0, "omap-usb2.1.auto"); >>> + } else if (cpu_is_omap34xx()) { >>> + usb_bind_phy("musb-hdrc.0.auto", 0, "twl4030_usb"); >>> + } >> >> >> Just trying to understand things here. >> Is the device name we are using here the platform device name (pdev->name) >> ? > > > it's pdev->dev.name. > >> If i am not wrong then for devices added through device tree >> the device name would actually include the device address in the string, > > > Ideally for device tree, devm_usb_get_phy_by_phandle() introduced in the 5th > patch of this series should be used. Ok. > usb_bind_phy should be called from platform specific initialization files > (like your board file), which won't get executed in dt boot. > Right. >> wouldn't that make things somewhat weird, since we will have to add >> such bindings >> using this address string. >> >> one more doubt please :) >> is it possible to bind phy in the controllers' driver somehow ? > > Thats not going to be good. Why do you need to do that? > I was certainly missing something while understanding your patches. That's why got some doubt on this. :) > Thanks > Kishon -- Thanks & Regards Vivek -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html