Home
last modified time | relevance | path

Searched +full:their +full:- +full:claim +full:- +full:gpios (Results 1 – 25 of 29) sorted by relevance

12

/kernel/linux/linux-6.6/Documentation/devicetree/bindings/i2c/
Di2c-arb-gpio-challenge.yaml1 # SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
3 ---
4 $id: http://devicetree.org/schemas/i2c/i2c-arb-gpio-challenge.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
7 title: GPIO-based I2C Arbitration Using a Challenge & Response Mechanism
10 - Doug Anderson <dianders@chromium.org>
11 - Peter Rosin <peda@axentia.se>
17 In many cases using GPIOs to arbitrate is not needed and a design can use the
18 standard I2C multi-master rules. Using GPIOs is generally useful in the case
29 All masters on the bus have a 'bus claim' line which is an output that the
[all …]
/kernel/linux/linux-5.10/Documentation/devicetree/bindings/i2c/
Di2c-arb-gpio-challenge.txt1 GPIO-based I2C Arbitration Using a Challenge & Response Mechanism
6 In many cases using GPIOs to arbitrate is not needed and a design can use
7 the standard I2C multi-master rules. Using GPIOs is generally useful in
20 All masters on the bus have a 'bus claim' line which is an output that the
21 others can see. These are all active low with pull-ups enabled. We'll
24 - OUR_CLAIM: output from us signaling to other hosts that we want the bus
25 - THEIR_CLAIMS: output from others signaling that they want the bus
31 Let's say we want to claim the bus. We:
38 5. If not, back off, release the claim and wait for a few more milliseconds.
43 - compatible: i2c-arb-gpio-challenge
[all …]
/kernel/linux/linux-6.6/drivers/i2c/muxes/
Di2c-arb-gpio-challenge.c1 // SPDX-License-Identifier: GPL-2.0-only
3 * GPIO-based I2C Arbitration Using a Challenge & Response Mechanism
12 #include <linux/i2c-mux.h>
19 * struct i2c_arbitrator_data - Driver data for I2C arbitrator
21 * @our_gpio: GPIO descriptor we'll use to claim.
22 * @their_gpio: GPIO descriptor that the other side will use to claim.
24 * @wait_retry_us: we'll attempt another claim after this many microseconds.
38 * i2c_arbitrator_select - claim the I2C bus
40 * Use the GPIO-based signalling protocol; return -EBUSY if we fail.
47 /* Start a round of trying to claim the bus */ in i2c_arbitrator_select()
[all …]
/kernel/linux/linux-5.10/drivers/i2c/muxes/
Di2c-arb-gpio-challenge.c1 // SPDX-License-Identifier: GPL-2.0-only
3 * GPIO-based I2C Arbitration Using a Challenge & Response Mechanism
12 #include <linux/i2c-mux.h>
19 * struct i2c_arbitrator_data - Driver data for I2C arbitrator
21 * @our_gpio: GPIO descriptor we'll use to claim.
22 * @their_gpio: GPIO descriptor that the other side will use to claim.
24 * @wait_retry_us: we'll attempt another claim after this many microseconds.
38 * i2c_arbitrator_select - claim the I2C bus
40 * Use the GPIO-based signalling protocol; return -EBUSY if we fail.
47 /* Start a round of trying to claim the bus */ in i2c_arbitrator_select()
[all …]
/kernel/linux/linux-6.6/arch/arm/boot/dts/samsung/
Dexynos5250-snow-common.dtsi1 // SPDX-License-Identifier: GPL-2.0
8 #include <dt-bindings/gpio/gpio.h>
9 #include <dt-bindings/clock/maxim,max77686.h>
10 #include <dt-bindings/interrupt-controller/irq.h>
11 #include <dt-bindings/input/input.h>
12 #include <dt-bindings/sound/samsung-i2s.h>
30 stdout-path = "serial3:115200n8";
33 gpio-keys {
34 compatible = "gpio-keys";
35 pinctrl-names = "default";
[all …]
/kernel/linux/linux-5.10/arch/arm/boot/dts/
Dexynos5250-snow-common.dtsi1 // SPDX-License-Identifier: GPL-2.0
8 #include <dt-bindings/gpio/gpio.h>
9 #include <dt-bindings/clock/maxim,max77686.h>
10 #include <dt-bindings/interrupt-controller/irq.h>
11 #include <dt-bindings/input/input.h>
12 #include <dt-bindings/sound/samsung-i2s.h>
27 stdout-path = "serial3:115200n8";
30 gpio-keys {
31 compatible = "gpio-keys";
32 pinctrl-names = "default";
[all …]
Dimx6q-cm-fx6.dts6 * This file is dual-licensed: you can use it either under the terms
38 * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
44 /dts-v1/;
45 #include <dt-bindings/gpio/gpio.h>
46 #include <dt-bindings/sound/fsl-imx-audmux.h>
50 model = "CompuLab CM-FX6";
51 compatible = "compulab,cm-fx6", "fsl,imx6q";
59 compatible = "gpio-leds";
61 heartbeat-led {
63 gpios = <&gpio2 31 0>;
[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 …]
/kernel/linux/linux-6.6/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 …]
/kernel/linux/linux-6.6/arch/arm/boot/dts/nxp/imx/
Dimx6q-cm-fx6.dts6 * This file is dual-licensed: you can use it either under the terms
38 * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
44 /dts-v1/;
45 #include <dt-bindings/gpio/gpio.h>
46 #include <dt-bindings/sound/fsl-imx-audmux.h>
50 model = "CompuLab CM-FX6";
51 compatible = "compulab,cm-fx6", "fsl,imx6q";
59 compatible = "gpio-leds";
61 heartbeat-led {
63 gpios = <&gpio2 31 0>;
[all …]
/kernel/linux/linux-5.10/drivers/gpu/drm/i915/display/
Dintel_bios.h2 * Copyright © 2016-2019 Intel Corporation
18 * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
60 * Note the VBT spec has AssertReset / DeassertReset swapped from their
212 /* GPIOs */
Dvlv_dsi.c18 * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
78 struct drm_encoder *encoder = &intel_dsi->base.base; in vlv_dsi_wait_for_fifo_empty()
79 struct drm_device *dev = encoder->dev; in vlv_dsi_wait_for_fifo_empty()
88 drm_err(&dev_priv->drm, "DPI FIFOs are not empty\n"); in vlv_dsi_wait_for_fifo_empty()
100 for (j = 0; j < min_t(u32, len - i, 4); j++) in write_data()
116 for (j = 0; j < min_t(u32, len - i, 4); j++) in read_data()
125 struct drm_device *dev = intel_dsi_host->intel_dsi->base.base.dev; in intel_dsi_host_transfer()
127 enum port port = intel_dsi_host->port; in intel_dsi_host_transfer()
141 if (msg->flags & MIPI_DSI_MSG_USE_LPM) { in intel_dsi_host_transfer()
157 drm_err(&dev_priv->drm, in intel_dsi_host_transfer()
[all …]
/kernel/linux/linux-6.6/drivers/gpu/drm/i915/display/
Dintel_bios.h2 * Copyright © 2016-2019 Intel Corporation
18 * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
64 * Note the VBT spec has AssertReset / DeassertReset swapped from their
216 /* GPIOs */
Dvlv_dsi.c18 * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
87 struct drm_encoder *encoder = &intel_dsi->base.base; in vlv_dsi_wait_for_fifo_empty()
88 struct drm_device *dev = encoder->dev; in vlv_dsi_wait_for_fifo_empty()
97 drm_err(&dev_priv->drm, "DPI FIFOs are not empty\n"); in vlv_dsi_wait_for_fifo_empty()
109 for (j = 0; j < min_t(u32, len - i, 4); j++) in write_data()
125 for (j = 0; j < min_t(u32, len - i, 4); j++) in read_data()
134 struct drm_device *dev = intel_dsi_host->intel_dsi->base.base.dev; in intel_dsi_host_transfer()
136 enum port port = intel_dsi_host->port; in intel_dsi_host_transfer()
149 if (msg->flags & MIPI_DSI_MSG_USE_LPM) { in intel_dsi_host_transfer()
165 drm_err(&dev_priv->drm, in intel_dsi_host_transfer()
[all …]
/kernel/linux/linux-6.6/drivers/hsi/
Dhsi_core.c1 // SPDX-License-Identifier: GPL-2.0-only
45 if (strcmp(dev_name(dev), driver->name) == 0) in hsi_bus_match()
62 kfree(cl->tx_cfg.channels); in hsi_client_release()
63 kfree(cl->rx_cfg.channels); in hsi_client_release()
77 cl->tx_cfg = info->tx_cfg; in hsi_new_client()
78 if (cl->tx_cfg.channels) { in hsi_new_client()
79 size = cl->tx_cfg.num_channels * sizeof(*cl->tx_cfg.channels); in hsi_new_client()
80 cl->tx_cfg.channels = kmemdup(info->tx_cfg.channels, size, in hsi_new_client()
82 if (!cl->tx_cfg.channels) in hsi_new_client()
86 cl->rx_cfg = info->rx_cfg; in hsi_new_client()
[all …]
/kernel/linux/linux-5.10/drivers/hsi/
Dhsi_core.c1 // SPDX-License-Identifier: GPL-2.0-only
45 if (strcmp(dev_name(dev), driver->name) == 0) in hsi_bus_match()
62 kfree(cl->tx_cfg.channels); in hsi_client_release()
63 kfree(cl->rx_cfg.channels); in hsi_client_release()
77 cl->tx_cfg = info->tx_cfg; in hsi_new_client()
78 if (cl->tx_cfg.channels) { in hsi_new_client()
79 size = cl->tx_cfg.num_channels * sizeof(*cl->tx_cfg.channels); in hsi_new_client()
80 cl->tx_cfg.channels = kmemdup(info->tx_cfg.channels, size, in hsi_new_client()
82 if (!cl->tx_cfg.channels) in hsi_new_client()
86 cl->rx_cfg = info->rx_cfg; in hsi_new_client()
[all …]
/kernel/linux/linux-5.10/sound/soc/samsung/
Ds3c24xx_simtec.c1 // SPDX-License-Identifier: GPL-2.0
11 #include <linux/platform_data/asoc-s3c24xx_simtec.h>
13 #include "s3c24xx-i2s.h"
23 * speaker_gain_get - read the speaker gain setting.
32 ucontrol->value.integer.value[0] = spk_gain; in speaker_gain_get()
37 * speaker_gain_set - set the value of the speaker amp gain
42 gpio_set_value_cansleep(pdata->amp_gain[0], value & 1); in speaker_gain_set()
43 gpio_set_value_cansleep(pdata->amp_gain[1], value >> 1); in speaker_gain_set()
47 * speaker_gain_put - set the speaker gain setting.
55 * as at-least one of the ICs that is fitted will try and power up even
[all …]
/kernel/linux/linux-6.6/drivers/input/misc/
Dsoc_button_array.c1 // SPDX-License-Identifier: GPL-2.0-only
23 MODULE_PARM_DESC(use_low_level_irq, "Use low-level triggered IRQ instead of edge triggered");
52 * Some 2-in-1s which use the soc_button_array driver have this ugly issue in
53 * their DSDT where the _LID method modifies the irq-type settings of the GPIOs
57 * problematic because when re-enabling the irq, which happens whenever _LID
59 * irq-type to IRQ_TYPE_LEVEL_LOW. Where as the gpio-keys driver programs the
61 * To work around this we don't set gpio_keys_button.gpio on these 2-in-1s,
69 * Acer Switch 10 SW5-012. _LID method messes with home- and
70 * power-button GPIO IRQ settings. When (re-)enabling the irq
72 * ones, leading to an irq-type of IRQ_TYPE_LEVEL_LOW |
[all …]
Diqs7222.c1 // SPDX-License-Identifier: GPL-2.0-or-later
116 [IQS7222_REG_GRP_CYCLE] = "cycle-%d",
117 [IQS7222_REG_GRP_CHAN] = "channel-%d",
118 [IQS7222_REG_GRP_SLDR] = "slider-%d",
120 [IQS7222_REG_GRP_GPIO] = "gpio-%d",
150 .name = "event-prox",
155 .name = "event-touch",
162 { .name = "event-press", },
164 .name = "event-tap",
171 .name = "event-swipe-pos",
[all …]
/kernel/linux/linux-5.10/drivers/input/misc/
Dsoc_button_array.c1 // SPDX-License-Identifier: GPL-2.0-only
23 MODULE_PARM_DESC(use_low_level_irq, "Use low-level triggered IRQ instead of edge triggered");
52 * Some 2-in-1s which use the soc_button_array driver have this ugly issue in
53 * their DSDT where the _LID method modifies the irq-type settings of the GPIOs
57 * problematic because when re-enabling the irq, which happens whenever _LID
59 * irq-type to IRQ_TYPE_LEVEL_LOW. Where as the gpio-keys driver programs the
61 * To work around this we don't set gpio_keys_button.gpio on these 2-in-1s,
69 * Acer Switch 10 SW5-012. _LID method messes with home- and
70 * power-button GPIO IRQ settings. When (re-)enabling the irq
72 * ones, leading to an irq-type of IRQ_TYPE_LEVEL_LOW |
[all …]
/kernel/linux/linux-6.6/drivers/pinctrl/
Dcore.c1 // SPDX-License-Identifier: GPL-2.0-only
5 * Copyright (C) 2011-2012 ST-Ericsson SA
6 * Written on behalf of Linaro for ST-Ericsson
62 * pinctrl_provide_dummies() - indicate if pinctrl provides dummy state support
77 return pctldev->desc->name; in pinctrl_dev_get_name()
83 return dev_name(pctldev->dev); in pinctrl_dev_get_devname()
89 return pctldev->driver_data; in pinctrl_dev_get_drvdata()
94 * get_pinctrl_dev_from_devname() - look up pin controller device
110 if (!strcmp(dev_name(pctldev->dev), devname)) { in get_pinctrl_dev_from_devname()
129 if (device_match_of_node(pctldev->dev, np)) { in get_pinctrl_dev_from_of_node()
[all …]
/kernel/linux/linux-5.10/drivers/pinctrl/
Dcore.c1 // SPDX-License-Identifier: GPL-2.0-only
5 * Copyright (C) 2011-2012 ST-Ericsson SA
6 * Written on behalf of Linaro for ST-Ericsson
31 #include <asm-generic/gpio.h>
62 * pinctrl_provide_dummies() - indicate if pinctrl provides dummy state support
77 return pctldev->desc->name; in pinctrl_dev_get_name()
83 return dev_name(pctldev->dev); in pinctrl_dev_get_devname()
89 return pctldev->driver_data; in pinctrl_dev_get_drvdata()
94 * get_pinctrl_dev_from_devname() - look up pin controller device
110 if (!strcmp(dev_name(pctldev->dev), devname)) { in get_pinctrl_dev_from_devname()
[all …]
/kernel/linux/linux-5.10/drivers/mfd/
Dtps65010.c1 // SPDX-License-Identifier: GPL-2.0-or-later
3 * tps65010 - driver for tps6501x power management chips
6 * Copyright (C) 2004-2005 David Brownell
27 /*-------------------------------------------------------------------------*/
37 /*-------------------------------------------------------------------------*/
40 * voltage regulators, lithium ion/polymer battery charging, GPIOs, LEDs,
47 * battery-insert != device-on.
84 /*-------------------------------------------------------------------------*/
184 struct tps65010 *tps = s->private; in dbg_show()
190 switch (tps->model) { in dbg_show()
[all …]
/kernel/linux/linux-6.6/drivers/mfd/
Dtps65010.c1 // SPDX-License-Identifier: GPL-2.0-or-later
3 * tps65010 - driver for tps6501x power management chips
6 * Copyright (C) 2004-2005 David Brownell
27 /*-------------------------------------------------------------------------*/
37 /*-------------------------------------------------------------------------*/
40 * voltage regulators, lithium ion/polymer battery charging, GPIOs, LEDs,
47 * battery-insert != device-on.
84 /*-------------------------------------------------------------------------*/
184 struct tps65010 *tps = s->private; in dbg_show()
190 switch (tps->model) { in dbg_show()
[all …]
/kernel/linux/patches/linux-5.10/imx8mm_patch/patches/drivers/
D0022_linux_drivers_i2c.patch7 Change-Id: I4a66d5b97f61e6f70ee3a088441bee616aff2012
9 diff --git a/drivers/i2c/busses/Kconfig b/drivers/i2c/busses/Kconfig
11 --- a/drivers/i2c/busses/Kconfig
13 @@ -692,6 +692,14 @@ config I2C_IMX_LPI2C
15 will be called i2c-imx-lpi2c.
26 tristate "Intel IOPx3xx and IXP4xx on-chip I2C interface"
28 @@ -954,6 +962,12 @@ config I2C_RK3X
30 be called i2c-rk3x.
36 + This driver can support virtual i2c-rpmsg function.
41 @@ -1420,4 +1434,14 @@ config I2C_FSI
[all …]

12