| /linux/drivers/pinctrl/qcom/ |
| H A D | pinctrl-msm.c | 64 struct pinctrl_dev *pctrl; member 86 static u32 msm_readl_##name(struct msm_pinctrl *pctrl, \ 89 return readl(pctrl->regs[g->tile] + g->name##_reg); \ 91 static void msm_writel_##name(u32 val, struct msm_pinctrl *pctrl, \ 94 writel(val, pctrl->regs[g->tile] + g->name##_reg); \ 103 static void msm_ack_intr_status(struct msm_pinctrl *pctrl, in MSM_ACCESSOR() 108 msm_writel_intr_status(val, pctrl, g); in MSM_ACCESSOR() 113 struct msm_pinctrl *pctrl = pinctrl_dev_get_drvdata(pctldev); in msm_get_groups_count() local 115 return pctrl->soc->ngroups; in msm_get_groups_count() 121 struct msm_pinctrl *pctrl = pinctrl_dev_get_drvdata(pctldev); in msm_get_group_name() local [all …]
|
| H A D | pinctrl-ssbi-gpio.c | 92 struct pinctrl_dev *pctrl; member 128 static int pm8xxx_read_bank(struct pm8xxx_gpio *pctrl, in pm8xxx_read_bank() argument 134 ret = regmap_write(pctrl->regmap, pin->reg, val); in pm8xxx_read_bank() 136 dev_err(pctrl->dev, "failed to select bank %d\n", bank); in pm8xxx_read_bank() 140 ret = regmap_read(pctrl->regmap, pin->reg, &val); in pm8xxx_read_bank() 142 dev_err(pctrl->dev, "failed to read register %d\n", bank); in pm8xxx_read_bank() 149 static int pm8xxx_write_bank(struct pm8xxx_gpio *pctrl, in pm8xxx_write_bank() argument 159 ret = regmap_write(pctrl->regmap, pin->reg, val); in pm8xxx_write_bank() 161 dev_err(pctrl->dev, "failed to write register\n"); in pm8xxx_write_bank() 168 struct pm8xxx_gpio *pctrl = pinctrl_dev_get_drvdata(pctldev); in pm8xxx_get_groups_count() local [all …]
|
| H A D | pinctrl-lpass-lpi.c | 79 struct lpi_pinctrl *pctrl = pinctrl_dev_get_drvdata(pctldev); in lpi_gpio_get_functions_count() local 81 return pctrl->data->nfunctions; in lpi_gpio_get_functions_count() 87 struct lpi_pinctrl *pctrl = pinctrl_dev_get_drvdata(pctldev); in lpi_gpio_get_function_name() local 89 return pctrl->data->functions[function].name; in lpi_gpio_get_function_name() 97 struct lpi_pinctrl *pctrl = pinctrl_dev_get_drvdata(pctldev); in lpi_gpio_get_function_groups() local 99 *groups = pctrl->data->functions[function].groups; in lpi_gpio_get_function_groups() 100 *num_qgroups = pctrl->data->functions[function].ngroups; in lpi_gpio_get_function_groups() 108 struct lpi_pinctrl *pctrl = pinctrl_dev_get_drvdata(pctldev); in lpi_gpio_set_mux() local 109 const struct lpi_pingroup *g = &pctrl->data->groups[group]; in lpi_gpio_set_mux() 121 mutex_lock(&pctrl->lock); in lpi_gpio_set_mux() [all …]
|
| H A D | pinctrl-ssbi-mpp.c | 128 struct pinctrl_dev *pctrl; member 167 static int pm8xxx_mpp_update(struct pm8xxx_mpp *pctrl, in pm8xxx_mpp_update() argument 236 ret = regmap_write(pctrl->regmap, pin->reg, val); in pm8xxx_mpp_update() 238 dev_err(pctrl->dev, "failed to write register\n"); in pm8xxx_mpp_update() 245 struct pm8xxx_mpp *pctrl = pinctrl_dev_get_drvdata(pctldev); in pm8xxx_get_groups_count() local 247 return pctrl->npins; in pm8xxx_get_groups_count() 262 struct pm8xxx_mpp *pctrl = pinctrl_dev_get_drvdata(pctldev); in pm8xxx_get_group_pins() local 264 *pins = &pctrl->desc.pins[group].number; in pm8xxx_get_group_pins() 294 struct pm8xxx_mpp *pctrl = pinctrl_dev_get_drvdata(pctldev); in pm8xxx_get_function_groups() local 297 *num_groups = pctrl->npins; in pm8xxx_get_function_groups() [all …]
|
| /linux/drivers/pinctrl/actions/ |
| H A D | pinctrl-owl.c | 69 static u32 owl_read_field(struct owl_pinctrl *pctrl, u32 reg, in owl_read_field() argument 74 tmp = readl_relaxed(pctrl->base + reg); in owl_read_field() 80 static void owl_write_field(struct owl_pinctrl *pctrl, u32 reg, u32 arg, in owl_write_field() argument 88 owl_update_bits(pctrl->base + reg, mask, (arg << bit)); in owl_write_field() 93 struct owl_pinctrl *pctrl = pinctrl_dev_get_drvdata(pctrldev); in owl_get_groups_count() local 95 return pctrl->soc->ngroups; in owl_get_groups_count() 101 struct owl_pinctrl *pctrl = pinctrl_dev_get_drvdata(pctrldev); in owl_get_group_name() local 103 return pctrl->soc->groups[group].name; in owl_get_group_name() 111 struct owl_pinctrl *pctrl = pinctrl_dev_get_drvdata(pctrldev); in owl_get_group_pins() local 113 *pins = pctrl->soc->groups[group].pads; in owl_get_group_pins() [all …]
|
| /linux/drivers/pinctrl/intel/ |
| H A D | pinctrl-intel.c | 130 #define for_each_intel_pin_community(pctrl, community) \ argument 132 __ci < pctrl->ncommunities && (community = &pctrl->communities[__ci]); \ 140 #define for_each_intel_pad_group(pctrl, community, grp) \ argument 141 for_each_intel_pin_community(pctrl, community) \ 144 #define for_each_intel_gpio_group(pctrl, community, grp) \ argument 145 for_each_intel_pad_group(pctrl, community, grp) \ 148 const struct intel_community *intel_get_community(const struct intel_pinctrl *pctrl, in intel_get_community() argument 153 for_each_intel_pin_community(pctrl, community) { in intel_get_community() 159 dev_warn(pctrl->dev, "failed to find community for pin %u\n", pin); in intel_get_community() 178 static void __iomem *intel_get_padcfg(struct intel_pinctrl *pctrl, in intel_get_padcfg() argument [all …]
|
| H A D | pinctrl-cherryview.c | 566 static u32 chv_pctrl_readl(struct intel_pinctrl *pctrl, unsigned int offset) in chv_pctrl_readl() argument 568 const struct intel_community *community = &pctrl->communities[0]; in chv_pctrl_readl() 573 static void chv_pctrl_writel(struct intel_pinctrl *pctrl, unsigned int offset, u32 value) in chv_pctrl_writel() argument 575 const struct intel_community *community = &pctrl->communities[0]; in chv_pctrl_writel() 583 static void __iomem *chv_padreg(struct intel_pinctrl *pctrl, unsigned int offset, in chv_padreg() argument 586 const struct intel_community *community = &pctrl->communities[0]; in chv_padreg() 595 static u32 chv_readl(struct intel_pinctrl *pctrl, unsigned int pin, unsigned int offset) in chv_readl() argument 597 return readl(chv_padreg(pctrl, pin, offset)); in chv_readl() 600 static void chv_writel(struct intel_pinctrl *pctrl, unsigned int pin, unsigned int offset, u32 valu… in chv_writel() argument 602 void __iomem *reg = chv_padreg(pctrl, pin, offset); in chv_writel() [all …]
|
| /linux/drivers/pinctrl/sophgo/ |
| H A D | pinctrl-sophgo-common.c | 42 const struct sophgo_pin *sophgo_get_pin(struct sophgo_pinctrl *pctrl, in sophgo_get_pin() argument 45 return bsearch((void *)pin_id, pctrl->data->pindata, pctrl->data->npins, in sophgo_get_pin() 46 pctrl->data->pinsize, sophgo_cmp_pin); in sophgo_get_pin() 49 static int sophgo_verify_pinmux_config(struct sophgo_pinctrl *pctrl, in sophgo_verify_pinmux_config() argument 52 if (pctrl->data->cfg_ops->verify_pinmux_config) in sophgo_verify_pinmux_config() 53 return pctrl->data->cfg_ops->verify_pinmux_config(config); in sophgo_verify_pinmux_config() 57 static int sophgo_verify_pin_group(struct sophgo_pinctrl *pctrl, in sophgo_verify_pin_group() argument 61 if (pctrl->data->cfg_ops->verify_pin_group) in sophgo_verify_pin_group() 62 return pctrl->data->cfg_ops->verify_pin_group(config, npins); in sophgo_verify_pin_group() 67 struct sophgo_pinctrl *pctrl, in sophgo_dt_node_to_map_post() argument [all …]
|
| H A D | pinctrl-cv18xx.c | 44 #define cv1800_pinctrl_get_component_addr(pctrl, _comp) \ argument 45 ((pctrl)->regs[(_comp)->area] + (_comp)->offset) 47 static int cv1800_set_power_cfg(struct sophgo_pinctrl *pctrl, in cv1800_set_power_cfg() argument 50 struct cv1800_priv *priv = pctrl->priv_ctrl; in cv1800_set_power_cfg() 52 if (domain >= pctrl->data->npds) in cv1800_set_power_cfg() 63 static int cv1800_get_power_cfg(struct sophgo_pinctrl *pctrl, in cv1800_get_power_cfg() argument 66 struct cv1800_priv *priv = pctrl->priv_ctrl; in cv1800_get_power_cfg() 81 static const char *cv1800_get_power_cfg_desc(struct sophgo_pinctrl *pctrl, in cv1800_get_power_cfg_desc() argument 84 return pctrl->data->pdnames[domain]; in cv1800_get_power_cfg_desc() 90 struct sophgo_pinctrl *pctrl = pinctrl_dev_get_drvdata(pctldev); in cv1800_pctrl_dbg_show() local [all …]
|
| H A D | pinctrl-sg2042-ops.c | 52 static inline u32 sg2042_get_pin_reg(struct sophgo_pinctrl *pctrl, in sg2042_get_pin_reg() argument 55 struct sg2042_priv *priv = pctrl->priv_ctrl; in sg2042_get_pin_reg() 65 static int sg2042_set_pin_reg(struct sophgo_pinctrl *pctrl, in sg2042_set_pin_reg() argument 69 struct sg2042_priv *priv = pctrl->priv_ctrl; in sg2042_set_pin_reg() 90 struct sophgo_pinctrl *pctrl = pinctrl_dev_get_drvdata(pctldev); in sg2042_pctrl_dbg_show() local 91 const struct sophgo_pin *sp = sophgo_get_pin(pctrl, pin_id); in sg2042_pctrl_dbg_show() 94 value = sg2042_get_pin_reg(pctrl, sp); in sg2042_pctrl_dbg_show() 109 static void sg2042_set_pinmux_config(struct sophgo_pinctrl *pctrl, in sg2042_set_pinmux_config() argument 115 sg2042_set_pin_reg(pctrl, sp, mux, PIN_IO_MUX); in sg2042_set_pinmux_config() 130 struct sophgo_pinctrl *pctrl = pinctrl_dev_get_drvdata(pctldev); in sg2042_pconf_get() local [all …]
|
| H A D | pinctrl-sophgo.h | 42 struct sophgo_pinctrl *pctrl); 47 struct sophgo_pinctrl *pctrl, 50 int (*compute_pinconf_config)(struct sophgo_pinctrl *pctrl, 55 int (*set_pinconf_config)(struct sophgo_pinctrl *pctrl, 58 void (*set_pinmux_config)(struct sophgo_pinctrl *pctrl, 106 const struct sophgo_pin *sophgo_get_pin(struct sophgo_pinctrl *pctrl, 116 u32 sophgo_pinctrl_typical_pull_down(struct sophgo_pinctrl *pctrl, 119 u32 sophgo_pinctrl_typical_pull_up(struct sophgo_pinctrl *pctrl, 122 int sophgo_pinctrl_oc2reg(struct sophgo_pinctrl *pctrl, 125 int sophgo_pinctrl_reg2oc(struct sophgo_pinctrl *pctrl, [all …]
|
| /linux/drivers/pinctrl/berlin/ |
| H A D | berlin.c | 37 struct berlin_pinctrl *pctrl = pinctrl_dev_get_drvdata(pctrl_dev); in berlin_pinctrl_get_group_count() local 39 return pctrl->desc->ngroups; in berlin_pinctrl_get_group_count() 45 struct berlin_pinctrl *pctrl = pinctrl_dev_get_drvdata(pctrl_dev); in berlin_pinctrl_get_group_name() local 47 return pctrl->desc->groups[group].name; in berlin_pinctrl_get_group_name() 55 struct berlin_pinctrl *pctrl = pinctrl_dev_get_drvdata(pctrl_dev); in berlin_pinctrl_dt_node_to_map() local 66 dev_err(pctrl->dev, in berlin_pinctrl_dt_node_to_map() 73 dev_err(pctrl->dev, in berlin_pinctrl_dt_node_to_map() 81 dev_err(pctrl->dev, "can't reserve map: %d\n", ret); in berlin_pinctrl_dt_node_to_map() 90 dev_err(pctrl->dev, "can't add map: %d\n", ret); in berlin_pinctrl_dt_node_to_map() 107 struct berlin_pinctrl *pctrl = pinctrl_dev_get_drvdata(pctrl_dev); in berlin_pinmux_get_functions_count() local [all …]
|
| /linux/drivers/pinctrl/ |
| H A D | pinctrl-amdisp.c | 47 struct pinctrl_dev *pctrl; member 58 struct amdisp_pinctrl *pctrl = pinctrl_dev_get_drvdata(pctldev); in amdisp_get_groups_count() local 60 return pctrl->data->ngroups; in amdisp_get_groups_count() 66 struct amdisp_pinctrl *pctrl = pinctrl_dev_get_drvdata(pctldev); in amdisp_get_group_name() local 68 return pctrl->data->groups[group].name; in amdisp_get_group_name() 76 struct amdisp_pinctrl *pctrl = pinctrl_dev_get_drvdata(pctldev); in amdisp_get_group_pins() local 78 *pins = pctrl->data->groups[group].pins; in amdisp_get_group_pins() 79 *num_pins = pctrl->data->groups[group].npins; in amdisp_get_group_pins() 111 struct amdisp_pinctrl *pctrl = gpiochip_get_data(gc); in amdisp_gpio_get() local 113 raw_spin_lock_irqsave(&pctrl->lock, flags); in amdisp_gpio_get() [all …]
|
| H A D | pinctrl-eyeq5.c | 201 static void eq5p_update_bits(const struct eq5p_pinctrl *pctrl, in eq5p_update_bits() argument 205 void __iomem *ptr = pctrl->base + eq5p_regs[bank][reg]; in eq5p_update_bits() 210 static bool eq5p_test_bit(const struct eq5p_pinctrl *pctrl, in eq5p_test_bit() argument 213 u32 val = readl(pctrl->base + eq5p_regs[bank][reg]); in eq5p_test_bit() 262 struct eq5p_pinctrl *pctrl = pinctrl_dev_get_drvdata(pctldev); in eq5p_pinconf_get() local 268 pd = eq5p_test_bit(pctrl, bank, EQ5P_PD, offset); in eq5p_pinconf_get() 269 pu = eq5p_test_bit(pctrl, bank, EQ5P_PU, offset); in eq5p_pinconf_get() 284 val_ds = readl(pctrl->base + eq5p_regs[bank][EQ5P_DS_HIGH]); in eq5p_pinconf_get() 287 val_ds = readl(pctrl->base + eq5p_regs[bank][EQ5P_DS_LOW]); in eq5p_pinconf_get() 303 struct eq5p_pinctrl *pctrl = pinctrl_dev_get_drvdata(pctldev); in eq5p_pinctrl_pin_dbg_show() local [all …]
|
| H A D | pinctrl-loongson2.c | 204 struct loongson2_pinctrl *pctrl = pinctrl_dev_get_drvdata(pcdev); in loongson2_pmx_set_mux() local 205 void __iomem *reg = pctrl->reg_base + in loongson2_pmx_set_mux() 211 spin_lock_irqsave(&pctrl->lock, flags); in loongson2_pmx_set_mux() 218 spin_unlock_irqrestore(&pctrl->lock, flags); in loongson2_pmx_set_mux() 255 struct loongson2_pinctrl *pctrl; in loongson2_pinctrl_probe() local 257 pctrl = devm_kzalloc(dev, sizeof(*pctrl), GFP_KERNEL); in loongson2_pinctrl_probe() 258 if (!pctrl) in loongson2_pinctrl_probe() 261 pctrl->reg_base = devm_platform_ioremap_resource(pdev, 0); in loongson2_pinctrl_probe() 262 if (IS_ERR(pctrl->reg_base)) in loongson2_pinctrl_probe() 263 return PTR_ERR(pctrl->reg_base); in loongson2_pinctrl_probe() [all …]
|
| H A D | pinctrl-zynq.c | 42 struct pinctrl_dev *pctrl; member 827 struct zynq_pinctrl *pctrl = pinctrl_dev_get_drvdata(pctldev); in zynq_pctrl_get_groups_count() local 829 return pctrl->ngroups; in zynq_pctrl_get_groups_count() 835 struct zynq_pinctrl *pctrl = pinctrl_dev_get_drvdata(pctldev); in zynq_pctrl_get_group_name() local 837 return pctrl->groups[selector].name; in zynq_pctrl_get_group_name() 845 struct zynq_pinctrl *pctrl = pinctrl_dev_get_drvdata(pctldev); in zynq_pctrl_get_group_pins() local 847 *pins = pctrl->groups[selector].pins; in zynq_pctrl_get_group_pins() 848 *num_pins = pctrl->groups[selector].npins; in zynq_pctrl_get_group_pins() 864 struct zynq_pinctrl *pctrl = pinctrl_dev_get_drvdata(pctldev); in zynq_pmux_get_functions_count() local 866 return pctrl->nfuncs; in zynq_pmux_get_functions_count() [all …]
|
| H A D | pinctrl-zynqmp.c | 82 struct pinctrl_dev *pctrl; member 106 struct zynqmp_pinctrl *pctrl = pinctrl_dev_get_drvdata(pctldev); in zynqmp_pctrl_get_groups_count() local 108 return pctrl->ngroups + zynqmp_desc.npins; in zynqmp_pctrl_get_groups_count() 114 struct zynqmp_pinctrl *pctrl = pinctrl_dev_get_drvdata(pctldev); in zynqmp_pctrl_get_group_name() local 116 if (selector < pctrl->ngroups) in zynqmp_pctrl_get_group_name() 117 return pctrl->groups[selector].name; in zynqmp_pctrl_get_group_name() 119 return zynqmp_desc.pins[selector - pctrl->ngroups].name; in zynqmp_pctrl_get_group_name() 127 struct zynqmp_pinctrl *pctrl = pinctrl_dev_get_drvdata(pctldev); in zynqmp_pctrl_get_group_pins() local 129 if (selector < pctrl->ngroups) { in zynqmp_pctrl_get_group_pins() 130 *pins = pctrl->groups[selector].pins; in zynqmp_pctrl_get_group_pins() [all …]
|
| /linux/drivers/pinctrl/renesas/ |
| H A D | pinctrl-rzg2l.c | 298 void (*pwpr_pfc_lock_unlock)(struct rzg2l_pinctrl *pctrl, bool lock); 299 void (*pmc_writeb)(struct rzg2l_pinctrl *pctrl, u8 val, u16 offset); 300 int (*pin_to_oen_bit)(struct rzg2l_pinctrl *pctrl, unsigned int _pin); 373 static u64 rzg2l_pinctrl_get_variable_pin_cfg(struct rzg2l_pinctrl *pctrl, in rzg2l_pinctrl_get_variable_pin_cfg() argument 380 for (i = 0; i < pctrl->data->n_variable_pin_cfg; i++) { in rzg2l_pinctrl_get_variable_pin_cfg() 381 u64 cfg = pctrl->data->variable_pin_cfg[i]; in rzg2l_pinctrl_get_variable_pin_cfg() 507 static void rzg2l_pmc_writeb(struct rzg2l_pinctrl *pctrl, u8 val, u16 offset) in rzg2l_pmc_writeb() argument 509 writeb(val, pctrl->base + offset); in rzg2l_pmc_writeb() 512 static void rzv2h_pmc_writeb(struct rzg2l_pinctrl *pctrl, u8 val, u16 offset) in rzv2h_pmc_writeb() argument 514 const struct rzg2l_register_offsets *regs = &pctrl->data->hwcfg->regs; in rzv2h_pmc_writeb() [all …]
|
| H A D | pinctrl-rzt2h.c | 94 #define RZT2H_GET_BASE(pctrl, port) \ argument 95 ((port) > RZT2H_MAX_SAFETY_PORTS ? (pctrl)->base0 : (pctrl)->base1) 98 static inline void rzt2h_pinctrl_write##size(struct rzt2h_pinctrl *pctrl, u8 port, \ 101 write##size(val, RZT2H_GET_BASE(pctrl, port) + offset); \ 103 static inline type rzt2h_pinctrl_read##size(struct rzt2h_pinctrl *pctrl, u8 port, \ 106 return read##size(RZT2H_GET_BASE(pctrl, port) + offset); \ 113 static int rzt2h_validate_pin(struct rzt2h_pinctrl *pctrl, unsigned int offset) in RZT2H_PINCTRL_REG_ACCESS() 119 if (offset >= pctrl->data->n_port_pins || port >= pctrl->data->n_ports) in RZT2H_PINCTRL_REG_ACCESS() 122 if (!pctrl->safety_port_enabled && port <= RZT2H_MAX_SAFETY_PORTS) in RZT2H_PINCTRL_REG_ACCESS() 125 pincfg = pctrl->data->port_pin_configs[port]; in RZT2H_PINCTRL_REG_ACCESS() [all …]
|
| H A D | pinctrl-rzv2m.c | 142 static void rzv2m_pinctrl_set_pfc_mode(struct rzv2m_pinctrl *pctrl, in rzv2m_pinctrl_set_pfc_mode() argument 148 rzv2m_writel_we(pctrl->base + DI_MSK(port), pin, 1); in rzv2m_pinctrl_set_pfc_mode() 149 rzv2m_writel_we(pctrl->base + EN_MSK(port), pin, 1); in rzv2m_pinctrl_set_pfc_mode() 152 addr = pctrl->base + PFSEL(port) + (pin / 4) * 4; in rzv2m_pinctrl_set_pfc_mode() 156 rzv2m_writel_we(pctrl->base + EN_MSK(port), pin, 0); in rzv2m_pinctrl_set_pfc_mode() 157 rzv2m_writel_we(pctrl->base + DI_MSK(port), pin, 0); in rzv2m_pinctrl_set_pfc_mode() 164 struct rzv2m_pinctrl *pctrl = pinctrl_dev_get_drvdata(pctldev); in rzv2m_pinctrl_set_mux() local 181 dev_dbg(pctrl->dev, "port:%u pin: %u PSEL:%u\n", in rzv2m_pinctrl_set_mux() 184 rzv2m_pinctrl_set_pfc_mode(pctrl, RZV2M_PIN_ID_TO_PORT(pins[i]), in rzv2m_pinctrl_set_mux() 218 struct rzv2m_pinctrl *pctrl = pinctrl_dev_get_drvdata(pctldev); in rzv2m_dt_subnode_to_map() local [all …]
|
| /linux/drivers/pinctrl/microchip/ |
| H A D | pinctrl-mpfs-mssio.c | 56 struct pinctrl_dev *pctrl; member 140 static u32 mpfs_pinctrl_pin_to_bank_voltage(struct mpfs_pinctrl *pctrl, unsigned int pin) in mpfs_pinctrl_pin_to_bank_voltage() argument 145 regmap_read(pctrl->sysreg_regmap, MPFS_PINCTRL_MSSIO_BANK4_CFG_CR, &val); in mpfs_pinctrl_pin_to_bank_voltage() 147 regmap_read(pctrl->sysreg_regmap, MPFS_PINCTRL_MSSIO_BANK2_CFG_CR, &val); in mpfs_pinctrl_pin_to_bank_voltage() 154 static void mpfs_pinctrl_set_bank_voltage(struct mpfs_pinctrl *pctrl, unsigned int pin, in mpfs_pinctrl_set_bank_voltage() argument 160 regmap_assign_bits(pctrl->sysreg_regmap, MPFS_PINCTRL_MSSIO_BANK4_CFG_CR, in mpfs_pinctrl_set_bank_voltage() 163 regmap_assign_bits(pctrl->sysreg_regmap, MPFS_PINCTRL_MSSIO_BANK2_CFG_CR, in mpfs_pinctrl_set_bank_voltage() 277 struct mpfs_pinctrl *pctrl = pinctrl_dev_get_drvdata(pctrl_dev); in mpfs_pinctrl_dbg_show() local 290 regmap_read(pctrl->regmap, reg, &func); in mpfs_pinctrl_dbg_show() 304 static int mpfs_pinctrl_set_pin_func(struct mpfs_pinctrl *pctrl, u8 pin, u8 function) in mpfs_pinctrl_set_pin_func() argument [all …]
|
| H A D | pinctrl-mpfs-iomux0.c | 26 struct pinctrl_dev *pctrl; member 145 struct mpfs_iomux0_pinctrl *pctrl = pinctrl_dev_get_drvdata(pctrl_dev); in mpfs_iomux0_pin_dbg_show() local 150 regmap_read(pctrl->regmap, MPFS_IOMUX0_REG, &val); in mpfs_iomux0_pin_dbg_show() 187 struct mpfs_iomux0_pinctrl *pctrl = pinctrl_dev_get_drvdata(pctrl_dev); in mpfs_iomux0_pinmux_set_mux() local 188 struct device *dev = pctrl->dev; in mpfs_iomux0_pinmux_set_mux() 197 regmap_assign_bits(pctrl->regmap, MPFS_IOMUX0_REG, group->mask, group->setting); in mpfs_iomux0_pinmux_set_mux() 233 struct mpfs_iomux0_pinctrl *pctrl; in mpfs_iomux0_probe() local 235 pctrl = devm_kzalloc(dev, sizeof(*pctrl), GFP_KERNEL); in mpfs_iomux0_probe() 236 if (!pctrl) in mpfs_iomux0_probe() 239 pctrl->regmap = device_node_to_regmap(pdev->dev.parent->of_node); in mpfs_iomux0_probe() [all …]
|
| H A D | pinctrl-pic64gx-gpio2.c | 30 struct pinctrl_dev *pctrl; member 217 struct pic64gx_gpio2_pinctrl *pctrl = pinctrl_dev_get_drvdata(pctrl_dev); in pic64gx_gpio2_pin_dbg_show() local 220 regmap_read(pctrl->regmap, PIC64GX_PINMUX_REG, &val); in pic64gx_gpio2_pin_dbg_show() 277 struct pic64gx_gpio2_pinctrl *pctrl = pinctrl_dev_get_drvdata(pctrl_dev); in pic64gx_gpio2_pinmux_set_mux() local 278 struct device *dev = pctrl->dev; in pic64gx_gpio2_pinmux_set_mux() 287 regmap_assign_bits(pctrl->regmap, PIC64GX_PINMUX_REG, group->mask, group->setting); in pic64gx_gpio2_pinmux_set_mux() 302 struct pic64gx_gpio2_pinctrl *pctrl; in pic64gx_gpio2_probe() local 305 pctrl = devm_kzalloc(dev, sizeof(*pctrl), GFP_KERNEL); in pic64gx_gpio2_probe() 306 if (!pctrl) in pic64gx_gpio2_probe() 315 pctrl->regmap = devm_regmap_init_mmio(dev, base, &pic64gx_gpio2_regmap_config); in pic64gx_gpio2_probe() [all …]
|
| /linux/drivers/pinctrl/nuvoton/ |
| H A D | pinctrl-wpcm450.c | 52 struct wpcm450_pinctrl *pctrl; member 130 struct wpcm450_pinctrl *pctrl = gpio->pctrl; in wpcm450_gpio_irq_ack() local 138 raw_spin_lock_irqsave(&pctrl->lock, flags); in wpcm450_gpio_irq_ack() 139 iowrite32(BIT(bit), pctrl->gpio_base + WPCM450_GPEVST); in wpcm450_gpio_irq_ack() 140 raw_spin_unlock_irqrestore(&pctrl->lock, flags); in wpcm450_gpio_irq_ack() 147 struct wpcm450_pinctrl *pctrl = gpio->pctrl; in wpcm450_gpio_irq_mask() local 156 raw_spin_lock_irqsave(&pctrl->lock, flags); in wpcm450_gpio_irq_mask() 157 even = ioread32(pctrl->gpio_base + WPCM450_GPEVEN); in wpcm450_gpio_irq_mask() 159 iowrite32(even, pctrl->gpio_base + WPCM450_GPEVEN); in wpcm450_gpio_irq_mask() 160 raw_spin_unlock_irqrestore(&pctrl->lock, flags); in wpcm450_gpio_irq_mask() [all …]
|
| /linux/drivers/pinctrl/spacemit/ |
| H A D | pinctrl-k1.c | 225 static inline void __iomem *spacemit_pin_to_reg(struct spacemit_pinctrl *pctrl, in spacemit_pin_to_reg() argument 228 return pctrl->regs + pctrl->data->pin_to_offset(pin); in spacemit_pin_to_reg() 241 static const struct spacemit_pin *spacemit_get_pin(struct spacemit_pinctrl *pctrl, in spacemit_get_pin() argument 244 const struct spacemit_pin *pdata = pctrl->data->data; in spacemit_get_pin() 247 for (i = 0; i < pctrl->data->npins; i++) { in spacemit_get_pin() 272 struct spacemit_pinctrl *pctrl = pinctrl_dev_get_drvdata(pctldev); in spacemit_pctrl_dbg_show() local 273 const struct spacemit_pin *spin = spacemit_get_pin(pctrl, pin); in spacemit_pctrl_dbg_show() 278 seq_printf(seq, "offset: 0x%04x ", pctrl->data->pin_to_offset(pin)); in spacemit_pctrl_dbg_show() 281 reg = spacemit_pin_to_reg(pctrl, pin); in spacemit_pctrl_dbg_show() 417 struct spacemit_pinctrl *pctrl = pinctrl_dev_get_drvdata(pctldev); in spacemit_pctrl_check_power() local [all …]
|