#undef __NO_VERSION__
#include <linux/bits.h>
#include <linux/etherdevice.h>
#include <linux/file.h>
#include <linux/kernel.h>
#include "device.h"
#include "card.h"
#include "baseband.h"
#include "mac.h"
#include "power.h"
#include "wcmd.h"
#include "rxtx.h"
#include "rf.h"
#include "usbpipe.h"
#include "channel.h"
#define DRIVER_AUTHOR …
MODULE_AUTHOR(…);
MODULE_LICENSE(…) …;
MODULE_DESCRIPTION(…);
#define RX_DESC_DEF0 …
static int vnt_rx_buffers = …;
module_param_named(rx_buffers, vnt_rx_buffers, int, 0644);
MODULE_PARM_DESC(…) …;
#define TX_DESC_DEF0 …
static int vnt_tx_buffers = …;
module_param_named(tx_buffers, vnt_tx_buffers, int, 0644);
MODULE_PARM_DESC(…) …;
#define RTS_THRESH_DEF …
#define FRAG_THRESH_DEF …
#define BBP_TYPE_DEF …
static const struct usb_device_id vt6656_table[] = …;
static void vnt_set_options(struct vnt_private *priv)
{ … }
static int vnt_download_firmware(struct vnt_private *priv)
{ … }
static int vnt_firmware_branch_to_sram(struct vnt_private *priv)
{ … }
static int vnt_check_firmware_version(struct vnt_private *priv)
{ … }
static int vnt_init_registers(struct vnt_private *priv)
{ … }
static void vnt_free_tx_bufs(struct vnt_private *priv)
{ … }
static void vnt_free_rx_bufs(struct vnt_private *priv)
{ … }
static void vnt_free_int_bufs(struct vnt_private *priv)
{ … }
static int vnt_alloc_bufs(struct vnt_private *priv)
{ … }
static void vnt_tx_80211(struct ieee80211_hw *hw,
struct ieee80211_tx_control *control,
struct sk_buff *skb)
{ … }
static int vnt_start(struct ieee80211_hw *hw)
{ … }
static void vnt_stop(struct ieee80211_hw *hw, bool suspend)
{ … }
static int vnt_add_interface(struct ieee80211_hw *hw, struct ieee80211_vif *vif)
{ … }
static void vnt_remove_interface(struct ieee80211_hw *hw,
struct ieee80211_vif *vif)
{ … }
static int vnt_config(struct ieee80211_hw *hw, u32 changed)
{ … }
static void vnt_bss_info_changed(struct ieee80211_hw *hw,
struct ieee80211_vif *vif,
struct ieee80211_bss_conf *conf, u64 changed)
{ … }
static u64 vnt_prepare_multicast(struct ieee80211_hw *hw,
struct netdev_hw_addr_list *mc_list)
{ … }
static void vnt_configure(struct ieee80211_hw *hw,
unsigned int changed_flags,
unsigned int *total_flags, u64 multicast)
{ … }
static int vnt_set_key(struct ieee80211_hw *hw, enum set_key_cmd cmd,
struct ieee80211_vif *vif, struct ieee80211_sta *sta,
struct ieee80211_key_conf *key)
{ … }
static int vnt_get_stats(struct ieee80211_hw *hw,
struct ieee80211_low_level_stats *stats)
{ … }
static u64 vnt_get_tsf(struct ieee80211_hw *hw, struct ieee80211_vif *vif)
{ … }
static void vnt_set_tsf(struct ieee80211_hw *hw, struct ieee80211_vif *vif,
u64 tsf)
{ … }
static void vnt_reset_tsf(struct ieee80211_hw *hw, struct ieee80211_vif *vif)
{ … }
static const struct ieee80211_ops vnt_mac_ops = …;
int vnt_init(struct vnt_private *priv)
{ … }
static int
vt6656_probe(struct usb_interface *intf, const struct usb_device_id *id)
{ … }
static void vt6656_disconnect(struct usb_interface *intf)
{ … }
#ifdef CONFIG_PM
static int vt6656_suspend(struct usb_interface *intf, pm_message_t message)
{ … }
static int vt6656_resume(struct usb_interface *intf)
{ … }
#endif
MODULE_DEVICE_TABLE(…);
static struct usb_driver vt6656_driver = …;
module_usb_driver(…) …;
MODULE_FIRMWARE(…);