diff mbox series

[v4,net-next,1/5] net: phy: Add PHY_RST_AFTER_PROBE flag

Message ID MW4PR17MB4243C51A3D1616487F201B2EDFA40@MW4PR17MB4243.namprd17.prod.outlook.com (mailing list archive)
State Changes Requested
Delegated to: Netdev Maintainers
Headers show
Series net: phy: Fix SMSC LAN87xx external reset | expand

Checks

Context Check Description
netdev/cover_letter success Link
netdev/fixes_present success Link
netdev/patch_count success Link
netdev/tree_selection success Clearly marked for net-next
netdev/subject_prefix success Link
netdev/cc_maintainers warning 1 maintainers not CCed: hkallweit1@gmail.com
netdev/source_inline success Was 0 now: 0
netdev/verify_signedoff success Link
netdev/module_param success Was 0 now: 0
netdev/build_32bit success Errors and warnings before: 624 this patch: 624
netdev/kdoc success Errors and warnings before: 0 this patch: 0
netdev/verify_fixes success Link
netdev/checkpatch success total: 0 errors, 0 warnings, 0 checks, 23 lines checked
netdev/build_allmodconfig_warn success Errors and warnings before: 540 this patch: 540
netdev/header_inline success Link
netdev/stable success Stable not CCed

Commit Message

Badel, Laurent Jan. 18, 2021, 4:58 p.m. UTC
Add new flag PHY_RST_AFTER_PROBE for LAN8710/20/40. This flag is intended
for phy_probe() to assert hardware reset after probing the PHY.

Signed-off-by: Laurent Badel <laurentbadel@eaton.com>
---
 drivers/net/phy/smsc.c | 4 ++--
 include/linux/phy.h    | 1 +
 2 files changed, 3 insertions(+), 2 deletions(-)

Comments

