Merge tag 'keys-misc-20190619' of git://git.kernel.org/pub/scm/linux/kernel/git/dhowe...
[linux-block.git] / include / linux / iio / machine.h
CommitLineData
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 */
21struct 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