Scroll to navigation

STRUCT IIO_TRIGGER(9) Industrial I/O core STRUCT IIO_TRIGGER(9)

NAME

struct_iio_trigger - industrial I/O trigger device

SYNOPSIS

struct iio_trigger {
  const struct iio_trigger_ops * ops;
  int id;
  const char * name;
  struct device dev;
  struct list_head list;
  struct list_head alloc_list;
  atomic_t use_count;
  struct irq_chip subirq_chip;
  int subirq_base;
  struct iio_subirq subirqs[CONFIG_IIO_CONSUMERS_PER_TRIGGER];
  unsigned long pool[BITS_TO_LONGS(CONFIG_IIO_CONSUMERS_PER_TRIGGER)];
  struct mutex pool_lock;
  bool attached_own_device;
};  

MEMBERS

ops
[DRIVER] operations structure

id

[INTERN] unique id number

name

[DRIVER] unique name

dev

[DRIVER] associated device (if relevant)

list

[INTERN] used in maintenance of global trigger list

alloc_list

[DRIVER] used for driver specific trigger list

use_count

use count for the trigger

subirq_chip

[INTERN] associate 'virtual' irq chip.

subirq_base

[INTERN] base number for irqs provided by trigger.

subirqs[CONFIG_IIO_CONSUMERS_PER_TRIGGER]

[INTERN] information about the 'child' irqs.

pool[BITS_TO_LONGS(CONFIG_IIO_CONSUMERS_PER_TRIGGER)]

[INTERN] bitmap of irqs currently in use.

pool_lock

[INTERN] protection of the irq pool.

attached_own_device

[INTERN] if we are using our own device as trigger, i.e. if we registered a poll function to the same device as the one providing the trigger.

AUTHOR

Daniel Baluta <daniel.baluta@intel.com>
Author.

COPYRIGHT

April 2019 Kernel Hackers Manual 4.9.