| /linux/sound/soc/ |
| H A D | soc-jack.c | 1 // SPDX-License-Identifier: GPL-2.0+ 3 // soc-jack.c -- ALSA SoC jack handling 20 * snd_soc_jack_report - Report the current status for a jack 39 if (!jack || !jack->jack) in snd_soc_jack_report() 43 dapm = snd_soc_card_to_dapm(jack->card); in snd_soc_jack_report() 45 mutex_lock(&jack->mute in snd_soc_jack_report() 206 struct snd_soc_jack_gpio *gpios; global() member 279 jack_free_gpios(struct snd_soc_jack * jack,int count,struct snd_soc_jack_gpio * gpios) jack_free_gpios() argument 311 snd_soc_jack_add_gpios(struct snd_soc_jack * jack,int count,struct snd_soc_jack_gpio * gpios) snd_soc_jack_add_gpios() argument 412 snd_soc_jack_add_gpiods(struct device * gpiod_dev,struct snd_soc_jack * jack,int count,struct snd_soc_jack_gpio * gpios) snd_soc_jack_add_gpiods() argument 433 snd_soc_jack_free_gpios(struct snd_soc_jack * jack,int count,struct snd_soc_jack_gpio * gpios) snd_soc_jack_free_gpios() argument [all...] |
| /linux/Documentation/devicetree/bindings/serial/ |
| H A D | fsl-mxs-auart.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/serial/fsl-mxs-auart.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 10 - Fabio Estevam <festevam@gmail.com> 13 - $ref: serial.yaml# 18 - const: fsl,imx23-auart 19 - const: alphascale,asm9260-auart 20 - items: 21 - enum: [all …]
|
| H A D | ingenic,uart.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 10 - Paul Cercueil <paul@crapouillou.net> 13 - $ref: serial.yaml# 17 pattern: "^serial@[0-9a-f]+$" 21 - enum: 22 - ingenic,jz4740-uart 23 - ingenic,jz4750-uart 24 - ingenic,jz4760-uart [all …]
|
| /linux/Documentation/devicetree/bindings/soc/tegra/ |
| H A D | nvidia,nvec.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 10 - Thierry Reding <thierry.reding@gmail.com> 11 - Jon Hunter <jonathanh@nvidia.com> 26 - description: divider clock 27 - description: fast clock 29 clock-names: 32 - const: div-clk 33 - const: fast-clk [all …]
|
| /linux/drivers/extcon/ |
| H A D | extcon-intel-int3496.c | 1 // SPDX-License-Identifier: GPL-2.0 14 #include <linux/devm-helpers.h> 15 #include <linux/extcon-provider.h> 53 { "id-gpios", &id_gpios, 1, ACPI_GPIO_QUIRK_NO_IO_RESTRICTION }, 54 { "vbus-gpios", &vbus_gpios, 1 }, 55 { "mux-gpios", &mux_gpios, 1 }, 63 if (IS_ERR_OR_NULL(data->vbus_boost)) in int3496_set_vbus_boost() 66 if (data->vbus_boost_enabled == enable) in int3496_set_vbus_boost() 70 ret = regulator_enable(data->vbus_boost); in int3496_set_vbus_boost() 72 ret = regulator_disable(data->vbus_boost); in int3496_set_vbus_boost() [all …]
|
| /linux/drivers/watchdog/ |
| H A D | mena21_wdt.c | 1 // SPDX-License-Identifier: GPL-2.0+ 34 struct gpio_desc *gpios[NUM_GPIOS]; member 46 reset |= gpiod_get_value(drv->gpios[GPIO_WD_RST0]) ? (1 << 0) : 0; in a21_wdt_get_bootstatus() 47 reset |= gpiod_get_value(drv->gpios[GPIO_WD_RST1]) ? (1 << 1) : 0; in a21_wdt_get_bootstatus() 48 reset |= gpiod_get_value(drv->gpios[GPIO_WD_RST2]) ? (1 << 2) : 0; in a21_wdt_get_bootstatus() 57 gpiod_set_value(drv->gpios[GPIO_WD_ENAB], 1); in a21_wdt_start() 66 gpiod_set_value(drv->gpios[GPIO_WD_ENAB], 0); in a21_wdt_stop() 75 gpiod_set_value(drv->gpios[GPIO_WD_TRIG], 0); in a21_wdt_ping() 77 gpiod_set_value(drv->gpios[GPIO_WD_TRIG], 1); in a21_wdt_ping() 88 dev_err(wdt->parent, "Only 1 and 30 allowed as timeout\n"); in a21_wdt_set_timeout() [all …]
|
| /linux/drivers/gpio/ |
| H A D | gpio-ich.c | 1 // SPDX-License-Identifier: GPL-2.0+ 3 * Intel ICH6-10, Series 5 and 6, Atom C2000 (Avoton/Rangeley) GPIO driver 19 * Each chunk of 32 GPIOs is manipulated via its own USE_SELx, IO_SELx, and 34 {0x00, 0x30, 0x40}, /* USE_SEL[1-3] offsets */ 35 {0x04, 0x34, 0x44}, /* IO_SEL[1-3] offsets */ 36 {0x0c, 0x38, 0x48}, /* LVL[1-3] offsets */ 54 #define ICHX_WRITE(val, reg, base_res) outl(val, (reg) + (base_res)->start) 55 #define ICHX_READ(reg, base_res) inl((reg) + (base_res)->start) 74 /* Some chipsets have quirks, let these use their own request/get */ 75 int (*request)(struct gpio_chip *chip, unsigned int offset); member [all …]
|
| H A D | gpiolib-shared.c | 1 // SPDX-License-Identifier: GPL-2.0-only 28 #include "gpiolib-shared.h" 35 /* GPIO flags this consumer uses for the request. */ 74 if (entry->fwnode == controller_node && entry->offset == offset) in gpio_shared_find_entry() 97 ref->dev_id = ida_alloc(&gpio_shared_ida, GFP_KERNEL); in gpio_shared_make_ref() 98 if (ref->dev_id < 0) in gpio_shared_make_ref() 101 ref->flags = flags; in gpio_shared_make_ref() 102 ref->con_id = no_free_ptr(con_id_cpy); in gpio_shared_make_ref() 103 ref->fwnode = fwnode; in gpio_shared_make_ref() 104 lockdep_register_key(&ref->lock_key); in gpio_shared_make_ref() [all …]
|
| H A D | gpiolib.c | 1 // SPDX-License-Identifier: GPL-2.0 38 #include "gpiolib-acpi.h" 39 #include "gpiolib-cdev.h" 40 #include "gpiolib-of.h" 41 #include "gpiolib-shared.h" 42 #include "gpiolib-swnode.h" 43 #include "gpiolib-sysfs.h" 51 * The GPIO programming interface allows for inlining speed-critical 52 * get/set operations for common cases, so that access to SOC-integrated 53 * GPIOs can sometimes cost only an instruction or two per bit. [all …]
|
| /linux/Documentation/devicetree/bindings/power/reset/ |
| H A D | gpio-restart.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/power/reset/gpio-restart.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 10 - Sebastian Reichel <sre@kernel.org> 16 request the given gpio line and install a restart handler. If the optional properties 17 'open-source' is not found, the GPIO line will be driven in the inactive state. Otherwise its 22 This will also cause an inactive->active edge condition, triggering positive edge triggered 23 reset. After a delay specified by active-delay, the GPIO is set to inactive, thus causing an 24 active->inactive edge, triggering negative edge triggered reset. After a delay specified by [all …]
|
| /linux/Documentation/devicetree/bindings/net/can/ |
| H A D | fsl,flexcan.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 8 Flexcan CAN controller on Freescale's ARM and PowerPC system-on-a-chip (SOC). 11 - Marc Kleine-Budde <mkl@pengutronix.de> 16 - enum: 17 - fsl,imx95-flexcan 18 - fsl,imx93-flexcan 19 - fsl,imx8qm-flexcan 20 - fsl,imx8mp-flexcan [all …]
|
| /linux/drivers/pinctrl/renesas/ |
| H A D | gpio.c | 1 // SPDX-License-Identifier: GPL-2.0 6 * Copyright (C) 2009 - 2012 Paul Mundt 40 return chip->pfc; in gpio_to_pfc() 47 int idx = sh_pfc_get_pin_index(chip->pfc, offset); in gpio_get_data_reg() 48 struct sh_pfc_gpio_pin *gpio_pin = &chip->pins[idx]; in gpio_get_data_reg() 50 *reg = &chip->regs[gpio_pin->dreg]; in gpio_get_data_reg() 51 *bit = gpio_pin->dbit; in gpio_get_data_reg() 57 phys_addr_t address = dreg->reg; in gpio_read_data_reg() 58 void __iomem *mem = address - chip->mem->phys + chip->mem->virt; in gpio_read_data_reg() 60 return sh_pfc_read_raw_reg(mem, dreg->reg_width); in gpio_read_data_reg() [all …]
|
| /linux/arch/arm/mach-pxa/ |
| H A D | am200epd.c | 2 * am200epd.c -- Platform device for AM200 EPD kit 12 * This work was made possible by help and equipment support from E-Ink 16 * on the AM200 EPD prototype kit/development kit with an E-Ink 800x600 35 #include <linux/platform_data/video-pxafb.h> 101 static int gpios[] = { LED_GPIO_PIN , STDBY_GPIO_PIN , RST_GPIO_PIN, variable 110 for (i = 0; i < ARRAY_SIZE(gpios); i++) { in am200_init_gpio_regs() 111 err = gpio_request(gpios[i], gpio_names[i]); in am200_init_gpio_regs() 113 dev_err(&am200_device->dev, "failed requesting " in am200_init_gpio_regs() 131 while (--i >= 0) in am200_init_gpio_regs() 132 gpio_free(gpios[i]); in am200_init_gpio_regs() [all …]
|
| H A D | am300epd.c | 2 * am300epd.c -- Platform device for AM300 EPD kit 10 * This work was made possible by help and equipment support from E-Ink 14 * on the AM300 EPD prototype kit/development kit with an E-Ink 800x600 32 #include "mfp-pxa25x.h" 34 #include <linux/platform_data/video-pxafb.h> 56 /* this is the 16-bit hdb bus 58-73 */ 94 static int gpios[] = { PWR_GPIO_PIN, CFG_GPIO_PIN, RDY_GPIO_PIN, DC_GPIO_PIN, variable 103 wait_event(par->waitq, gpio_get_value(RDY_GPIO_PIN)); in am300_wait_event() 113 for (i = 0; i < ARRAY_SIZE(gpios); i++) { in am300_init_gpio_regs() 114 err = gpio_request(gpios[i], gpio_names[i]); in am300_init_gpio_regs() [all …]
|
| /linux/drivers/hsi/clients/ |
| H A 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() 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() 67 gpiod_unexport(modem->gpios[i].gpio); in nokia_modem_gpio_unexport() [all …]
|
| /linux/drivers/input/misc/ |
| H A 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 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() 77 input_report_rel(encoder->input, in rotary_encoder_report_event() [all …]
|
| /linux/arch/arm/boot/dts/allwinner/ |
| H A D | sun5i-r8-chip.dts | 5 * Maxime Ripard <maxime.ripard@free-electrons.com> 7 * This file is dual-licensed: you can use it either under the terms 46 /dts-v1/; 47 #include "sun5i-r8.dtsi" 48 #include "sunxi-common-regulators.dtsi" 50 #include <dt-bindings/gpio/gpio.h> 51 #include <dt-bindings/interrupt-controller/irq.h> 55 compatible = "nextthing,chip", "allwinner,sun5i-r8", "allwinner,sun5i-a13"; 67 stdout-path = "serial0:115200n8"; 71 compatible = "gpio-leds"; [all …]
|
| H A D | sun5i-gr8-chip-pro.dts | 5 * Maxime Ripard <maxime.ripard@free-electrons.com> 7 * This file is dual-licensed: you can use it either under the terms 46 /dts-v1/; 47 #include "sun5i-gr8.dtsi" 48 #include "sunxi-common-regulators.dtsi" 50 #include <dt-bindings/gpio/gpio.h> 51 #include <dt-bindings/input/input.h> 52 #include <dt-bindings/interrupt-controller/irq.h> 56 compatible = "nextthing,chip-pro", "nextthing,gr8"; 67 stdout-path = "serial0:115200n8"; [all …]
|
| H A D | sun5i-gr8-evb.dts | 5 * Mylène Josserand <mylene.josserand@free-electrons.com> 7 * This file is dual-licensed: you can use it either under the terms 46 /dts-v1/; 47 #include "sun5i-gr8.dtsi" 48 #include "sunxi-common-regulators.dtsi" 50 #include <dt-bindings/gpio/gpio.h> 51 #include <dt-bindings/input/input.h> 52 #include <dt-bindings/interrupt-controller/irq.h> 55 model = "NextThing GR8-EVB"; 56 compatible = "nextthing,gr8-evb", "nextthing,gr8"; [all …]
|
| /linux/drivers/usb/misc/ |
| H A D | usbio.c | 1 // SPDX-License-Identifier: GPL-2.0 61 * struct usbio_device - the usb device exposing IOs 71 * @bulk_mutex: protects tx_buf, rx_buf and split bulk-transfers getting interrupted 80 * @done: completion object as request is done 83 * @gpios: GPIO bank descriptors 85 * @gpios: I2C bank descriptors 114 struct usbio_gpio_bank_desc gpios[USBIO_MAX_GPIOBANKS]; member 121 * struct usbio_client - represents a usbio client 140 u8 request = USB_TYPE_VENDOR | USB_RECIP_DEVICE; in usbio_ctrl_msg() local 146 lockdep_assert_held(&usbio->ctrl_mutex); in usbio_ctrl_msg() [all …]
|
| /linux/Documentation/driver-api/hte/ |
| H A D | tegra-hte.rst | 1 .. SPDX-License-Identifier: GPL-2.0+ 7 ----------- 15 -------- 19 instance supports timestamping GPIOs in real time as it is tightly coupled with 26 consumer can request an GPIO line. 31 specified during IOCTL calls. Refer to ``tools/gpio/gpio-event-mon.c``, which 35 ----------------------------------------- 39 provides an example of how a consumer can request an IRQ line. Since it is a 40 one-to-one mapping with IRQ GTE provider, consumers can simply specify the IRQ 45 ``drivers/hte/hte-tegra194.c``. The test driver [all …]
|
| /linux/sound/hda/codecs/side-codecs/ |
| H A D | cirrus_scodec_test.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 // KUnit test for the Cirrus side-codec library. 51 return !!(gpio_priv->pin_state & BIT(offset)); in cirrus_scodec_test_gpio_get() 57 return -EOPNOTSUPP; in cirrus_scodec_test_gpio_direction_out() 63 return -EOPNOTSUPP; in cirrus_scodec_test_gpio_set() 73 return -EOPNOTSUPP; in cirrus_scodec_test_gpio_set_config() 82 .request = gpiochip_generic_request, 90 .base = -1, 104 gpio_priv = devm_kzalloc(&fdev->dev, sizeof(*gpio_priv), GFP_KERNEL); in cirrus_scodec_test_gpio_probe() 106 return -ENOMEM; in cirrus_scodec_test_gpio_probe() [all …]
|
| /linux/Documentation/hwmon/ |
| H A D | powr1220.rst | 19 ----------- 23 for output voltages and GPIOs. This driver implements the voltage 26 Voltages are sampled by a 12-bit ADC with a step size of 2 mV. 27 An in-line attenuator allows measurements from 0 to 6 V. The 53 The ADC readings are updated on request with a minimum period of 1s.
|
| /linux/Documentation/devicetree/bindings/phy/ |
| H A D | phy-rockchip-usbdp.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/phy/phy-rockchip-usbdp.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 10 - Frank Wang <frank.wang@rock-chips.com> 11 - Zhang Yubing <yubing.zhang@rock-chips.com> 16 - rockchip,rk3576-usbdp-phy 17 - rockchip,rk3588-usbdp-phy 22 "#phy-cells": 25 - PHY_TYPE_USB3 [all …]
|
| /linux/Documentation/devicetree/bindings/sound/ |
| H A D | fsl,ssi.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 10 - Shengjiu Wang <shengjiu.wang@nxp.com> 13 Notes on fsl,playback-dma and fsl,capture-dma 14 On SOCs that have an SSI, specific DMA channels are hard-wired for playback 18 DMA controller to use, but the channels themselves are hard-wired. The 22 "fsl,playback-dma" and "fsl,capture-dma" must be marked as compatible with 23 "fsl,ssi-dma-channel". The SOC-specific compatible string (e.g. 24 "fsl,mpc8610-dma-channel") can remain. If these nodes are left as [all …]
|