Lines Matching refs:can
16 which GPIOs. Drivers can be written generically, so that board setup code
20 non-dedicated pin can be configured as a GPIO; and most chips have at least
21 several dozen of them. Programmable logic devices (like FPGAs) can easily
40 - Inputs can often be used as IRQ signals, often edge triggered but
47 - Most GPIOs can be accessed while holding spinlocks, but those accessed
48 through a serial bus normally can't. Some systems support both types.
61 glue logic that may even change between board revisions, and can't ever be
63 functionality can be very portable. Other features are platform-specific,
64 and that can be critical for glue logic.
76 ARCH_WANT_OPTIONAL_GPIOLIB in their Kconfig. Drivers that can't work without
122 implementation issue, as are whether that support can leave "holes" in the space
123 of GPIO numbers, and whether new controllers can be added at runtime. Such issues
124 can affect things including whether adjacent GPIO numbers are both valid.
152 Setting the direction can fail if the GPIO number is invalid, or when
153 that particular GPIO can't be used in that mode. It's generally a bad
162 Most GPIO controllers can be accessed with memory read/write instructions.
163 Those don't need to sleep, and can safely be done from inside hard
182 platforms can read the value of output pins; those that can't should always
183 return zero. Also, using these calls for GPIOs that can't safely be accessed
190 and not to need spinlocks. Such optimized calls can make bitbanging
200 This requires sleeping, which can't be done from inside IRQ handlers.
222 on GPIOs that can't be accessed from hardIRQ handlers, these calls act
268 GPIO can serve as a kind of lock.
347 In the future, these flags can be extended to support more properties.
382 two logically distinct namespaces (GPIO 0 need not use IRQ 0). You can
392 else a negative errno code if the mapping can't be done. (For example,
393 some GPIOs can't be used as IRQs.) It is an unchecked error to use a GPIO
400 Non-error values returned from gpio_to_irq() can be passed to request_irq()
425 there's a common idiom you can use to emulate it with any GPIO pin that can
446 subsystem, in the sense that the pins can be used by other functions
473 For this, the gpio controller can register its pin range with pinctrl
478 For non-DT support, user can call gpiochip_add_pin_range() with appropriate
507 banks.) Some systems can trigger IRQs from output GPIOs, or read values
550 requested as GPIOs. They can use gpiochip_is_requested(), which returns
570 can enable it and build it into the kernel optionally.
575 Trivial implementations of those functions can directly use framework
588 instruction savings can be significant.
595 available, from arch_initcall() or earlier; they can often serve as IRQs.
611 Initialization order can be important. For example, when a device relies on
614 calls for that GPIO can work. One way to address such dependencies is for
638 userspace GPIO can be used to determine system configuration data that
695 If the pin can be configured as interrupt-generating interrupt
697 description of "edge"), you can poll(2) on that file and
709 This file exists only if the pin can be configured as an
741 Kernel code can explicitly manage exports of GPIOs which have already been
755 the sysfs interface by gpio_export(). The driver can control whether the
759 This explicit exporting can help with debugging (by making some kinds
760 of experiments easier), or can provide an always-there interface that's
764 symlinks from elsewhere in sysfs to the GPIO sysfs node. Drivers can