diff options
author | Arun Ramamurthy <arun.ramamurthy@broadcom.com> | 2015-04-22 16:04:11 -0700 |
---|---|---|
committer | Kishon Vijay Abraham I <kishon@ti.com> | 2015-05-11 21:42:23 +0530 |
commit | 6be109b31ccdb9c98e7be12687171f6602527a5d (patch) | |
tree | 8c2ad5df0fea49ca066cc18c7edff9087d4befeb /Documentation/phy.txt | |
parent | 2decb2682f80759f631c8332f9a2a34a02150a03 (diff) | |
download | linux-6be109b31ccdb9c98e7be12687171f6602527a5d.tar.gz linux-6be109b31ccdb9c98e7be12687171f6602527a5d.tar.bz2 linux-6be109b31ccdb9c98e7be12687171f6602527a5d.zip |
phy: core: Add devm_of_phy_get_by_index to phy-core
Some generic drivers, such as ehci, may use multiple phys and for such
drivers referencing phy(s) by name(s) does not make sense. Instead of
inventing new naming schemes and using custom code to iterate through them,
such drivers are better of using nameless phy bindings and using this newly
introduced API to iterate through them.
Signed-off-by: Arun Ramamurthy <arun.ramamurthy@broadcom.com>
Reviewed-by: Ray Jui <rjui@broadcom.com>
Reviewed-by: Scott Branden <sbranden@broadcom.com>
[kishon@ti.com: fix compilation errors]
Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com>
Diffstat (limited to 'Documentation/phy.txt')
-rw-r--r-- | Documentation/phy.txt | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/Documentation/phy.txt b/Documentation/phy.txt index 371361c69a4b..b388c5af9e72 100644 --- a/Documentation/phy.txt +++ b/Documentation/phy.txt @@ -76,6 +76,8 @@ struct phy *phy_get(struct device *dev, const char *string); struct phy *phy_optional_get(struct device *dev, const char *string); struct phy *devm_phy_get(struct device *dev, const char *string); struct phy *devm_phy_optional_get(struct device *dev, const char *string); +struct phy *devm_of_phy_get_by_index(struct device *dev, struct device_node *np, + int index); phy_get, phy_optional_get, devm_phy_get and devm_phy_optional_get can be used to get the PHY. In the case of dt boot, the string arguments @@ -86,7 +88,10 @@ successful PHY get. On driver detach, release function is invoked on the the devres data and devres data is freed. phy_optional_get and devm_phy_optional_get should be used when the phy is optional. These two functions will never return -ENODEV, but instead returns NULL when -the phy cannot be found. +the phy cannot be found.Some generic drivers, such as ehci, may use multiple +phys and for such drivers referencing phy(s) by name(s) does not make sense. In +this case, devm_of_phy_get_by_index can be used to get a phy reference based on +the index. It should be noted that NULL is a valid phy reference. All phy consumer calls on the NULL phy become NOPs. That is the release calls, |