linux/drivers/net/wireless/mediatek/mt76/usb.c

// SPDX-License-Identifier: ISC
/*
 * Copyright (C) 2018 Lorenzo Bianconi <[email protected]>
 */

#include <linux/module.h>
#include "mt76.h"
#include "usb_trace.h"
#include "dma.h"

#define MT_VEND_REQ_MAX_RETRY
#define MT_VEND_REQ_TOUT_MS

static bool disable_usb_sg;
module_param_named(disable_usb_sg, disable_usb_sg, bool, 0644);
MODULE_PARM_DESC();

int __mt76u_vendor_request(struct mt76_dev *dev, u8 req, u8 req_type,
			   u16 val, u16 offset, void *buf, size_t len)
{}
EXPORT_SYMBOL_GPL();

int mt76u_vendor_request(struct mt76_dev *dev, u8 req,
			 u8 req_type, u16 val, u16 offset,
			 void *buf, size_t len)
{}
EXPORT_SYMBOL_GPL();

u32 ___mt76u_rr(struct mt76_dev *dev, u8 req, u8 req_type, u32 addr)
{}
EXPORT_SYMBOL_GPL();

static u32 __mt76u_rr(struct mt76_dev *dev, u32 addr)
{}

static u32 mt76u_rr(struct mt76_dev *dev, u32 addr)
{}

void ___mt76u_wr(struct mt76_dev *dev, u8 req, u8 req_type,
		 u32 addr, u32 val)
{}
EXPORT_SYMBOL_GPL();

static void __mt76u_wr(struct mt76_dev *dev, u32 addr, u32 val)
{}

static void mt76u_wr(struct mt76_dev *dev, u32 addr, u32 val)
{}

static u32 mt76u_rmw(struct mt76_dev *dev, u32 addr,
		     u32 mask, u32 val)
{}

static void mt76u_copy(struct mt76_dev *dev, u32 offset,
		       const void *data, int len)
{}

void mt76u_read_copy(struct mt76_dev *dev, u32 offset,
		     void *data, int len)
{}
EXPORT_SYMBOL_GPL();

void mt76u_single_wr(struct mt76_dev *dev, const u8 req,
		     const u16 offset, const u32 val)
{}
EXPORT_SYMBOL_GPL();

static int
mt76u_req_wr_rp(struct mt76_dev *dev, u32 base,
		const struct mt76_reg_pair *data, int len)
{}

static int
mt76u_wr_rp(struct mt76_dev *dev, u32 base,
	    const struct mt76_reg_pair *data, int n)
{}

static int
mt76u_req_rd_rp(struct mt76_dev *dev, u32 base, struct mt76_reg_pair *data,
		int len)
{}

static int
mt76u_rd_rp(struct mt76_dev *dev, u32 base,
	    struct mt76_reg_pair *data, int n)
{}

static bool mt76u_check_sg(struct mt76_dev *dev)
{}

static int
mt76u_set_endpoints(struct usb_interface *intf,
		    struct mt76_usb *usb)
{}

static int
mt76u_fill_rx_sg(struct mt76_dev *dev, struct mt76_queue *q, struct urb *urb,
		 int nsgs)
{}

static int
mt76u_refill_rx(struct mt76_dev *dev, struct mt76_queue *q,
		struct urb *urb, int nsgs)
{}

static int
mt76u_urb_alloc(struct mt76_dev *dev, struct mt76_queue_entry *e,
		int sg_max_size)
{}

static int
mt76u_rx_urb_alloc(struct mt76_dev *dev, struct mt76_queue *q,
		   struct mt76_queue_entry *e)
{}

static void mt76u_urb_free(struct urb *urb)
{}

static void
mt76u_fill_bulk_urb(struct mt76_dev *dev, int dir, int index,
		    struct urb *urb, usb_complete_t complete_fn,
		    void *context)
{}

static struct urb *
mt76u_get_next_rx_entry(struct mt76_queue *q)
{}

static int
mt76u_get_rx_entry_len(struct mt76_dev *dev, u8 *data,
		       u32 data_len)
{}

static struct sk_buff *
mt76u_build_rx_skb(struct mt76_dev *dev, void *data,
		   int len, int buf_size)
{}

static int
mt76u_process_rx_entry(struct mt76_dev *dev, struct urb *urb,
		       int buf_size)
{}

static void mt76u_complete_rx(struct urb *urb)
{}

static int
mt76u_submit_rx_buf(struct mt76_dev *dev, enum mt76_rxq_id qid,
		    struct urb *urb)
{}

static void
mt76u_process_rx_queue(struct mt76_dev *dev, struct mt76_queue *q)
{}

static void mt76u_rx_worker(struct mt76_worker *w)
{}

static int
mt76u_submit_rx_buffers(struct mt76_dev *dev, enum mt76_rxq_id qid)
{}

static int
mt76u_alloc_rx_queue(struct mt76_dev *dev, enum mt76_rxq_id qid)
{}

int mt76u_alloc_mcu_queue(struct mt76_dev *dev)
{}
EXPORT_SYMBOL_GPL();

static void
mt76u_free_rx_queue(struct mt76_dev *dev, struct mt76_queue *q)
{}

static void mt76u_free_rx(struct mt76_dev *dev)
{}

void mt76u_stop_rx(struct mt76_dev *dev)
{}
EXPORT_SYMBOL_GPL();

int mt76u_resume_rx(struct mt76_dev *dev)
{}
EXPORT_SYMBOL_GPL();

static void mt76u_status_worker(struct mt76_worker *w)
{}

static void mt76u_tx_status_data(struct work_struct *work)
{}

static void mt76u_complete_tx(struct urb *urb)
{}

static int
mt76u_tx_setup_buffers(struct mt76_dev *dev, struct sk_buff *skb,
		       struct urb *urb)
{}

static int
mt76u_tx_queue_skb(struct mt76_phy *phy, struct mt76_queue *q,
		   enum mt76_txq_id qid, struct sk_buff *skb,
		   struct mt76_wcid *wcid, struct ieee80211_sta *sta)
{}

static void mt76u_tx_kick(struct mt76_dev *dev, struct mt76_queue *q)
{}

static void
mt76u_ac_to_hwq(struct mt76_dev *dev, struct mt76_queue *q, u8 qid)
{}

static int mt76u_alloc_tx(struct mt76_dev *dev)
{}

static void mt76u_free_tx(struct mt76_dev *dev)
{}

void mt76u_stop_tx(struct mt76_dev *dev)
{}
EXPORT_SYMBOL_GPL();

void mt76u_queues_deinit(struct mt76_dev *dev)
{}
EXPORT_SYMBOL_GPL();

int mt76u_alloc_queues(struct mt76_dev *dev)
{}
EXPORT_SYMBOL_GPL();

static const struct mt76_queue_ops usb_queue_ops =;

int __mt76u_init(struct mt76_dev *dev, struct usb_interface *intf,
		 struct mt76_bus_ops *ops)
{}
EXPORT_SYMBOL_GPL();

int mt76u_init(struct mt76_dev *dev, struct usb_interface *intf)
{}
EXPORT_SYMBOL_GPL();

MODULE_AUTHOR();
MODULE_DESCRIPTION();
MODULE_LICENSE();