linux/drivers/net/wwan/t7xx/t7xx_netdev.c

// SPDX-License-Identifier: GPL-2.0-only
/*
 * Copyright (c) 2021, MediaTek Inc.
 * Copyright (c) 2021-2022, Intel Corporation.
 *
 * Authors:
 *  Chandrashekar Devegowda <[email protected]>
 *  Haijun Liu <[email protected]>
 *  Ricardo Martinez <[email protected]>
 *
 * Contributors:
 *  Amir Hanania <[email protected]>
 *  Andy Shevchenko <[email protected]>
 *  Chiranjeevi Rapolu <[email protected]>
 *  Eliot Lee <[email protected]>
 *  Moises Veleta <[email protected]>
 *  Sreehari Kancharla <[email protected]>
 */

#include <linux/atomic.h>
#include <linux/device.h>
#include <linux/gfp.h>
#include <linux/if_arp.h>
#include <linux/if_ether.h>
#include <linux/ip.h>
#include <linux/kernel.h>
#include <linux/list.h>
#include <linux/netdev_features.h>
#include <linux/netdevice.h>
#include <linux/pm_runtime.h>
#include <linux/skbuff.h>
#include <linux/types.h>
#include <linux/wwan.h>
#include <net/ipv6.h>
#include <net/pkt_sched.h>

#include "t7xx_hif_dpmaif_rx.h"
#include "t7xx_hif_dpmaif_tx.h"
#include "t7xx_netdev.h"
#include "t7xx_pci.h"
#include "t7xx_port_proxy.h"
#include "t7xx_state_monitor.h"

#define IP_MUX_SESSION_DEFAULT
#define SBD_PACKET_TYPE_MASK

static void t7xx_ccmni_enable_napi(struct t7xx_ccmni_ctrl *ctlb)
{}

static void t7xx_ccmni_disable_napi(struct t7xx_ccmni_ctrl *ctlb)
{}

static int t7xx_ccmni_open(struct net_device *dev)
{}

static int t7xx_ccmni_close(struct net_device *dev)
{}

static int t7xx_ccmni_send_packet(struct t7xx_ccmni *ccmni, struct sk_buff *skb,
				  unsigned int txq_number)
{}

static netdev_tx_t t7xx_ccmni_start_xmit(struct sk_buff *skb, struct net_device *dev)
{}

static void t7xx_ccmni_tx_timeout(struct net_device *dev, unsigned int __always_unused txqueue)
{}

static const struct net_device_ops ccmni_netdev_ops =;

static void t7xx_ccmni_start(struct t7xx_ccmni_ctrl *ctlb)
{}

static void t7xx_ccmni_pre_stop(struct t7xx_ccmni_ctrl *ctlb)
{}

static void t7xx_ccmni_post_stop(struct t7xx_ccmni_ctrl *ctlb)
{}

static void t7xx_ccmni_wwan_setup(struct net_device *dev)
{}

static int t7xx_init_netdev_napi(struct t7xx_ccmni_ctrl *ctlb)
{}

static void t7xx_uninit_netdev_napi(struct t7xx_ccmni_ctrl *ctlb)
{}

static int t7xx_ccmni_wwan_newlink(void *ctxt, struct net_device *dev, u32 if_id,
				   struct netlink_ext_ack *extack)
{}

static void t7xx_ccmni_wwan_dellink(void *ctxt, struct net_device *dev, struct list_head *head)
{}

static const struct wwan_ops ccmni_wwan_ops =;

static int t7xx_ccmni_register_wwan(struct t7xx_ccmni_ctrl *ctlb)
{}

static int t7xx_ccmni_md_state_callback(enum md_state state, void *para)
{}

static void init_md_status_notifier(struct t7xx_pci_dev *t7xx_dev)
{}

static void t7xx_ccmni_recv_skb(struct t7xx_ccmni_ctrl *ccmni_ctlb, struct sk_buff *skb,
				struct napi_struct *napi)
{}

static void t7xx_ccmni_queue_tx_irq_notify(struct t7xx_ccmni_ctrl *ctlb, int qno)
{}

static void t7xx_ccmni_queue_tx_full_notify(struct t7xx_ccmni_ctrl *ctlb, int qno)
{}

static void t7xx_ccmni_queue_state_notify(struct t7xx_pci_dev *t7xx_dev,
					  enum dpmaif_txq_state state, int qno)
{}

int t7xx_ccmni_init(struct t7xx_pci_dev *t7xx_dev)
{}

void t7xx_ccmni_exit(struct t7xx_pci_dev *t7xx_dev)
{}