[PATCH v3 net-next 6/6] net: hibmcge: Add support for ioctl

From: Jijie Shao
Date: Fri Feb 21 2025 - 07:05:09 EST


This patch implements the .ndo_eth_ioctl() to
read and write the PHY register.

Signed-off-by: Jijie Shao <shaojijie@xxxxxxxxxx>
Reviewed-by: Andrew Lunn <andrew@xxxxxxx>
---
ChangeLog:
v1 -> v2:
- Use phy_do_ioctl() to simplify ioctl code, suggested by Andrew.
v1: https://lore.kernel.org/all/20250213035529.2402283-1-shaojijie@xxxxxxxxxx/
---
drivers/net/ethernet/hisilicon/hibmcge/hbg_main.c | 2 ++
1 file changed, 2 insertions(+)

diff --git a/drivers/net/ethernet/hisilicon/hibmcge/hbg_main.c b/drivers/net/ethernet/hisilicon/hibmcge/hbg_main.c
index c6a955e640fc..2ac5454338e4 100644
--- a/drivers/net/ethernet/hisilicon/hibmcge/hbg_main.c
+++ b/drivers/net/ethernet/hisilicon/hibmcge/hbg_main.c
@@ -5,6 +5,7 @@
#include <linux/if_vlan.h>
#include <linux/netdevice.h>
#include <linux/pci.h>
+#include <linux/phy.h>
#include "hbg_common.h"
#include "hbg_diagnose.h"
#include "hbg_err.h"
@@ -277,6 +278,7 @@ static const struct net_device_ops hbg_netdev_ops = {
.ndo_tx_timeout = hbg_net_tx_timeout,
.ndo_set_rx_mode = hbg_net_set_rx_mode,
.ndo_get_stats64 = hbg_net_get_stats,
+ .ndo_eth_ioctl = phy_do_ioctl_running,
};

static void hbg_service_task(struct work_struct *work)
--
2.33.0