Home
last modified time | relevance | path

Searched +full:irq +full:- +full:gpios (Results 1 – 25 of 1018) sorted by relevance

12345678910>>...41

/kernel/linux/linux-4.19/drivers/tty/serial/
Dserial_mctrl_gpio.c1 // SPDX-License-Identifier: GPL-2.0+
10 #include <linux/irq.h>
22 int irq[UART_GPIO_MAX]; member
40 void mctrl_gpio_set(struct mctrl_gpios *gpios, unsigned int mctrl) in mctrl_gpio_set() argument
47 if (gpios == NULL) in mctrl_gpio_set()
51 if (gpios->gpio[i] && mctrl_gpios_desc[i].dir_out) { in mctrl_gpio_set()
52 desc_array[count] = gpios->gpio[i]; in mctrl_gpio_set()
60 struct gpio_desc *mctrl_gpio_to_gpiod(struct mctrl_gpios *gpios, in mctrl_gpio_to_gpiod() argument
63 if (gpios == NULL) in mctrl_gpio_to_gpiod()
66 return gpios->gpio[gidx]; in mctrl_gpio_to_gpiod()
[all …]
/kernel/linux/linux-5.10/drivers/tty/serial/
Dserial_mctrl_gpio.c1 // 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-5.10/drivers/hsi/clients/
Dnokia-modem.c1 // 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-4.19/drivers/hsi/clients/
Dnokia-modem.c2 * nokia-modem.c
20 * 02110-1301 USA
46 struct nokia_modem_gpio *gpios; member
59 dev_info(modem->device, "CMT rst line change detected\n"); in do_nokia_modem_rst_ind_tasklet()
61 if (modem->ssi_protocol) in do_nokia_modem_rst_ind_tasklet()
62 ssip_reset_event(modem->ssi_protocol); in do_nokia_modem_rst_ind_tasklet()
65 static irqreturn_t nokia_modem_rst_ind_isr(int irq, void *data) in nokia_modem_rst_ind_isr() argument
69 tasklet_schedule(&modem->nokia_modem_rst_ind_tasklet); in nokia_modem_rst_ind_isr()
79 for (i = 0; i < modem->gpio_amount; i++) { in nokia_modem_gpio_unexport()
80 sysfs_remove_link(&dev->kobj, modem->gpios[i].name); in nokia_modem_gpio_unexport()
[all …]
/kernel/linux/linux-5.10/drivers/input/misc/
Drotary_encoder.c1 // 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-4.19/drivers/input/misc/
Drotary_encoder.c10 * See file:Documentation/input/devices/rotary-encoder.rst for more information
29 #define DRV_NAME "rotary-encoder"
49 struct gpio_descs *gpios; member
51 unsigned int *irq; member
54 signed char dir; /* 1 - clockwise, -1 - CCW */
64 for (i = 0; i < encoder->gpios->ndescs; ++i) { in rotary_encoder_get_state()
65 int val = gpiod_get_value_cansleep(encoder->gpios->desc[i]); in rotary_encoder_get_state()
68 if (encoder->encoding == ROTENC_GRAY && ret & 1) in rotary_encoder_get_state()
79 if (encoder->relative_axis) { in rotary_encoder_report_event()
80 input_report_rel(encoder->input, in rotary_encoder_report_event()
[all …]
/kernel/linux/linux-4.19/Documentation/driver-api/gpio/
Ddriver.rst6 describes the new descriptor-based interface. For a description of the
7 deprecated integer-based GPIO interface please refer to gpio-legacy.txt.
15 Internal Representation of GPIOs
18 Inside a GPIO driver, individual GPIOs are identified by their hardware number,
19 which is a unique number between 0 and n, n being the number of GPIOs managed by
30 So for example one platform could use numbers 32-159 for GPIOs, with a
31 controller defining 128 GPIOs at a "base" of 32 ; while another platform uses
32 numbers 0..63 with one set of GPIO controllers, 64-79 with another type of GPIO
33 controller, and on one particular board 80-95 with an FPGA. The numbers need not
34 be contiguous; either of those platforms could also use numbers 2000-2063 to
[all …]
Dconsumer.rst6 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 …]
Dlegacy.rst13 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/driver-api/gpio/
Dlegacy.rst13 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 …]
Dconsumer.rst6 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-5.10/Documentation/devicetree/bindings/sound/
Dak4118.txt7 - 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/sound/soc/
Dsoc-jack.c1 // 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-5.10/drivers/staging/olpc_dcon/
Dolpc_dcon_xo_1_5.c1 // 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/
Dgpio-davinci.c1 // 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-4.19/drivers/gpio/
Dgpio-davinci.c4 * Copyright (c) 2006-2007 David Brownell
18 #include <linux/irq.h>
25 #include <linux/platform_data/gpio-davinci.h>
41 typedef struct irq_chip *(*gpio_get_irq_chip_cb_t)(unsigned int irq);
43 #define BINTEN 0x8 /* GPIO Interrupt Per-Bank Enable Register */
60 /*--------------------------------------------------------------------------*/
73 g = d->regs[bank]; in __davinci_direction()
74 spin_lock_irqsave(&d->lock, flags); in __davinci_direction()
75 temp = readl_relaxed(&g->dir); in __davinci_direction()
78 writel_relaxed(mask, value ? &g->set_data : &g->clr_data); in __davinci_direction()
[all …]
/kernel/linux/linux-4.19/Documentation/devicetree/bindings/input/touchscreen/
Dzforce_ts.txt4 - 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 = <&reg_zforce_vdd>;
26 reset-gpios = <&gpio5 9 0>; /* RST */
[all …]
Dgoodix.txt5 - compatible : Should be "goodix,gt1151"
13 - reg : I2C address of the chip. Should be 0x5d or 0x14
14 - interrupts : Interrupt to which the chip is connected
18 - irq-gpios : GPIO pin used for IRQ. The driver uses the
20 - reset-gpios : GPIO pin used for reset
22 - touchscreen-inverted-x : X axis is inverted (boolean)
23 - touchscreen-inverted-y : Y axis is inverted (boolean)
24 - touchscreen-swapped-x-y : X and Y axis are swapped (boolean)
35 interrupt-parent = <&gpio>;
38 irq-gpios = <&gpio1 0 0>;
[all …]
/kernel/linux/linux-5.10/Documentation/devicetree/bindings/input/touchscreen/
Dzforce_ts.txt4 - 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 = <&reg_zforce_vdd>;
26 reset-gpios = <&gpio5 9 0>; /* RST */
[all …]
Dgoodix.yaml1 # SPDX-License-Identifier: GPL-2.0
3 ---
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
10 - Dmitry Torokhov <dmitry.torokhov@gmail.com>
13 - $ref: touchscreen.yaml#
18 - goodix,gt1151
19 - goodix,gt5663
20 - goodix,gt5688
21 - goodix,gt911
22 - goodix,gt9110
[all …]
/kernel/linux/linux-4.19/sound/soc/
Dsoc-jack.c1 // 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_component_set_jack - configure component jack.
37 if (component->driver->set_jack) in snd_soc_component_set_jack()
38 return component->driver->set_jack(component, jack, data); in snd_soc_component_set_jack()
40 return -ENOTSUPP; in snd_soc_component_set_jack()
45 * snd_soc_card_jack_new - Create a new jack
65 mutex_init(&jack->mutex); in snd_soc_card_jack_new()
66 jack->card = card; in snd_soc_card_jack_new()
[all …]
/kernel/linux/linux-5.10/drivers/pcmcia/
Dpxa2xx_hx4700.c1 // SPDX-License-Identifier: GPL-2.0-only
10 #include <linux/irq.h>
12 #include <asm/mach-types.h>
17 static struct gpio gpios[] = { variable
26 ret = gpio_request_array(gpios, ARRAY_SIZE(gpios)); in hx4700_pcmcia_hw_init()
31 * IRQ type must be set before soc_pcmcia_hw_init() calls request_irq(). in hx4700_pcmcia_hw_init()
32 * The asic3 default IRQ type is level trigger low level detect, exactly in hx4700_pcmcia_hw_init()
34 * If the IRQ type is not changed, the asic3 interrupt handler will loop in hx4700_pcmcia_hw_init()
39 skt->stat[SOC_STAT_CD].gpio = GPIOD4_CF_nCD; in hx4700_pcmcia_hw_init()
40 skt->stat[SOC_STAT_CD].name = "PCMCIA CD"; in hx4700_pcmcia_hw_init()
[all …]
/kernel/linux/linux-4.19/drivers/pcmcia/
Dpxa2xx_hx4700.c13 #include <linux/irq.h>
15 #include <asm/mach-types.h>
20 static struct gpio gpios[] = { variable
29 ret = gpio_request_array(gpios, ARRAY_SIZE(gpios)); in hx4700_pcmcia_hw_init()
34 * IRQ type must be set before soc_pcmcia_hw_init() calls request_irq(). in hx4700_pcmcia_hw_init()
35 * The asic3 default IRQ type is level trigger low level detect, exactly in hx4700_pcmcia_hw_init()
37 * If the IRQ type is not changed, the asic3 interrupt handler will loop in hx4700_pcmcia_hw_init()
42 skt->stat[SOC_STAT_CD].gpio = GPIOD4_CF_nCD; in hx4700_pcmcia_hw_init()
43 skt->stat[SOC_STAT_CD].name = "PCMCIA CD"; in hx4700_pcmcia_hw_init()
44 skt->stat[SOC_STAT_RDY].gpio = GPIO60_HX4700_CF_RNB; in hx4700_pcmcia_hw_init()
[all …]
/kernel/linux/linux-5.10/include/linux/gpio/
Ddriver.h1 /* SPDX-License-Identifier: GPL-2.0 */
7 #include <linux/irq.h>
12 #include <linux/pinctrl/pinconf-generic.h>
29 * struct gpio_irq_chip - GPIO interrupt controller
35 * GPIO IRQ chip implementation, provided by GPIO driver.
43 * hwirq number and Linux IRQ number.
50 * Table of interrupt domain operations for this IRQ chip.
66 * If non-NULL, will be set as the parent of this GPIO interrupt
67 * controller's IRQ domain to establish a hierarchical interrupt
76 * This callback translates a child hardware IRQ offset to a parent
[all …]
/kernel/linux/linux-4.19/drivers/staging/wilc1000/
Dmicrochip,wilc1000,spi.txt7 - compatible : Should be "microchip,wilc1000-spi"
8 - spi-max-frequency : Maximum SPI clocking speed of device in Hz
9 - reg : Chip select address of device
10 - irq-gpios : Connect to a host IRQ
16 cs-gpios = <&pioB 21 0>;
20 compatible = "microchip,wilc1000-spi";
21 spi-max-frequency = <48000000>;
23 irq-gpios = <&pioC 27 0>;

12345678910>>...41