ani.h (d4bbf7e7759afc172e2bfbc5c416324590049cdd) ani.h (c47faa364cfb249d5d7670fb7293a6f9acd8aa9e)
1/*
2 * Copyright (C) 2010 Bruno Randolf <br1@einfach.org>
3 *
4 * Permission to use, copy, modify, and/or distribute this software for any
5 * purpose with or without fee is hereby granted, provided that the above
6 * copyright notice and this permission notice appear in all copies.
7 *
8 * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES

--- 26 unchanged lines hidden (view full) ---

35#define ATH5K_ANI_MAX_FIRSTEP_LVL 2
36#define ATH5K_ANI_MAX_NOISE_IMM_LVL 1
37
38
39/**
40 * enum ath5k_ani_mode - mode for ANI / noise sensitivity
41 *
42 * @ATH5K_ANI_MODE_OFF: Turn ANI off. This can be useful to just stop the ANI
1/*
2 * Copyright (C) 2010 Bruno Randolf <br1@einfach.org>
3 *
4 * Permission to use, copy, modify, and/or distribute this software for any
5 * purpose with or without fee is hereby granted, provided that the above
6 * copyright notice and this permission notice appear in all copies.
7 *
8 * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES

--- 26 unchanged lines hidden (view full) ---

35#define ATH5K_ANI_MAX_FIRSTEP_LVL 2
36#define ATH5K_ANI_MAX_NOISE_IMM_LVL 1
37
38
39/**
40 * enum ath5k_ani_mode - mode for ANI / noise sensitivity
41 *
42 * @ATH5K_ANI_MODE_OFF: Turn ANI off. This can be useful to just stop the ANI
43 * algorithm after it has been on auto mode.
44 * ATH5K_ANI_MODE_MANUAL_LOW: Manually set all immunity parameters to low,
45 * maximizing sensitivity. ANI will not run.
46 * ATH5K_ANI_MODE_MANUAL_HIGH: Manually set all immunity parameters to high,
47 * minimizing sensitivity. ANI will not run.
48 * ATH5K_ANI_MODE_AUTO: Automatically control immunity parameters based on the
49 * amount of OFDM and CCK frame errors (default).
43 * algorithm after it has been on auto mode.
44 * @ATH5K_ANI_MODE_MANUAL_LOW: Manually set all immunity parameters to low,
45 * maximizing sensitivity. ANI will not run.
46 * @ATH5K_ANI_MODE_MANUAL_HIGH: Manually set all immunity parameters to high,
47 * minimizing sensitivity. ANI will not run.
48 * @ATH5K_ANI_MODE_AUTO: Automatically control immunity parameters based on the
49 * amount of OFDM and CCK frame errors (default).
50 */
51enum ath5k_ani_mode {
52 ATH5K_ANI_MODE_OFF = 0,
53 ATH5K_ANI_MODE_MANUAL_LOW = 1,
54 ATH5K_ANI_MODE_MANUAL_HIGH = 2,
55 ATH5K_ANI_MODE_AUTO = 3
56};
57
58
59/**
60 * struct ath5k_ani_state - ANI state and associated counters
50 */
51enum ath5k_ani_mode {
52 ATH5K_ANI_MODE_OFF = 0,
53 ATH5K_ANI_MODE_MANUAL_LOW = 1,
54 ATH5K_ANI_MODE_MANUAL_HIGH = 2,
55 ATH5K_ANI_MODE_AUTO = 3
56};
57
58
59/**
60 * struct ath5k_ani_state - ANI state and associated counters
61 *
62 * @max_spur_level: the maximum spur level is chip dependent
61 * @ani_mode: One of enum ath5k_ani_mode
62 * @noise_imm_level: Noise immunity level
63 * @spur_level: Spur immunity level
64 * @firstep_level: FIRstep level
65 * @ofdm_weak_sig: OFDM weak signal detection state (on/off)
66 * @cck_weak_sig: CCK weak signal detection state (on/off)
67 * @max_spur_level: Max spur immunity level (chip specific)
68 * @listen_time: Listen time
69 * @ofdm_errors: OFDM timing error count
70 * @cck_errors: CCK timing error count
71 * @last_cc: The &struct ath_cycle_counters (for stats)
72 * @last_listen: Listen time from previous run (for stats)
73 * @last_ofdm_errors: OFDM timing error count from previous run (for tats)
74 * @last_cck_errors: CCK timing error count from previous run (for stats)
75 * @sum_ofdm_errors: Sum of OFDM timing errors (for stats)
76 * @sum_cck_errors: Sum of all CCK timing errors (for stats)
63 */
64struct ath5k_ani_state {
65 enum ath5k_ani_mode ani_mode;
66
67 /* state */
68 int noise_imm_level;
69 int spur_level;
70 int firstep_level;

--- 35 unchanged lines hidden ---
77 */
78struct ath5k_ani_state {
79 enum ath5k_ani_mode ani_mode;
80
81 /* state */
82 int noise_imm_level;
83 int spur_level;
84 int firstep_level;

--- 35 unchanged lines hidden ---