/Linux-v6.1/arch/arm/boot/dts/ |
D | nuvoton-npcm750-runbmc-olympus.dts | 1 // SPDX-License-Identifier: GPL-2.0 5 /dts-v1/; 6 #include "nuvoton-npcm750.dtsi" 7 #include "nuvoton-npcm750-runbmc-olympus-pincfg.dtsi" 9 #include <dt-bindings/i2c/i2c.h> 10 #include <dt-bindings/gpio/gpio.h> 43 stdout-path = &serial3; 50 iio-hwmon { 51 compatible = "iio-hwmon"; 52 io-channels = <&adc 0>, <&adc 1>, <&adc 2>, <&adc 3>, [all …]
|
D | aspeed-bmc-opp-palmetto.dts | 1 // SPDX-License-Identifier: GPL-2.0+ 2 /dts-v1/; 4 #include "aspeed-g4.dtsi" 5 #include <dt-bindings/gpio/aspeed-gpio.h> 9 compatible = "tyan,palmetto-bmc", "aspeed,ast2400"; 12 stdout-path = &uart5; 20 reserved-memory { 21 #address-cells = <1>; 22 #size-cells = <1>; 26 no-map; [all …]
|
D | aspeed-bmc-lenovo-hr855xg2.dts | 1 // SPDX-License-Identifier: GPL-2.0+ 5 * Copyright (C) 2019-present Lenovo 8 /dts-v1/; 10 #include "aspeed-g5.dtsi" 11 #include <dt-bindings/gpio/aspeed-gpio.h> 15 compatible = "lenovo,hr855xg2-bmc", "aspeed,ast2500"; 29 stdout-path = &uart5; 38 reserved-memory { 39 #address-cells = <1>; 40 #size-cells = <1>; [all …]
|
D | aspeed-bmc-lenovo-hr630.dts | 1 // SPDX-License-Identifier: GPL-2.0+ 5 * Copyright (C) 2019-present Lenovo 8 /dts-v1/; 10 #include "aspeed-g5.dtsi" 11 #include <dt-bindings/gpio/aspeed-gpio.h> 15 compatible = "lenovo,hr630-bmc", "aspeed,ast2500"; 29 stdout-path = &uart5; 38 reserved-memory { 39 #address-cells = <1>; 40 #size-cells = <1>; [all …]
|
/Linux-v6.1/Documentation/devicetree/bindings/media/ |
D | cec-gpio.txt | 1 * HDMI CEC GPIO driver 3 The HDMI CEC GPIO module supports CEC implementations where the CEC line 4 is hooked up to a pull-up GPIO line and - optionally - the HPD line is 5 hooked up to another GPIO line. 7 Please note: the maximum voltage for the CEC line is 3.63V, for the HPD and 9 when connecting them to a GPIO line. 12 - compatible: value must be "cec-gpio". 13 - cec-gpios: gpio that the CEC line is connected to. The line should be 16 If the CEC line is associated with an HDMI receiver/transmitter, then the 19 - hdmi-phandle - phandle to the HDMI controller, see also cec.txt. [all …]
|
/Linux-v6.1/arch/arm64/boot/dts/hisilicon/ |
D | hi3670-hikey970.dts | 1 // SPDX-License-Identifier: GPL-2.0 10 /dts-v1/; 11 #include <dt-bindings/gpio/gpio.h> 14 #include "hikey970-pinctrl.dtsi" 15 #include "hikey970-pmic.dtsi" 19 compatible = "hisilicon,hi3670-hikey970", "hisilicon,hi3670"; 34 stdout-path = "serial6:115200n8"; 43 wlan_en: wlan-en-1-8v { 44 compatible = "regulator-fixed"; 45 regulator-name = "wlan-en-regulator"; [all …]
|
D | hi3660-hikey960.dts | 1 // SPDX-License-Identifier: GPL-2.0 9 /dts-v1/; 12 #include "hikey960-pinctrl.dtsi" 13 #include <dt-bindings/gpio/gpio.h> 14 #include <dt-bindings/input/input.h> 15 #include <dt-bindings/interrupt-controller/irq.h> 16 #include <dt-bindings/usb/pd.h> 20 compatible = "hisilicon,hi3660-hikey960", "hisilicon,hi3660"; 35 stdout-path = "serial6:115200n8"; 44 reserved-memory { [all …]
|
D | hi6220-hikey.dts | 1 // SPDX-License-Identifier: GPL-2.0 9 /dts-v1/; 11 #include "hikey-pinctrl.dtsi" 12 #include <dt-bindings/gpio/gpio.h> 16 compatible = "hisilicon,hi6220-hikey", "hisilicon,hi6220"; 26 stdout-path = "serial3:115200n8"; 32 * 0x05e0,0000 - 0x05ef,ffff: MCU firmware runtime using 33 * 0x05f0,1000 - 0x05f0,1fff: Reboot reason 34 * 0x06df,f000 - 0x06df,ffff: Mailbox message data 35 * 0x0740,f000 - 0x0740,ffff: MCU firmware section [all …]
|
/Linux-v6.1/Documentation/admin-guide/gpio/ |
D | gpio-sim.rst | 1 .. SPDX-License-Identifier: GPL-2.0-or-later 3 Configfs GPIO Simulator 6 The configfs GPIO Simulator (gpio-sim) provides a way to create simulated GPIO 8 using the standard GPIO character device interface as well as manipulated 12 ------------------------ 14 The gpio-sim module registers a configfs subsystem called ``'gpio-sim'``. For 21 **Group:** ``/config/gpio-sim`` 23 This is the top directory of the gpio-sim configfs tree. 25 **Group:** ``/config/gpio-sim/gpio-device`` 27 **Attribute:** ``/config/gpio-sim/gpio-device/dev_name`` [all …]
|
/Linux-v6.1/Documentation/driver-api/gpio/ |
D | driver.rst | 2 GPIO Driver Interface 5 This document serves as a guide for writers of GPIO chip drivers. 7 Each GPIO controller driver needs to include the following header, which defines 8 the structures used to define a GPIO driver:: 10 #include <linux/gpio/driver.h> 16 A GPIO chip handles one or more GPIO lines. To be considered a GPIO chip, the 18 line is not general purpose, it is not GPIO and should not be handled by a 19 GPIO chip. The use case is the indicative: certain lines in a system may be 20 called GPIO but serve a very particular purpose thus not meeting the criteria 21 of a general purpose I/O. On the other hand a LED driver line may be used as a [all …]
|
D | drivers-on-gpio.rst | 2 Subsystem drivers using GPIO 5 Note that standard kernel drivers exist for common GPIO tasks and will provide 6 the right in-kernel and userspace APIs/ABIs for the job, and that these 10 - leds-gpio: drivers/leds/leds-gpio.c will handle LEDs connected to GPIO 13 - ledtrig-gpio: drivers/leds/trigger/ledtrig-gpio.c will provide a LED trigger, 14 i.e. a LED will turn on/off in response to a GPIO line going high or low 15 (and that LED may in turn use the leds-gpio as per above). 17 - gpio-keys: drivers/input/keyboard/gpio_keys.c is used when your GPIO line 20 - gpio-keys-polled: drivers/input/keyboard/gpio_keys_polled.c is used when your 21 GPIO line cannot generate interrupts, so it needs to be periodically polled [all …]
|
/Linux-v6.1/Documentation/devicetree/bindings/input/ |
D | gpio-mouse.txt | 1 Device-Tree bindings for GPIO attached mice 3 This simply uses standard GPIO handles to define a simple mouse connected 4 to 5-7 GPIO lines. 7 - compatible: must be "gpio-mouse" 8 - scan-interval-ms: The scanning interval in milliseconds 9 - up-gpios: GPIO line phandle to the line indicating "up" 10 - down-gpios: GPIO line phandle to the line indicating "down" 11 - left-gpios: GPIO line phandle to the line indicating "left" 12 - right-gpios: GPIO line phandle to the line indicating "right" 15 - button-left-gpios: GPIO line handle to the left mouse button [all …]
|
/Linux-v6.1/Documentation/firmware-guide/acpi/ |
D | gpio-properties.rst | 1 .. SPDX-License-Identifier: GPL-2.0 4 _DSD Device Properties Related to GPIO 10 the corresponding GPIO, which is pretty error prone (it depends on 31 ToUUID("daffd814-6eba-4d8c-8a91-bc9bbf4aa301"), 34 Package () { "reset-gpios", Package () { ^BTH, 1, 1, 0 } }, 35 Package () { "shutdown-gpios", Package () { ^BTH, 0, 0, 0 } }, 40 The format of the supported GPIO property is:: 52 If 1, the GPIO is marked as active_low. 56 it to 1 marks the GPIO as active low. 61 In our Bluetooth example the "reset-gpios" refers to the second GpioIo() [all …]
|
/Linux-v6.1/drivers/gpu/drm/nouveau/nvkm/subdev/gpio/ |
D | base.c | 30 nvkm_gpio_drive(struct nvkm_gpio *gpio, int idx, int line, int dir, int out) in nvkm_gpio_drive() argument 32 return gpio->func->drive(gpio, line, dir, out); in nvkm_gpio_drive() 36 nvkm_gpio_sense(struct nvkm_gpio *gpio, int idx, int line) in nvkm_gpio_sense() argument 38 return gpio->func->sense(gpio, line); in nvkm_gpio_sense() 42 nvkm_gpio_reset(struct nvkm_gpio *gpio, u8 func) in nvkm_gpio_reset() argument 44 if (gpio->func->reset) in nvkm_gpio_reset() 45 gpio->func->reset(gpio, func); in nvkm_gpio_reset() 49 nvkm_gpio_find(struct nvkm_gpio *gpio, int idx, u8 tag, u8 line, in nvkm_gpio_find() argument 52 struct nvkm_device *device = gpio->subdev.device; in nvkm_gpio_find() 53 struct nvkm_bios *bios = device->bios; in nvkm_gpio_find() [all …]
|
D | nv10.c | 29 nv10_gpio_sense(struct nvkm_gpio *gpio, int line) in nv10_gpio_sense() argument 31 struct nvkm_device *device = gpio->subdev.device; in nv10_gpio_sense() 32 if (line < 2) { in nv10_gpio_sense() 33 line = line * 16; in nv10_gpio_sense() 34 line = nvkm_rd32(device, 0x600818) >> line; in nv10_gpio_sense() 35 return !!(line & 0x0100); in nv10_gpio_sense() 37 if (line < 10) { in nv10_gpio_sense() 38 line = (line - 2) * 4; in nv10_gpio_sense() 39 line = nvkm_rd32(device, 0x60081c) >> line; in nv10_gpio_sense() 40 return !!(line & 0x04); in nv10_gpio_sense() [all …]
|
D | nv50.c | 27 nv50_gpio_reset(struct nvkm_gpio *gpio, u8 match) in nv50_gpio_reset() argument 29 struct nvkm_device *device = gpio->subdev.device; in nv50_gpio_reset() 30 struct nvkm_bios *bios = device->bios; in nv50_gpio_reset() 33 int ent = -1; in nv50_gpio_reset() 38 u8 line = (data & 0x0000001f); in nv50_gpio_reset() local 44 u32 reg = regs[line >> 4]; in nv50_gpio_reset() 45 u32 lsh = line & 0x0f; in nv50_gpio_reset() 51 nvkm_gpio_set(gpio, 0, func, line, defs); in nv50_gpio_reset() 58 nv50_gpio_location(int line, u32 *reg, u32 *shift) in nv50_gpio_location() argument 62 if (line >= 32) in nv50_gpio_location() [all …]
|
/Linux-v6.1/Documentation/devicetree/bindings/pinctrl/ |
D | qcom,pmic-gpio.yaml | 1 # SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/pinctrl/qcom,pmic-gpio.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: Qualcomm PMIC GPIO block 10 - Bjorn Andersson <bjorn.andersson@linaro.org> 13 This binding describes the GPIO block(s) found in the 8xxx series of 19 - enum: 20 - qcom,pm2250-gpio 21 - qcom,pm660-gpio [all …]
|
/Linux-v6.1/include/uapi/linux/ |
D | gpio.h | 1 /* SPDX-License-Identifier: GPL-2.0-only WITH Linux-syscall-note */ 3 * <linux/gpio.h> - userspace ABI for the GPIO character devices 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 30 * @lines: number of GPIO lines on this chip 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 [all …]
|
/Linux-v6.1/arch/arm64/boot/dts/mediatek/ |
D | pumpkin-common.dtsi | 1 // SPDX-License-Identifier: GPL-2.0 7 #include <dt-bindings/gpio/gpio.h> 16 stdout-path = "serial0:921600n8"; 21 compatible = "linaro,optee-tz"; 26 gpio-keys { 27 compatible = "gpio-keys"; 28 pinctrl-names = "default"; 29 pinctrl-0 = <&gpio_keys_default>; 31 key-volume-up { 35 wakeup-source; [all …]
|
/Linux-v6.1/Documentation/devicetree/bindings/gpio/ |
D | gpio.txt | 1 Specifying GPIO information for devices 5 ----------------- 7 GPIO properties should be named "[<name>-]gpios", with <name> being the purpose 8 of this GPIO for the device. While a non-existent <name> is considered valid 10 for new bindings. Also, GPIO properties named "[<name>-]gpio" are valid and old 14 GPIO properties can contain one or more GPIO phandles, but only in exceptional 18 several GPIOs serve the same function (e.g. a parallel data line). 23 The following example could be used to describe GPIO pins used as device enable 24 and bit-banged data signals: 27 gpio-controller; [all …]
|
D | gpio-zynq.yaml | 1 # SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/gpio/gpio-zynq.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: Xilinx Zynq GPIO controller 10 - Michal Simek <michal.simek@xilinx.com> 15 - xlnx,zynq-gpio-1.0 16 - xlnx,zynqmp-gpio-1.0 17 - xlnx,versal-gpio-1.0 18 - xlnx,pmc-gpio-1.0 [all …]
|
/Linux-v6.1/drivers/gpio/ |
D | gpio-realtek-otto.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 #include <linux/gpio/driver.h> 29 /* Two bits per GPIO in IMR registers */ 42 * realtek_gpio_ctrl - Realtek Otto GPIO driver data 45 * @base: Base address of the register block for a GPIO bank 49 * @bank_read: Read a bank setting as a single 32-bit value 50 * @bank_write: Write a bank setting as a single 32-bit value 51 * @imr_line_pos: Bit shift of an IRQ line's IMR value. 53 * The DIR, DATA, and ISR registers consist of four 8-bit port values, packed 54 * into a single 32-bit register. Use @bank_read (@bank_write) to get (assign) [all …]
|
D | gpio-virtio.c | 1 // SPDX-License-Identifier: GPL-2.0+ 3 * GPIO driver for virtio-based virtual GPIO controllers 14 #include <linux/gpio/driver.h> 25 struct mutex lock; /* Protects line operation */ 58 static int _virtio_gpio_req(struct virtio_gpio *vgpio, u16 type, u16 gpio, in _virtio_gpio_req() argument 61 struct virtio_gpio_line *line = &vgpio->lines[gpio]; in _virtio_gpio_req() local 62 struct virtio_gpio_request *req = &line->req; in _virtio_gpio_req() 65 struct device *dev = &vgpio->vdev->dev; in _virtio_gpio_req() 69 * Prevent concurrent requests for the same line since we have in _virtio_gpio_req() 70 * pre-allocated request/response buffers for each GPIO line. Moreover in _virtio_gpio_req() [all …]
|
/Linux-v6.1/tools/testing/selftests/gpio/ |
D | gpio-sim.sh | 2 # SPDX-License-Identifier: GPL-2.0 6 CONFIGFS_DIR="/sys/kernel/config/gpio-sim" 7 MODULE="gpio-sim" 11 echo "GPIO $MODULE test FAIL" 17 echo "GPIO $MODULE test SKIP" 26 if [ "$BANK" = "live" -o "$BANK" = "dev_name" ]; then 30 LINES=`ls $CONFIGFS_DIR/$CHIP/$BANK/ | egrep ^line` 32 for LINE in $LINES; do 33 if [ -e $CONFIGFS_DIR/$CHIP/$BANK/$LINE/hog ]; then 34 rmdir $CONFIGFS_DIR/$CHIP/$BANK/$LINE/hog || \ [all …]
|
/Linux-v6.1/drivers/of/unittest-data/ |
D | overlay_gpio_03.dts | 1 // SPDX-License-Identifier: GPL-2.0 2 /dts-v1/; 6 #address-cells = <1>; 7 #size-cells = <0>; 8 gpio@3 { 9 compatible = "unittest-gpio"; 11 gpio-controller; 12 #gpio-cells = <2>; 14 gpio-line-names = "line-A", "line-B", "line-C", "line-D"; 16 line-d { [all …]
|