2012-02-15 19:48:01 +00:00
|
|
|
/*
|
|
|
|
* Industrial I/O in kernel access map definitions for board files.
|
|
|
|
*
|
|
|
|
* Copyright (c) 2011 Jonathan Cameron
|
|
|
|
*
|
|
|
|
* This program is free software; you can redistribute it and/or modify it
|
|
|
|
* under the terms of the GNU General Public License version 2 as published by
|
|
|
|
* the Free Software Foundation.
|
|
|
|
*/
|
|
|
|
|
2012-08-17 15:57:00 +00:00
|
|
|
#ifndef __LINUX_IIO_MACHINE_H__
|
|
|
|
#define __LINUX_IIO_MACHINE_H__
|
|
|
|
|
2012-02-15 19:48:01 +00:00
|
|
|
/**
|
|
|
|
* struct iio_map - description of link between consumer and device channels
|
|
|
|
* @adc_channel_label: Label used to identify the channel on the provider.
|
|
|
|
* This is matched against the datasheet_name element
|
|
|
|
* of struct iio_chan_spec.
|
|
|
|
* @consumer_dev_name: Name to uniquely identify the consumer device.
|
2012-06-15 17:25:25 +00:00
|
|
|
* @consumer_channel: Unique name used to identify the channel on the
|
2012-02-15 19:48:01 +00:00
|
|
|
* consumer side.
|
2012-06-30 19:06:00 +00:00
|
|
|
* @consumer_data: Data about the channel for use by the consumer driver.
|
2012-02-15 19:48:01 +00:00
|
|
|
*/
|
|
|
|
struct iio_map {
|
|
|
|
const char *adc_channel_label;
|
|
|
|
const char *consumer_dev_name;
|
|
|
|
const char *consumer_channel;
|
2012-06-30 19:06:00 +00:00
|
|
|
void *consumer_data;
|
2012-02-15 19:48:01 +00:00
|
|
|
};
|
2012-08-17 15:57:00 +00:00
|
|
|
|
2017-11-25 08:38:17 +00:00
|
|
|
#define IIO_MAP(_provider_channel, _consumer_dev_name, _consumer_channel) \
|
|
|
|
{ \
|
|
|
|
.adc_channel_label = _provider_channel, \
|
|
|
|
.consumer_dev_name = _consumer_dev_name, \
|
|
|
|
.consumer_channel = _consumer_channel, \
|
|
|
|
}
|
|
|
|
|
2012-08-17 15:57:00 +00:00
|
|
|
#endif
|