All of lore.kernel.org
 help / color / mirror / Atom feed
From: Maxime Chevallier <maxime.chevallier@bootlin.com>
To: davem@davemloft.net
Cc: "Maxime Chevallier" <maxime.chevallier@bootlin.com>,
	netdev@vger.kernel.org, linux-kernel@vger.kernel.org,
	thomas.petazzoni@bootlin.com, "Andrew Lunn" <andrew@lunn.ch>,
	"Jakub Kicinski" <kuba@kernel.org>,
	"Eric Dumazet" <edumazet@google.com>,
	"Paolo Abeni" <pabeni@redhat.com>,
	"Russell King" <linux@armlinux.org.uk>,
	linux-arm-kernel@lists.infradead.org,
	"Christophe Leroy" <christophe.leroy@csgroup.eu>,
	"Herve Codina" <herve.codina@bootlin.com>,
	"Florian Fainelli" <f.fainelli@gmail.com>,
	"Heiner Kallweit" <hkallweit1@gmail.com>,
	"Vladimir Oltean" <vladimir.oltean@nxp.com>,
	"Köry Maincent" <kory.maincent@bootlin.com>,
	"Jesse Brandeburg" <jesse.brandeburg@intel.com>,
	"Jonathan Corbet" <corbet@lwn.net>,
	"Marek Behún" <kabel@kernel.org>,
	"Piergiorgio Beruto" <piergiorgio.beruto@gmail.com>,
	"Oleksij Rempel" <o.rempel@pengutronix.de>,
	"Nicolò Veronese" <nicveronese@gmail.com>
Subject: [PATCH net-next v4 10/13] net: ethtool: pse-pd: Target the command to the requested PHY
Date: Fri, 15 Dec 2023 18:12:32 +0100	[thread overview]
Message-ID: <20231215171237.1152563-11-maxime.chevallier@bootlin.com> (raw)
In-Reply-To: <20231215171237.1152563-1-maxime.chevallier@bootlin.com>

PSE and PD configuration is a PHY-specific command. Instead of targeting
the command towards dev->phydev, use the request to pick the targeted
PHY device.

Signed-off-by: Maxime Chevallier <maxime.chevallier@bootlin.com>
---
V4: No changes
V3: No changes
V2: New patch

 net/ethtool/pse-pd.c | 14 +++-----------
 1 file changed, 3 insertions(+), 11 deletions(-)

diff --git a/net/ethtool/pse-pd.c b/net/ethtool/pse-pd.c
index cc478af77111..0d9cd9c87104 100644
--- a/net/ethtool/pse-pd.c
+++ b/net/ethtool/pse-pd.c
@@ -31,17 +31,10 @@ const struct nla_policy ethnl_pse_get_policy[ETHTOOL_A_PSE_HEADER + 1] = {
 	[ETHTOOL_A_PSE_HEADER] = NLA_POLICY_NESTED(ethnl_header_policy),
 };
 
