iio: iio add create trigger
Signed-off-by: Lay, Kuan Loon <kuan.loon.lay@intel.com> Signed-off-by: Brendan Le Foll <brendan.le.foll@intel.com>
This commit is contained in:
committed by
Brendan Le Foll
parent
8d7c0722ab
commit
e7e58509f0
@@ -123,6 +123,7 @@ mraa_result_t mraa_iio_event_extract_event(struct iio_event_data* event,
|
||||
|
||||
mraa_result_t mraa_iio_get_mounting_matrix(mraa_iio_context dev, float mm[9]);
|
||||
|
||||
mraa_result_t mraa_iio_create_trigger(mraa_iio_context dev, const char* trigger);
|
||||
/**
|
||||
* De-inits an mraa_iio_context device
|
||||
*
|
||||
|
||||
@@ -36,6 +36,7 @@
|
||||
#define IIO_SLASH_DEV "/dev/" IIO_DEVICE
|
||||
#define IIO_SYSFS_DEVICE "/sys/bus/iio/devices/" IIO_DEVICE
|
||||
#define IIO_EVENTS "events"
|
||||
#define IIO_CONFIGFS_TRIGGER "/sys/kernel/config/iio/triggers/"
|
||||
|
||||
mraa_iio_context
|
||||
mraa_iio_init(int device)
|
||||
@@ -536,6 +537,28 @@ mraa_iio_get_mounting_matrix(mraa_iio_context dev, float mm[9])
|
||||
return MRAA_ERROR_UNSPECIFIED;
|
||||
}
|
||||
|
||||
mraa_result_t
|
||||
mraa_iio_create_trigger(mraa_iio_context dev, const char* trigger)
|
||||
{
|
||||
struct stat configfs_status;
|
||||
struct stat trigger_status;
|
||||
char buf[MAX_SIZE];
|
||||
|
||||
if (stat(IIO_CONFIGFS_TRIGGER, &configfs_status) == 0) {
|
||||
memset(buf, 0, MAX_SIZE);
|
||||
snprintf(buf, MAX_SIZE, IIO_CONFIGFS_TRIGGER "%s", trigger);
|
||||
if (stat(buf, &trigger_status) != 0) {
|
||||
if (mkdir(buf, configfs_status.st_mode) == 0)
|
||||
return MRAA_SUCCESS;
|
||||
} else {
|
||||
// trigger folder already created
|
||||
return MRAA_SUCCESS;
|
||||
}
|
||||
}
|
||||
|
||||
return MRAA_ERROR_UNSPECIFIED;
|
||||
}
|
||||
|
||||
#if 0
|
||||
// does stop make any sense on iio devices?
|
||||
mraa_result_t
|
||||
|
||||
Reference in New Issue
Block a user