Skip to content

Commit

Permalink
iio: Add channel for Phase
Browse files Browse the repository at this point in the history
Add new channel type support for phase.

This channel may be used by Time-of-flight sensors to express the
phase difference between emitted and received signals. Those sensor
will then use the phase shift of return signals to approximate the
distance to objects.

Signed-off-by: Mathieu Othacehe <[email protected]>
Signed-off-by: Jonathan Cameron <[email protected]>
  • Loading branch information
mothacehe authored and jic23 committed Jul 21, 2018
1 parent cd570e6 commit c73314e
Show file tree
Hide file tree
Showing 4 changed files with 11 additions and 0 deletions.
7 changes: 7 additions & 0 deletions Documentation/ABI/testing/sysfs-bus-iio
Original file line number Diff line number Diff line change
Expand Up @@ -1675,3 +1675,10 @@ KernelVersion: 4.12
Contact: [email protected]
Description:
Raw counter device counters direction for channel Y.

What: /sys/bus/iio/devices/iio:deviceX/in_phaseY_raw
KernelVersion: 4.18
Contact: [email protected]
Description:
Raw (unscaled) phase difference reading from channel Y
that can be processed to radians.
1 change: 1 addition & 0 deletions drivers/iio/industrialio-core.c
Original file line number Diff line number Diff line change
Expand Up @@ -86,6 +86,7 @@ static const char * const iio_chan_type_name_spec[] = {
[IIO_INDEX] = "index",
[IIO_GRAVITY] = "gravity",
[IIO_POSITIONRELATIVE] = "positionrelative",
[IIO_PHASE] = "phase",
};

static const char * const iio_modifier_names[] = {
Expand Down
1 change: 1 addition & 0 deletions include/uapi/linux/iio/types.h
Original file line number Diff line number Diff line change
Expand Up @@ -45,6 +45,7 @@ enum iio_chan_type {
IIO_INDEX,
IIO_GRAVITY,
IIO_POSITIONRELATIVE,
IIO_PHASE,
};

enum iio_modifier {
Expand Down
2 changes: 2 additions & 0 deletions tools/iio/iio_event_monitor.c
Original file line number Diff line number Diff line change
Expand Up @@ -59,6 +59,7 @@ static const char * const iio_chan_type_name_spec[] = {
[IIO_UVINDEX] = "uvindex",
[IIO_GRAVITY] = "gravity",
[IIO_POSITIONRELATIVE] = "positionrelative",
[IIO_PHASE] = "phase",
};

static const char * const iio_ev_type_text[] = {
Expand Down Expand Up @@ -153,6 +154,7 @@ static bool event_is_known(struct iio_event_data *event)
case IIO_UVINDEX:
case IIO_GRAVITY:
case IIO_POSITIONRELATIVE:
case IIO_PHASE:
break;
default:
return false;
Expand Down

0 comments on commit c73314e

Please sign in to comment.