Thomas Gleixner | d2912cb | 2019-06-04 10:11:33 +0200 | [diff] [blame] | 1 | /* SPDX-License-Identifier: GPL-2.0-only */ |
Jonathan Cameron | e27d75d | 2012-02-15 19:48:01 +0000 | [diff] [blame] | 2 | /* |
| 3 | * Industrial I/O in kernel access map definitions for board files. |
| 4 | * |
| 5 | * Copyright (c) 2011 Jonathan Cameron |
Jonathan Cameron | e27d75d | 2012-02-15 19:48:01 +0000 | [diff] [blame] | 6 | */ |
| 7 | |
Lars-Peter Clausen | 08d6005 | 2012-08-17 16:57:00 +0100 | [diff] [blame] | 8 | #ifndef __LINUX_IIO_MACHINE_H__ |
| 9 | #define __LINUX_IIO_MACHINE_H__ |
| 10 | |
Jonathan Cameron | e27d75d | 2012-02-15 19:48:01 +0000 | [diff] [blame] | 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. |
Peter Meerwald | 33e0c24 | 2012-06-15 19:25:25 +0200 | [diff] [blame] | 17 | * @consumer_channel: Unique name used to identify the channel on the |
Jonathan Cameron | e27d75d | 2012-02-15 19:48:01 +0000 | [diff] [blame] | 18 | * consumer side. |
Jonathan Cameron | 0464415 | 2012-06-30 20:06:00 +0100 | [diff] [blame] | 19 | * @consumer_data: Data about the channel for use by the consumer driver. |
Jonathan Cameron | e27d75d | 2012-02-15 19:48:01 +0000 | [diff] [blame] | 20 | */ |
| 21 | struct iio_map { |
| 22 | const char *adc_channel_label; |
| 23 | const char *consumer_dev_name; |
| 24 | const char *consumer_channel; |
Jonathan Cameron | 0464415 | 2012-06-30 20:06:00 +0100 | [diff] [blame] | 25 | void *consumer_data; |
Jonathan Cameron | e27d75d | 2012-02-15 19:48:01 +0000 | [diff] [blame] | 26 | }; |
Lars-Peter Clausen | 08d6005 | 2012-08-17 16:57:00 +0100 | [diff] [blame] | 27 | |
Lukas Wunner | 8d05ffd | 2017-11-25 09:38:17 +0100 | [diff] [blame] | 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 | |
Lars-Peter Clausen | 08d6005 | 2012-08-17 16:57:00 +0100 | [diff] [blame] | 35 | #endif |