/* 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