| /* SPDX-License-Identifier: GPL-2.0-only */ | |
| /* | |
| * Industrial I/O in kernel access map definitions for board files. | |
| * | |
| * Copyright (c) 2011 Jonathan Cameron | |
| */ | |
| #ifndef __LINUX_IIO_MACHINE_H__ | |
| #define __LINUX_IIO_MACHINE_H__ | |
| /** | |
| * 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. | |
| * @consumer_channel: Unique name used to identify the channel on the | |
| * consumer side. | |
| * @consumer_data: Data about the channel for use by the consumer driver. | |
| */ | |
| struct iio_map { | |
| const char *adc_channel_label; | |
| const char *consumer_dev_name; | |
| const char *consumer_channel; | |
| void *consumer_data; | |
| }; | |
| #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, \ | |
| } | |
| #endif |