Commit | Line | Data |
---|---|---|
d2912cb1 | 1 | /* SPDX-License-Identifier: GPL-2.0-only */ |
e27d75d7 JC |
2 | /* |
3 | * Industrial I/O in kernel access map definitions for board files. | |
4 | * | |
5 | * Copyright (c) 2011 Jonathan Cameron | |
e27d75d7 JC |
6 | */ |
7 | ||
08d6005c LPC |
8 | #ifndef __LINUX_IIO_MACHINE_H__ |
9 | #define __LINUX_IIO_MACHINE_H__ | |
10 | ||
e27d75d7 JC |
11 | /** |
12 | * struct iio_map - description of link between consumer and device channels | |
13 | * @adc_channel_label: Label used to identify the channel on the provider. | |
14 | * This is matched against the datasheet_name element | |
15 | * of struct iio_chan_spec. | |
16 | * @consumer_dev_name: Name to uniquely identify the consumer device. | |
33e0c249 | 17 | * @consumer_channel: Unique name used to identify the channel on the |
e27d75d7 | 18 | * consumer side. |
0464415d | 19 | * @consumer_data: Data about the channel for use by the consumer driver. |
e27d75d7 JC |
20 | */ |
21 | struct iio_map { | |
22 | const char *adc_channel_label; | |
23 | const char *consumer_dev_name; | |
24 | const char *consumer_channel; | |
0464415d | 25 | void *consumer_data; |
e27d75d7 | 26 | }; |
08d6005c | 27 | |
8d05ffd2 LW |
28 | #define IIO_MAP(_provider_channel, _consumer_dev_name, _consumer_channel) \ |
29 | { \ | |
30 | .adc_channel_label = _provider_channel, \ | |
31 | .consumer_dev_name = _consumer_dev_name, \ | |
32 | .consumer_channel = _consumer_channel, \ | |
33 | } | |
34 | ||
08d6005c | 35 | #endif |