The fixed link values parsed from the device tree are stored in
the struct fixed_phy member status. The struct phy_device members
speed, duplex were not updated.
Signed-off-by: Madalin Bucur <[email protected]>
---
v2: always setting phy->link, thanks Stas
drivers/net/phy/fixed_phy.c | 9 +++++++++
1 file changed, 9 insertions(+)
diff --git a/drivers/net/phy/fixed_phy.c b/drivers/net/phy/fixed_phy.c
index 479b93f..99d9bc1 100644
--- a/drivers/net/phy/fixed_phy.c
+++ b/drivers/net/phy/fixed_phy.c
@@ -292,6 +292,15 @@ struct phy_device *fixed_phy_register(unsigned int irq,
return ERR_PTR(-EINVAL);
}
+ /* propagate the fixed link values to struct phy_device */
+ phy->link = status->link;
+ if (status->link) {
+ phy->speed = status->speed;
+ phy->duplex = status->duplex;
+ phy->pause = status->pause;
+ phy->asym_pause = status->asym_pause;
+ }
+
of_node_get(np);
phy->dev.of_node = np;
--
1.7.11.7
26.08.2015 17:58, Madalin Bucur пишет:
> The fixed link values parsed from the device tree are stored in
> the struct fixed_phy member status. The struct phy_device members
> speed, duplex were not updated.
ACK, but IMHO it will make more sense if you include that
into your upcoming patch set rather than sending separately,
as otherwise there is simply no in-kernel users of that new
functionality (all the current users likely do not access
these fields as early as you want to, so they don't care).
In any case, the patch looks good to me and the policy is
up to others.
> -----Original Message-----
> From: Stas Sergeev [mailto:[email protected]]
> Sent: Wednesday, August 26, 2015 6:51 PM
> To: Bucur Madalin-Cristian-B32716 <[email protected]>;
> [email protected]
> Cc: [email protected]; [email protected]; Liberman Igal-
> B31950 <[email protected]>
> Subject: Re: [v2] net: phy: fixed: propagate fixed link values to struct
>
> 26.08.2015 17:58, Madalin Bucur пишет:
> > The fixed link values parsed from the device tree are stored in
> > the struct fixed_phy member status. The struct phy_device members
> > speed, duplex were not updated.
>
> ACK, but IMHO it will make more sense if you include that
> into your upcoming patch set rather than sending separately,
> as otherwise there is simply no in-kernel users of that new
> functionality (all the current users likely do not access
> these fields as early as you want to, so they don't care).
> In any case, the patch looks good to me and the policy is
> up to others.
Given that it's more of a fix than a feature, I think it can be picked up separate
from a certain driver that accesses those fields early but I guess Florian, David
will decide this.
Thanks,
Madalin
????{.n?+???????+%?????ݶ??w??{.n?+????{??G?????{ay?ʇڙ?,j??f???h?????????z_??(?階?ݢj"???m??????G????????????&???~???iO???z??v?^?m????????????I?
On 26/08/15 07:58, Madalin Bucur wrote:
> The fixed link values parsed from the device tree are stored in
> the struct fixed_phy member status. The struct phy_device members
> speed, duplex were not updated.
Arguably you need to start the PHY state machine for this to work
properly, but this looks fine to me.
>
> Signed-off-by: Madalin Bucur <[email protected]>
Reviewed-by: Florian Fainelli <[email protected]>
> ---
> v2: always setting phy->link, thanks Stas
>
> drivers/net/phy/fixed_phy.c | 9 +++++++++
> 1 file changed, 9 insertions(+)
>
> diff --git a/drivers/net/phy/fixed_phy.c b/drivers/net/phy/fixed_phy.c
> index 479b93f..99d9bc1 100644
> --- a/drivers/net/phy/fixed_phy.c
> +++ b/drivers/net/phy/fixed_phy.c
> @@ -292,6 +292,15 @@ struct phy_device *fixed_phy_register(unsigned int irq,
> return ERR_PTR(-EINVAL);
> }
>
> + /* propagate the fixed link values to struct phy_device */
> + phy->link = status->link;
> + if (status->link) {
> + phy->speed = status->speed;
> + phy->duplex = status->duplex;
> + phy->pause = status->pause;
> + phy->asym_pause = status->asym_pause;
> + }
> +
> of_node_get(np);
> phy->dev.of_node = np;
>
>
--
Florian
From: Madalin Bucur <[email protected]>
Date: Wed, 26 Aug 2015 17:58:47 +0300
> The fixed link values parsed from the device tree are stored in
> the struct fixed_phy member status. The struct phy_device members
> speed, duplex were not updated.
>
> Signed-off-by: Madalin Bucur <[email protected]>
> ---
> v2: always setting phy->link, thanks Stas
Applied.