/openbmc/linux/arch/arm/boot/dts/samsung/ |
H A D | exynos5410-pinctrl.dtsi | 1 // SPDX-License-Identifier: GPL-2.0 3 * Exynos5410 SoC pin-mux and pin-config device tree source 9 #include "exynos-pinctrl.h" 12 gpa0: gpa0-gpio-bank { 13 gpio-controller; 14 #gpio-cells = <2>; 16 interrupt-controller; 17 #interrupt-cells = <2>; 20 gpa1: gpa1-gpio-bank { 21 gpio-controller; [all …]
|
H A D | exynos5250-pinctrl.dtsi | 1 // SPDX-License-Identifier: GPL-2.0 3 * Samsung's Exynos5250 SoC pin-mux and pin-config device tree source 8 * Samsung's Exynos5250 SoC pin-mux and pin-config options are listed as device 12 #include "exynos-pinctrl.h" 15 gpa0: gpa0-gpio-bank { 16 gpio-controller; 17 #gpio-cells = <2>; 19 interrupt-controller; 20 #interrupt-cells = <2>; 23 gpa1: gpa1-gpio-bank { [all …]
|
H A D | exynos5420-pinctrl.dtsi | 1 // SPDX-License-Identifier: GPL-2.0 3 * Samsung's Exynos5420 SoC pin-mux and pin-config device tree source 8 * Samsung's Exynos5420 SoC pin-mux and pin-config options are listed as device 12 #include "exynos-pinctrl.h" 15 gpy7: gpy7-gpio-bank { 16 gpio-controller; 17 #gpio-cells = <2>; 19 interrupt-controller; 20 #interrupt-cells = <2>; 23 gpx0: gpx0-gpio-bank { [all …]
|
H A D | exynos5260-pinctrl.dtsi | 1 // SPDX-License-Identifier: GPL-2.0 3 * Samsung's Exynos5260 SoC pin-mux and pin-config device tree source 8 * Samsung's Exynos5260 SoC pin-mux and pin-config options are listed as device 12 #include "exynos-pinctrl.h" 15 gpa0: gpa0-gpio-bank { 16 gpio-controller; 17 #gpio-cells = <2>; 19 interrupt-controller; 20 #interrupt-cells = <2>; 23 gpa1: gpa1-gpio-bank { [all …]
|
H A D | exynos4x12-pinctrl.dtsi | 1 // SPDX-License-Identifier: GPL-2.0 3 * Samsung's Exynos4x12 SoCs pin-mux and pin-config device tree source 8 * Samsung's Exynos4x12 SoCs pin-mux and pin-config options are listed as device 12 #include "exynos-pinctrl.h" 15 pin- ## _pin { \ 17 samsung,pin-con-pdn = <EXYNOS_PIN_PDN_ ##_mode>; \ 18 samsung,pin-pud-pdn = <EXYNOS_PIN_PULL_ ##_pull>; \ 22 gpa0: gpa0-gpio-bank { 23 gpio-controller; 24 #gpio-cells = <2>; [all …]
|
H A D | exynos4210-pinctrl.dtsi | 1 // SPDX-License-Identifier: GPL-2.0 3 * Samsung's Exynos4210 SoC pin-mux and pin-config device tree source 5 * Copyright (c) 2011-2012 Samsung Electronics Co., Ltd. 7 * Copyright (c) 2011-2012 Linaro Ltd. 10 * Samsung's Exynos4210 SoC pin-mux and pin-config options are listed as device 14 #include "exynos-pinctrl.h" 17 gpa0: gpa0-gpio-bank { 18 gpio-controller; 19 #gpio-cells = <2>; 21 interrupt-controller; [all …]
|
H A D | exynos3250-pinctrl.dtsi | 1 // SPDX-License-Identifier: GPL-2.0 3 * Samsung's Exynos3250 SoCs pin-mux and pin-config device tree source 8 * Samsung's Exynos3250 SoCs pin-mux and pin-config options are listed as device 12 #include "exynos-pinctrl.h" 15 pin- ## _pin { \ 17 samsung,pin-function = <EXYNOS_PIN_FUNC_INPUT>; \ 18 samsung,pin-pud = <EXYNOS_PIN_PULL_ ##_pull>; \ 19 samsung,pin-drv = <EXYNOS4_PIN_DRV_ ##_drv>; \ 23 pin- ## _pin { \ 25 samsung,pin-con-pdn = <EXYNOS_PIN_PDN_ ##_mode>; \ [all …]
|
H A D | s5pv210-pinctrl.dtsi | 1 // SPDX-License-Identifier: GPL-2.0 3 * Samsung's S5PV210 SoC device tree source - pin control-related 6 * Copyright (c) 2013-2014 Samsung Electronics, Co. Ltd. 11 * Samsung's S5PV210 SoC pin banks, pin-mux and pin-config options are 15 #include "s5pv210-pinctrl.h" 18 pin- ## _pin { \ 20 samsung,pin-con-pdn = <S5PV210_PIN_PDN_ ##_mode>; \ 21 samsung,pin-pud-pdn = <S5PV210_PIN_PULL_ ##_pull>; \ 25 gpa0: gpa0-gpio-bank { 26 gpio-controller; [all …]
|
/openbmc/u-boot/drivers/pinctrl/rockchip/ |
H A D | pinctrl-rockchip-core.c | 1 // SPDX-License-Identifier: GPL-2.0+ 13 #include "pinctrl-rockchip.h" 19 static int rockchip_verify_config(struct udevice *dev, u32 bank, u32 pin) in rockchip_verify_config() argument 22 struct rockchip_pin_ctrl *ctrl = priv->ctrl; in rockchip_verify_config() 24 if (bank >= ctrl->nr_banks) { in rockchip_verify_config() 25 debug("pin conf bank %d >= nbanks %d\n", bank, ctrl->nr_banks); in rockchip_verify_config() 26 return -EINVAL; in rockchip_verify_config() 29 if (pin >= MAX_ROCKCHIP_GPIO_PER_BANK) { in rockchip_verify_config() 30 debug("pin conf pin %d >= %d\n", pin, in rockchip_verify_config() 32 return -EINVAL; in rockchip_verify_config() [all …]
|
/openbmc/linux/arch/arm64/boot/dts/tesla/ |
H A D | fsd-pinctrl.dtsi | 1 // SPDX-License-Identifier: GPL-2.0 3 * Tesla Full Self-Driving SoC device tree source 5 * Copyright (c) 2017-2021 Samsung Electronics Co., Ltd. 7 * Copyright (c) 2017-2021 Tesla, Inc. 11 #include "fsd-pinctrl.h" 14 gpf0: gpf0-gpio-bank { 15 gpio-controller; 16 #gpio-cells = <2>; 18 interrupt-controller; 19 #interrupt-cells = <2>; [all …]
|
/openbmc/linux/drivers/pinctrl/samsung/ |
H A D | pinctrl-samsung.h | 1 /* SPDX-License-Identifier: GPL-2.0+ */ 3 * pin-controller/pin-mux/pin-config/gpio-driver for Samsung's SoC's. 25 * enum pincfg_type - possible pin configuration types supported. 27 * @PINCFG_TYPE_DAT: Pin value configuration. 30 * @PINCFG_TYPE_CON_PDN: Pin function in power down mode. 45 * pin configuration (pull up/down and drive strength) type and its value are 46 * packed together into a 16-bits. The upper 8-bits represent the configuration 47 * type and the lower 8-bits hold the value of the configuration type. 57 * Values for the pin CON register, choosing pin function. 65 * enum eint_type - possible external interrupt types. [all …]
|
H A D | pinctrl-samsung.c | 1 // SPDX-License-Identifier: GPL-2.0+ 3 // pin-controller/pin-mux/pin-config/gpio-driver for Samsung's SoC's. 31 #include "pinctrl-samsung.h" 41 { "samsung,pin-pud", PINCFG_TYPE_PUD }, 42 { "samsung,pin-drv", PINCFG_TYPE_DRV }, 43 { "samsung,pin-con-pdn", PINCFG_TYPE_CON_PDN }, 44 { "samsung,pin-pud-pdn", PINCFG_TYPE_PUD_PDN }, 45 { "samsung,pin-val", PINCFG_TYPE_DAT }, 54 return pmx->nr_groups; in samsung_get_group_count() 62 return pmx->pin_groups[group].name; in samsung_get_group_name() [all …]
|
/openbmc/linux/drivers/pinctrl/stm32/ |
H A D | pinctrl-stm32.c | 1 // SPDX-License-Identifier: GPL-2.0 28 #include <linux/pinctrl/pinconf-generic.h> 35 #include "../pinctrl-utils.h" 36 #include "pinctrl-stm32.h" 50 /* custom bitfield to backup pin status */ 84 unsigned pin; member 149 return function - 1; in stm32_gpio_get_alt() 157 static void stm32_gpio_backup_value(struct stm32_gpio_bank *bank, in stm32_gpio_backup_value() argument 160 bank->pin_backup[offset] &= ~BIT(STM32_GPIO_BKP_VAL); in stm32_gpio_backup_value() 161 bank->pin_backup[offset] |= value << STM32_GPIO_BKP_VAL; in stm32_gpio_backup_value() [all …]
|
/openbmc/linux/drivers/pinctrl/renesas/ |
H A D | sh_pfc.h | 1 /* SPDX-License-Identifier: GPL-2.0 3 * SuperH Pin Function Controller Support 12 #include <linux/pinctrl/pinconf-generic.h> 45 u16 pin; member 59 * Define a pin group referring to a subset of an array of pins. 71 * Define a pin group for the data pins of a resizable bus. 119 * - name: Register name (unused, for documentation purposes only) 120 * - r: Physical register address 121 * - r_width: Width of the register (in bits) 122 * - f_width: Width of the fixed-width register fields (in bits) [all …]
|
/openbmc/linux/arch/arm64/boot/dts/exynos/ |
H A D | exynos7-pinctrl.dtsi | 1 // SPDX-License-Identifier: GPL-2.0 3 * Samsung's Exynos7 SoC pin-mux and pin-config device tree source 8 * Samsung's Exynos7 SoC pin-mux and pin-config options are listed as 12 #include "exynos-pinctrl.h" 15 gpa0: gpa0-gpio-bank { 16 gpio-controller; 17 #gpio-cells = <2>; 19 interrupt-controller; 20 interrupt-parent = <&gic>; 21 #interrupt-cells = <2>; [all …]
|
H A D | exynos5433-pinctrl.dtsi | 1 // SPDX-License-Identifier: GPL-2.0 3 * Samsung's Exynos5433 SoC pin-mux and pin-config device tree source 8 * Samsung's Exynos5433 SoC pin-mux and pin-config options are listed as device 12 #include "exynos-pinctrl.h" 14 #define PIN(_pin, _func, _pull, _drv) \ macro 15 pin- ## _pin { \ 17 samsung,pin-function = <EXYNOS_PIN_FUNC_ ##_func>; \ 18 samsung,pin-pud = <EXYNOS_PIN_PULL_ ##_pull>; \ 19 samsung,pin-drv = <EXYNOS5433_PIN_DRV_ ##_drv>; \ 23 PIN(_pin, INPUT, _pull, _drv) [all …]
|
H A D | exynos850-pinctrl.dtsi | 1 // SPDX-License-Identifier: GPL-2.0 3 * Samsung's Exynos850 SoC pin-mux and pin-config device tree source 8 * Samsung's Exynos850 SoC pin-mux and pin-config options are listed as device 12 #include <dt-bindings/interrupt-controller/arm-gic.h> 13 #include "exynos-pinctrl.h" 16 gpa0: gpa0-gpio-bank { 17 gpio-controller; 18 #gpio-cells = <2>; 20 interrupt-controller; 21 #interrupt-cells = <2>; [all …]
|
/openbmc/linux/Documentation/devicetree/bindings/pinctrl/ |
H A D | pinctrl-st.txt | 1 *ST pin controller. 3 Each multi-function pin is controlled, driven and routed through the 4 PIO multiplexing block. Each pin supports GPIO functionality (ALT0) 5 and multiple alternate functions(ALT1 - ALTx) that directly connect 6 the pin to different hardware blocks. 8 When a pin is in GPIO mode, Output Enable (OE), Open Drain(OD), and 12 gpio driver to configure a pin. 14 GPIO bank can have one of the two possible types of interrupt-wirings. 20 | |----> [gpio-bank (n) ] 21 | |----> [gpio-bank (n + 1)] [all …]
|
H A D | samsung,pinctrl.yaml | 1 # SPDX-License-Identifier: GPL-2.0-only 3 --- 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: Samsung S3C/S5P/Exynos SoC pin controller 10 - Krzysztof Kozlowski <krzk@kernel.org> 11 - Sylwester Nawrocki <s.nawrocki@samsung.com> 12 - Tomasz Figa <tomasz.figa@gmail.com> 15 This is a part of device tree bindings for Samsung S3C/S5P/Exynos SoC pin 18 All the pin controller nodes should be represented in the aliases node using 22 - External GPIO interrupts (see interrupts property in pin controller node); [all …]
|
/openbmc/u-boot/drivers/gpio/ |
H A D | xilinx_gpio.c | 1 // SPDX-License-Identifier: GPL-2.0+ 3 * Copyright (c) 2013 - 2018 Xilinx, Michal Simek 13 #include <dt-bindings/gpio/gpio.h> 39 u32 bank, max_pins; in xilinx_gpio_get_bank_pin() local 43 for (bank = 0; bank < XILINX_GPIO_MAX_BANK; bank++) { in xilinx_gpio_get_bank_pin() 44 max_pins = platdata->bank_max[bank]; in xilinx_gpio_get_bank_pin() 46 debug("%s: found at bank 0x%x pin 0x%x\n", __func__, in xilinx_gpio_get_bank_pin() 47 bank, pin_num); in xilinx_gpio_get_bank_pin() 48 *bank_num = bank; in xilinx_gpio_get_bank_pin() 52 pin_num -= max_pins; in xilinx_gpio_get_bank_pin() [all …]
|
/openbmc/linux/drivers/pinctrl/meson/ |
H A D | pinctrl-meson.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * Pin controller and GPIO driver for Amlogic Meson SoCs 11 * X,Y,DV,H,AO,BOOT,CARD,DIF for meson8b) and each bank has a 14 * The AO bank is special because it belongs to the Always-On power 15 * domain which can't be powered off; the bank also uses a set of 18 * For each pin controller there are 4 different register ranges that 20 * 1) pin muxing 31 * For the pull and GPIO configuration every bank uses a contiguous 46 #include <linux/pinctrl/pinconf-generic.h> 56 #include "../pinctrl-utils.h" [all …]
|
/openbmc/linux/drivers/pinctrl/ |
H A D | pinctrl-st.c | 1 // SPDX-License-Identifier: GPL-2.0-only 64 * There are two registers cfg0 and cfg1 in this style for each bank. 65 * Each field in this register is 8 bit corresponding to 8 pins in the bank. 78 * each register is dedicated per pin. 100 * (direction, retime-type, retime-clk, retime-delay) 102 * +----------------+ 103 *[31:28]| reserved-3 | 104 * +----------------+------------- 106 * +----------------+ v 108 * +----------------+ ^ [all …]
|
H A D | pinctrl-at91-pio4.c | 1 // SPDX-License-Identifier: GPL-2.0-only 9 #include <dt-bindings/pinctrl/at91.h> 21 #include <linux/pinctrl/pinconf-generic.h> 28 #include "pinctrl-utils.h" 34 * designed the pin id into this bank. 80 * struct atmel_pioctrl_data - Atmel PIO controller (pinmux + gpio) data struct 82 * @last_bank_count: number of lines in the last bank (can be less than 94 u32 pin; member 101 unsigned int bank; member 107 * struct atmel_pioctrl - Atmel PIO controller (pinmux + gpio) [all …]
|
/openbmc/u-boot/drivers/pinctrl/ |
H A D | pinctrl-sti.c | 1 // SPDX-License-Identifier: GPL-2.0+ 5 * Copyright (C) 2017, STMicroelectronics - All Rights Reserved 28 /* User-frendly defines for Pin Direction */ 47 unsigned char bank; member 48 unsigned char pin; member 60 int alt = pin_desc->alt; in sti_alternate_select() 61 int bank = pin_desc->bank; in sti_alternate_select() local 62 int pin = pin_desc->pin; in sti_alternate_select() local 64 sysconfreg = (unsigned long *)plat->regmap->ranges[0].start; in sti_alternate_select() 66 switch (bank) { in sti_alternate_select() [all …]
|
/openbmc/u-boot/drivers/pinctrl/renesas/ |
H A D | sh_pfc.h | 2 * SuperH Pin Function Controller Support 33 u16 pin; member 57 * VIN_DATA_PIN_GROUP() is a macro used to describe the VIN pin groups 105 * - name: Register name (unused, for documentation purposes only) 106 * - r: Physical register address 107 * - r_width: Width of the register (in bits) 108 * - f_width: Width of the fixed-width register fields (in bits) 119 * - name: Register name (unused, for documentation purposes only) 120 * - r: Physical register address 121 * - r_width: Width of the register (in bits) [all …]
|