Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 281002
b: refs/heads/master
c: 3014cd9
h: refs/heads/master
v: v3
  • Loading branch information
Lars-Peter Clausen authored and Greg Kroah-Hartman committed Nov 27, 2011
1 parent 26aa7d5 commit ac2f303
Show file tree
Hide file tree
Showing 2 changed files with 34 additions and 5 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: 65d5ff8d519bb9f994f9376a56816d992a5b53ab
refs/heads/master: 3014cd97e56d312865d670653adec338a8e5fc0e
37 changes: 33 additions & 4 deletions trunk/drivers/staging/iio/events.h
Original file line number Diff line number Diff line change
Expand Up @@ -40,6 +40,18 @@ enum iio_event_direction {
IIO_EV_DIR_FALLING,
};

/**
* IIO_EVENT_CODE() - create event identifier
* @chan_type: Type of the channel. Should be one of enum iio_chan_type.
* @diff: Whether the event is for an differential channel or not.
* @modifier: Modifier for the channel. Should be one of enum iio_modifier.
* @direction: Direction of the event. One of enum iio_event_direction.
* @type: Type of the event. Should be one enum iio_event_type.
* @chan: Channel number for non-differential channels.
* @chan1: First channel number for differential channels.
* @chan2: Second channel number for differential channels.
*/

#define IIO_EVENT_CODE(chan_type, diff, modifier, direction, \
type, chan, chan1, chan2) \
(((u64)type << 56) | ((u64)diff << 55) | \
Expand All @@ -51,12 +63,29 @@ enum iio_event_direction {
#define IIO_EV_BIT(type, direction) \
(1 << (type*IIO_EV_DIR_MAX + direction))

#define IIO_MOD_EVENT_CODE(channelclass, number, modifier, \
/**
* IIO_MOD_EVENT_CODE() - create event identifier for modified channels
* @chan_type: Type of the channel. Should be one of enum iio_chan_type.
* @number: Channel number.
* @modifier: Modifier for the channel. Should be one of enum iio_modifier.
* @type: Type of the event. Should be one enum iio_event_type.
* @direction: Direction of the event. One of enum iio_event_direction.
*/

#define IIO_MOD_EVENT_CODE(chan_type, number, modifier, \
type, direction) \
IIO_EVENT_CODE(channelclass, 0, modifier, direction, type, number, 0, 0)
IIO_EVENT_CODE(chan_type, 0, modifier, direction, type, number, 0, 0)

/**
* IIO_UNMOD_EVENT_CODE() - create event identifier for unmodified channels
* @chan_type: Type of the channel. Should be one of enum iio_chan_type.
* @number: Channel number.
* @type: Type of the event. Should be one enum iio_event_type.
* @direction: Direction of the event. One of enum iio_event_direction.
*/

#define IIO_UNMOD_EVENT_CODE(channelclass, number, type, direction) \
IIO_EVENT_CODE(channelclass, 0, 0, direction, type, number, 0, 0)
#define IIO_UNMOD_EVENT_CODE(chan_type, number, type, direction) \
IIO_EVENT_CODE(chan_type, 0, 0, direction, type, number, 0, 0)

#define IIO_EVENT_CODE_EXTRACT_TYPE(mask) ((mask >> 56) & 0xFF)

Expand Down

0 comments on commit ac2f303

Please sign in to comment.