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>,
"Simon Horman" <horms@kernel.org>,
mwojtas@chromium.org
Subject: [PATCH net-next v11 10/13] net: ethtool: pse-pd: Target the command to the requested PHY
Date: Thu, 4 Apr 2024 11:30:00 +0200 [thread overview]
Message-ID: <20240404093004.2552221-11-maxime.chevallier@bootlin.com> (raw)
In-Reply-To: <20240404093004.2552221-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>
---
V11: No changes
V10: No changes
V9: No changes
V8: No changes
V7: No changes
V6: Use dedicated policy
V5: Added-back an incorrectly removed check
V4: No changes
V3: No changes
V2: New patch
net/ethtool/pse-pd.c | 13 +++++--------
1 file changed, 5 insertions(+), 8 deletions(-)
diff --git a/net/ethtool/pse-pd.c b/net/ethtool/pse-pd.c
index cc478af77111..be50d79122c4 100644
--- a/net/ethtool/pse-pd.c
+++ b/net/ethtool/pse-pd.c
@@ -28,15 +28,13 @@ struct pse_reply_data {
/* PSE_GET */
const struct nla_policy ethnl_pse_get_policy[ETHTOOL_A_PSE_HEADER + 1] = {
- [ETHTOOL_A_PSE_HEADER] = NLA_POLICY_NESTED(ethnl_header_policy),
+ [ETHTOOL_A_PSE_HEADER] = NLA_POLICY_NESTED(ethnl_header_policy_phy),
};
-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;
@@ -64,7 +62,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);
@@ -109,7 +107,7 @@ static int pse_fill_reply(struct sk_buff *skb,
/* PSE_SET */
const struct nla_policy ethnl_pse_set_policy[ETHTOOL_A_PSE_MAX + 1] = {
- [ETHTOOL_A_PSE_HEADER] = NLA_POLICY_NESTED(ethnl_header_policy),
+ [ETHTOOL_A_PSE_HEADER] = NLA_POLICY_NESTED(ethnl_header_policy_phy),
[ETHTOOL_A_PODL_PSE_ADMIN_CONTROL] =
NLA_POLICY_RANGE(NLA_U32, ETHTOOL_PODL_PSE_ADMIN_STATE_DISABLED,
ETHTOOL_PODL_PSE_ADMIN_STATE_ENABLED),
@@ -124,7 +122,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 +129,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.44.0
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
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>,
"Simon Horman" <horms@kernel.org>,
mwojtas@chromium.org
Subject: [PATCH net-next v11 10/13] net: ethtool: pse-pd: Target the command to the requested PHY
Date: Thu, 4 Apr 2024 11:30:00 +0200 [thread overview]
Message-ID: <20240404093004.2552221-11-maxime.chevallier@bootlin.com> (raw)
In-Reply-To: <20240404093004.2552221-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>
---
V11: No changes
V10: No changes
V9: No changes
V8: No changes
V7: No changes
V6: Use dedicated policy
V5: Added-back an incorrectly removed check
V4: No changes
V3: No changes
V2: New patch
net/ethtool/pse-pd.c | 13 +++++--------
1 file changed, 5 insertions(+), 8 deletions(-)
diff --git a/net/ethtool/pse-pd.c b/net/ethtool/pse-pd.c
index cc478af77111..be50d79122c4 100644
--- a/net/ethtool/pse-pd.c
+++ b/net/ethtool/pse-pd.c
@@ -28,15 +28,13 @@ struct pse_reply_data {
/* PSE_GET */
const struct nla_policy ethnl_pse_get_policy[ETHTOOL_A_PSE_HEADER + 1] = {
- [ETHTOOL_A_PSE_HEADER] = NLA_POLICY_NESTED(ethnl_header_policy),
+ [ETHTOOL_A_PSE_HEADER] = NLA_POLICY_NESTED(ethnl_header_policy_phy),
};
-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;
@@ -64,7 +62,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);
@@ -109,7 +107,7 @@ static int pse_fill_reply(struct sk_buff *skb,
/* PSE_SET */
const struct nla_policy ethnl_pse_set_policy[ETHTOOL_A_PSE_MAX + 1] = {
- [ETHTOOL_A_PSE_HEADER] = NLA_POLICY_NESTED(ethnl_header_policy),
+ [ETHTOOL_A_PSE_HEADER] = NLA_POLICY_NESTED(ethnl_header_policy_phy),
[ETHTOOL_A_PODL_PSE_ADMIN_CONTROL] =
NLA_POLICY_RANGE(NLA_U32, ETHTOOL_PODL_PSE_ADMIN_STATE_DISABLED,
ETHTOOL_PODL_PSE_ADMIN_STATE_ENABLED),
@@ -124,7 +122,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 +129,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.44.0
next prev parent reply other threads:[~2024-04-04 11:49 UTC|newest]
Thread overview: 65+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-04-04 9:29 [PATCH net-next v11 00/13] Introduce PHY listing and link_topology tracking Maxime Chevallier
2024-04-04 9:29 ` Maxime Chevallier
2024-04-04 9:29 ` [PATCH net-next v11 01/13] net: phy: Introduce ethernet link topology representation Maxime Chevallier
2024-04-04 9:29 ` Maxime Chevallier
2024-04-06 15:51 ` Andrew Lunn
2024-04-06 15:51 ` Andrew Lunn
2024-04-09 20:15 ` Nathan Chancellor
2024-04-09 20:15 ` Nathan Chancellor
2024-04-10 6:45 ` Maxime Chevallier
2024-04-10 6:45 ` Maxime Chevallier
2024-04-10 8:16 ` Maxime Chevallier
2024-04-10 8:16 ` Maxime Chevallier
2024-04-10 14:53 ` Nathan Chancellor
2024-04-11 9:25 ` Maxime Chevallier
2024-04-11 9:25 ` Maxime Chevallier
2024-04-04 9:29 ` [PATCH net-next v11 02/13] net: sfp: pass the phy_device when disconnecting an sfp module's PHY Maxime Chevallier
2024-04-04 9:29 ` Maxime Chevallier
2024-04-06 15:51 ` Andrew Lunn
2024-04-06 15:51 ` Andrew Lunn
2024-04-04 9:29 ` [PATCH net-next v11 03/13] net: phy: add helpers to handle sfp phy connect/disconnect Maxime Chevallier
2024-04-04 9:29 ` Maxime Chevallier
2024-04-06 15:52 ` Andrew Lunn
2024-04-06 15:52 ` Andrew Lunn
2024-04-04 9:29 ` [PATCH net-next v11 04/13] net: sfp: Add helper to return the SFP bus name Maxime Chevallier
2024-04-04 9:29 ` Maxime Chevallier
2024-04-04 9:29 ` [PATCH net-next v11 05/13] net: ethtool: Allow passing a phy index for some commands Maxime Chevallier
2024-04-04 9:29 ` Maxime Chevallier
2024-04-04 9:29 ` [PATCH net-next v11 06/13] netlink: specs: add phy-index as a header parameter Maxime Chevallier
2024-04-04 9:29 ` Maxime Chevallier
2024-04-04 9:29 ` [PATCH net-next v11 07/13] net: ethtool: Introduce a command to list PHYs on an interface Maxime Chevallier
2024-04-04 9:29 ` Maxime Chevallier
2024-04-06 15:58 ` Andrew Lunn
2024-04-06 15:58 ` Andrew Lunn
2024-04-04 9:29 ` [PATCH net-next v11 08/13] netlink: specs: add ethnl PHY_GET command set Maxime Chevallier
2024-04-04 9:29 ` Maxime Chevallier
2024-04-06 16:14 ` Andrew Lunn
2024-04-06 16:14 ` Andrew Lunn
2024-04-04 9:29 ` [PATCH net-next v11 09/13] net: ethtool: plca: Target the command to the requested PHY Maxime Chevallier
2024-04-04 9:29 ` Maxime Chevallier
2024-04-06 16:00 ` Andrew Lunn
2024-04-06 16:00 ` Andrew Lunn
2024-04-04 9:30 ` Maxime Chevallier [this message]
2024-04-04 9:30 ` [PATCH net-next v11 10/13] net: ethtool: pse-pd: " Maxime Chevallier
2024-04-06 16:00 ` Andrew Lunn
2024-04-06 16:00 ` Andrew Lunn
2024-04-04 9:30 ` [PATCH net-next v11 11/13] net: ethtool: cable-test: " Maxime Chevallier
2024-04-04 9:30 ` Maxime Chevallier
2024-04-06 16:00 ` Andrew Lunn
2024-04-06 16:00 ` Andrew Lunn
2024-04-04 9:30 ` [PATCH net-next v11 12/13] net: ethtool: strset: Allow querying phy stats by index Maxime Chevallier
2024-04-04 9:30 ` Maxime Chevallier
2024-04-06 16:01 ` Andrew Lunn
2024-04-06 16:01 ` Andrew Lunn
2024-04-04 9:30 ` [PATCH net-next v11 13/13] Documentation: networking: document phy_link_topology Maxime Chevallier
2024-04-04 9:30 ` Maxime Chevallier
2024-04-06 16:07 ` Andrew Lunn
2024-04-06 16:07 ` Andrew Lunn
2024-04-06 17:30 ` [PATCH net-next v11 00/13] Introduce PHY listing and link_topology tracking patchwork-bot+netdevbpf
2024-04-06 17:30 ` patchwork-bot+netdevbpf
2024-04-08 14:32 ` Maxime Chevallier
2024-04-08 14:32 ` Maxime Chevallier
2024-04-08 23:50 ` Andrew Lunn
2024-04-08 23:50 ` Andrew Lunn
2024-04-09 7:22 ` Maxime Chevallier
2024-04-09 7:22 ` Maxime Chevallier
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=20240404093004.2552221-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=horms@kernel.org \
--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=mwojtas@chromium.org \
--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.