Lines Matching +full:- +full:20
1 // SPDX-License-Identifier: GPL-2.0-only
26 struct wl1251 *wl = file->private_data; \
41 wl->debugfs.name = debugfs_create_file(#name, 0400, parent, \
46 debugfs_remove(wl->debugfs.name); \
47 wl->debugfs.name = NULL; \
55 struct wl1251 *wl = file->private_data; \
62 wl->stats.fw_stats->sub.name); \
73 DEBUGFS_ADD(sub## _ ##name, wl->debugfs.fw_statistics)
82 mutex_lock(&wl->mutex); in wl1251_debugfs_update_stats()
88 if (wl->state == WL1251_STATE_ON && in wl1251_debugfs_update_stats()
89 time_after(jiffies, wl->stats.fw_stats_update + in wl1251_debugfs_update_stats()
91 wl1251_acx_statistics(wl, wl->stats.fw_stats); in wl1251_debugfs_update_stats()
92 wl->stats.fw_stats_update = jiffies; in wl1251_debugfs_update_stats()
98 mutex_unlock(&wl->mutex); in wl1251_debugfs_update_stats()
101 DEBUGFS_FWSTATS_FILE(tx, internal_desc_overflow, 20, "%u");
103 DEBUGFS_FWSTATS_FILE(rx, out_of_mem, 20, "%u");
104 DEBUGFS_FWSTATS_FILE(rx, hdr_overflow, 20, "%u");
105 DEBUGFS_FWSTATS_FILE(rx, hw_stuck, 20, "%u");
106 DEBUGFS_FWSTATS_FILE(rx, dropped, 20, "%u");
107 DEBUGFS_FWSTATS_FILE(rx, fcs_err, 20, "%u");
108 DEBUGFS_FWSTATS_FILE(rx, xfr_hint_trig, 20, "%u");
109 DEBUGFS_FWSTATS_FILE(rx, path_reset, 20, "%u");
110 DEBUGFS_FWSTATS_FILE(rx, reset_counter, 20, "%u");
112 DEBUGFS_FWSTATS_FILE(dma, rx_requested, 20, "%u");
113 DEBUGFS_FWSTATS_FILE(dma, rx_errors, 20, "%u");
114 DEBUGFS_FWSTATS_FILE(dma, tx_requested, 20, "%u");
115 DEBUGFS_FWSTATS_FILE(dma, tx_errors, 20, "%u");
117 DEBUGFS_FWSTATS_FILE(isr, cmd_cmplt, 20, "%u");
118 DEBUGFS_FWSTATS_FILE(isr, fiqs, 20, "%u");
119 DEBUGFS_FWSTATS_FILE(isr, rx_headers, 20, "%u");
120 DEBUGFS_FWSTATS_FILE(isr, rx_mem_overflow, 20, "%u");
121 DEBUGFS_FWSTATS_FILE(isr, rx_rdys, 20, "%u");
122 DEBUGFS_FWSTATS_FILE(isr, irqs, 20, "%u");
123 DEBUGFS_FWSTATS_FILE(isr, tx_procs, 20, "%u");
124 DEBUGFS_FWSTATS_FILE(isr, decrypt_done, 20, "%u");
125 DEBUGFS_FWSTATS_FILE(isr, dma0_done, 20, "%u");
126 DEBUGFS_FWSTATS_FILE(isr, dma1_done, 20, "%u");
127 DEBUGFS_FWSTATS_FILE(isr, tx_exch_complete, 20, "%u");
128 DEBUGFS_FWSTATS_FILE(isr, commands, 20, "%u");
129 DEBUGFS_FWSTATS_FILE(isr, rx_procs, 20, "%u");
130 DEBUGFS_FWSTATS_FILE(isr, hw_pm_mode_changes, 20, "%u");
131 DEBUGFS_FWSTATS_FILE(isr, host_acknowledges, 20, "%u");
132 DEBUGFS_FWSTATS_FILE(isr, pci_pm, 20, "%u");
133 DEBUGFS_FWSTATS_FILE(isr, wakeups, 20, "%u");
134 DEBUGFS_FWSTATS_FILE(isr, low_rssi, 20, "%u");
136 DEBUGFS_FWSTATS_FILE(wep, addr_key_count, 20, "%u");
137 DEBUGFS_FWSTATS_FILE(wep, default_key_count, 20, "%u");
139 DEBUGFS_FWSTATS_FILE(wep, key_not_found, 20, "%u");
140 DEBUGFS_FWSTATS_FILE(wep, decrypt_fail, 20, "%u");
141 DEBUGFS_FWSTATS_FILE(wep, packets, 20, "%u");
142 DEBUGFS_FWSTATS_FILE(wep, interrupt, 20, "%u");
144 DEBUGFS_FWSTATS_FILE(pwr, ps_enter, 20, "%u");
145 DEBUGFS_FWSTATS_FILE(pwr, elp_enter, 20, "%u");
146 DEBUGFS_FWSTATS_FILE(pwr, missing_bcns, 20, "%u");
147 DEBUGFS_FWSTATS_FILE(pwr, wake_on_host, 20, "%u");
148 DEBUGFS_FWSTATS_FILE(pwr, wake_on_timer_exp, 20, "%u");
149 DEBUGFS_FWSTATS_FILE(pwr, tx_with_ps, 20, "%u");
150 DEBUGFS_FWSTATS_FILE(pwr, tx_without_ps, 20, "%u");
151 DEBUGFS_FWSTATS_FILE(pwr, rcvd_beacons, 20, "%u");
152 DEBUGFS_FWSTATS_FILE(pwr, power_save_off, 20, "%u");
153 DEBUGFS_FWSTATS_FILE(pwr, enable_ps, 20, "%u");
154 DEBUGFS_FWSTATS_FILE(pwr, disable_ps, 20, "%u");
155 DEBUGFS_FWSTATS_FILE(pwr, fix_tsf_ps, 20, "%u");
157 DEBUGFS_FWSTATS_FILE(pwr, rcvd_awake_beacons, 20, "%u");
159 DEBUGFS_FWSTATS_FILE(mic, rx_pkts, 20, "%u");
160 DEBUGFS_FWSTATS_FILE(mic, calc_failure, 20, "%u");
162 DEBUGFS_FWSTATS_FILE(aes, encrypt_fail, 20, "%u");
163 DEBUGFS_FWSTATS_FILE(aes, decrypt_fail, 20, "%u");
164 DEBUGFS_FWSTATS_FILE(aes, encrypt_packets, 20, "%u");
165 DEBUGFS_FWSTATS_FILE(aes, decrypt_packets, 20, "%u");
166 DEBUGFS_FWSTATS_FILE(aes, encrypt_interrupt, 20, "%u");
167 DEBUGFS_FWSTATS_FILE(aes, decrypt_interrupt, 20, "%u");
169 DEBUGFS_FWSTATS_FILE(event, heart_beat, 20, "%u");
170 DEBUGFS_FWSTATS_FILE(event, calibration, 20, "%u");
171 DEBUGFS_FWSTATS_FILE(event, rx_mismatch, 20, "%u");
172 DEBUGFS_FWSTATS_FILE(event, rx_mem_empty, 20, "%u");
173 DEBUGFS_FWSTATS_FILE(event, rx_pool, 20, "%u");
174 DEBUGFS_FWSTATS_FILE(event, oom_late, 20, "%u");
175 DEBUGFS_FWSTATS_FILE(event, phy_transmit_error, 20, "%u");
176 DEBUGFS_FWSTATS_FILE(event, tx_stuck, 20, "%u");
178 DEBUGFS_FWSTATS_FILE(ps, pspoll_timeouts, 20, "%u");
179 DEBUGFS_FWSTATS_FILE(ps, upsd_timeouts, 20, "%u");
180 DEBUGFS_FWSTATS_FILE(ps, upsd_max_sptime, 20, "%u");
181 DEBUGFS_FWSTATS_FILE(ps, upsd_max_apturn, 20, "%u");
182 DEBUGFS_FWSTATS_FILE(ps, pspoll_max_apturn, 20, "%u");
183 DEBUGFS_FWSTATS_FILE(ps, pspoll_utilization, 20, "%u");
184 DEBUGFS_FWSTATS_FILE(ps, upsd_utilization, 20, "%u");
186 DEBUGFS_FWSTATS_FILE(rxpipe, rx_prep_beacon_drop, 20, "%u");
187 DEBUGFS_FWSTATS_FILE(rxpipe, descr_host_int_trig_rx_data, 20, "%u");
189 20, "%u");
190 DEBUGFS_FWSTATS_FILE(rxpipe, missed_beacon_host_int_trig_rx_data, 20, "%u");
191 DEBUGFS_FWSTATS_FILE(rxpipe, tx_xfr_host_int_trig_rx_data, 20, "%u");
193 DEBUGFS_READONLY_FILE(retry_count, 20, "%u", wl->stats.retry_count);
194 DEBUGFS_READONLY_FILE(excessive_retries, 20, "%u",
195 wl->stats.excessive_retries);
200 struct wl1251 *wl = file->private_data; in tx_queue_len_read()
202 char buf[20]; in tx_queue_len_read()
205 queue_len = skb_queue_len(&wl->tx_queue); in tx_queue_len_read()
220 struct wl1251 *wl = file->private_data; in tx_queue_status_read()
224 if (wl->tx_queue_stopped) in tx_queue_status_read()
431 DEBUGFS_ADD(tx_queue_len, wl->debugfs.rootdir); in wl1251_debugfs_add_files()
432 DEBUGFS_ADD(tx_queue_status, wl->debugfs.rootdir); in wl1251_debugfs_add_files()
433 DEBUGFS_ADD(retry_count, wl->debugfs.rootdir); in wl1251_debugfs_add_files()
434 DEBUGFS_ADD(excessive_retries, wl->debugfs.rootdir); in wl1251_debugfs_add_files()
439 if (wl->stats.fw_stats != NULL) in wl1251_debugfs_reset()
440 memset(wl->stats.fw_stats, 0, sizeof(*wl->stats.fw_stats)); in wl1251_debugfs_reset()
441 wl->stats.retry_count = 0; in wl1251_debugfs_reset()
442 wl->stats.excessive_retries = 0; in wl1251_debugfs_reset()
447 wl->stats.fw_stats = kzalloc(sizeof(*wl->stats.fw_stats), GFP_KERNEL); in wl1251_debugfs_init()
448 if (!wl->stats.fw_stats) in wl1251_debugfs_init()
449 return -ENOMEM; in wl1251_debugfs_init()
451 wl->debugfs.rootdir = debugfs_create_dir(KBUILD_MODNAME, NULL); in wl1251_debugfs_init()
453 wl->debugfs.fw_statistics = debugfs_create_dir("fw-statistics", in wl1251_debugfs_init()
454 wl->debugfs.rootdir); in wl1251_debugfs_init()
456 wl->stats.fw_stats_update = jiffies; in wl1251_debugfs_init()
467 kfree(wl->stats.fw_stats); in wl1251_debugfs_exit()
468 wl->stats.fw_stats = NULL; in wl1251_debugfs_exit()
470 debugfs_remove(wl->debugfs.fw_statistics); in wl1251_debugfs_exit()
471 wl->debugfs.fw_statistics = NULL; in wl1251_debugfs_exit()
473 debugfs_remove(wl->debugfs.rootdir); in wl1251_debugfs_exit()
474 wl->debugfs.rootdir = NULL; in wl1251_debugfs_exit()