| /kernel/linux/linux-6.6/drivers/tty/serial/ |
| D | serial_mctrl_gpio.c | 1 // SPDX-License-Identifier: GPL-2.0+ 10 #include <linux/irq.h> 22 int irq[UART_GPIO_MAX]; member 46 * mctrl_gpio_set - set gpios according to mctrl state 47 * @gpios: gpios to set 50 * Set the gpios according to the mctrl state. 52 void mctrl_gpio_set(struct mctrl_gpios *gpios, unsigned int mctrl) in mctrl_gpio_set() argument 59 if (gpios == NULL) in mctrl_gpio_set() 63 if (gpios->gpio[i] && mctrl_gpio_flags_is_dir_out(i)) { in mctrl_gpio_set() 64 desc_array[count] = gpios->gpio[i]; in mctrl_gpio_set() [all …]
|
| /kernel/linux/linux-5.10/drivers/tty/serial/ |
| D | serial_mctrl_gpio.c | 1 // SPDX-License-Identifier: GPL-2.0+ 10 #include <linux/irq.h> 22 int irq[UART_GPIO_MAX]; member 45 void mctrl_gpio_set(struct mctrl_gpios *gpios, unsigned int mctrl) in mctrl_gpio_set() argument 52 if (gpios == NULL) in mctrl_gpio_set() 56 if (gpios->gpio[i] && mctrl_gpio_flags_is_dir_out(i)) { in mctrl_gpio_set() 57 desc_array[count] = gpios->gpio[i]; in mctrl_gpio_set() 66 struct gpio_desc *mctrl_gpio_to_gpiod(struct mctrl_gpios *gpios, in mctrl_gpio_to_gpiod() argument 69 if (gpios == NULL) in mctrl_gpio_to_gpiod() 72 return gpios->gpio[gidx]; in mctrl_gpio_to_gpiod() [all …]
|
| /kernel/linux/linux-6.6/arch/arm/boot/dts/intel/ixp/ |
| D | intel-ixp42x-goramo-multilink.dts | 1 // SPDX-License-Identifier: ISC 5 * - MultiLink Basic (a box) 6 * - MultiLink Max (19" rack mount) 9 * This is one of the few devices supporting the IXP4xx High-Speed Serial 14 /dts-v1/; 16 #include "intel-ixp42x.dtsi" 17 #include <dt-bindings/input/input.h> 21 compatible = "goramo,multilink-router", "intel,ixp42x"; 22 #address-cells = <1>; 23 #size-cells = <1>; [all …]
|
| D | intel-ixp42x-linksys-nslu2.dts | 1 // SPDX-License-Identifier: ISC 6 /dts-v1/; 8 #include "intel-ixp42x.dtsi" 9 #include <dt-bindings/input/input.h> 14 #address-cells = <1>; 15 #size-cells = <1>; 25 stdout-path = "uart0:115200n8"; 33 compatible = "gpio-leds"; 34 led-status { 36 gpios = <&gpio0 0 GPIO_ACTIVE_HIGH>; [all …]
|
| D | intel-ixp42x-iomega-nas100d.dts | 1 // SPDX-License-Identifier: ISC 6 /dts-v1/; 8 #include "intel-ixp42x.dtsi" 9 #include <dt-bindings/input/input.h> 13 compatible = "iom,nas-100d", "intel,ixp42x"; 14 #address-cells = <1>; 15 #size-cells = <1>; 25 stdout-path = "uart0:115200n8"; 33 compatible = "gpio-leds"; 34 led-wlan { [all …]
|
| D | intel-ixp42x-dlink-dsm-g600.dts | 1 // SPDX-License-Identifier: ISC 3 * Device Tree file for D-Link DSM-G600 revision A based on IXP420 11 /dts-v1/; 13 #include "intel-ixp42x.dtsi" 14 #include <dt-bindings/input/input.h> 17 model = "D-Link DSM-G600 rev A"; 18 compatible = "dlink,dsm-g600-a", "intel,ixp42x"; 19 #address-cells = <1>; 20 #size-cells = <1>; 30 stdout-path = "uart0:115200n8"; [all …]
|
| /kernel/linux/linux-6.6/drivers/hsi/clients/ |
| D | nokia-modem.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * nokia-modem.c 32 struct nokia_modem_gpio *gpios; member 45 dev_info(modem->device, "CMT rst line change detected\n"); in do_nokia_modem_rst_ind_tasklet() 47 if (modem->ssi_protocol) in do_nokia_modem_rst_ind_tasklet() 48 ssip_reset_event(modem->ssi_protocol); in do_nokia_modem_rst_ind_tasklet() 51 static irqreturn_t nokia_modem_rst_ind_isr(int irq, void *data) in nokia_modem_rst_ind_isr() argument 55 tasklet_schedule(&modem->nokia_modem_rst_ind_tasklet); in nokia_modem_rst_ind_isr() 65 for (i = 0; i < modem->gpio_amount; i++) { in nokia_modem_gpio_unexport() 66 sysfs_remove_link(&dev->kobj, modem->gpios[i].name); in nokia_modem_gpio_unexport() [all …]
|
| /kernel/linux/linux-5.10/drivers/hsi/clients/ |
| D | nokia-modem.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * nokia-modem.c 33 struct nokia_modem_gpio *gpios; member 46 dev_info(modem->device, "CMT rst line change detected\n"); in do_nokia_modem_rst_ind_tasklet() 48 if (modem->ssi_protocol) in do_nokia_modem_rst_ind_tasklet() 49 ssip_reset_event(modem->ssi_protocol); in do_nokia_modem_rst_ind_tasklet() 52 static irqreturn_t nokia_modem_rst_ind_isr(int irq, void *data) in nokia_modem_rst_ind_isr() argument 56 tasklet_schedule(&modem->nokia_modem_rst_ind_tasklet); in nokia_modem_rst_ind_isr() 66 for (i = 0; i < modem->gpio_amount; i++) { in nokia_modem_gpio_unexport() 67 sysfs_remove_link(&dev->kobj, modem->gpios[i].name); in nokia_modem_gpio_unexport() [all …]
|
| /kernel/linux/linux-5.10/drivers/input/misc/ |
| D | rotary_encoder.c | 1 // SPDX-License-Identifier: GPL-2.0-only 11 * See file:Documentation/input/devices/rotary-encoder.rst for more information 26 #define DRV_NAME "rotary-encoder" 46 struct gpio_descs *gpios; member 48 unsigned int *irq; member 51 signed char dir; /* 1 - clockwise, -1 - CCW */ 61 for (i = 0; i < encoder->gpios->ndescs; ++i) { in rotary_encoder_get_state() 62 int val = gpiod_get_value_cansleep(encoder->gpios->desc[i]); in rotary_encoder_get_state() 65 if (encoder->encoding == ROTENC_GRAY && ret & 1) in rotary_encoder_get_state() 76 if (encoder->relative_axis) { in rotary_encoder_report_event() [all …]
|
| /kernel/linux/linux-6.6/drivers/input/misc/ |
| D | rotary_encoder.c | 1 // SPDX-License-Identifier: GPL-2.0-only 11 * See file:Documentation/input/devices/rotary-encoder.rst for more information 26 #define DRV_NAME "rotary-encoder" 46 struct gpio_descs *gpios; member 48 unsigned int *irq; member 51 signed char dir; /* 1 - clockwise, -1 - CCW */ 61 for (i = 0; i < encoder->gpios->ndescs; ++i) { in rotary_encoder_get_state() 62 int val = gpiod_get_value_cansleep(encoder->gpios->desc[i]); in rotary_encoder_get_state() 65 if (encoder->encoding == ROTENC_GRAY && ret & 1) in rotary_encoder_get_state() 76 if (encoder->relative_axis) { in rotary_encoder_report_event() [all …]
|
| /kernel/linux/linux-5.10/Documentation/driver-api/gpio/ |
| D | legacy.rst | 13 A "General Purpose Input/Output" (GPIO) is a flexible software-controlled 18 which GPIOs. Drivers can be written generically, so that board setup code 21 System-on-Chip (SOC) processors heavily rely on GPIOs. In some cases, every 22 non-dedicated pin can be configured as a GPIO; and most chips have at least 24 provide GPIOs; multifunction chips like power managers, and audio codecs 27 Most PC southbridges have a few dozen GPIO-capable pins (with only the BIOS 30 The exact capabilities of GPIOs vary between systems. Common options: 32 - Output values are writable (high=1, low=0). Some chips also have 34 value might be driven ... supporting "wire-OR" and similar schemes 37 - Input values are likewise readable (1, 0). Some chips support readback [all …]
|
| D | consumer.rst | 6 it describes the new descriptor-based interface. For a description of the 7 deprecated integer-based GPIO interface please refer to gpio-legacy.txt. 10 Guidelines for GPIOs consumers 15 obtain and use GPIOs are available by including the following file: 23 - Simple compile coverage with e.g. COMPILE_TEST - it does not matter that 27 - Truly optional GPIOLIB support - where the driver does not really make use 28 of the GPIOs on certain compile-time configurations for certain systems, but 29 will use it under other compile-time configurations. In this case the 33 All the functions that work with the descriptor-based GPIO interface are 40 Obtaining and Disposing GPIOs [all …]
|
| /kernel/linux/linux-6.6/Documentation/driver-api/gpio/ |
| D | consumer.rst | 6 it describes the new descriptor-based interface. For a description of the 7 deprecated integer-based GPIO interface please refer to legacy.rst. 10 Guidelines for GPIOs consumers 15 obtain and use GPIOs are available by including the following file:: 23 - Simple compile coverage with e.g. COMPILE_TEST - it does not matter that 27 - Truly optional GPIOLIB support - where the driver does not really make use 28 of the GPIOs on certain compile-time configurations for certain systems, but 29 will use it under other compile-time configurations. In this case the 33 All the functions that work with the descriptor-based GPIO interface are 40 Obtaining and Disposing GPIOs [all …]
|
| D | legacy.rst | 13 A "General Purpose Input/Output" (GPIO) is a flexible software-controlled 18 which GPIOs. Drivers can be written generically, so that board setup code 21 System-on-Chip (SOC) processors heavily rely on GPIOs. In some cases, every 22 non-dedicated pin can be configured as a GPIO; and most chips have at least 24 provide GPIOs; multifunction chips like power managers, and audio codecs 27 Most PC southbridges have a few dozen GPIO-capable pins (with only the BIOS 30 The exact capabilities of GPIOs vary between systems. Common options: 32 - Output values are writable (high=1, low=0). Some chips also have 34 value might be driven ... supporting "wire-OR" and similar schemes 37 - Input values are likewise readable (1, 0). Some chips support readback [all …]
|
| /kernel/linux/linux-5.10/Documentation/devicetree/bindings/sound/ |
| D | ak4118.txt | 7 - compatible : "asahi-kasei,ak4118" 8 - reg : The I2C address of the device for I2C 9 - reset-gpios: A GPIO specifier for the reset pin 10 - irq-gpios: A GPIO specifier for the IRQ pin 16 #sound-dai-cells = <0>; 17 compatible = "asahi-kasei,ak4118"; 19 reset-gpios = <&gpio 0 GPIO_ACTIVE_LOW> 20 irq-gpios = <&gpio 1 GPIO_ACTIVE_HIGH>;
|
| /kernel/linux/linux-6.6/Documentation/devicetree/bindings/sound/ |
| D | ak4118.txt | 7 - compatible : "asahi-kasei,ak4118" 8 - reg : The I2C address of the device for I2C 9 - reset-gpios: A GPIO specifier for the reset pin 10 - irq-gpios: A GPIO specifier for the IRQ pin 16 #sound-dai-cells = <0>; 17 compatible = "asahi-kasei,ak4118"; 19 reset-gpios = <&gpio 0 GPIO_ACTIVE_LOW> 20 irq-gpios = <&gpio 1 GPIO_ACTIVE_HIGH>;
|
| /kernel/linux/linux-5.10/drivers/staging/olpc_dcon/ |
| D | olpc_dcon_xo_1_5.c | 1 // SPDX-License-Identifier: GPL-2.0 36 #define VX855_GENL_PURPOSE_OUTPUT 0x44c /* PMIO_Rx4c-4f */ 68 static struct gpio_desc *gpios[3]; variable 72 /* irq status will appear in PMIO_Rx50[6] (RW1C) on gpio12 */ in dcon_clear_irq() 80 /* irq status will appear in PMIO_Rx50[6] on gpio12 */ in dcon_was_irq() 88 unsigned int irq; in dcon_init_xo_1_5() local 94 gpios_table.dev_id = dev_name(&dcon->client->dev); in dcon_init_xo_1_5() 99 gpios[i] = devm_gpiod_get(&dcon->client->dev, pin[i].name, in dcon_init_xo_1_5() 101 if (IS_ERR(gpios[i])) { in dcon_init_xo_1_5() 102 ret = PTR_ERR(gpios[i]); in dcon_init_xo_1_5() [all …]
|
| /kernel/linux/linux-6.6/drivers/staging/olpc_dcon/ |
| D | olpc_dcon_xo_1_5.c | 1 // SPDX-License-Identifier: GPL-2.0 36 #define VX855_GENL_PURPOSE_OUTPUT 0x44c /* PMIO_Rx4c-4f */ 68 static struct gpio_desc *gpios[3]; variable 72 /* irq status will appear in PMIO_Rx50[6] (RW1C) on gpio12 */ in dcon_clear_irq() 80 /* irq status will appear in PMIO_Rx50[6] on gpio12 */ in dcon_was_irq() 88 unsigned int irq; in dcon_init_xo_1_5() local 94 gpios_table.dev_id = dev_name(&dcon->client->dev); in dcon_init_xo_1_5() 99 gpios[i] = devm_gpiod_get(&dcon->client->dev, pin[i].name, in dcon_init_xo_1_5() 101 if (IS_ERR(gpios[i])) { in dcon_init_xo_1_5() 102 ret = PTR_ERR(gpios[i]); in dcon_init_xo_1_5() [all …]
|
| /kernel/linux/linux-5.10/drivers/gpio/ |
| D | gpio-davinci.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 5 * Copyright (c) 2006-2007 David Brownell 15 #include <linux/irq.h> 22 #include <linux/platform_data/gpio-davinci.h> 26 #include <asm-generic/gpio.h> 44 typedef struct irq_chip *(*gpio_get_irq_chip_cb_t)(unsigned int irq); 46 #define BINTEN 0x8 /* GPIO Interrupt Per-Bank Enable Register */ 83 /*--------------------------------------------------------------------------*/ 96 g = d->regs[bank]; in __davinci_direction() 97 spin_lock_irqsave(&d->lock, flags); in __davinci_direction() [all …]
|
| /kernel/linux/linux-6.6/sound/soc/ |
| D | soc-jack.c | 1 // SPDX-License-Identifier: GPL-2.0+ 3 // soc-jack.c -- ALSA SoC jack handling 21 * snd_soc_jack_report - Report the current status for a jack 40 if (!jack || !jack->jack) in snd_soc_jack_report() 44 dapm = &jack->card->dapm; in snd_soc_jack_report() 46 mutex_lock(&jack->mutex); in snd_soc_jack_report() 48 jack->status &= ~mask; in snd_soc_jack_report() 49 jack->status |= status & mask; in snd_soc_jack_report() 53 list_for_each_entry(pin, &jack->pins, list) { in snd_soc_jack_report() 54 int enable = pin->mask & jack->status; in snd_soc_jack_report() [all …]
|
| /kernel/linux/linux-5.10/sound/soc/ |
| D | soc-jack.c | 1 // SPDX-License-Identifier: GPL-2.0+ 3 // soc-jack.c -- ALSA SoC jack handling 23 struct snd_soc_jack_gpio *gpios; member 27 * snd_soc_jack_report - Report the current status for a jack 51 dapm = &jack->card->dapm; in snd_soc_jack_report() 53 mutex_lock(&jack->mutex); in snd_soc_jack_report() 55 jack->status &= ~mask; in snd_soc_jack_report() 56 jack->status |= status & mask; in snd_soc_jack_report() 60 list_for_each_entry(pin, &jack->pins, list) { in snd_soc_jack_report() 61 enable = pin->mask & jack->status; in snd_soc_jack_report() [all …]
|
| /kernel/linux/linux-6.6/Documentation/devicetree/bindings/net/dsa/ |
| D | realtek.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 10 - $ref: dsa.yaml#/$defs/ethernet-ports 13 - Linus Walleij <linus.walleij@linaro.org> 20 The SMI "Simple Management Interface" is a two-wire protocol using 21 bit-banged GPIO that while it reuses the MDIO lines MCK and MDIO does 23 SMI-based Realtek devices. The realtek-smi driver is a platform driver 26 The MDIO-connected switches use MDIO protocol to access their registers. 27 The realtek-mdio driver is an MDIO driver and it must be inserted inside [all …]
|
| /kernel/linux/linux-6.6/Documentation/devicetree/bindings/input/touchscreen/ |
| D | zforce_ts.txt | 4 - compatible: must be "neonode,zforce" 5 - reg: I2C address of the chip 6 - interrupts: interrupt to which the chip is connected 7 - reset-gpios: reset gpio the chip is connected to 8 - x-size: horizontal resolution of touchscreen 9 - y-size: vertical resolution of touchscreen 12 - irq-gpios : interrupt gpio the chip is connected to 13 - vdd-supply: Regulator controlling the controller supply 24 vdd-supply = <®_zforce_vdd>; 26 reset-gpios = <&gpio5 9 0>; /* RST */ [all …]
|
| /kernel/linux/linux-5.10/Documentation/devicetree/bindings/input/touchscreen/ |
| D | zforce_ts.txt | 4 - compatible: must be "neonode,zforce" 5 - reg: I2C address of the chip 6 - interrupts: interrupt to which the chip is connected 7 - reset-gpios: reset gpio the chip is connected to 8 - x-size: horizontal resolution of touchscreen 9 - y-size: vertical resolution of touchscreen 12 - irq-gpios : interrupt gpio the chip is connected to 13 - vdd-supply: Regulator controlling the controller supply 24 vdd-supply = <®_zforce_vdd>; 26 reset-gpios = <&gpio5 9 0>; /* RST */ [all …]
|
| /kernel/linux/linux-6.6/drivers/gpio/ |
| D | gpio-davinci.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 5 * Copyright (c) 2006-2007 David Brownell 15 #include <linux/irq.h> 22 #include <linux/platform_data/gpio-davinci.h> 43 typedef struct irq_chip *(*gpio_get_irq_chip_cb_t)(unsigned int irq); 45 #define BINTEN 0x8 /* GPIO Interrupt Per-Bank Enable Register */ 84 /*--------------------------------------------------------------------------*/ 97 g = d->regs[bank]; in __davinci_direction() 98 spin_lock_irqsave(&d->lock, flags); in __davinci_direction() 99 temp = readl_relaxed(&g->dir); in __davinci_direction() [all …]
|