linux/drivers/net/wireless/ti/wl1251/main.c

// SPDX-License-Identifier: GPL-2.0-only
/*
 * This file is part of wl1251
 *
 * Copyright (C) 2008-2009 Nokia Corporation
 */

#include <linux/module.h>
#include <linux/interrupt.h>
#include <linux/firmware.h>
#include <linux/delay.h>
#include <linux/irq.h>
#include <linux/crc32.h>
#include <linux/etherdevice.h>
#include <linux/vmalloc.h>
#include <linux/slab.h>
#include <linux/netdevice.h>

#include "wl1251.h"
#include "wl12xx_80211.h"
#include "reg.h"
#include "io.h"
#include "cmd.h"
#include "event.h"
#include "tx.h"
#include "rx.h"
#include "ps.h"
#include "init.h"
#include "debugfs.h"
#include "boot.h"

void wl1251_enable_interrupts(struct wl1251 *wl)
{}

void wl1251_disable_interrupts(struct wl1251 *wl)
{}

static int wl1251_power_off(struct wl1251 *wl)
{}

static int wl1251_power_on(struct wl1251 *wl)
{}

static int wl1251_fetch_firmware(struct wl1251 *wl)
{}

static int wl1251_fetch_nvs(struct wl1251 *wl)
{}

static void wl1251_fw_wakeup(struct wl1251 *wl)
{}

static int wl1251_chip_wakeup(struct wl1251 *wl)
{}

#define WL1251_IRQ_LOOP_COUNT
static void wl1251_irq_work(struct work_struct *work)
{}

static int wl1251_join(struct wl1251 *wl, u8 bss_type, u8 channel,
		       u16 beacon_interval, u8 dtim_period)
{}

static void wl1251_op_tx(struct ieee80211_hw *hw,
			 struct ieee80211_tx_control *control,
			 struct sk_buff *skb)
{}

static int wl1251_op_start(struct ieee80211_hw *hw)
{}

static void wl1251_op_stop(struct ieee80211_hw *hw, bool suspend)
{}

static int wl1251_op_add_interface(struct ieee80211_hw *hw,
				   struct ieee80211_vif *vif)
{}

static void wl1251_op_remove_interface(struct ieee80211_hw *hw,
					 struct ieee80211_vif *vif)
{}

static int wl1251_build_null_data(struct wl1251 *wl)
{}

static int wl1251_build_qos_null_data(struct wl1251 *wl)
{}

static bool wl1251_can_do_pm(struct ieee80211_conf *conf, struct wl1251 *wl)
{}

static int wl1251_op_config(struct ieee80211_hw *hw, u32 changed)
{}

struct wl1251_filter_params {};

static u64 wl1251_op_prepare_multicast(struct ieee80211_hw *hw,
				       struct netdev_hw_addr_list *mc_list)
{}

#define WL1251_SUPPORTED_FILTERS

static void wl1251_op_configure_filter(struct ieee80211_hw *hw,
				       unsigned int changed,
				       unsigned int *total, u64 multicast)
{}

/* HW encryption */
static int wl1251_set_key_type(struct wl1251 *wl,
			       struct wl1251_cmd_set_keys *key,
			       enum set_key_cmd cmd,
			       struct ieee80211_key_conf *mac80211_key,
			       const u8 *addr)
{}

static int wl1251_op_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 wl1251_op_hw_scan(struct ieee80211_hw *hw,
			     struct ieee80211_vif *vif,
			     struct ieee80211_scan_request *hw_req)
{}

static int wl1251_op_set_rts_threshold(struct ieee80211_hw *hw, u32 value)
{}

static void wl1251_op_bss_info_changed(struct ieee80211_hw *hw,
				       struct ieee80211_vif *vif,
				       struct ieee80211_bss_conf *bss_conf,
				       u64 changed)
{}


/* can't be const, mac80211 writes to this */
static struct ieee80211_rate wl1251_rates[] =;

/* can't be const, mac80211 writes to this */
static struct ieee80211_channel wl1251_channels[] =;

static int wl1251_op_conf_tx(struct ieee80211_hw *hw,
			     struct ieee80211_vif *vif,
			     unsigned int link_id, u16 queue,
			     const struct ieee80211_tx_queue_params *params)
{}

static int wl1251_op_get_survey(struct ieee80211_hw *hw, int idx,
				struct survey_info *survey)
{}

/* can't be const, mac80211 writes to this */
static struct ieee80211_supported_band wl1251_band_2ghz =;

static const struct ieee80211_ops wl1251_ops =;

static int wl1251_read_eeprom_byte(struct wl1251 *wl, off_t offset, u8 *data)
{}

static int wl1251_read_eeprom(struct wl1251 *wl, off_t offset,
			      u8 *data, size_t len)
{}

static int wl1251_read_eeprom_mac(struct wl1251 *wl)
{}

#define NVS_OFF_MAC_LEN
#define NVS_OFF_MAC_ADDR_LO
#define NVS_OFF_MAC_ADDR_HI
#define NVS_OFF_MAC_DATA

static int wl1251_check_nvs_mac(struct wl1251 *wl)
{}

static int wl1251_read_nvs_mac(struct wl1251 *wl)
{}

static int wl1251_write_nvs_mac(struct wl1251 *wl)
{}

static int wl1251_register_hw(struct wl1251 *wl)
{}

int wl1251_init_ieee80211(struct wl1251 *wl)
{}
EXPORT_SYMBOL_GPL();

struct ieee80211_hw *wl1251_alloc_hw(void)
{}
EXPORT_SYMBOL_GPL();

int wl1251_free_hw(struct wl1251 *wl)
{}
EXPORT_SYMBOL_GPL();

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