Message ID | 1499679563-641-5-git-send-email-patrice.chotard@st.com |
---|---|
State | Superseded |
Delegated to: | Marek Vasut |
Headers | show |
Hi, On Mon, 10 Jul 2017 11:39:22 +0200 patrice.chotard@st.com wrote: > From: Patrice Chotard <patrice.chotard@st.com> > > This allow to check if a PHY has been correctly > initialised and avoid to get access to phy struct. > > Signed-off-by: Patrice Chotard <patrice.chotard@st.com> > Reviewed-by: Marek Vasut <marex@denx.de> > Reviewed-by: Simon Glass <sjg@chromium.org> > --- > > v6: _ none > v5: _ none > v4: _ none > > > drivers/phy/phy-uclass.c | 5 +++++ > include/generic-phy.h | 8 ++++++++ > 2 files changed, 13 insertions(+) > > diff --git a/drivers/phy/phy-uclass.c b/drivers/phy/phy-uclass.c > index 68e518f..8ccd9bc 100644 > --- a/drivers/phy/phy-uclass.c > +++ b/drivers/phy/phy-uclass.c > @@ -131,6 +131,11 @@ int generic_phy_power_off(struct phy *phy) > return ops->power_off ? ops->power_off(phy) : 0; > } > > +bool generic_phy_valid(struct phy *phy) > +{ > + return phy->dev != NULL; > +} > + > UCLASS_DRIVER(phy) = { > .id = UCLASS_PHY, > .name = "phy", > diff --git a/include/generic-phy.h b/include/generic-phy.h > index 762704c..343ad03 100644 > --- a/include/generic-phy.h > +++ b/include/generic-phy.h > @@ -220,4 +220,12 @@ int generic_phy_get_by_index(struct udevice *user, int index, > int generic_phy_get_by_name(struct udevice *user, const char *phy_name, > struct phy *phy); > > +/** > + * generic_phy_valid() - check if PHY port is valid > + * > + * @phy: the PHY port to check > + * @return TRUE if valid, or FALSE > + */ > +bool generic_phy_valid(struct phy *phy); > IMO this qualifies as a candidate for a static inline function. Lothar Waßmann
diff --git a/drivers/phy/phy-uclass.c b/drivers/phy/phy-uclass.c index 68e518f..8ccd9bc 100644 --- a/drivers/phy/phy-uclass.c +++ b/drivers/phy/phy-uclass.c @@ -131,6 +131,11 @@ int generic_phy_power_off(struct phy *phy) return ops->power_off ? ops->power_off(phy) : 0; } +bool generic_phy_valid(struct phy *phy) +{ + return phy->dev != NULL; +} + UCLASS_DRIVER(phy) = { .id = UCLASS_PHY, .name = "phy", diff --git a/include/generic-phy.h b/include/generic-phy.h index 762704c..343ad03 100644 --- a/include/generic-phy.h +++ b/include/generic-phy.h @@ -220,4 +220,12 @@ int generic_phy_get_by_index(struct udevice *user, int index, int generic_phy_get_by_name(struct udevice *user, const char *phy_name, struct phy *phy); +/** + * generic_phy_valid() - check if PHY port is valid + * + * @phy: the PHY port to check + * @return TRUE if valid, or FALSE + */ +bool generic_phy_valid(struct phy *phy); + #endif /*__GENERIC_PHY_H */