diff options
Diffstat (limited to 'include/linux/clk-private.h')
| -rw-r--r-- | include/linux/clk-private.h | 22 | 
1 files changed, 19 insertions, 3 deletions
| diff --git a/include/linux/clk-private.h b/include/linux/clk-private.h index eb3f84bc5325..9c7f5807824b 100644 --- a/include/linux/clk-private.h +++ b/include/linux/clk-private.h @@ -64,7 +64,7 @@ struct clk {  		.parent_names = _parent_names,			\  		.num_parents = ARRAY_SIZE(_parent_names),	\  		.parents = _parents,				\ -		.flags = _flags,				\ +		.flags = _flags | CLK_IS_BASIC,			\  	}  #define DEFINE_CLK_FIXED_RATE(_name, _flags, _rate,		\ @@ -103,9 +103,9 @@ struct clk {  	DEFINE_CLK(_name, clk_gate_ops, _flags,			\  			_name##_parent_names, _name##_parents); -#define DEFINE_CLK_DIVIDER(_name, _parent_name, _parent_ptr,	\ +#define _DEFINE_CLK_DIVIDER(_name, _parent_name, _parent_ptr,	\  				_flags, _reg, _shift, _width,	\ -				_divider_flags, _lock)		\ +				_divider_flags, _table, _lock)	\  	static struct clk _name;				\  	static const char *_name##_parent_names[] = {		\  		_parent_name,					\ @@ -121,11 +121,27 @@ struct clk {  		.shift = _shift,				\  		.width = _width,				\  		.flags = _divider_flags,			\ +		.table = _table,				\  		.lock = _lock,					\  	};							\  	DEFINE_CLK(_name, clk_divider_ops, _flags,		\  			_name##_parent_names, _name##_parents); +#define DEFINE_CLK_DIVIDER(_name, _parent_name, _parent_ptr,	\ +				_flags, _reg, _shift, _width,	\ +				_divider_flags, _lock)		\ +	_DEFINE_CLK_DIVIDER(_name, _parent_name, _parent_ptr,	\ +				_flags, _reg, _shift, _width,	\ +				_divider_flags, NULL, _lock) + +#define DEFINE_CLK_DIVIDER_TABLE(_name, _parent_name,		\ +				_parent_ptr, _flags, _reg,	\ +				_shift, _width, _divider_flags,	\ +				_table, _lock)			\ +	_DEFINE_CLK_DIVIDER(_name, _parent_name, _parent_ptr,	\ +				_flags, _reg, _shift, _width,	\ +				_divider_flags, _table, _lock)	\ +  #define DEFINE_CLK_MUX(_name, _parent_names, _parents, _flags,	\  				_reg, _shift, _width,		\  				_mux_flags, _lock)		\ |