mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2026-03-13 17:11:01 -04:00
net: ethtool: Introduce a command to list PHYs on an interface
As we have the ability to track the PHYs connected to a net_device through the link_topology, we can expose this list to userspace. This allows userspace to use these identifiers for phy-specific commands and take the decision of which PHY to target by knowing the link topology. Add PHY_GET and PHY_DUMP, which can be a filtered DUMP operation to list devices on only one interface. Signed-off-by: Maxime Chevallier <maxime.chevallier@bootlin.com> Reviewed-by: Christophe Leroy <christophe.leroy@csgroup.eu> Tested-by: Christophe Leroy <christophe.leroy@csgroup.eu> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
committed by
David S. Miller
parent
9af0e89d6c
commit
17194be4c8
@@ -58,6 +58,7 @@ enum {
|
||||
ETHTOOL_MSG_MM_GET,
|
||||
ETHTOOL_MSG_MM_SET,
|
||||
ETHTOOL_MSG_MODULE_FW_FLASH_ACT,
|
||||
ETHTOOL_MSG_PHY_GET,
|
||||
|
||||
/* add new constants above here */
|
||||
__ETHTOOL_MSG_USER_CNT,
|
||||
@@ -111,6 +112,8 @@ enum {
|
||||
ETHTOOL_MSG_MM_GET_REPLY,
|
||||
ETHTOOL_MSG_MM_NTF,
|
||||
ETHTOOL_MSG_MODULE_FW_FLASH_NTF,
|
||||
ETHTOOL_MSG_PHY_GET_REPLY,
|
||||
ETHTOOL_MSG_PHY_NTF,
|
||||
|
||||
/* add new constants above here */
|
||||
__ETHTOOL_MSG_KERNEL_CNT,
|
||||
@@ -1055,6 +1058,22 @@ enum {
|
||||
ETHTOOL_A_MODULE_FW_FLASH_MAX = (__ETHTOOL_A_MODULE_FW_FLASH_CNT - 1)
|
||||
};
|
||||
|
||||
enum {
|
||||
ETHTOOL_A_PHY_UNSPEC,
|
||||
ETHTOOL_A_PHY_HEADER, /* nest - _A_HEADER_* */
|
||||
ETHTOOL_A_PHY_INDEX, /* u32 */
|
||||
ETHTOOL_A_PHY_DRVNAME, /* string */
|
||||
ETHTOOL_A_PHY_NAME, /* string */
|
||||
ETHTOOL_A_PHY_UPSTREAM_TYPE, /* u32 */
|
||||
ETHTOOL_A_PHY_UPSTREAM_INDEX, /* u32 */
|
||||
ETHTOOL_A_PHY_UPSTREAM_SFP_NAME, /* string */
|
||||
ETHTOOL_A_PHY_DOWNSTREAM_SFP_NAME, /* string */
|
||||
|
||||
/* add new constants above here */
|
||||
__ETHTOOL_A_PHY_CNT,
|
||||
ETHTOOL_A_PHY_MAX = (__ETHTOOL_A_PHY_CNT - 1)
|
||||
};
|
||||
|
||||
/* generic netlink info */
|
||||
#define ETHTOOL_GENL_NAME "ethtool"
|
||||
#define ETHTOOL_GENL_VERSION 1
|
||||
|
||||
Reference in New Issue
Block a user