| /linux/drivers/pinctrl/sunxi/ |
| H A D | pinctrl-sunxi.c | 66 static u32 sunxi_bank_offset(const struct sunxi_pinctrl *pctl, u32 pin) in sunxi_bank_offset() argument 75 return offset + (pin / PINS_PER_BANK) * pctl->bank_mem_size; in sunxi_bank_offset() 78 static void sunxi_mux_reg(const struct sunxi_pinctrl *pctl, in sunxi_mux_reg() argument 83 *reg = sunxi_bank_offset(pctl, pin) + MUX_REGS_OFFSET + in sunxi_mux_reg() 89 static void sunxi_data_reg(const struct sunxi_pinctrl *pctl, in sunxi_data_reg() argument 94 *reg = sunxi_bank_offset(pctl, pin) + DATA_REGS_OFFSET + in sunxi_data_reg() 100 static void sunxi_dlevel_reg(const struct sunxi_pinctrl *pctl, in sunxi_dlevel_reg() argument 103 u32 offset = pin % PINS_PER_BANK * pctl->dlevel_field_width; in sunxi_dlevel_reg() 105 *reg = sunxi_bank_offset(pctl, pin) + DLEVEL_REGS_OFFSET + in sunxi_dlevel_reg() 108 *mask = (BIT(pctl->dlevel_field_width) - 1) << *shift; in sunxi_dlevel_reg() [all …]
|
| /linux/drivers/pinctrl/ |
| H A D | pinctrl-axp209.c | 129 struct axp20x_pctl *pctl = gpiochip_get_data(chip); in axp20x_gpio_get() local 135 ret = regmap_read(pctl->regmap, AXP20X_GPIO3_CTRL, &val); in axp20x_gpio_get() 141 ret = regmap_read(pctl->regmap, AXP20X_GPIO20_SS, &val); in axp20x_gpio_get() 145 return !!(val & BIT(offset + pctl->desc->gpio_status_offset)); in axp20x_gpio_get() 151 struct axp20x_pctl *pctl = gpiochip_get_data(chip); in axp20x_gpio_get_direction() local 157 ret = regmap_read(pctl->regmap, AXP20X_GPIO3_CTRL, &val); in axp20x_gpio_get_direction() 170 ret = regmap_read(pctl->regmap, reg, &val); in axp20x_gpio_get_direction() 201 struct axp20x_pctl *pctl = gpiochip_get_data(chip); in axp20x_gpio_set() local 206 return regmap_update_bits(pctl->regmap, AXP20X_GPIO3_CTRL, in axp20x_gpio_set() 216 return regmap_update_bits(pctl->regmap, reg, AXP20X_GPIO_FUNCTIONS, in axp20x_gpio_set() [all …]
|
| H A D | pinctrl-apple-gpio.c | 81 static void apple_gpio_set_reg(struct apple_gpio_pinctrl *pctl, in apple_gpio_set_reg() argument 84 regmap_update_bits(pctl->map, REG_GPIO(pin), mask, value); in apple_gpio_set_reg() 87 static u32 apple_gpio_get_reg(struct apple_gpio_pinctrl *pctl, in apple_gpio_get_reg() argument 93 ret = regmap_read(pctl->map, REG_GPIO(pin), &val); in apple_gpio_get_reg() 108 struct apple_gpio_pinctrl *pctl; in apple_gpio_dt_node_to_map() local 118 pctl = pinctrl_dev_get_drvdata(pctldev); in apple_gpio_dt_node_to_map() 122 dev_err(pctl->dev, in apple_gpio_dt_node_to_map() 148 function_name = pinmux_generic_get_function_name(pctl->pctldev, func); in apple_gpio_dt_node_to_map() 149 ret = pinctrl_utils_add_map_mux(pctl->pctldev, map, in apple_gpio_dt_node_to_map() 183 struct apple_gpio_pinctrl *pctl = pinctrl_dev_get_drvdata(pctldev); in apple_gpio_pinmux_set() local [all …]
|
| H A D | pinctrl-da9062.c | 40 static int da9062_pctl_get_pin_mode(struct da9062_pctl *pctl, in da9062_pctl_get_pin_mode() argument 43 struct regmap *regmap = pctl->da9062->regmap; in da9062_pctl_get_pin_mode() 56 static int da9062_pctl_set_pin_mode(struct da9062_pctl *pctl, in da9062_pctl_set_pin_mode() argument 59 struct regmap *regmap = pctl->da9062->regmap; in da9062_pctl_set_pin_mode() 71 pctl->pin_config[offset] = mode_req; in da9062_pctl_set_pin_mode() 78 struct da9062_pctl *pctl = gpiochip_get_data(gc); in da9062_gpio_get() local 79 struct regmap *regmap = pctl->da9062->regmap; in da9062_gpio_get() 83 gpio_mode = da9062_pctl_get_pin_mode(pctl, offset); in da9062_gpio_get() 108 struct da9062_pctl *pctl = gpiochip_get_data(gc); in da9062_gpio_set() local 109 struct regmap *regmap = pctl->da9062->regmap; in da9062_gpio_set() [all …]
|
| H A D | pinctrl-pistachio.c | 95 struct pistachio_pinctrl *pctl; member 832 static inline u32 pctl_readl(struct pistachio_pinctrl *pctl, u32 reg) in pctl_readl() argument 834 return readl(pctl->base + reg); in pctl_readl() 837 static inline void pctl_writel(struct pistachio_pinctrl *pctl, u32 val, u32 reg) in pctl_writel() argument 839 writel(val, pctl->base + reg); in pctl_writel() 882 struct pistachio_pinctrl *pctl = pinctrl_dev_get_drvdata(pctldev); in pistachio_pinctrl_get_groups_count() local 884 return pctl->ngroups; in pistachio_pinctrl_get_groups_count() 890 struct pistachio_pinctrl *pctl = pinctrl_dev_get_drvdata(pctldev); in pistachio_pinctrl_get_group_name() local 892 return pctl->groups[group].name; in pistachio_pinctrl_get_group_name() 900 struct pistachio_pinctrl *pctl = pinctrl_dev_get_drvdata(pctldev); in pistachio_pinctrl_get_group_pins() local [all …]
|
| H A D | pinctrl-k230.c | 69 struct pinctrl_desc pctl; member 593 struct pinctrl_desc *pctl; in k230_pinctrl_probe() local 602 pctl = &info->pctl; in k230_pinctrl_probe() 604 pctl->name = "k230-pinctrl"; in k230_pinctrl_probe() 605 pctl->owner = THIS_MODULE; in k230_pinctrl_probe() 606 pctl->pins = k230_pins; in k230_pinctrl_probe() 607 pctl->npins = ARRAY_SIZE(k230_pins); in k230_pinctrl_probe() 608 pctl->pctlops = &k230_pctrl_ops; in k230_pinctrl_probe() 609 pctl->pmxops = &k230_pmxops; in k230_pinctrl_probe() 610 pctl->confops = &k230_pinconf_ops; in k230_pinctrl_probe() [all …]
|
| H A D | pinctrl-mlxbf3.c | 30 struct pinctrl_dev *pctl; member 276 &priv->pctl); in mlxbf3_pinctrl_probe() 280 ret = pinctrl_enable(priv->pctl); in mlxbf3_pinctrl_probe() 284 pinctrl_add_gpio_ranges(priv->pctl, mlxbf3_pinctrl_gpio_ranges, 2); in mlxbf3_pinctrl_probe()
|
| H A D | pinctrl-digicolor.c | 43 struct pinctrl_dev *pctl; member 324 pmap->pctl = devm_pinctrl_register(&pdev->dev, pctl_desc, pmap); in dc_pinctrl_probe() 325 if (IS_ERR(pmap->pctl)) { in dc_pinctrl_probe() 327 return PTR_ERR(pmap->pctl); in dc_pinctrl_probe()
|
| H A D | pinctrl-th1520.c | 61 struct pinctrl_dev *pctl; member 441 dev_err(thp->pctl->dev, "no pins selected for %pOFn.%pOFn\n", in th1520_pinctrl_dt_node_to_map() 467 dev_err(thp->pctl->dev, "%pOFn.%pOFn: error parsing pin config\n", in th1520_pinctrl_dt_node_to_map() 475 dev_err(thp->pctl->dev, "%pOFn.%pOFn: unknown function '%s'\n", in th1520_pinctrl_dt_node_to_map() 481 funcname = devm_kasprintf(thp->pctl->dev, GFP_KERNEL, "%pOFn.%pOFn", in th1520_pinctrl_dt_node_to_map() 489 pgnames = devm_kcalloc(thp->pctl->dev, npins, sizeof(*pgnames), GFP_KERNEL); in th1520_pinctrl_dt_node_to_map() 508 dev_err(thp->pctl->dev, "%pOFn.%pOFn: unknown pin '%s'\n", in th1520_pinctrl_dt_node_to_map() 534 dev_err(thp->pctl->dev, "error adding function %s\n", funcname); in th1520_pinctrl_dt_node_to_map() 785 dev_err(thp->pctl->dev, "invalid mux %s for pin %s\n", in th1520_pinmux_set() 786 th1520_muxtype_string[muxtype], pin_get_name(thp->pctl, pin)); in th1520_pinmux_set() [all …]
|
| /linux/drivers/pinctrl/mvebu/ |
| H A D | pinctrl-mvebu.c | 83 struct mvebu_pinctrl *pctl, unsigned pid) in mvebu_pinctrl_find_group_by_pid() argument 86 for (n = 0; n < pctl->num_groups; n++) { in mvebu_pinctrl_find_group_by_pid() 87 if (pid >= pctl->groups[n].pins[0] && in mvebu_pinctrl_find_group_by_pid() 88 pid < pctl->groups[n].pins[0] + in mvebu_pinctrl_find_group_by_pid() 89 pctl->groups[n].npins) in mvebu_pinctrl_find_group_by_pid() 90 return &pctl->groups[n]; in mvebu_pinctrl_find_group_by_pid() 96 struct mvebu_pinctrl *pctl, const char *name) in mvebu_pinctrl_find_group_by_name() argument 100 for (n = 0; n < pctl->num_groups; n++) { in mvebu_pinctrl_find_group_by_name() 101 if (strcmp(name, pctl->groups[n].name) == 0) in mvebu_pinctrl_find_group_by_name() 102 return &pctl->groups[n]; in mvebu_pinctrl_find_group_by_name() [all …]
|
| /linux/drivers/pinctrl/stm32/ |
| H A D | pinctrl-stm32.c | 355 struct stm32_pinctrl *pctl = dev_get_drvdata(bank->gpio_chip.parent); in stm32_gpio_request() local 359 range = pinctrl_find_gpio_range_from_pin_nolock(pctl->pctl_dev, pin); in stm32_gpio_request() 361 dev_err(pctl->dev, "pin %d not in range.\n", pin); in stm32_gpio_request() 366 dev_err(pctl->dev, "pin %d not available.\n", offset); in stm32_gpio_request() 447 struct stm32_pinctrl *pctl = dev_get_drvdata(bank->gpio_chip.parent); in stm32_gpio_init_valid_mask() local 461 dev_dbg(pctl->dev, "No access to gpio %d - %d\n", bank->bank_nr, i); in stm32_gpio_init_valid_mask() 474 dev_dbg(pctl->dev, "RIF semaphore ownership conflict, GPIO %u", i); in stm32_gpio_init_valid_mask() 546 struct stm32_pinctrl *pctl = dev_get_drvdata(bank->gpio_chip.parent); in stm32_gpio_irq_request_resources() local 555 dev_err(pctl->dev, "unable to lock HW IRQ %lu for IRQ\n", in stm32_gpio_irq_request_resources() 607 struct stm32_pinctrl *pctl = dev_get_drvdata(bank->gpio_chip.parent); in stm32_gpio_domain_activate() local [all …]
|
| /linux/arch/arc/boot/dts/ |
| H A D | abilis_tb101.dtsi | 31 pctl_tsin_s0: pctl-tsin-s0 { /* Serial TS-in 0 */ 34 pctl_tsin_s1: pctl-tsin-s1 { /* Serial TS-in 1 */ 37 pctl_gpio_a: pctl-gpio-a { /* GPIO bank A */ 40 pctl_tsin_p1: pctl-tsin-p1 { /* Parallel TS-in 1 */ 44 pctl_tsin_s2: pctl-tsin-s2 { /* Serial TS-in 2 */ 47 pctl_tsin_s3: pctl-tsin-s3 { /* Serial TS-in 3 */ 50 pctl_gpio_c: pctl-gpio-c { /* GPIO bank C */ 53 pctl_tsin_p3: pctl-tsin-p3 { /* Parallel TS-in 3 */ 57 pctl_tsin_s4: pctl-tsin-s4 { /* Serial TS-in 4 */ 60 pctl_tsin_s5: pctl-tsin-s5 { /* Serial TS-in 5 */ [all …]
|
| H A D | abilis_tb100.dtsi | 31 pctl_tsin_s0: pctl-tsin-s0 { /* Serial TS-in 0 */ 34 pctl_tsin_s1: pctl-tsin-s1 { /* Serial TS-in 1 */ 37 pctl_gpio_a: pctl-gpio-a { /* GPIO bank A */ 40 pctl_tsin_p1: pctl-tsin-p1 { /* Parallel TS-in 1 */ 44 pctl_tsin_s2: pctl-tsin-s2 { /* Serial TS-in 2 */ 47 pctl_tsin_s3: pctl-tsin-s3 { /* Serial TS-in 3 */ 50 pctl_gpio_c: pctl-gpio-c { /* GPIO bank C */ 53 pctl_tsin_p3: pctl-tsin-p3 { /* Parallel TS-in 3 */ 57 pctl_tsin_s4: pctl-tsin-s4 { /* Serial TS-in 4 */ 60 pctl_tsin_s5: pctl-tsin-s5 { /* Serial TS-in 5 */ [all …]
|
| /linux/drivers/md/ |
| H A D | md-llbitmap.c | 258 struct llbitmap_page_ctl **pctl; member 361 return llbitmap->pctl[idx]->state[offset]; in llbitmap_read() 366 struct llbitmap_page_ctl *pctl, in llbitmap_infect_dirty_bits() argument 374 switch (pctl->state[pos]) { in llbitmap_infect_dirty_bits() 376 pctl->state[pos] = level_456 ? BitNeedSync : BitDirty; in llbitmap_infect_dirty_bits() 379 pctl->state[pos] = BitDirty; in llbitmap_infect_dirty_bits() 388 struct llbitmap_page_ctl *pctl = llbitmap->pctl[idx]; in llbitmap_set_page_dirty() local 393 if (!test_bit(LLPageDirty, &pctl->flags)) in llbitmap_set_page_dirty() 394 set_bit(LLPageDirty, &pctl->flags); in llbitmap_set_page_dirty() 402 set_bit(block, pctl->dirty); in llbitmap_set_page_dirty() [all …]
|
| /linux/fs/xfs/ |
| H A D | xfs_pwork.h | 32 struct xfs_pwork_ctl *pctl; member 35 #define XFS_PWORK_SINGLE_THREADED { .pctl = NULL } 40 struct xfs_pwork_ctl *pctl) in xfs_pwork_ctl_want_abort() argument 42 return pctl && pctl->error; in xfs_pwork_ctl_want_abort() 50 return xfs_pwork_ctl_want_abort(pwork->pctl); in xfs_pwork_want_abort() 53 int xfs_pwork_init(struct xfs_mount *mp, struct xfs_pwork_ctl *pctl, 55 void xfs_pwork_queue(struct xfs_pwork_ctl *pctl, struct xfs_pwork *pwork); 56 int xfs_pwork_destroy(struct xfs_pwork_ctl *pctl); 57 void xfs_pwork_poll(struct xfs_pwork_ctl *pctl);
|
| H A D | xfs_iwalk.c | 645 struct xfs_pwork_ctl pctl; in xfs_iwalk_threaded() local 652 error = xfs_pwork_init(mp, &pctl, xfs_iwalk_ag_work, "xfs_iwalk"); in xfs_iwalk_threaded() 659 if (xfs_pwork_ctl_want_abort(&pctl)) in xfs_iwalk_threaded() 676 xfs_pwork_queue(&pctl, &iwag->pwork); in xfs_iwalk_threaded() 684 xfs_pwork_poll(&pctl); in xfs_iwalk_threaded() 685 return xfs_pwork_destroy(&pctl); in xfs_iwalk_threaded()
|
| /linux/drivers/pinctrl/sunplus/ |
| H A D | sppctl.c | 175 static void sppctl_func_set(struct sppctl_pdata *pctl, u8 func, u8 val) in sppctl_func_set() argument 204 writel(reg, pctl->moon2_base + offset); in sppctl_func_set() 227 static void sppctl_gmx_set(struct sppctl_pdata *pctl, u8 reg_off, u8 bit_off, u8 bit_sz, in sppctl_gmx_set() argument 240 writel(reg, pctl->moon1_base + reg_off * 4); in sppctl_gmx_set() 525 static int sppctl_gpio_new(struct platform_device *pdev, struct sppctl_pdata *pctl) in sppctl_gpio_new() argument 534 pctl->spp_gchip = spp_gchip; in sppctl_gpio_new() 536 spp_gchip->gpioxt_base = pctl->gpioxt_base; in sppctl_gpio_new() 537 spp_gchip->first_base = pctl->first_base; in sppctl_gpio_new() 558 pctl->pctl_grange.npins = gchip->ngpio; in sppctl_gpio_new() 559 pctl->pctl_grange.name = gchip->label; in sppctl_gpio_new() [all …]
|
| /linux/arch/mips/include/asm/octeon/ |
| H A D | cvmx-asxx-defs.h | 226 uint64_t pctl:5; member 230 uint64_t pctl:5; 237 uint64_t pctl:4; member 241 uint64_t pctl:4; 252 uint64_t pctl:4; member 256 uint64_t pctl:4; 306 uint64_t pctl:5; member 308 uint64_t pctl:5; 319 uint64_t pctl:5; member 321 uint64_t pctl:5; [all …]
|
| /linux/arch/alpha/kernel/ |
| H A D | core_titan.c | 237 union TPAchipPCTL pctl; in titan_query_agp() local 240 pctl.pctl_q_whole = port->pctl.csr; in titan_query_agp() 242 return pctl.pctl_r_bits.apctl_v_agp_present; in titan_query_agp() 341 port->pctl.csr |= pctl_m_mwin; in titan_init_one_pachip_port() 643 union TPAchipPCTL pctl; in titan_agp_configure() local 645 pctl.pctl_q_whole = port->pctl.csr; in titan_agp_configure() 648 pctl.pctl_r_bits.apctl_v_agp_sba_en = agp->mode.bits.sba; in titan_agp_configure() 651 pctl.pctl_r_bits.apctl_v_agp_rate = 0; /* 1x */ in titan_agp_configure() 653 pctl.pctl_r_bits.apctl_v_agp_rate = 1; /* 2x */ in titan_agp_configure() 656 pctl.pctl_r_bits.apctl_v_agp_rate = 2; /* 4x */ in titan_agp_configure() [all …]
|
| /linux/sound/soc/ |
| H A D | soc-ac97.c | 27 struct pinctrl *pctl; member 273 struct pinctrl *pctl = snd_ac97_rst_cfg.pctl; in snd_soc_ac97_warm_reset() local 275 pinctrl_select_state(pctl, snd_ac97_rst_cfg.pstate_warm_reset); in snd_soc_ac97_warm_reset() 283 pinctrl_select_state(pctl, snd_ac97_rst_cfg.pstate_run); in snd_soc_ac97_warm_reset() 289 struct pinctrl *pctl = snd_ac97_rst_cfg.pctl; in snd_soc_ac97_reset() local 291 pinctrl_select_state(pctl, snd_ac97_rst_cfg.pstate_reset); in snd_soc_ac97_reset() 301 pinctrl_select_state(pctl, snd_ac97_rst_cfg.pstate_run); in snd_soc_ac97_reset() 316 cfg->pctl = p; in snd_soc_ac97_parse_pinctl()
|
| /linux/drivers/phy/qualcomm/ |
| H A D | phy-qcom-usb-hsic.c | 20 struct pinctrl *pctl; member 56 pins_default = pinctrl_lookup_state(uphy->pctl, PINCTRL_STATE_DEFAULT); in qcom_usb_hsic_phy_power_on() 62 ret = pinctrl_select_state(uphy->pctl, pins_default); in qcom_usb_hsic_phy_power_on() 116 uphy->pctl = devm_pinctrl_get(&ulpi->dev); in qcom_usb_hsic_phy_probe() 117 if (IS_ERR(uphy->pctl)) in qcom_usb_hsic_phy_probe() 118 return PTR_ERR(uphy->pctl); in qcom_usb_hsic_phy_probe()
|
| /linux/drivers/pinctrl/freescale/ |
| H A D | pinctrl-imx.c | 581 struct pinctrl_dev *pctl = ipctl->pctl; in imx_pinctrl_parse_functions() local 588 dev_dbg(pctl->dev, "parse function(%d): %pOFn\n", index, np); in imx_pinctrl_parse_functions() 611 ret = pinmux_generic_add_pinfunction(pctl, func, NULL); in imx_pinctrl_parse_functions() 626 radix_tree_insert(&pctl->pin_group_tree, in imx_pinctrl_parse_functions() 661 struct pinctrl_dev *pctl = ipctl->pctl; in imx_pinctrl_probe_dt() local 682 pctl->num_groups = of_get_child_count(np); in imx_pinctrl_probe_dt() 684 pctl->num_groups = 0; in imx_pinctrl_probe_dt() 686 pctl->num_groups += of_get_child_count(child); in imx_pinctrl_probe_dt() 783 &ipctl->pctl); in imx_pinctrl_probe() 797 return pinctrl_enable(ipctl->pctl); in imx_pinctrl_probe() [all …]
|
| /linux/arch/arm/boot/dts/sunplus/ |
| H A D | sunplus-sp7021.dtsi | 75 pctl: pinctrl@100 { label 76 compatible = "sunplus,sp7021-pctl"; 200 cs-gpios = <&pctl 26 GPIO_ACTIVE_LOW>, 201 <&pctl 28 GPIO_ACTIVE_LOW>; 302 gpios = <&pctl 0 GPIO_ACTIVE_HIGH>;
|
| /linux/drivers/pinctrl/mediatek/ |
| H A D | pinctrl-mtk-common-v2.c | 48 static void mtk_w32(struct mtk_pinctrl *pctl, u8 i, u32 reg, u32 val) in mtk_w32() argument 50 writel_relaxed(val, pctl->base[i] + reg); in mtk_w32() 53 static u32 mtk_r32(struct mtk_pinctrl *pctl, u8 i, u32 reg) in mtk_r32() argument 55 return readl_relaxed(pctl->base[i] + reg); in mtk_r32() 58 void mtk_rmw(struct mtk_pinctrl *pctl, u8 i, u32 reg, u32 mask, u32 set) in mtk_rmw() argument 63 spin_lock_irqsave(&pctl->lock, flags); in mtk_rmw() 65 val = mtk_r32(pctl, i, reg); in mtk_rmw() 68 mtk_w32(pctl, i, reg, val); in mtk_rmw() 70 spin_unlock_irqrestore(&pctl->lock, flags); in mtk_rmw() 419 hw->eint->pctl = hw; in mtk_build_eint()
|
| /linux/drivers/pinctrl/nxp/ |
| H A D | pinctrl-s32cc.c | 99 struct pinctrl_dev *pctl; member 682 const struct pin_desc *pd = pin_desc_get(ipctl->pctl, pin); in s32_pinctrl_should_save() 714 ret = s32_regmap_read(ipctl->pctl, pin->number, &config); in s32_pinctrl_suspend() 739 ret = s32_regmap_write(ipctl->pctl, pin->number, in s32_pinctrl_resume() 973 ipctl->pctl = devm_pinctrl_register(&pdev->dev, s32_pinctrl_desc, in s32_pinctrl_probe() 975 if (IS_ERR(ipctl->pctl)) in s32_pinctrl_probe() 976 return dev_err_probe(&pdev->dev, PTR_ERR(ipctl->pctl), in s32_pinctrl_probe()
|