Re: [PATCH 7/8] phy: helpers for USB ULPI PHY registering

From: Felipe Balbi
Date: Fri Jan 30 2015 - 11:03:44 EST


On Fri, Jan 30, 2015 at 12:33:01PM +0200, Heikki Krogerus wrote:
> On Thu, Jan 29, 2015 at 10:11:24AM -0600, Felipe Balbi wrote:
> > On Thu, Jan 29, 2015 at 04:34:41PM +0200, Heikki Krogerus wrote:
> > > On Wed, Jan 28, 2015 at 11:03:55PM -0600, Felipe Balbi wrote:
> > > > On Fri, Jan 23, 2015 at 05:12:57PM +0200, Heikki Krogerus wrote:
> > > > > ULPI PHYs need to be bound to their controllers with a
> > > > > lookup. This adds helpers that the ULPI drivers can use to
> > > > > do both, the registration of the PHY and the lookup, at the
> > > > > same time.
> > > > >
> > > > > Signed-off-by: Heikki Krogerus <heikki.krogerus@xxxxxxxxxxxxxxx>
> > > > > Cc: Kishon Vijay Abraham I <kishon@xxxxxx>
> > > > > ---
> > > > > drivers/phy/ulpi_phy.h | 31 +++++++++++++++++++++++++++++++
> > > > > 1 file changed, 31 insertions(+)
> > > > > create mode 100644 drivers/phy/ulpi_phy.h
> > > > >
> > > > > diff --git a/drivers/phy/ulpi_phy.h b/drivers/phy/ulpi_phy.h
> > > > > new file mode 100644
> > > > > index 0000000..ac49fb6
> > > > > --- /dev/null
> > > > > +++ b/drivers/phy/ulpi_phy.h
> > > > > @@ -0,0 +1,31 @@
> > > > > +#include <linux/phy/phy.h>
> > > > > +
> > > > > +/**
> > > > > + * Helper that registers PHY for a ULPI device and adds a lookup for binding it
> > > > > + * and it's controller, which is always the parent.
> > > > > + */
> > > > > +static inline struct phy
> > > > > +*ulpi_phy_create(struct ulpi *ulpi, struct phy_ops *ops)
> > > > > +{
> > > > > + struct phy *phy;
> > > > > + int ret;
> > > > > +
> > > > > + phy = phy_create(&ulpi->dev, NULL, ops);
> > > > > + if (IS_ERR(phy))
> > > > > + return phy;
> > > > > +
> > > > > + ret = phy_create_lookup(phy, "usb2-phy", dev_name(ulpi->dev.parent));
> > > >
> > > > I wonder if this would break DT-based boot where PHY phandle is
> > > > available. Kishon ?
> > >
> > > If there are of_node for the PHY, we will not use this binding at all.
> >
> > where is that taken care of ? ulpi_phy_create() is called
> > unconditionally.
>
> When you call phy_get().

tks

--
balbi

Attachment: signature.asc
Description: Digital signature