Florian Fainelli Jan. 18, 2021, 5:02 p.m. UTC | #1
On 1/18/2021 8:58 AM, Badel, Laurent wrote:
> Add new flag PHY_RST_AFTER_PROBE for LAN8710/20/40. This flag is intended
> for phy_probe() to assert hardware reset after probing the PHY.
> 
> Signed-off-by: Laurent Badel <laurentbadel@eaton.com>
> ---
>  drivers/net/phy/smsc.c | 4 ++--
>  include/linux/phy.h    | 1 +
>  2 files changed, 3 insertions(+), 2 deletions(-)
> 
> diff --git a/drivers/net/phy/smsc.c b/drivers/net/phy/smsc.c
> index ddb78fb4d6dc..5ee45c48efbb 100644
> --- a/drivers/net/phy/smsc.c
> +++ b/drivers/net/phy/smsc.c
> @@ -433,7 +433,7 @@ static struct phy_driver smsc_phy_driver[] = {
>  	.name		= "SMSC LAN8710/LAN8720",
>  
>  	/* PHY_BASIC_FEATURES */
> -
> +	.flags		= PHY_RST_AFTER_PROBE,
>  	.probe		= smsc_phy_probe,
>  	.remove		= smsc_phy_remove,
>  
> @@ -460,7 +460,7 @@ static struct phy_driver smsc_phy_driver[] = {
>  	.name		= "SMSC LAN8740",
>  
>  	/* PHY_BASIC_FEATURES */
> -	.flags		= PHY_RST_AFTER_CLK_EN,
> +	.flags		= PHY_RST_AFTER_CLK_EN & PHY_RST_AFTER_PROBE,


Not PHY_RST_AFTER_CLK_EN | PHY_RST_AFTER_PROBE?
Badel, Laurent Jan. 18, 2021, 5:32 p.m. UTC | #2


> 

-----------------------------
Eaton Industries Manufacturing GmbH ~ Registered place of business: Route de la Longeraie 7, 1110, Morges, Switzerland 

-----------------------------

-----Original Message-----
> From: Florian Fainelli <f.fainelli@gmail.com>
> Sent: Monday, January 18, 2021 6:03 PM
> To: Badel, Laurent <LaurentBadel@eaton.com>; davem@davemloft.net;
> m.felsch@pengutronix.de; fugang.duan@nxp.com; kuba@kernel.org;
> andrew@lunn.ch; linux@armlinux.org.uk; p.zabel@pengutronix.de;
> lgirdwood@gmail.com; broonie@kernel.org; robh+dt@kernel.org;
> richard.leitner@skidata.com; netdev@vger.kernel.org;
> devicetree@vger.kernel.org; marex@denx.de
> Subject: [EXTERNAL] Re: [PATCH v4 net-next 1/5] net: phy: Add
> PHY_RST_AFTER_PROBE flag
> 
> 
> 
> On 1/18/2021 8:58 AM, Badel, Laurent wrote:
> > Add new flag PHY_RST_AFTER_PROBE for LAN8710/20/40. This flag is
> > intended for phy_probe() to assert hardware reset after probing the
> PHY.
> >
> > Signed-off-by: Laurent Badel <laurentbadel@eaton.com>
> > ---
> >  drivers/net/phy/smsc.c | 4 ++--
> >  include/linux/phy.h    | 1 +
> >  2 files changed, 3 insertions(+), 2 deletions(-)
> >
> > diff --git a/drivers/net/phy/smsc.c b/drivers/net/phy/smsc.c index
> > ddb78fb4d6dc..5ee45c48efbb 100644
> > --- a/drivers/net/phy/smsc.c
> > +++ b/drivers/net/phy/smsc.c
> > @@ -433,7 +433,7 @@ static struct phy_driver smsc_phy_driver[] = {
> >  	.name		= "SMSC LAN8710/LAN8720",
> >
> >  	/* PHY_BASIC_FEATURES */
> > -
> > +	.flags		= PHY_RST_AFTER_PROBE,
> >  	.probe		= smsc_phy_probe,
> >  	.remove		= smsc_phy_remove,
> >
> > @@ -460,7 +460,7 @@ static struct phy_driver smsc_phy_driver[] = {
> >  	.name		= "SMSC LAN8740",
> >
> >  	/* PHY_BASIC_FEATURES */
> > -	.flags		= PHY_RST_AFTER_CLK_EN,
> > +	.flags		= PHY_RST_AFTER_CLK_EN & PHY_RST_AFTER_PROBE,
> 
> 
> Not PHY_RST_AFTER_CLK_EN | PHY_RST_AFTER_PROBE?
> --
> Florian

Ah, you are right, my mistake, so much for bisectability. I'll fix and re-send, sorry again.
diff mbox series

Patch

diff --git a/drivers/net/phy/smsc.c b/drivers/net/phy/smsc.c
index ddb78fb4d6dc..5ee45c48efbb 100644
--- a/drivers/net/phy/smsc.c
+++ b/drivers/net/phy/smsc.c
@@ -433,7 +433,7 @@  static struct phy_driver smsc_phy_driver[] = {
 	.name		= "SMSC LAN8710/LAN8720",
 
 	/* PHY_BASIC_FEATURES */
-
+	.flags		= PHY_RST_AFTER_PROBE,
 	.probe		= smsc_phy_probe,
 	.remove		= smsc_phy_remove,
 
@@ -460,7 +460,7 @@  static struct phy_driver smsc_phy_driver[] = {
 	.name		= "SMSC LAN8740",
 
 	/* PHY_BASIC_FEATURES */
-	.flags		= PHY_RST_AFTER_CLK_EN,
+	.flags		= PHY_RST_AFTER_CLK_EN & PHY_RST_AFTER_PROBE,
 
 	.probe		= smsc_phy_probe,
 
diff --git a/include/linux/phy.h b/include/linux/phy.h
index 24fcc6456a9e..4bbc7a06235c 100644
--- a/include/linux/phy.h
+++ b/include/linux/phy.h
@@ -81,6 +81,7 @@  extern const int phy_10gbit_features_array[1];
 #define PHY_RST_AFTER_CLK_EN	0x00000002
 #define PHY_POLL_CABLE_TEST	0x00000004
 #define MDIO_DEVICE_IS_PHY	0x80000000
+#define PHY_RST_AFTER_PROBE	0x00000008
 
 /**
  * enum phy_interface_t - Interface Mode definitions