Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

[PATCH] of: make of_get_phy_mode parse 'phy-connection-type'

2 views
Skip to first unread message

Florian Fainelli

unread,
Nov 13, 2013, 6:50:01 PM11/13/13
to
Per the ePAPR v1.1 specification, 'phy-connection-type' is the canonical
property name for describing an Ethernet to PHY connection type. Make
sure that of_get_phy_mode() also attempts to parse that property and
update the comments mentioninng 'phy-mode' to also include
'phy-connection-type'.

Signed-off-by: Florian Fainelli <f.fai...@gmail.com>
---
drivers/of/of_net.c | 16 ++++++++++------
1 file changed, 10 insertions(+), 6 deletions(-)

diff --git a/drivers/of/of_net.c b/drivers/of/of_net.c
index 8f9be2e..101a34c 100644
--- a/drivers/of/of_net.c
+++ b/drivers/of/of_net.c
@@ -13,8 +13,8 @@

/**
* It maps 'enum phy_interface_t' found in include/linux/phy.h
- * into the device tree binding of 'phy-mode', so that Ethernet
- * device driver can get phy interface from device tree.
+ * into the device tree binding of 'phy-mode' or 'phy-connection-type',
+ * so that Ethernet device driver can get phy interface from device tree.
*/
static const char *phy_modes[] = {
[PHY_INTERFACE_MODE_NA] = "",
@@ -36,8 +36,9 @@ static const char *phy_modes[] = {
* of_get_phy_mode - Get phy mode for given device_node
* @np: Pointer to the given device_node
*
- * The function gets phy interface string from property 'phy-mode',
- * and return its index in phy_modes table, or errno in error case.
+ * The function gets phy interface string from property 'phy-mode' or
+ * 'phy-connection-type', and return its index in phy_modes table, or errno in
+ * error case.
*/
int of_get_phy_mode(struct device_node *np)
{
@@ -45,8 +46,11 @@ int of_get_phy_mode(struct device_node *np)
int err, i;

err = of_property_read_string(np, "phy-mode", &pm);
- if (err < 0)
- return err;
+ if (err < 0) {
+ err = of_property_read_string(np, "phy-connection-type", &pm);
+ if (err < 0)
+ return err;
+ }

for (i = 0; i < ARRAY_SIZE(phy_modes); i++)
if (!strcasecmp(pm, phy_modes[i]))
--
1.8.3.2


--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majo...@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/

Grant Likely

unread,
Nov 14, 2013, 3:50:01 AM11/14/13
to
Nit: The following would actually be better:
err = of_property_read_string(np, "phy-mode", &pm);
+ if (err < 0)
+ err = of_property_read_string(np, "phy-connection-type", &pm);
if (err < 0)
return err;

Otherwise, the patch looks fine. If you test and repost then it can be merged with my:

Acked-by: Grant Likely <grant....@linaro.org>

Florian Fainelli

unread,
Nov 15, 2013, 1:30:02 AM11/15/13
to
Per the ePAPR v1.1 specification, 'phy-connection-type' is the canonical
property name for describing an Ethernet to PHY connection type. Make
sure that of_get_phy_mode() also attempts to parse that property and
update the comments mentioning 'phy-mode' to also include
'phy-connection-type'.

Acked-by: Grant Likely <grant....@linaro.org>
Signed-off-by: Florian Fainelli <f.fai...@gmail.com>
---
Changes since v2:
- reworked the error condition to look nicer per Grant's suggestion
- added Grant's Acked-by tag
- fixed a typo in the commit message on "mentioning"

drivers/of/of_net.c | 11 +++++++----
1 file changed, 7 insertions(+), 4 deletions(-)

diff --git a/drivers/of/of_net.c b/drivers/of/of_net.c
index 8f9be2e..651e249 100644
--- a/drivers/of/of_net.c
+++ b/drivers/of/of_net.c
@@ -13,8 +13,8 @@

/**
* It maps 'enum phy_interface_t' found in include/linux/phy.h
- * into the device tree binding of 'phy-mode', so that Ethernet
- * device driver can get phy interface from device tree.
+ * into the device tree binding of 'phy-mode' or 'phy-connection-type',
+ * so that Ethernet device driver can get phy interface from device tree.
*/
static const char *phy_modes[] = {
[PHY_INTERFACE_MODE_NA] = "",
@@ -36,8 +36,9 @@ static const char *phy_modes[] = {
* of_get_phy_mode - Get phy mode for given device_node
* @np: Pointer to the given device_node
*
- * The function gets phy interface string from property 'phy-mode',
- * and return its index in phy_modes table, or errno in error case.
+ * The function gets phy interface string from property 'phy-mode' or
+ * 'phy-connection-type', and return its index in phy_modes table, or errno in
+ * error case.
*/
int of_get_phy_mode(struct device_node *np)
{
@@ -46,6 +47,8 @@ int of_get_phy_mode(struct device_node *np)

err = of_property_read_string(np, "phy-mode", &pm);
if (err < 0)
+ err = of_property_read_string(np, "phy-connection-type", &pm);
+ if (err < 0)
return err;

for (i = 0; i < ARRAY_SIZE(phy_modes); i++)
--
1.8.3.2

Grant Likely

unread,
Nov 16, 2013, 7:30:02 AM11/16/13
to
On Fri, 15 Nov 2013 06:23:32 +0000, Florian Fainelli <f.fai...@gmail.com> wrote:
> Per the ePAPR v1.1 specification, 'phy-connection-type' is the canonical
> property name for describing an Ethernet to PHY connection type. Make
> sure that of_get_phy_mode() also attempts to parse that property and
> update the comments mentioning 'phy-mode' to also include
> 'phy-connection-type'.
>
> Acked-by: Grant Likely <grant....@linaro.org>
> Signed-off-by: Florian Fainelli <f.fai...@gmail.com>

Applied, thanks

g.

Florian Fainelli

unread,
Jan 25, 2014, 10:10:01 PM1/25/14
to
Le 16/11/2013 04:24, Grant Likely a écrit :
> On Fri, 15 Nov 2013 06:23:32 +0000, Florian Fainelli <f.fai...@gmail.com> wrote:
>> Per the ePAPR v1.1 specification, 'phy-connection-type' is the canonical
>> property name for describing an Ethernet to PHY connection type. Make
>> sure that of_get_phy_mode() also attempts to parse that property and
>> update the comments mentioning 'phy-mode' to also include
>> 'phy-connection-type'.
>>
>> Acked-by: Grant Likely <grant....@linaro.org>
>> Signed-off-by: Florian Fainelli <f.fai...@gmail.com>
>
> Applied, thanks

Grant, where is that patch, and will it be part of a pull request to 3.14?

Thanks!

Grant Likely

unread,
Feb 3, 2014, 9:40:02 AM2/3/14
to
On Sat, 25 Jan 2014 19:04:49 -0800, Florian Fainelli <f.fai...@gmail.com> wrote:
> Le 16/11/2013 04:24, Grant Likely a écrit :
> > On Fri, 15 Nov 2013 06:23:32 +0000, Florian Fainelli <f.fai...@gmail.com> wrote:
> >> Per the ePAPR v1.1 specification, 'phy-connection-type' is the canonical
> >> property name for describing an Ethernet to PHY connection type. Make
> >> sure that of_get_phy_mode() also attempts to parse that property and
> >> update the comments mentioning 'phy-mode' to also include
> >> 'phy-connection-type'.
> >>
> >> Acked-by: Grant Likely <grant....@linaro.org>
> >> Signed-off-by: Florian Fainelli <f.fai...@gmail.com>
> >
> > Applied, thanks
>
> Grant, where is that patch, and will it be part of a pull request to 3.14?

I accidentally dropped it for v3.14. It will be in 3.15

g.
0 new messages