Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 0cf63226 authored by Bryan Whitehead's avatar Bryan Whitehead Committed by David S. Miller
Browse files

lan743x: Add support for ethtool get_drvinfo



Implement ethtool get_drvinfo

Signed-off-by: default avatarBryan Whitehead <Bryan.Whitehead@microchip.com>
Reviewed-by: default avatarAndrew Lunn <andrew@lunn.ch>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 8760c4d6
Loading
Loading
Loading
Loading
+1 −1
Original line number Original line Diff line number Diff line
@@ -6,4 +6,4 @@ obj-$(CONFIG_ENC28J60) += enc28j60.o
obj-$(CONFIG_ENCX24J600) += encx24j600.o encx24j600-regmap.o
obj-$(CONFIG_ENCX24J600) += encx24j600.o encx24j600-regmap.o
obj-$(CONFIG_LAN743X) += lan743x.o
obj-$(CONFIG_LAN743X) += lan743x.o


lan743x-objs := lan743x_main.o
lan743x-objs := lan743x_main.o lan743x_ethtool.o
+21 −0
Original line number Original line Diff line number Diff line
/* SPDX-License-Identifier: GPL-2.0+ */
/* Copyright (C) 2018 Microchip Technology Inc. */

#include <linux/netdevice.h>
#include "lan743x_main.h"
#include "lan743x_ethtool.h"
#include <linux/pci.h>

static void lan743x_ethtool_get_drvinfo(struct net_device *netdev,
					struct ethtool_drvinfo *info)
{
	struct lan743x_adapter *adapter = netdev_priv(netdev);

	strlcpy(info->driver, DRIVER_NAME, sizeof(info->driver));
	strlcpy(info->bus_info,
		pci_name(adapter->pdev), sizeof(info->bus_info));
}

const struct ethtool_ops lan743x_ethtool_ops = {
	.get_drvinfo = lan743x_ethtool_get_drvinfo,
};
+11 −0
Original line number Original line Diff line number Diff line
/* SPDX-License-Identifier: GPL-2.0+ */
/* Copyright (C) 2018 Microchip Technology Inc. */

#ifndef _LAN743X_ETHTOOL_H
#define _LAN743X_ETHTOOL_H

#include "linux/ethtool.h"

extern const struct ethtool_ops lan743x_ethtool_ops;

#endif /* _LAN743X_ETHTOOL_H */
+2 −0
Original line number Original line Diff line number Diff line
@@ -12,6 +12,7 @@
#include <linux/rtnetlink.h>
#include <linux/rtnetlink.h>
#include <linux/iopoll.h>
#include <linux/iopoll.h>
#include "lan743x_main.h"
#include "lan743x_main.h"
#include "lan743x_ethtool.h"


static void lan743x_pci_cleanup(struct lan743x_adapter *adapter)
static void lan743x_pci_cleanup(struct lan743x_adapter *adapter)
{
{
@@ -2689,6 +2690,7 @@ static int lan743x_pcidev_probe(struct pci_dev *pdev,
		goto cleanup_hardware;
		goto cleanup_hardware;


	adapter->netdev->netdev_ops = &lan743x_netdev_ops;
	adapter->netdev->netdev_ops = &lan743x_netdev_ops;
	adapter->netdev->ethtool_ops = &lan743x_ethtool_ops;
	adapter->netdev->features = NETIF_F_SG | NETIF_F_TSO | NETIF_F_HW_CSUM;
	adapter->netdev->features = NETIF_F_SG | NETIF_F_TSO | NETIF_F_HW_CSUM;
	adapter->netdev->hw_features = adapter->netdev->features;
	adapter->netdev->hw_features = adapter->netdev->features;