]> git.baikalelectronics.ru Git - kernel.git/commit
mlxsw: core_env: Forbid power mode set and get on RJ45 ports
authorDanielle Ratson <danieller@nvidia.com>
Wed, 26 Jan 2022 10:30:36 +0000 (12:30 +0200)
committerDavid S. Miller <davem@davemloft.net>
Wed, 26 Jan 2022 11:15:42 +0000 (11:15 +0000)
commit8e9ad02fd07334c968bf08127aad7f27d21c7459
tree9ac33921c2deeadad3542afb4e6b25f11d3fe8d2
parentfca2e521a8bae3b817bb77c0efbfd5dfa04469d8
mlxsw: core_env: Forbid power mode set and get on RJ45 ports

PMMP (Port Module Memory Map Properties) and MCION (Management Cable IO
and Notifications) registers are not supported on RJ45 ports, so setting
and getting power mode should be rejected.

Therefore, before trying to access those registers, validate the port
module type that was queried during initialization and return an error
to user space in case the port module type is RJ45 (twisted pair).

Set output example:

 # ethtool --set-module swp1 power-mode-policy auto
 netlink error: mlxsw_core: Power mode is not supported on port module type
 netlink error: Invalid argument

Get output example:

 $ ethtool --show-module swp11
 netlink error: mlxsw_core: Power mode is not supported on port module type
 netlink error: Invalid argument

Signed-off-by: Danielle Ratson <danieller@nvidia.com>
Signed-off-by: Ido Schimmel <idosch@nvidia.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/mellanox/mlxsw/core_env.c