Skip to content

Commit

Permalink
Input: add static inline accessors for ABS properties
Browse files Browse the repository at this point in the history
In preparation for dynamically allocated ABS axis, introduce a number of
static inline access helpers. This should make the transition less
painful.

Signed-off-by: Daniel Mack <daniel@caiaq.de>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
  • Loading branch information
Daniel Mack authored and Dmitry Torokhov committed Aug 3, 2010
1 parent 0d87c72 commit 7957e9c
Showing 1 changed file with 30 additions and 0 deletions.
30 changes: 30 additions & 0 deletions include/linux/input.h
Original file line number Diff line number Diff line change
Expand Up @@ -1469,6 +1469,36 @@ static inline void input_set_abs_params(struct input_dev *dev, int axis, int min
dev->absbit[BIT_WORD(axis)] |= BIT_MASK(axis);
}

#define INPUT_GENERATE_ABS_ACCESSORS(_suffix, _item) \
static inline int input_abs_get_##_suffix(struct input_dev *dev, \
unsigned int axis) \
{ \
return dev->abs##_item[axis]; \
} \
\
static inline void input_abs_set_##_suffix(struct input_dev *dev, \
unsigned int axis, int val) \
{ \
dev->abs##_item[axis] = val; \
}

INPUT_GENERATE_ABS_ACCESSORS(min, min)
INPUT_GENERATE_ABS_ACCESSORS(max, max)
INPUT_GENERATE_ABS_ACCESSORS(fuzz, fuzz)
INPUT_GENERATE_ABS_ACCESSORS(flat, flat)
INPUT_GENERATE_ABS_ACCESSORS(res, res)

static inline int input_abs_get_val(struct input_dev *dev, unsigned int axis)
{
return dev->abs[axis];
}

static inline void input_abs_set_val(struct input_dev *dev,
unsigned int axis, int val)
{
dev->abs[axis] = val;
}

int input_get_keycode(struct input_dev *dev,
unsigned int scancode, unsigned int *keycode);
int input_set_keycode(struct input_dev *dev,
Expand Down

0 comments on commit 7957e9c

Please sign in to comment.