Lines Matching +full:line +full:- +full:name

1 /* SPDX-License-Identifier: GPL-2.0-only WITH Linux-syscall-note */
3 * <linux/gpio.h> - userspace ABI for the GPIO character devices
19 * The maximum size of name and label arrays.
21 * Must be a multiple of 8 to ensure 32/64-bit alignment of structs.
26 * struct gpiochip_info - Information about a certain GPIO chip
27 * @name: the Linux kernel name of this GPIO chip
28 * @label: a functional name for this GPIO chip, such as a product
33 char name[GPIO_MAX_NAME_SIZE]; member
41 * Must be no greater than 64, as bitmaps are restricted here to 64-bits
42 * for simplicity, and a multiple of 2 to ensure 32/64-bit alignment of
48 * The maximum number of configuration attributes associated with a line
54 * enum gpio_v2_line_flag - &struct gpio_v2_line_attribute.flags values
55 * @GPIO_V2_LINE_FLAG_USED: line is not available for request
56 * @GPIO_V2_LINE_FLAG_ACTIVE_LOW: line active state is physical low
57 * @GPIO_V2_LINE_FLAG_INPUT: line is an input
58 * @GPIO_V2_LINE_FLAG_OUTPUT: line is an output
59 * @GPIO_V2_LINE_FLAG_EDGE_RISING: line detects rising (inactive to active)
61 * @GPIO_V2_LINE_FLAG_EDGE_FALLING: line detects falling (active to
63 * @GPIO_V2_LINE_FLAG_OPEN_DRAIN: line is an open drain output
64 * @GPIO_V2_LINE_FLAG_OPEN_SOURCE: line is an open source output
65 * @GPIO_V2_LINE_FLAG_BIAS_PULL_UP: line has pull-up bias enabled
66 * @GPIO_V2_LINE_FLAG_BIAS_PULL_DOWN: line has pull-down bias enabled
67 * @GPIO_V2_LINE_FLAG_BIAS_DISABLED: line has bias disabled
68 * @GPIO_V2_LINE_FLAG_EVENT_CLOCK_REALTIME: line events contain REALTIME timestamps
69 * @GPIO_V2_LINE_FLAG_EVENT_CLOCK_HTE: line events contain timestamps from
89 * struct gpio_v2_line_values - Values of GPIO lines
102 * enum gpio_v2_line_attr_id - &struct gpio_v2_line_attribute.id values
115 * struct gpio_v2_line_attribute - a configurable attribute of a line
119 * line, with values from &enum gpio_v2_line_flag, such as
122 * gpio_v2_line_config for the associated line.
141 * struct gpio_v2_line_config_attribute - a configuration attribute
154 * struct gpio_v2_line_config - Configuration for GPIO lines
163 * lines. Any attribute should only be associated with a particular line
164 * once. If an attribute is associated with a line multiple times then the
176 * struct gpio_v2_line_request - Information about a request for GPIO lines
180 * "my-bitbanged-relay"
184 * request a single line
185 * @event_buffer_size: a suggested minimum number of line events that the
207 * struct gpio_v2_line_info - Information about a certain GPIO line
208 * @name: the name of this GPIO line, such as the output pin of the line on
209 * the chip, a rail or a pin header name on a board, as specified by the
210 * GPIO chip, may be empty (i.e. name[0] == '\0')
211 * @consumer: a functional name for the consumer of this GPIO line as set
215 * requesting the line information from the kernel
217 * @flags: flags for this GPIO line, with values from &enum
220 * @attrs: the configuration attributes associated with the line
224 char name[GPIO_MAX_NAME_SIZE]; member
235 * enum gpio_v2_line_changed_type - &struct gpio_v2_line_changed.event_type
237 * @GPIO_V2_LINE_CHANGED_REQUESTED: line has been requested
238 * @GPIO_V2_LINE_CHANGED_RELEASED: line has been released
239 * @GPIO_V2_LINE_CHANGED_CONFIG: line has been reconfigured
248 * struct gpio_v2_line_info_changed - Information about a change in status
249 * of a GPIO line
250 * @info: updated line information
260 /* Pad struct to 64-bit boundary and reserve space for future use. */
265 * enum gpio_v2_line_event_id - &struct gpio_v2_line_event.id values
275 * struct gpio_v2_line_event - The actual event being pushed to userspace
278 * @offset: the offset of the line that triggered the event
280 * all the lines in this line request
282 * events on this particular line
287 * It does not provide the wall-clock time.
314 #define GPIOLINE_FLAG_KERNEL (1UL << 0) /* Line used by the kernel */
324 * struct gpioline_info - Information about a certain GPIO line
326 * requesting the line information from the kernel
327 * @flags: various flags for this line
328 * @name: the name of this GPIO line, such as the output pin of the line on the
329 * chip, a rail or a pin header name on a board, as specified by the gpio
330 * chip, may be empty (i.e. name[0] == '\0')
331 * @consumer: a functional name for the consumer of this GPIO line as set by
341 char name[GPIO_MAX_NAME_SIZE]; member
348 /* Possible line status change events */
356 * struct gpioline_info_changed - Information about a change in status
357 * of a GPIO line
358 * @info: updated line information
364 * The &struct gpioline_info embedded here has 32-bit alignment on its own,
365 * but it works fine with 64-bit alignment too. With its 72 byte size, we can
367 * The 20-byte padding at the end makes sure we don't add any implicit padding
368 * at the end of the structure on 64-bit architectures.
391 * struct gpiohandle_request - Information about a GPIO handle request
402 * line, this specifies the default output value, should be 0 (inactive) or
404 * @consumer_label: a desired consumer label for the selected GPIO line(s)
405 * such as "my-bitbanged-relay"
407 * valid fields in the above arrays, set to 1 to request a single line
424 * struct gpiohandle_config - Configuration for a GPIO handle request
443 * struct gpiohandle_data - Information of values on a GPIO handle
445 * state of a line, when setting the state of lines these should contain
462 * struct gpioevent_request - Information about a GPIO event request
463 * @lineoffset: the desired line to subscribe to events from, specified by
465 * @handleflags: desired handle flags for the desired GPIO line, such as
467 * @eventflags: desired flags for the desired GPIO event line, such as
469 * @consumer_label: a desired consumer label for the selected GPIO line(s)
470 * such as "my-listener"
492 * struct gpioevent_data - The actual event being pushed to userspace