#include <linux/ieee80211.h>
#include <linux/export.h>
#include <net/mac80211.h>
#include "common.h"
static void
il_clear_traffic_stats(struct il_priv *il)
{ … }
void
il_update_stats(struct il_priv *il, bool is_tx, __le16 fc, u16 len)
{ … }
EXPORT_SYMBOL(…);
#define DEBUGFS_ADD_FILE(name, parent, mode) …
#define DEBUGFS_ADD_BOOL(name, parent, ptr) …
#define DEBUGFS_READ_FUNC(name) …
#define DEBUGFS_WRITE_FUNC(name) …
#define DEBUGFS_READ_FILE_OPS(name) …
#define DEBUGFS_WRITE_FILE_OPS(name) …
#define DEBUGFS_READ_WRITE_FILE_OPS(name) …
static const char *
il_get_mgmt_string(int cmd)
{ … }
static const char *
il_get_ctrl_string(int cmd)
{ … }
static ssize_t
il_dbgfs_tx_stats_read(struct file *file, char __user *user_buf, size_t count,
loff_t *ppos)
{ … }
static ssize_t
il_dbgfs_clear_traffic_stats_write(struct file *file,
const char __user *user_buf, size_t count,
loff_t *ppos)
{ … }
static ssize_t
il_dbgfs_rx_stats_read(struct file *file, char __user *user_buf, size_t count,
loff_t *ppos)
{ … }
#define BYTE1_MASK …
#define BYTE2_MASK …
#define BYTE3_MASK …
static ssize_t
il_dbgfs_sram_read(struct file *file, char __user *user_buf, size_t count,
loff_t *ppos)
{ … }
static ssize_t
il_dbgfs_sram_write(struct file *file, const char __user *user_buf,
size_t count, loff_t *ppos)
{ … }
static ssize_t
il_dbgfs_stations_read(struct file *file, char __user *user_buf, size_t count,
loff_t *ppos)
{ … }
static ssize_t
il_dbgfs_nvm_read(struct file *file, char __user *user_buf, size_t count,
loff_t *ppos)
{ … }
static ssize_t
il_dbgfs_channels_read(struct file *file, char __user *user_buf, size_t count,
loff_t *ppos)
{ … }
static ssize_t
il_dbgfs_status_read(struct file *file, char __user *user_buf, size_t count,
loff_t *ppos)
{ … }
static ssize_t
il_dbgfs_interrupt_read(struct file *file, char __user *user_buf, size_t count,
loff_t *ppos)
{ … }
static ssize_t
il_dbgfs_interrupt_write(struct file *file, const char __user *user_buf,
size_t count, loff_t *ppos)
{ … }
static ssize_t
il_dbgfs_qos_read(struct file *file, char __user *user_buf, size_t count,
loff_t *ppos)
{ … }
static ssize_t
il_dbgfs_disable_ht40_write(struct file *file, const char __user *user_buf,
size_t count, loff_t *ppos)
{ … }
static ssize_t
il_dbgfs_disable_ht40_read(struct file *file, char __user *user_buf,
size_t count, loff_t *ppos)
{ … }
DEBUGFS_READ_WRITE_FILE_OPS(sram);
DEBUGFS_READ_FILE_OPS(nvm);
DEBUGFS_READ_FILE_OPS(stations);
DEBUGFS_READ_FILE_OPS(channels);
DEBUGFS_READ_FILE_OPS(status);
DEBUGFS_READ_WRITE_FILE_OPS(interrupt);
DEBUGFS_READ_FILE_OPS(qos);
DEBUGFS_READ_WRITE_FILE_OPS(disable_ht40);
static ssize_t
il_dbgfs_tx_queue_read(struct file *file, char __user *user_buf, size_t count,
loff_t *ppos)
{ … }
static ssize_t
il_dbgfs_rx_queue_read(struct file *file, char __user *user_buf, size_t count,
loff_t *ppos)
{ … }
static ssize_t
il_dbgfs_ucode_rx_stats_read(struct file *file, char __user *user_buf,
size_t count, loff_t *ppos)
{ … }
static ssize_t
il_dbgfs_ucode_tx_stats_read(struct file *file, char __user *user_buf,
size_t count, loff_t *ppos)
{ … }
static ssize_t
il_dbgfs_ucode_general_stats_read(struct file *file, char __user *user_buf,
size_t count, loff_t *ppos)
{ … }
static ssize_t
il_dbgfs_sensitivity_read(struct file *file, char __user *user_buf,
size_t count, loff_t *ppos)
{ … }
static ssize_t
il_dbgfs_chain_noise_read(struct file *file, char __user *user_buf,
size_t count, loff_t *ppos)
{ … }
static ssize_t
il_dbgfs_power_save_status_read(struct file *file, char __user *user_buf,
size_t count, loff_t *ppos)
{ … }
static ssize_t
il_dbgfs_clear_ucode_stats_write(struct file *file,
const char __user *user_buf, size_t count,
loff_t *ppos)
{ … }
static ssize_t
il_dbgfs_rxon_flags_read(struct file *file, char __user *user_buf,
size_t count, loff_t *ppos)
{ … }
static ssize_t
il_dbgfs_rxon_filter_flags_read(struct file *file, char __user *user_buf,
size_t count, loff_t *ppos)
{ … }
static ssize_t
il_dbgfs_fh_reg_read(struct file *file, char __user *user_buf, size_t count,
loff_t *ppos)
{ … }
static ssize_t
il_dbgfs_missed_beacon_read(struct file *file, char __user *user_buf,
size_t count, loff_t *ppos)
{ … }
static ssize_t
il_dbgfs_missed_beacon_write(struct file *file, const char __user *user_buf,
size_t count, loff_t *ppos)
{ … }
static ssize_t
il_dbgfs_force_reset_read(struct file *file, char __user *user_buf,
size_t count, loff_t *ppos)
{ … }
static ssize_t
il_dbgfs_force_reset_write(struct file *file, const char __user *user_buf,
size_t count, loff_t *ppos)
{ … }
static ssize_t
il_dbgfs_wd_timeout_write(struct file *file, const char __user *user_buf,
size_t count, loff_t *ppos)
{ … }
DEBUGFS_READ_FILE_OPS(rx_stats);
DEBUGFS_READ_FILE_OPS(tx_stats);
DEBUGFS_READ_FILE_OPS(rx_queue);
DEBUGFS_READ_FILE_OPS(tx_queue);
DEBUGFS_READ_FILE_OPS(ucode_rx_stats);
DEBUGFS_READ_FILE_OPS(ucode_tx_stats);
DEBUGFS_READ_FILE_OPS(ucode_general_stats);
DEBUGFS_READ_FILE_OPS(sensitivity);
DEBUGFS_READ_FILE_OPS(chain_noise);
DEBUGFS_READ_FILE_OPS(power_save_status);
DEBUGFS_WRITE_FILE_OPS(clear_ucode_stats);
DEBUGFS_WRITE_FILE_OPS(clear_traffic_stats);
DEBUGFS_READ_FILE_OPS(fh_reg);
DEBUGFS_READ_WRITE_FILE_OPS(missed_beacon);
DEBUGFS_READ_WRITE_FILE_OPS(force_reset);
DEBUGFS_READ_FILE_OPS(rxon_flags);
DEBUGFS_READ_FILE_OPS(rxon_filter_flags);
DEBUGFS_WRITE_FILE_OPS(wd_timeout);
void
il_dbgfs_register(struct il_priv *il, const char *name)
{ … }
EXPORT_SYMBOL(…);
void
il_dbgfs_unregister(struct il_priv *il)
{ … }
EXPORT_SYMBOL(…);