2007-09-25 17:57:13 -07:00
/*
2009-11-08 16:39:55 +01:00
Copyright ( C ) 2004 - 2009 Ivo van Doorn < IvDoorn @ gmail . com >
2007-09-25 17:57:13 -07:00
< http : //rt2x00.serialmonkey.com>
This program is free software ; you can redistribute it and / or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation ; either version 2 of the License , or
( at your option ) any later version .
This program is distributed in the hope that it will be useful ,
but WITHOUT ANY WARRANTY ; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE . See the
GNU General Public License for more details .
You should have received a copy of the GNU General Public License
2013-12-06 03:32:11 -08:00
along with this program ; if not , see < http : //www.gnu.org/licenses/>.
2007-09-25 17:57:13 -07:00
*/
/*
Module : rt2x00debug
Abstract : Data structures for the rt2x00debug .
*/
# ifndef RT2X00DEBUG_H
# define RT2X00DEBUG_H
struct rt2x00_dev ;
2008-10-29 19:41:03 +01:00
/**
* enum rt2x00debugfs_entry_flags : Flags for debugfs registry entry
*
* @ RT2X00DEBUGFS_OFFSET : rt2x00lib should pass the register offset
* as argument when using the callback function read ( ) / write ( )
*/
enum rt2x00debugfs_entry_flags {
RT2X00DEBUGFS_OFFSET = ( 1 < < 0 ) ,
} ;
2007-09-25 17:57:13 -07:00
# define RT2X00DEBUGFS_REGISTER_ENTRY(__name, __type) \
struct reg # # __name { \
2017-05-17 16:46:53 +02:00
__type ( * read ) ( struct rt2x00_dev * rt2x00dev , \
const unsigned int word ) ; \
2007-10-27 13:41:25 +02:00
void ( * write ) ( struct rt2x00_dev * rt2x00dev , \
2007-09-25 17:57:13 -07:00
const unsigned int word , __type data ) ; \
\
2008-10-29 19:41:03 +01:00
unsigned int flags ; \
\
unsigned int word_base ; \
2007-09-25 17:57:13 -07:00
unsigned int word_size ; \
unsigned int word_count ; \
} __name
struct rt2x00debug {
/*
* Reference to the modules structure .
*/
struct module * owner ;
/*
* Register access entries .
*/
RT2X00DEBUGFS_REGISTER_ENTRY ( csr , u32 ) ;
RT2X00DEBUGFS_REGISTER_ENTRY ( eeprom , u16 ) ;
RT2X00DEBUGFS_REGISTER_ENTRY ( bbp , u8 ) ;
RT2X00DEBUGFS_REGISTER_ENTRY ( rf , u32 ) ;
2012-04-19 15:53:10 +02:00
RT2X00DEBUGFS_REGISTER_ENTRY ( rfcsr , u8 ) ;
2007-09-25 17:57:13 -07:00
} ;
# endif /* RT2X00DEBUG_H */