linux/drivers/net/ethernet/meta/fbnic/fbnic_netdev.c

// SPDX-License-Identifier: GPL-2.0
/* Copyright (c) Meta Platforms, Inc. and affiliates. */

#include <linux/etherdevice.h>
#include <linux/ipv6.h>
#include <linux/types.h>
#include <net/netdev_queues.h>

#include "fbnic.h"
#include "fbnic_netdev.h"
#include "fbnic_txrx.h"

int __fbnic_open(struct fbnic_net *fbn)
{}

static int fbnic_open(struct net_device *netdev)
{}

static int fbnic_stop(struct net_device *netdev)
{}

static int fbnic_uc_sync(struct net_device *netdev, const unsigned char *addr)
{}

static int fbnic_uc_unsync(struct net_device *netdev, const unsigned char *addr)
{}

static int fbnic_mc_sync(struct net_device *netdev, const unsigned char *addr)
{}

static int fbnic_mc_unsync(struct net_device *netdev, const unsigned char *addr)
{}

void __fbnic_set_rx_mode(struct net_device *netdev)
{}

static void fbnic_set_rx_mode(struct net_device *netdev)
{}

static int fbnic_set_mac(struct net_device *netdev, void *p)
{}

void fbnic_clear_rx_mode(struct net_device *netdev)
{}

static void fbnic_get_stats64(struct net_device *dev,
			      struct rtnl_link_stats64 *stats64)
{}

static const struct net_device_ops fbnic_netdev_ops =;

static void fbnic_get_queue_stats_rx(struct net_device *dev, int idx,
				     struct netdev_queue_stats_rx *rx)
{}

static void fbnic_get_queue_stats_tx(struct net_device *dev, int idx,
				     struct netdev_queue_stats_tx *tx)
{}

static void fbnic_get_base_stats(struct net_device *dev,
				 struct netdev_queue_stats_rx *rx,
				 struct netdev_queue_stats_tx *tx)
{}

static const struct netdev_stat_ops fbnic_stat_ops =;

void fbnic_reset_queues(struct fbnic_net *fbn,
			unsigned int tx, unsigned int rx)
{}

/**
 * fbnic_netdev_free - Free the netdev associate with fbnic
 * @fbd: Driver specific structure to free netdev from
 *
 * Allocate and initialize the netdev and netdev private structure. Bind
 * together the hardware, netdev, and pci data structures.
 **/
void fbnic_netdev_free(struct fbnic_dev *fbd)
{}

/**
 * fbnic_netdev_alloc - Allocate a netdev and associate with fbnic
 * @fbd: Driver specific structure to associate netdev with
 *
 * Allocate and initialize the netdev and netdev private structure. Bind
 * together the hardware, netdev, and pci data structures.
 *
 *  Return: 0 on success, negative on failure
 **/
struct net_device *fbnic_netdev_alloc(struct fbnic_dev *fbd)
{}

static int fbnic_dsn_to_mac_addr(u64 dsn, char *addr)
{}

/**
 * fbnic_netdev_register - Initialize general software structures
 * @netdev: Netdev containing structure to initialize and register
 *
 * Initialize the MAC address for the netdev and register it.
 *
 *  Return: 0 on success, negative on failure
 **/
int fbnic_netdev_register(struct net_device *netdev)
{}

void fbnic_netdev_unregister(struct net_device *netdev)
{}