brintos

brintos / linux-shallow public Read only

0
0
Text · 2.5 KiB · 6f6b500 Raw
110 lines · c
1/* SPDX-License-Identifier: GPL-2.0 */2#ifndef B43_DEBUGFS_H_3#define B43_DEBUGFS_H_4 5struct b43_wldev;6struct b43_txstatus;7 8enum b43_dyndbg {		/* Dynamic debugging features */9	B43_DBG_XMITPOWER,10	B43_DBG_DMAOVERFLOW,11	B43_DBG_DMAVERBOSE,12	B43_DBG_PWORK_FAST,13	B43_DBG_PWORK_STOP,14	B43_DBG_LO,15	B43_DBG_FIRMWARE,16	B43_DBG_KEYS,17	B43_DBG_VERBOSESTATS,18	__B43_NR_DYNDBG,19};20 21#ifdef CONFIG_B43_DEBUG22 23struct dentry;24 25#define B43_NR_LOGGED_TXSTATUS	10026 27struct b43_txstatus_log {28	/* This structure is protected by wl->mutex */29 30	struct b43_txstatus *log;31	int end;32};33 34struct b43_dfs_file {35	char *buffer;36	size_t data_len;37};38 39struct b43_dfsentry {40	struct b43_wldev *dev;41	struct dentry *subdir;42 43	struct b43_dfs_file file_shm16read;44	struct b43_dfs_file file_shm16write;45	struct b43_dfs_file file_shm32read;46	struct b43_dfs_file file_shm32write;47	struct b43_dfs_file file_mmio16read;48	struct b43_dfs_file file_mmio16write;49	struct b43_dfs_file file_mmio32read;50	struct b43_dfs_file file_mmio32write;51	struct b43_dfs_file file_txstat;52	struct b43_dfs_file file_txpower_g;53	struct b43_dfs_file file_restart;54	struct b43_dfs_file file_loctls;55 56	struct b43_txstatus_log txstatlog;57 58	/* The cached address for the next mmio16read file read */59	u16 mmio16read_next;60	/* The cached address for the next mmio32read file read */61	u16 mmio32read_next;62 63	/* The cached address for the next shm16read file read */64	u32 shm16read_routing_next;65	u32 shm16read_addr_next;66	/* The cached address for the next shm32read file read */67	u32 shm32read_routing_next;68	u32 shm32read_addr_next;69 70	/* Enabled/Disabled list for the dynamic debugging features. */71	bool dyn_debug[__B43_NR_DYNDBG];72};73 74bool b43_debug(struct b43_wldev *dev, enum b43_dyndbg feature);75 76void b43_debugfs_init(void);77void b43_debugfs_exit(void);78void b43_debugfs_add_device(struct b43_wldev *dev);79void b43_debugfs_remove_device(struct b43_wldev *dev);80void b43_debugfs_log_txstat(struct b43_wldev *dev,81			    const struct b43_txstatus *status);82 83#else /* CONFIG_B43_DEBUG */84 85static inline bool b43_debug(struct b43_wldev *dev, enum b43_dyndbg feature)86{87	return false;88}89 90static inline void b43_debugfs_init(void)91{92}93static inline void b43_debugfs_exit(void)94{95}96static inline void b43_debugfs_add_device(struct b43_wldev *dev)97{98}99static inline void b43_debugfs_remove_device(struct b43_wldev *dev)100{101}102static inline void b43_debugfs_log_txstat(struct b43_wldev *dev,103					  const struct b43_txstatus *status)104{105}106 107#endif /* CONFIG_B43_DEBUG */108 109#endif /* B43_DEBUGFS_H_ */110