| /Linux-v6.6/drivers/gpio/ |
| D | Kconfig | 1 # SPDX-License-Identifier: GPL-2.0-only 3 # GPIO infrastructure and drivers 7 bool "GPIO Support" 9 This enables GPIO support through the generic GPIO library. 11 one or more of the GPIO drivers below. 17 config GPIOLIB_FASTPATH_LIMIT 29 config OF_GPIO 34 config GPIO_ACPI 38 config GPIOLIB_IRQCHIP 42 config OF_GPIO_MM_GPIOCHIP [all …]
|
| D | gpio-regmap.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * regmap based generic GPIO driver 17 #include <linux/gpio/driver.h> 18 #include <linux/gpio/regmap.h> 33 int (*reg_mask_xlate)(struct gpio_regmap *gpio, unsigned int base, 48 static int gpio_regmap_simple_xlate(struct gpio_regmap *gpio, in gpio_regmap_simple_xlate() argument 52 unsigned int line = offset % gpio->ngpio_per_reg; in gpio_regmap_simple_xlate() 53 unsigned int stride = offset / gpio->ngpio_per_reg; in gpio_regmap_simple_xlate() 55 *reg = base + stride * gpio->reg_stride; in gpio_regmap_simple_xlate() 63 struct gpio_regmap *gpio = gpiochip_get_data(chip); in gpio_regmap_get() local [all …]
|
| D | gpio-sl28cpld.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * sl28cpld GPIO driver 9 #include <linux/gpio/driver.h> 10 #include <linux/gpio/regmap.h> 18 /* GPIO flavor */ 25 /* input-only flavor */ 28 /* output-only flavor */ 50 struct gpio_regmap_config *config) in sl28cpld_gpio_irq_init() argument 54 struct device *dev = &pdev->dev; in sl28cpld_gpio_irq_init() 57 if (!device_property_read_bool(dev, "interrupt-controller")) in sl28cpld_gpio_irq_init() [all …]
|
| D | gpio-idio-16.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * GPIO library for the ACCES IDIO-16 family 10 #include <linux/gpio/regmap.h> 15 #include "gpio-idio-16.h" 41 const unsigned int prev_mask = data->irq_mask; in idio_16_handle_mask_sync() 50 data->irq_mask = mask_buf; in idio_16_handle_mask_sync() 54 err = regmap_write(data->map, IDIO_16_CLEAR_INTERRUPT, 0x00); in idio_16_handle_mask_sync() 57 return regmap_read(data->map, IDIO_16_ENABLE_IRQ, &val); in idio_16_handle_mask_sync() 62 return regmap_write(data->map, IDIO_16_DISABLE_IRQ, 0x00); in idio_16_handle_mask_sync() 67 static int idio_16_reg_mask_xlate(struct gpio_regmap *const gpio, const unsigned int base, in idio_16_reg_mask_xlate() argument [all …]
|
| D | gpio-gpio-mm.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * GPIO driver for the Diamond Systems GPIO-MM 6 * This driver supports the following Diamond Systems devices: GPIO-MM and 7 * GPIO-MM-12. 19 #include "gpio-i8255.h" 29 MODULE_PARM_DESC(base, "Diamond Systems GPIO-MM base addresses"); 65 struct i8255_regmap_config config = {}; in gpiomm_probe() local 69 dev_err(dev, "Unable to lock port addresses (0x%X-0x%X)\n", in gpiomm_probe() 71 return -EBUSY; in gpiomm_probe() 76 return -ENOMEM; in gpiomm_probe() [all …]
|
| D | gpio-i8255.c | 1 // SPDX-License-Identifier: GPL-2.0 10 #include <linux/gpio/regmap.h> 14 #include "gpio-i8255.h" 60 /* Initialize all GPIO to output 0 */ in i8255_ppi_init() 70 static int i8255_reg_mask_xlate(struct gpio_regmap *gpio, unsigned int base, in i8255_reg_mask_xlate() argument 90 return -EINVAL; in i8255_reg_mask_xlate() 95 * devm_i8255_regmap_register - Register an i8255 GPIO controller 96 * @dev: device that is registering this i8255 GPIO device 97 * @config: configuration for i8255_regmap_config 99 * Registers an Intel 8255 Programmable Peripheral Interface GPIO controller. [all …]
|
| /Linux-v6.6/drivers/pinctrl/ |
| D | Kconfig | 1 # SPDX-License-Identifier: GPL-2.0-only 11 config GENERIC_PINCTRL_GROUPS 14 config PINMUX 17 config GENERIC_PINMUX_FUNCTIONS 21 config PINCONF 24 config GENERIC_PINCONF 28 config DEBUG_PINCTRL 34 config PINCTRL_AMD 35 bool "AMD GPIO pin control" 44 The driver for memory mapped GPIO functionality on AMD platforms [all …]
|
| D | pinctrl-falcon.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * linux/drivers/pinctrl/pinmux-falcon.c 4 * based on linux/drivers/pinctrl/pinmux-pxa910.c 12 #include <linux/gpio/driver.h> 22 #include "pinctrl-lantiq.h" 107 MFP_FALCON(GPIO0, RST, GPIO, NONE, NONE), 108 MFP_FALCON(GPIO1, GPIO, GPIO, NONE, NONE), 109 MFP_FALCON(GPIO2, GPIO, GPIO, NONE, NONE), 110 MFP_FALCON(GPIO3, GPIO, GPIO, NONE, NONE), 111 MFP_FALCON(GPIO4, NTR, GPIO, NONE, NONE), [all …]
|
| /Linux-v6.6/drivers/pinctrl/bcm/ |
| D | Kconfig | 1 # SPDX-License-Identifier: GPL-2.0-only 6 config PINCTRL_BCM281XX 18 framework. GPIO is provided by a separate GPIO driver. 20 config PINCTRL_BCM2835 21 tristate "Broadcom BCM2835 GPIO (with PINCONF) driver" 30 Say Y here to enable the Broadcom BCM2835 GPIO driver. 32 config PINCTRL_BCM4908 44 If compiled as module it will be called pinctrl-bcm4908. 46 config PINCTRL_BCM63XX 55 config PINCTRL_BCM6318 [all …]
|
| /Linux-v6.6/drivers/pinctrl/intel/ |
| D | Kconfig | 1 # SPDX-License-Identifier: GPL-2.0 6 config PINCTRL_BAYTRAIL 7 bool "Intel Baytrail GPIO pin control" 10 driver for memory mapped GPIO functionality on Intel Baytrail 13 so only a small amount is available for gpio use. 17 config PINCTRL_CHERRYVIEW 18 tristate "Intel Cherryview/Braswell pinctrl and GPIO driver" 24 config PINCTRL_LYNXPOINT 25 tristate "Intel Lynxpoint pinctrl and GPIO driver" 32 config PINCTRL_INTEL [all …]
|
| /Linux-v6.6/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.6/arch/arm/boot/dts/st/ |
| D | ste-hrefv60plus.dtsi | 1 // SPDX-License-Identifier: GPL-2.0-or-later 3 * Copyright 2012 ST-Ericsson AB 6 #include "ste-href-ab8500.dtsi" 7 #include "ste-href.dtsi" 10 model = "ST-Ericsson HREF (v60+) platform with Device Tree"; 11 compatible = "st-ericsson,hrefv60+", "st-ericsson,u8500"; 13 thermal-zones { 14 chassis-thermal { 16 polling-delay = <20000>; 18 polling-delay-passive = <2000>; [all …]
|
| D | ste-ux500-samsung-gavini.dts | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * Devicetree for the Samsung Galaxy Beam GT-I8530 also known as Gavini. 6 /dts-v1/; 7 #include "ste-db8500.dtsi" 8 #include "ste-ab8500.dtsi" 9 #include "ste-dbx5x0-pinctrl.dtsi" 10 #include <dt-bindings/gpio/gpio.h> 11 #include <dt-bindings/leds/common.h> 12 #include <dt-bindings/input/input.h> 13 #include <dt-bindings/interrupt-controller/irq.h> [all …]
|
| D | ste-ux500-samsung-janice.dts | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * Devicetree for the Samsung Galaxy S Advance GT-I9070 also known as Janice. 6 /dts-v1/; 7 #include "ste-db8500.dtsi" 8 #include "ste-ab8500.dtsi" 9 #include "ste-dbx5x0-pinctrl.dtsi" 10 #include <dt-bindings/gpio/gpio.h> 11 #include <dt-bindings/leds/common.h> 12 #include <dt-bindings/input/input.h> 13 #include <dt-bindings/interrupt-controller/irq.h> [all …]
|
| D | ste-ux500-samsung-codina.dts | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * Devicetree for the Samsung Galaxy Ace 2 GT-I8160 also known as Codina. 11 * The Samsung tree further talks about GT-I8160P and GT-I8160chn (China). 12 * The GT-I8160 plain is known as the "europe" variant. 13 * The GT-I8160P is the CDMA version and it appears to not use the ST 15 * The GT-I8160chn appears to be the same as the europe variant. 17 * There is also the Codina-TMO, Samsung SGH-T599, which has its own device 21 /dts-v1/; 22 #include "ste-db8500.dtsi" 23 #include "ste-ab8500.dtsi" [all …]
|
| D | ste-ux500-samsung-kyle.dts | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * Devicetree for the Samsung Galaxy Amp SGH-I407 also known as Kyle. 10 /dts-v1/; 11 #include "ste-db8500.dtsi" 12 #include "ste-ab8505.dtsi" 13 #include "ste-dbx5x0-pinctrl.dtsi" 14 #include <dt-bindings/gpio/gpio.h> 15 #include <dt-bindings/leds/common.h> 16 #include <dt-bindings/input/input.h> 17 #include <dt-bindings/interrupt-controller/irq.h> [all …]
|
| D | ste-ux500-samsung-codina-tmo.dts | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * Devicetree for the Samsung Galaxy Exhibit SGH-T599 also known as Codina-TMO, 4 * the "TMO" shall be read "T-Mobile" as this phone was produced exlusively 5 * for T-Mobile in the United States. 8 * - No CPU speed cap, full ~1GHz rate 9 * - Different power management IC, AB8505 10 * - As AB8505 has a micro USB phy, no TI TSU6111 11 * - Different power routing such as the removal of the external LDO for the 13 * - Using a regulator for the key backlight LED 14 * - Using the Samsung S6D27A1 panel by default [all …]
|
| D | ste-ux500-samsung-skomer.dts | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * Devicetree for the Samsung XCover 2 GT-S7710 also known as Skomer. 6 /dts-v1/; 7 #include "ste-db8500.dtsi" 8 #include "ste-ab8505.dtsi" 9 #include "ste-dbx5x0-pinctrl.dtsi" 10 #include <dt-bindings/gpio/gpio.h> 11 #include <dt-bindings/leds/common.h> 12 #include <dt-bindings/input/input.h> 13 #include <dt-bindings/interrupt-controller/irq.h> [all …]
|
| /Linux-v6.6/tools/gpio/ |
| D | gpio-utils.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * GPIO tools - helpers library for the GPIO tools 17 #include <linux/gpio.h> 18 #include "gpio-utils.h" 20 #define CONSUMER "gpio-utils" 23 * DOC: Operation of gpio 27 * ioctl, including request and release for lines of gpio, read/write 28 * the value of gpio. If the user want to do lots of read and write of 29 * lines of gpio, user should use this type of api. 32 * following api will request gpio lines, do the operation and then [all …]
|
| D | gpio-event-mon.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * gpio-event-mon - monitor GPIO line events from userspace 8 * gpio-event-mon -n <device-name> -o <offset> 25 #include <linux/gpio.h> 26 #include "gpio-utils.h" 31 struct gpio_v2_line_config *config, in monitor_device() argument 42 return -ENOMEM; in monitor_device() 45 if (cfd == -1) { in monitor_device() 46 ret = -errno; in monitor_device() 51 ret = gpiotools_request_line(device_name, lines, num_lines, config, in monitor_device() [all …]
|
| /Linux-v6.6/drivers/pinctrl/mvebu/ |
| D | pinctrl-dove.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 20 #include "pinctrl-mvebu.h" 23 #define INT_REGS_MASK ~(SZ_1M - 1) 44 /* Global Config regmap registers */ 64 unsigned pid, unsigned long *config) in dove_pmu_mpp_ctrl_get() argument 68 unsigned long pmu = readl(data->base + PMU_MPP_GENERAL_CTRL); in dove_pmu_mpp_ctrl_get() 72 return mvebu_mmio_mpp_ctrl_get(data, pid, config); in dove_pmu_mpp_ctrl_get() 75 *config = (func >> shift) & MVEBU_MPP_MASK; in dove_pmu_mpp_ctrl_get() 76 *config |= CONFIG_PMU; in dove_pmu_mpp_ctrl_get() 82 unsigned pid, unsigned long config) in dove_pmu_mpp_ctrl_set() argument [all …]
|
| /Linux-v6.6/drivers/pinctrl/mediatek/ |
| D | Kconfig | 1 # SPDX-License-Identifier: GPL-2.0-only 5 config EINT_MTK 13 config PINCTRL_MTK 21 config PINCTRL_MTK_V2 24 config PINCTRL_MTK_MTMIPS 30 config PINCTRL_MTK_MOORE 40 config PINCTRL_MTK_PARIS 50 config PINCTRL_MT7620 57 config PINCTRL_MT7621 64 config PINCTRL_MT76X8 [all …]
|
| /Linux-v6.6/arch/arm/mach-s3c/ |
| D | gpio-samsung.c | 1 // SPDX-License-Identifier: GPL-2.0 3 // Copyright (c) 2009-2011 Samsung Electronics Co., Ltd. 11 // Samsung - GPIOlib support 16 #include <linux/gpio.h> 31 #include "regs-gpio.h" 32 #include "gpio-samsung.h" 35 #include "gpio-core.h" 36 #include "gpio-cfg.h" 37 #include "gpio-cfg-helpers.h" 43 void __iomem *reg = chip->base + 0x08; in samsung_gpio_setpull_updown() [all …]
|
| /Linux-v6.6/drivers/regulator/ |
| D | gpio-regulator.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 3 * gpio-regulator.c 14 * Roger Quadros <ext-roger.quadros@nokia.com> 17 * non-controllable regulators, as well as for allowing testing on 28 #include <linux/regulator/gpio-regulator.h> 29 #include <linux/gpio/consumer.h> 50 for (ptr = 0; ptr < data->nr_states; ptr++) in gpio_regulator_get_value() 51 if (data->states[ptr].gpios == data->state) in gpio_regulator_get_value() 52 return data->states[ptr].value; in gpio_regulator_get_value() 54 return -EINVAL; in gpio_regulator_get_value() [all …]
|
| /Linux-v6.6/drivers/gpu/drm/amd/display/dc/gpio/ |
| D | gpio_service.c | 2 * Copyright 2012-15 Advanced Micro Devices, Inc. 27 * Pre-requisites: headers required by header of this unit 43 * Post-requisites: headers required by this unit 68 if (!dal_hw_translate_init(&service->translate, dce_version, in dal_gpio_service_create() 74 if (!dal_hw_factory_init(&service->factory, dce_version, in dal_gpio_service_create() 83 service->ctx = ctx; in dal_gpio_service_create() 87 service->factory.number_of_pins[index_of_id]; in dal_gpio_service_create() 91 service->busyness[index_of_id] = in dal_gpio_service_create() 95 if (!service->busyness[index_of_id]) { in dal_gpio_service_create() 101 service->busyness[index_of_id][i] = 0; in dal_gpio_service_create() [all …]
|