1 ============================ 2 Subsystem drivers using GPIO 3 ============================ 4 5 Note that standard kernel drivers exist for co 6 the right in-kernel and userspace APIs/ABIs fo 7 drivers can quite easily interconnect with oth 8 hardware descriptions such as device tree or A 9 10 - leds-gpio: drivers/leds/leds-gpio.c will han 11 lines, giving you the LED sysfs interface 12 13 - ledtrig-gpio: drivers/leds/trigger/ledtrig-g 14 i.e. a LED will turn on/off in response to a 15 (and that LED may in turn use the leds-gpio 16 17 - gpio-keys: drivers/input/keyboard/gpio_keys. 18 can generate interrupts in response to a key 19 20 - gpio-keys-polled: drivers/input/keyboard/gpi 21 GPIO line cannot generate interrupts, so it 22 by a timer. 23 24 - gpio_mouse: drivers/input/mouse/gpio_mouse.c 25 up to three buttons by simply using GPIOs an 26 mouse cable and connect the wires to GPIO li 27 to the lines for a more permanent solution o 28 29 - gpio-beeper: drivers/input/misc/gpio-beeper. 30 an external speaker connected to a GPIO line 31 off/on, for an actual PWM waveform, see pwm- 32 33 - pwm-gpio: drivers/pwm/pwm-gpio.c is used to 34 resolution timer producing a PWM waveform on 35 Linux high resolution timers can do. 36 37 - extcon-gpio: drivers/extcon/extcon-gpio.c is 38 external connector status, such as a headset 39 HDMI connector. It will provide a better use 40 41 - restart-gpio: drivers/power/reset/gpio-resta 42 the system by pulling a GPIO line and will r 43 userspace can issue the right system call to 44 45 - poweroff-gpio: drivers/power/reset/gpio-powe 46 system down by pulling a GPIO line and will 47 callback so that userspace can issue the rig 48 system. 49 50 - gpio-gate-clock: drivers/clk/clk-gpio.c is u 51 (off/on) that uses a GPIO, and integrated wi 52 53 - i2c-gpio: drivers/i2c/busses/i2c-gpio.c is u 54 (two wires, SDA and SCL lines) by hammering 55 appear as any other I2C bus to the system an 56 drivers for the I2C devices on the bus like 57 58 - spi_gpio: drivers/spi/spi-gpio.c is used to 59 of wires, at least SCK and optionally MISO, 60 GPIO hammering (bitbang). It will appear as 61 and makes it possible to connect drivers for 62 any other SPI bus driver. For example any MM 63 to this SPI by using the mmc_spi host from t 64 65 - w1-gpio: drivers/w1/masters/w1-gpio.c is use 66 a GPIO line, integrating with the W1 subsyst 67 the bus like any other W1 device. 68 69 - gpio-fan: drivers/hwmon/gpio-fan.c is used t 70 system, connected to a GPIO line (and option 71 presenting all the right in-kernel and sysfs 72 not overheat. 73 74 - gpio-regulator: drivers/regulator/gpio-regul 75 regulator providing a certain voltage by pul 76 with the regulator subsystem and giving you 77 78 - gpio-wdt: drivers/watchdog/gpio_wdt.c is use 79 that will periodically "ping" a hardware con 80 it from 1-to-0-to-1. If that hardware does n 81 periodically, it will reset the system. 82 83 - gpio-nand: drivers/mtd/nand/raw/gpio.c is us 84 to a set of simple GPIO lines: RDY, NCE, ALE 85 NAND flash MTD subsystem and provides chip a 86 any other NAND driving hardware. 87 88 - ps2-gpio: drivers/input/serio/ps2-gpio.c is 89 bus, data and clock line, by bit banging two 90 any other serio bus to the system and makes 91 for e.g. keyboards and other PS/2 protocol b 92 93 - cec-gpio: drivers/media/platform/cec-gpio/ i 94 Consumer Electronics Control bus using only 95 with devices on the HDMI bus. 96 97 - gpio-charger: drivers/power/supply/gpio-char 98 battery charging and all you have to go by t 99 AC charger or more complex tasks such as ind 100 nothing but GPIO lines, this driver provides 101 way to pass the charging parameters from har 102 device tree. 103 104 - gpio-mux: drivers/mux/gpio.c is used for con 105 n GPIO lines such that you can mux in 2^n di 106 different GPIO lines. Often the GPIOs are on 107 some SoC-external entities, such as differen 108 can be selectively enabled. 109 110 Apart from this there are special GPIO drivers 111 read card detect and write protect GPIO lines, 112 to emulate MCTRL (modem control) signals CTS/R 113 MTD NOR flash has add-ons for extra GPIO lines 114 usually connected directly to the flash. 115 116 Use those instead of talking directly to the G 117 integrate with kernel frameworks better than y 118 Needless to say, just using the appropriate ke 119 speed up your embedded hacking in particular b
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.