Commit c2f2e2c3 authored by ChiaEn Wu's avatar ChiaEn Wu Committed by Sebastian Reichel
Browse files

lib: add linear range index macro



Add linear_range_idx macro for declaring the linear_range struct simply.

Reviewed-by: default avatarMatti Vaittinen <mazziesaccount@gmail.com>
Signed-off-by: default avatarChiaEn Wu <chiaen_wu@richtek.com>
Signed-off-by: default avatarSebastian Reichel <sebastian.reichel@collabora.com>
parent 568035b0
Loading
Loading
Loading
Loading
+11 −0
Original line number Diff line number Diff line
@@ -26,6 +26,17 @@ struct linear_range {
	unsigned int step;
};

#define LINEAR_RANGE(_min, _min_sel, _max_sel, _step)		\
	{							\
		.min = _min,					\
		.min_sel = _min_sel,				\
		.max_sel = _max_sel,				\
		.step = _step,					\
	}

#define LINEAR_RANGE_IDX(_idx, _min, _min_sel, _max_sel, _step)	\
	[_idx] = LINEAR_RANGE(_min, _min_sel, _max_sel, _step)

unsigned int linear_range_values_in_range(const struct linear_range *r);
unsigned int linear_range_values_in_range_array(const struct linear_range *r,
						int ranges);