mirror of
git://git.kernel.org/pub/scm/linux/kernel/git/xiang/erofs.git
synced 2026-10-28 12:53:14 +01:00
net: pse-pd: Do not return EOPNOSUPP if config is null
For a PSE supporting both c33 and PoDL, setting config for one type of PoE
leaves the other type's config null. Currently, this case returns
EOPNOTSUPP, which is incorrect. Instead, we should do nothing if the
configuration is empty.
Signed-off-by: Kory Maincent <[email protected]>
Fixes: d83e13761d ("net: pse-pd: Use regulator framework within PSE framework")
Link: https://patch.msgid.link/[email protected]
Signed-off-by: Jakub Kicinski <[email protected]>
This commit is contained in:
1 parent
70c676cb3d
commit
93c3a96c30
2 files changed
+5
-3
No files matched your search
@@ -719,13 +719,13 @@ int pse_ethtool_set_config(struct pse_control *psec,
|
||||
{
|
||||
int err = 0;
|
||||
|
||||
if (pse_has_c33(psec)) {
|
||||
if (pse_has_c33(psec) && config->c33_admin_control) {
|
||||
err = pse_ethtool_c33_set_config(psec, config);
|
||||
if (err)
|
||||
return err;
|
||||
}
|
||||
|
||||
if (pse_has_podl(psec))
|
||||
if (pse_has_podl(psec) && config->podl_admin_control)
|
||||
err = pse_ethtool_podl_set_config(psec, config);
|
||||
|
||||
return err;
|
||||
|
||||
@@ -183,7 +183,9 @@ ethnl_set_pse(struct ethnl_req_info *req_info, struct genl_info *info)
|
||||
if (pse_has_c33(phydev->psec))
|
||||
config.c33_admin_control = nla_get_u32(tb[ETHTOOL_A_C33_PSE_ADMIN_CONTROL]);
|
||||
|
||||
/* Return errno directly - PSE has no notification */
|
||||
/* Return errno directly - PSE has no notification
|
||||
* pse_ethtool_set_config() will do nothing if the config is null
|
||||
*/
|
||||
return pse_ethtool_set_config(phydev->psec, info->extack, &config);
|
||||
}
|
||||
|
||||
|
||||
Reference in new issue
Block a user