| /kernel/linux/linux-5.10/drivers/pinctrl/qcom/ |
| D | pinctrl-ssbi-gpio.c | 1 // SPDX-License-Identifier: GPL-2.0-only 12 #include <linux/pinctrl/pinconf-generic.h> 20 #include <dt-bindings/pinctrl/qcom,pmic-gpio.h> 23 #include "../pinctrl-utils.h" 57 * struct pm8xxx_pin_data - dynamic configuration for a pin 61 * @mode: operating mode for the pin (input/output) 62 * @open_drain: output buffer configured as open-drain (vs push-pull) 67 * @output_strength: selector of output-strength 68 * @disable: pin disabled / configured as tristate 70 * @inverted: pin logic is inverted [all …]
|
| /kernel/linux/linux-6.6/drivers/pinctrl/qcom/ |
| D | pinctrl-ssbi-gpio.c | 1 // SPDX-License-Identifier: GPL-2.0-only 17 #include <linux/pinctrl/pinconf-generic.h> 22 #include <dt-bindings/pinctrl/qcom,pmic-gpio.h> 25 #include "../pinctrl-utils.h" 59 * struct pm8xxx_pin_data - dynamic configuration for a pin 63 * @mode: operating mode for the pin (input/output) 64 * @open_drain: output buffer configured as open-drain (vs push-pull) 69 * @output_strength: selector of output-strength 70 * @disable: pin disabled / configured as tristate 72 * @inverted: pin logic is inverted [all …]
|
| /kernel/linux/linux-5.10/drivers/net/dsa/mv88e6xxx/ |
| D | global2_scratch.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 45 * mv88e6xxx_g2_scratch_gpio_get_bit - get a bit 57 u8 val; in mv88e6xxx_g2_scratch_get_bit() local 60 err = mv88e6xxx_g2_scratch_read(chip, reg, &val); in mv88e6xxx_g2_scratch_get_bit() 64 *set = !!(mask & val); in mv88e6xxx_g2_scratch_get_bit() 70 * mv88e6xxx_g2_scratch_gpio_set_bit - set (or clear) a bit 84 u8 val; in mv88e6xxx_g2_scratch_set_bit() local 87 err = mv88e6xxx_g2_scratch_read(chip, reg, &val); in mv88e6xxx_g2_scratch_set_bit() 92 val |= mask; in mv88e6xxx_g2_scratch_set_bit() 94 val &= ~mask; in mv88e6xxx_g2_scratch_set_bit() [all …]
|
| /kernel/linux/linux-6.6/drivers/net/dsa/mv88e6xxx/ |
| D | global2_scratch.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 45 * mv88e6xxx_g2_scratch_get_bit - get a bit 57 u8 val; in mv88e6xxx_g2_scratch_get_bit() local 60 err = mv88e6xxx_g2_scratch_read(chip, reg, &val); in mv88e6xxx_g2_scratch_get_bit() 64 *set = !!(mask & val); in mv88e6xxx_g2_scratch_get_bit() 70 * mv88e6xxx_g2_scratch_set_bit - set (or clear) a bit 84 u8 val; in mv88e6xxx_g2_scratch_set_bit() local 87 err = mv88e6xxx_g2_scratch_read(chip, reg, &val); in mv88e6xxx_g2_scratch_set_bit() 92 val |= mask; in mv88e6xxx_g2_scratch_set_bit() 94 val &= ~mask; in mv88e6xxx_g2_scratch_set_bit() [all …]
|
| /kernel/linux/linux-6.6/drivers/gpio/ |
| D | gpio-zevio.c | 1 // SPDX-License-Identifier: GPL-2.0-only 5 * Author: Fabian Vogt <fabian@ritter-vogt.de> 26 …* http://hackspire.unsads.com/wiki/index.php/Memory-mapped_I/O_ports#90000000_-_General_Purpose_I.… 28 * 0x00-0x3F: Section 0 29 * +0x00: Masked interrupt status (read-only) 32 * +0x0C: W: Unmask interrupt (write-only) 35 * +0x18: Input (read-only) 37 * 0x40-0x7F: Section 1 38 * 0x80-0xBF: Section 2 39 * 0xC0-0xFF: Section 3 [all …]
|
| /kernel/linux/linux-5.10/drivers/gpio/ |
| D | gpio-zevio.c | 1 // SPDX-License-Identifier: GPL-2.0-only 5 * Author: Fabian Vogt <fabian@ritter-vogt.de> 24 …* http://hackspire.unsads.com/wiki/index.php/Memory-mapped_I/O_ports#90000000_-_General_Purpose_I.… 26 * 0x00-0x3F: Section 0 27 * +0x00: Masked interrupt status (read-only) 30 * +0x0C: W: Unmask interrupt (write-only) 33 * +0x18: Input (read-only) 35 * 0x40-0x7F: Section 1 36 * 0x80-0xBF: Section 2 37 * 0xC0-0xFF: Section 3 [all …]
|
| /kernel/linux/linux-6.6/drivers/pinctrl/sprd/ |
| D | pinctrl-sprd.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * Spreadtrum pin controller driver 4 * Copyright (C) 2017 Spreadtrum - http://www.spreadtrum.com 20 #include <linux/pinctrl/pinconf-generic.h> 28 #include "../pinctrl-utils.h" 29 #include "pinctrl-sprd.h" 99 * struct sprd_pin: represent one pin's description 100 * @name: pin name 101 * @number: pin number 102 * @type: pin type, can be GLOBAL_CTRL_PIN/COMMON_PIN/MISC_PIN [all …]
|
| /kernel/linux/linux-5.10/drivers/pinctrl/sprd/ |
| D | pinctrl-sprd.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * Spreadtrum pin controller driver 4 * Copyright (C) 2017 Spreadtrum - http://www.spreadtrum.com 18 #include <linux/pinctrl/pinconf-generic.h> 26 #include "../pinctrl-utils.h" 27 #include "pinctrl-sprd.h" 97 * struct sprd_pin: represent one pin's description 98 * @name: pin name 99 * @number: pin number 100 * @type: pin type, can be GLOBAL_CTRL_PIN/COMMON_PIN/MISC_PIN [all …]
|
| /kernel/linux/linux-6.6/drivers/pinctrl/pxa/ |
| D | pinctrl-pxa2xx.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * Marvell PXA2xx family pin control 15 #include <linux/pinctrl/pinconf-generic.h> 21 #include "../pinctrl-utils.h" 22 #include "pinctrl-pxa2xx.h" 28 return pctl->ngroups; in pxa2xx_pctrl_get_groups_count() 35 struct pxa_pinctrl_group *group = pctl->groups + tgroup; in pxa2xx_pctrl_get_group_name() 37 return group->name; in pxa2xx_pctrl_get_group_name() 46 struct pxa_pinctrl_group *group = pctl->groups + tgroup; in pxa2xx_pctrl_get_group_pins() 48 *pins = (unsigned *)&group->pin; in pxa2xx_pctrl_get_group_pins() [all …]
|
| /kernel/linux/linux-5.10/drivers/pinctrl/pxa/ |
| D | pinctrl-pxa2xx.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * Marvell PXA2xx family pin control 15 #include <linux/pinctrl/pinconf-generic.h> 21 #include "../pinctrl-utils.h" 22 #include "pinctrl-pxa2xx.h" 28 return pctl->ngroups; in pxa2xx_pctrl_get_groups_count() 35 struct pxa_pinctrl_group *group = pctl->groups + tgroup; in pxa2xx_pctrl_get_group_name() 37 return group->name; in pxa2xx_pctrl_get_group_name() 46 struct pxa_pinctrl_group *group = pctl->groups + tgroup; in pxa2xx_pctrl_get_group_pins() 48 *pins = (unsigned *)&group->pin; in pxa2xx_pctrl_get_group_pins() [all …]
|
| /kernel/linux/linux-6.6/drivers/usb/misc/ |
| D | brcmstb-usb-pinmap.c | 1 // SPDX-License-Identifier: GPL-2.0 44 u32 val; in pinmap_set() local 46 val = readl(reg); in pinmap_set() 47 val |= mask; in pinmap_set() 48 writel(val, reg); in pinmap_set() 53 u32 val; in pinmap_unset() local 55 val = readl(reg); in pinmap_unset() 56 val &= ~mask; in pinmap_unset() 57 writel(val, reg); in pinmap_unset() 60 static void sync_in_pin(struct in_pin *pin) in sync_in_pin() argument [all …]
|
| /kernel/linux/linux-6.6/drivers/gpu/drm/loongson/ |
| D | lsdc_i2c.c | 1 // SPDX-License-Identifier: GPL-2.0+ 12 * __lsdc_gpio_i2c_set - set the state of a gpio pin indicated by mask 13 * @mask: gpio pin mask 18 struct lsdc_device *ldev = to_lsdc(li2c->ddev); in __lsdc_gpio_i2c_set() 20 u8 val; in __lsdc_gpio_i2c_set() local 22 spin_lock_irqsave(&ldev->reglock, flags); in __lsdc_gpio_i2c_set() 26 * Setting this pin as input directly, write 1 for input. in __lsdc_gpio_i2c_set() 27 * The external pull-up resistor will pull the level up in __lsdc_gpio_i2c_set() 29 val = readb(li2c->dir_reg); in __lsdc_gpio_i2c_set() 30 val |= mask; in __lsdc_gpio_i2c_set() [all …]
|
| /kernel/linux/linux-6.6/drivers/pinctrl/visconti/ |
| D | pinctrl-common.c | 1 // SPDX-License-Identifier: GPL-2.0 15 #include <linux/pinctrl/pinconf-generic.h> 16 #include "pinctrl-common.h" 19 #include "../pinctrl-utils.h" 42 const struct visconti_desc_pin *pin = &priv->devdata->pins[_pin]; in visconti_pin_config_set() local 46 unsigned int val, set_val, pude_val; in visconti_pin_config_set() local 49 dev_dbg(priv->dev, "%s: pin = %d (%s)\n", __func__, _pin, pin->pin.name); in visconti_pin_config_set() 51 spin_lock_irqsave(&priv->lock, flags); in visconti_pin_config_set() 64 val = readl(priv->base + pin->pudsel_offset); in visconti_pin_config_set() 65 val &= ~BIT(pin->pud_shift); in visconti_pin_config_set() [all …]
|
| /kernel/linux/linux-6.6/drivers/pinctrl/ |
| D | pinctrl-keembay.c | 1 // SPDX-License-Identifier: GPL-2.0 12 #include <linux/pinctrl/pinconf-generic.h> 58 #define KEEMBAY_GPIO_REG_OFFSET(pin) ((pin) * 4) argument 61 * struct keembay_mux_desc - Mux properties of each GPIO pin 62 * @mode: Pin mode when operating in this function 63 * @name: Pin function name 83 * struct keembay_gpio_irq - Config of each GPIO Interrupt sources 84 * @source: Interrupt source number (0 - 7) 99 * struct keembay_pinctrl - Intel Keembay pinctrl structure 100 * @pctrl: Pointer to the pin controller device [all …]
|
| D | pinctrl-pistachio.c | 1 // SPDX-License-Identifier: GPL-2.0-only 15 #include <linux/pinctrl/pinconf-generic.h> 24 #include "pinctrl-utils.h" 27 #define PADS_SCHMITT_EN_REG(pin) (PADS_SCHMITT_EN0 + 0x4 * ((pin) / 32)) argument 28 #define PADS_SCHMITT_EN_BIT(pin) BIT((pin) % 32) argument 31 #define PADS_PU_PD_REG(pin) (PADS_PU_PD0 + 0x4 * ((pin) / 16)) argument 32 #define PADS_PU_PD_SHIFT(pin) (2 * ((pin) % 16)) argument 45 #define PADS_SLEW_RATE_REG(pin) (PADS_SLEW_RATE0 + 0x4 * ((pin) / 32)) argument 46 #define PADS_SLEW_RATE_BIT(pin) BIT((pin) % 32) argument 49 #define PADS_DRIVE_STRENGTH_REG(pin) \ argument [all …]
|
| D | pinctrl-max77620.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * MAX77620 pin control driver. 20 #include <linux/pinctrl/pinconf-generic.h> 26 #include "pinctrl-utils.h" 52 .property = "maxim,active-fps-source", 55 .property = "maxim,active-fps-power-up-slot", 58 .property = "maxim,active-fps-power-down-slot", 61 .property = "maxim,suspend-fps-source", 64 .property = "maxim,suspend-fps-power-up-slot", 67 .property = "maxim,suspend-fps-power-down-slot", [all …]
|
| /kernel/linux/linux-5.10/drivers/pinctrl/ |
| D | pinctrl-pistachio.c | 1 // SPDX-License-Identifier: GPL-2.0-only 16 #include <linux/pinctrl/pinconf-generic.h> 23 #include "pinctrl-utils.h" 26 #define PADS_SCHMITT_EN_REG(pin) (PADS_SCHMITT_EN0 + 0x4 * ((pin) / 32)) argument 27 #define PADS_SCHMITT_EN_BIT(pin) BIT((pin) % 32) argument 30 #define PADS_PU_PD_REG(pin) (PADS_PU_PD0 + 0x4 * ((pin) / 16)) argument 31 #define PADS_PU_PD_SHIFT(pin) (2 * ((pin) % 16)) argument 44 #define PADS_SLEW_RATE_REG(pin) (PADS_SLEW_RATE0 + 0x4 * ((pin) / 32)) argument 45 #define PADS_SLEW_RATE_BIT(pin) BIT((pin) % 32) argument 48 #define PADS_DRIVE_STRENGTH_REG(pin) \ argument [all …]
|
| D | pinctrl-max77620.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * MAX77620 pin control driver. 16 #include <linux/pinctrl/pinconf-generic.h> 24 #include "pinctrl-utils.h" 50 .property = "maxim,active-fps-source", 53 .property = "maxim,active-fps-power-up-slot", 56 .property = "maxim,active-fps-power-down-slot", 59 .property = "maxim,suspend-fps-source", 62 .property = "maxim,suspend-fps-power-up-slot", 65 .property = "maxim,suspend-fps-power-down-slot", [all …]
|
| /kernel/linux/linux-6.6/sound/pci/lola/ |
| D | lola_mixer.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 3 * Support for Digigram Lola PCI-e boards 18 static int lola_init_pin(struct lola *chip, struct lola_pin *pin, in lola_init_pin() argument 21 unsigned int val; in lola_init_pin() local 24 pin->nid = nid; in lola_init_pin() 25 err = lola_read_param(chip, nid, LOLA_PAR_AUDIO_WIDGET_CAP, &val); in lola_init_pin() 27 dev_err(chip->card->dev, "Can't read wcaps for 0x%x\n", nid); in lola_init_pin() 30 val &= 0x00f00fff; /* test TYPE and bits 0..11 */ in lola_init_pin() 31 if (val == 0x00400200) /* Type = 4, Digital = 1 */ in lola_init_pin() 32 pin->is_analog = false; in lola_init_pin() [all …]
|
| /kernel/linux/linux-5.10/sound/pci/lola/ |
| D | lola_mixer.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 3 * Support for Digigram Lola PCI-e boards 18 static int lola_init_pin(struct lola *chip, struct lola_pin *pin, in lola_init_pin() argument 21 unsigned int val; in lola_init_pin() local 24 pin->nid = nid; in lola_init_pin() 25 err = lola_read_param(chip, nid, LOLA_PAR_AUDIO_WIDGET_CAP, &val); in lola_init_pin() 27 dev_err(chip->card->dev, "Can't read wcaps for 0x%x\n", nid); in lola_init_pin() 30 val &= 0x00f00fff; /* test TYPE and bits 0..11 */ in lola_init_pin() 31 if (val == 0x00400200) /* Type = 4, Digital = 1 */ in lola_init_pin() 32 pin->is_analog = false; in lola_init_pin() [all …]
|
| /kernel/linux/linux-6.6/drivers/pinctrl/stm32/ |
| 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() 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() 167 bank->pin_backup[offset] &= ~(STM32_GPIO_BKP_MODE_MASK | in stm32_gpio_backup_mode() [all …]
|
| /kernel/linux/linux-5.10/drivers/pinctrl/visconti/ |
| D | pinctrl-common.c | 1 // SPDX-License-Identifier: GPL-2.0 15 #include <linux/pinctrl/pinconf-generic.h> 16 #include "pinctrl-common.h" 19 #include "../pinctrl-utils.h" 42 const struct visconti_desc_pin *pin = &priv->devdata->pins[_pin]; in visconti_pin_config_set() local 46 unsigned int val, set_val, pude_val; in visconti_pin_config_set() local 49 dev_dbg(priv->dev, "%s: pin = %d (%s)\n", __func__, _pin, pin->pin.name); in visconti_pin_config_set() 51 spin_lock_irqsave(&priv->lock, flags); in visconti_pin_config_set() 64 val = readl(priv->base + pin->pudsel_offset); in visconti_pin_config_set() 65 val &= ~BIT(pin->pud_shift); in visconti_pin_config_set() [all …]
|
| /kernel/linux/linux-5.10/drivers/gpu/drm/loongson/ |
| D | loongson_i2c.c | 1 // SPDX-License-Identifier: GPL-2.0+ 9 return readl(ldev->mmio + offset); in ls7a_mm_rreg() 12 void ls7a_mm_wreg(struct loongson_drm_device *ldev, u32 offset, u32 val) in ls7a_mm_wreg() argument 14 writel(val, ldev->mmio + offset); in ls7a_mm_wreg() 18 unsigned int pin, int input) in __dc_gpio_set_dir() argument 24 temp |= 1UL << pin; in __dc_gpio_set_dir() 26 temp &= ~(1UL << pin); in __dc_gpio_set_dir() 30 static void __dc_gpio_set_val(struct loongson_drm_device *ldev, unsigned int pin, in __dc_gpio_set_val() argument 37 temp |= 1UL << pin; in __dc_gpio_set_val() 39 temp &= ~(1UL << pin); in __dc_gpio_set_val() [all …]
|
| /kernel/linux/linux-5.10/drivers/pinctrl/sunxi/ |
| D | pinctrl-sunxi.c | 6 * Maxime Ripard <maxime.ripard@free-electrons.com> 28 #include <linux/pinctrl/pinconf-generic.h> 34 #include <dt-bindings/pinctrl/sun4i-a10.h> 37 #include "pinctrl-sunxi.h" 54 for (i = 0; i < pctl->ngroups; i++) { in sunxi_pinctrl_find_group_by_name() 55 struct sunxi_pinctrl_group *grp = pctl->groups + i; in sunxi_pinctrl_find_group_by_name() 57 if (!strcmp(grp->name, group)) in sunxi_pinctrl_find_group_by_name() 68 struct sunxi_pinctrl_function *func = pctl->functions; in sunxi_pinctrl_find_function_by_name() 71 for (i = 0; i < pctl->nfunctions; i++) { in sunxi_pinctrl_find_function_by_name() 89 for (i = 0; i < pctl->desc->npins; i++) { in sunxi_pinctrl_desc_find_function_by_name() [all …]
|
| /kernel/linux/linux-5.10/drivers/pinctrl/stm32/ |
| D | pinctrl-stm32.c | 1 // SPDX-License-Identifier: GPL-2.0 23 #include <linux/pinctrl/pinconf-generic.h> 33 #include "../pinctrl-utils.h" 34 #include "pinctrl-stm32.h" 47 /* custom bitfield to backup pin status */ 81 unsigned pin; member 145 return function - 1; in stm32_gpio_get_alt() 156 bank->pin_backup[offset] &= ~BIT(STM32_GPIO_BKP_VAL); in stm32_gpio_backup_value() 157 bank->pin_backup[offset] |= value << STM32_GPIO_BKP_VAL; in stm32_gpio_backup_value() 163 bank->pin_backup[offset] &= ~(STM32_GPIO_BKP_MODE_MASK | in stm32_gpio_backup_mode() [all …]
|