Private
Public Access
2
0

iio: added function returning IIO device number by name

Closes #309.

Signed-off-by: Alex Tereschenko <alext.mkrs@gmail.com>
Signed-off-by: Brendan Le Foll <brendan.le.foll@intel.com>
This commit is contained in:
Alex Tereschenko
2015-10-10 18:34:21 +02:00
committed by Brendan Le Foll
parent 7fa4990d81
commit 325ac461d6
2 changed files with 29 additions and 0 deletions

View File

@@ -77,6 +77,8 @@ mraa_result_t mraa_iio_trigger_buffer(mraa_iio_context dev, void (*fptr)(char* d
const char* mraa_iio_get_device_name(mraa_iio_context dev);
int mraa_iio_get_device_num_by_name(const char* name);
int mraa_iio_read_size(mraa_iio_context dev);
mraa_iio_channel* mraa_iio_get_channels(mraa_iio_context dev);

View File

@@ -163,6 +163,33 @@ mraa_iio_get_device_name(mraa_iio_context dev)
return dev->name;
}
int
mraa_iio_get_device_num_by_name(const char* name)
{
int i;
if (plat_iio == NULL) {
syslog(LOG_ERR, "iio: platform IIO structure is not initialized");
return -1;
}
if (name == NULL) {
syslog(LOG_ERR, "iio: device name is NULL, unable to find its number");
return -1;
}
for (i = 0; i < plat_iio->iio_device_count; i++) {
struct _iio* device;
device = &plat_iio->iio_devices[i];
// we want to check for exact match
if (strncmp(device->name, name, strlen(device->name)+1) == 0) {
return device->num;
}
}
return -1;
}
mraa_result_t
mraa_iio_read(mraa_iio_context dev, const char* attr_chan, float* data)
{