[U-Boot] [PATCH v3 3/4] drivers: phy: add generic_phy_valid() method
Marek Vasut
marex at denx.de
Wed May 24 15:08:50 UTC 2017
On 05/24/2017 03:24 PM, Jean-Jacques Hiblot wrote:
>
>
> On 23/05/2017 11:57, patrice.chotard at st.com wrote:
>> From: Patrice Chotard <patrice.chotard at 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 at st.com>
>> ---
>> 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 0d8bef7..43a7c18 100644
>> --- a/drivers/phy/phy-uclass.c
>> +++ b/drivers/phy/phy-uclass.c
>> @@ -133,6 +133,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;
>> +}
>> +
> Not that it has big impact but I would have made it an inline function
The inline is just a hint , the compiler can decide on that itself.
> Also note that there is a loophole in generic_phy_get_by_index() that
> needs to be fixed before phy->dev can be used to check if the phy is
> valid; phy->dev must be set to NULL if generic_phy_get_by_index() fails.
>
> Jean-Jacques
>
>> UCLASS_DRIVER(phy) = {
>> .id = UCLASS_PHY,
>> .name = "phy",
>> diff --git a/include/generic-phy.h b/include/generic-phy.h
>> index d8cf0c9..53206f0 100644
>> --- a/include/generic-phy.h
>> +++ b/include/generic-phy.h
>> @@ -221,4 +221,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 */
>
>
--
Best regards,
Marek Vasut
More information about the U-Boot
mailing list