-static int pse_get_pse_attributes(struct net_device *dev,
+static int pse_get_pse_attributes(struct phy_device *phydev,
 				  struct netlink_ext_ack *extack,
 				  struct pse_reply_data *data)
 {
-	struct phy_device *phydev = dev->phydev;
-
-	if (!phydev) {
-		NL_SET_ERR_MSG(extack, "No PHY is attached");
-		return -EOPNOTSUPP;
-	}
-
 	if (!phydev->psec) {
 		NL_SET_ERR_MSG(extack, "No PSE is attached");
 		return -EOPNOTSUPP;
@@ -64,7 +57,7 @@ static int pse_prepare_data(const struct ethnl_req_info *req_base,
 	if (ret < 0)
 		return ret;
 
-	ret = pse_get_pse_attributes(dev, info->extack, data);
+	ret = pse_get_pse_attributes(req_base->phydev, info->extack, data);
 
 	ethnl_ops_complete(dev);
 
@@ -124,7 +117,6 @@ ethnl_set_pse_validate(struct ethnl_req_info *req_info, struct genl_info *info)
 static int
 ethnl_set_pse(struct ethnl_req_info *req_info, struct genl_info *info)
 {
-	struct net_device *dev = req_info->dev;
 	struct pse_control_config config = {};
 	struct nlattr **tb = info->attrs;
 	struct phy_device *phydev;
@@ -132,7 +124,7 @@ ethnl_set_pse(struct ethnl_req_info *req_info, struct genl_info *info)
 	/* this values are already validated by the ethnl_pse_set_policy */
 	config.admin_cotrol = nla_get_u32(tb[ETHTOOL_A_PODL_PSE_ADMIN_CONTROL]);
 
-	phydev = dev->phydev;
+	phydev = req_info->phydev;
 	if (!phydev) {
 		NL_SET_ERR_MSG(info->extack, "No PHY is attached");
 		return -EOPNOTSUPP;
-- 
2.43.0


WARNING: multiple messages have this Message-ID (diff)
From: Maxime Chevallier <maxime.chevallier@bootlin.com>
To: davem@davemloft.net
Cc: "Maxime Chevallier" <maxime.chevallier@bootlin.com>,
	netdev@vger.kernel.org, linux-kernel@vger.kernel.org,
	thomas.petazzoni@bootlin.com, "Andrew Lunn" <andrew@lunn.ch>,
	"Jakub Kicinski" <kuba@kernel.org>,
	"Eric Dumazet" <edumazet@google.com>,
	"Paolo Abeni" <pabeni@redhat.com>,
	"Russell King" <linux@armlinux.org.uk>,
	linux-arm-kernel@lists.infradead.org,
	"Christophe Leroy" <christophe.leroy@csgroup.eu>,
	"Herve Codina" <herve.codina@bootlin.com>,
	"Florian Fainelli" <f.fainelli@gmail.com>,
	"Heiner Kallweit" <hkallweit1@gmail.com>,
	"Vladimir Oltean" <vladimir.oltean@nxp.com>,
	"Köry Maincent" <kory.maincent@bootlin.com>,
	"Jesse Brandeburg" <jesse.brandeburg@intel.com>,
	"Jonathan Corbet" <corbet@lwn.net>,
	"Marek Behún" <kabel@kernel.org>,
	"Piergiorgio Beruto" <piergiorgio.beruto@gmail.com>,
	"Oleksij Rempel" <o.rempel@pengutronix.de>,
	"Nicolò Veronese" <nicveronese@gmail.com>
Subject: [PATCH net-next v4 10/13] net: ethtool: pse-pd: Target the command to the requested PHY
Date: Fri, 15 Dec 2023 18:12:32 +0100	[thread overview]
Message-ID: <20231215171237.1152563-11-maxime.chevallier@bootlin.com> (raw)
In-Reply-To: <20231215171237.1152563-1-maxime.chevallier@bootlin.com>

PSE and PD configuration is a PHY-specific command. Instead of targeting
the command towards dev->phydev, use the request to pick the targeted
PHY device.

Signed-off-by: Maxime Chevallier <maxime.chevallier@bootlin.com>
---
V4: No changes
V3: No changes
V2: New patch

 net/ethtool/pse-pd.c | 14 +++-----------
 1 file changed, 3 insertions(+), 11 deletions(-)

diff --git a/net/ethtool/pse-pd.c b/net/ethtool/pse-pd.c
index cc478af77111..0d9cd9c87104 100644
--- a/net/ethtool/pse-pd.c
+++ b/net/ethtool/pse-pd.c
@@ -31,17 +31,10 @@ const struct nla_policy ethnl_pse_get_policy[ETHTOOL_A_PSE_HEADER + 1] = {
 	[ETHTOOL_A_PSE_HEADER] = NLA_POLICY_NESTED(ethnl_header_policy),
 };
 
-static int pse_get_pse_attributes(struct net_device *dev,
+static int pse_get_pse_attributes(struct phy_device *phydev,
 				  struct netlink_ext_ack *extack,
 				  struct pse_reply_data *data)
 {
-	struct phy_device *phydev = dev->phydev;
-
-	if (!phydev) {
-		NL_SET_ERR_MSG(extack, "No PHY is attached");
-		return -EOPNOTSUPP;
-	}
-
 	if (!phydev->psec) {
 		NL_SET_ERR_MSG(extack, "No PSE is attached");
 		return -EOPNOTSUPP;
@@ -64,7 +57,7 @@ static int pse_prepare_data(const struct ethnl_req_info *req_base,
 	if (ret < 0)
 		return ret;
 
-	ret = pse_get_pse_attributes(dev, info->extack, data);
+	ret = pse_get_pse_attributes(req_base->phydev, info->extack, data);
 
 	ethnl_ops_complete(dev);
 
@@ -124,7 +117,6 @@ ethnl_set_pse_validate(struct ethnl_req_info *req_info, struct genl_info *info)
 static int
 ethnl_set_pse(struct ethnl_req_info *req_info, struct genl_info *info)
 {
-	struct net_device *dev = req_info->dev;
 	struct pse_control_config config = {};
 	struct nlattr **tb = info->attrs;
 	struct phy_device *phydev;
@@ -132,7 +124,7 @@ ethnl_set_pse(struct ethnl_req_info *req_info, struct genl_info *info)
 	/* this values are already validated by the ethnl_pse_set_policy */
 	config.admin_cotrol = nla_get_u32(tb[ETHTOOL_A_PODL_PSE_ADMIN_CONTROL]);
 
-	phydev = dev->phydev;
+	phydev = req_info->phydev;
 	if (!phydev) {
 		NL_SET_ERR_MSG(info->extack, "No PHY is attached");
 		return -EOPNOTSUPP;
-- 
2.43.0


_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

  parent reply	other threads:[~2023-12-15 17:12 UTC|newest]

Thread overview: 64+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-12-15 17:12 [PATCH net-next v4 00/13] Introduce PHY listing and link_topology tracking Maxime Chevallier
2023-12-15 17:12 ` Maxime Chevallier
2023-12-15 17:12 ` [PATCH net-next v4 01/13] net: phy: Introduce ethernet link topology representation Maxime Chevallier
2023-12-15 17:12   ` Maxime Chevallier
2023-12-15 21:45   ` Vladimir Oltean
2023-12-15 21:45     ` Vladimir Oltean
2023-12-17 16:57     ` Andrew Lunn
2023-12-17 16:57       ` Andrew Lunn
2023-12-18  8:49       ` Maxime Chevallier
2023-12-18  8:49         ` Maxime Chevallier
2023-12-18  9:11     ` Maxime Chevallier
2023-12-18  9:11       ` Maxime Chevallier
2023-12-18  6:04   ` kernel test robot
2023-12-18  6:04     ` kernel test robot
2023-12-18  8:10   ` kernel test robot
2023-12-18  8:10     ` kernel test robot
2023-12-15 17:12 ` [PATCH net-next v4 02/13] net: sfp: pass the phy_device when disconnecting an sfp module's PHY Maxime Chevallier
2023-12-15 17:12   ` Maxime Chevallier
2023-12-15 17:12 ` [PATCH net-next v4 03/13] net: phy: add helpers to handle sfp phy connect/disconnect Maxime Chevallier
2023-12-15 17:12   ` Maxime Chevallier
2023-12-15 17:12 ` [PATCH net-next v4 04/13] net: sfp: Add helper to return the SFP bus name Maxime Chevallier
2023-12-15 17:12   ` Maxime Chevallier
2023-12-17 17:07   ` Andrew Lunn
2023-12-17 17:07     ` Andrew Lunn
2023-12-15 17:12 ` [PATCH net-next v4 05/13] net: ethtool: Allow passing a phy index for some commands Maxime Chevallier
2023-12-15 17:12   ` Maxime Chevallier
2023-12-16 11:48   ` kernel test robot
2023-12-16 11:48     ` kernel test robot
2023-12-17 17:11   ` Andrew Lunn
2023-12-17 17:11     ` Andrew Lunn
2023-12-15 17:12 ` [PATCH net-next v4 06/13] netlink: specs: add phy-index as a header parameter Maxime Chevallier
2023-12-15 17:12   ` Maxime Chevallier
2023-12-17 17:11   ` Andrew Lunn
2023-12-17 17:11     ` Andrew Lunn
2023-12-15 17:12 ` [PATCH net-next v4 07/13] net: ethtool: Introduce a command to list PHYs on an interface Maxime Chevallier
2023-12-15 17:12   ` Maxime Chevallier
2023-12-19  8:55   ` Simon Horman
2023-12-19  8:55     ` Simon Horman
2023-12-15 17:12 ` [PATCH net-next v4 08/13] netlink: specs: add ethnl PHY_GET command set Maxime Chevallier
2023-12-15 17:12   ` Maxime Chevallier
2023-12-15 17:12 ` [PATCH net-next v4 09/13] net: ethtool: plca: Target the command to the requested PHY Maxime Chevallier
2023-12-15 17:12   ` Maxime Chevallier
2023-12-18  9:55   ` Andrew Lunn
2023-12-18  9:55     ` Andrew Lunn
2023-12-15 17:12 ` Maxime Chevallier [this message]
2023-12-15 17:12   ` [PATCH net-next v4 10/13] net: ethtool: pse-pd: " Maxime Chevallier
2023-12-18  9:58   ` Andrew Lunn
2023-12-18  9:58     ` Andrew Lunn
2023-12-21 17:31     ` Maxime Chevallier
2023-12-21 17:31       ` Maxime Chevallier
2023-12-15 17:12 ` [PATCH net-next v4 11/13] net: ethtool: cable-test: " Maxime Chevallier
2023-12-15 17:12   ` Maxime Chevallier
2023-12-18  9:58   ` Andrew Lunn
2023-12-18  9:58     ` Andrew Lunn
2023-12-15 17:12 ` [PATCH net-next v4 12/13] net: ethtool: strset: Allow querying phy stats by index Maxime Chevallier
2023-12-15 17:12   ` Maxime Chevallier
2023-12-18 10:00   ` Andrew Lunn
2023-12-18 10:00     ` Andrew Lunn
2023-12-15 17:12 ` [PATCH net-next v4 13/13] Documentation: networking: document phy_link_topology Maxime Chevallier
2023-12-15 17:12   ` Maxime Chevallier
2023-12-18 10:10   ` Andrew Lunn
2023-12-18 10:10     ` Andrew Lunn
2023-12-19  8:58   ` Simon Horman
2023-12-19  8:58     ` Simon Horman

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20231215171237.1152563-11-maxime.chevallier@bootlin.com \
    --to=maxime.chevallier@bootlin.com \
    --cc=andrew@lunn.ch \
    --cc=christophe.leroy@csgroup.eu \
    --cc=corbet@lwn.net \
    --cc=davem@davemloft.net \
    --cc=edumazet@google.com \
    --cc=f.fainelli@gmail.com \
    --cc=herve.codina@bootlin.com \
    --cc=hkallweit1@gmail.com \
    --cc=jesse.brandeburg@intel.com \
    --cc=kabel@kernel.org \
    --cc=kory.maincent@bootlin.com \
    --cc=kuba@kernel.org \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux@armlinux.org.uk \
    --cc=netdev@vger.kernel.org \
    --cc=nicveronese@gmail.com \
    --cc=o.rempel@pengutronix.de \
    --cc=pabeni@redhat.com \
    --cc=piergiorgio.beruto@gmail.com \
    --cc=thomas.petazzoni@bootlin.com \
    --cc=vladimir.oltean@nxp.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.