1/* SPDX-License-Identifier: GPL-2.0-only */ 2/* 3 * Industrial I/O in kernel access map definitions for board files. 4 * 5 * Copyright (c) 2011 Jonathan Cameron 6 */ 7 8#ifndef __LINUX_IIO_MACHINE_H__ 9#define __LINUX_IIO_MACHINE_H__ 10 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. 17 * @consumer_channel: Unique name used to identify the channel on the 18 * consumer side. 19 * @consumer_data: Data about the channel for use by the consumer driver. 20 */ 21struct iio_map { 22 const char *adc_channel_label; 23 const char *consumer_dev_name; 24 const char *consumer_channel; 25 void *consumer_data; 26}; 27 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 35#endif 36