linux/include/linux/iio/machine.h
<<
>>
Prefs
   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