mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git
synced 2025-01-15 02:05:33 +00:00
Staging: hv: add basic ethtool support
Ethtool allows querying device information and controlling parameters. For now just add ability to turn on/off scatter/gather. Signed-off-by: Stephen Hemminger <shemminger@vyatta.com> Acked-by: Hank Janssen <hjanssen@microsoft.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
This commit is contained in:
parent
b220f5f925
commit
f82f4ad7bf
@ -326,6 +326,21 @@ static int netvsc_recv_callback(struct hv_device *device_obj,
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static void netvsc_get_drvinfo(struct net_device *net,
|
||||||
|
struct ethtool_drvinfo *info)
|
||||||
|
{
|
||||||
|
strcpy(info->driver, "hv_netvsc");
|
||||||
|
strcpy(info->version, HV_DRV_VERSION);
|
||||||
|
strcpy(info->fw_version, "N/A");
|
||||||
|
}
|
||||||
|
|
||||||
|
static const struct ethtool_ops ethtool_ops = {
|
||||||
|
.get_drvinfo = netvsc_get_drvinfo,
|
||||||
|
.get_sg = ethtool_op_get_sg,
|
||||||
|
.set_sg = ethtool_op_set_sg,
|
||||||
|
.get_link = ethtool_op_get_link,
|
||||||
|
};
|
||||||
|
|
||||||
static const struct net_device_ops device_ops = {
|
static const struct net_device_ops device_ops = {
|
||||||
.ndo_open = netvsc_open,
|
.ndo_open = netvsc_open,
|
||||||
.ndo_stop = netvsc_close,
|
.ndo_stop = netvsc_close,
|
||||||
@ -396,6 +411,7 @@ static int netvsc_probe(struct device *device)
|
|||||||
/* TODO: Add GSO and Checksum offload */
|
/* TODO: Add GSO and Checksum offload */
|
||||||
net->features = NETIF_F_SG;
|
net->features = NETIF_F_SG;
|
||||||
|
|
||||||
|
SET_ETHTOOL_OPS(net, ðtool_ops);
|
||||||
SET_NETDEV_DEV(net, device);
|
SET_NETDEV_DEV(net, device);
|
||||||
|
|
||||||
ret = register_netdev(net);
|
ret = register_netdev(net);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user