pctrl 117 drivers/i2c/busses/i2c-s3c2410.c struct pinctrl *pctrl; pctrl 1112 drivers/i2c/busses/i2c-s3c2410.c i2c->pctrl = devm_pinctrl_get_select_default(i2c->dev); pctrl 1117 drivers/i2c/busses/i2c-s3c2410.c else if (IS_ERR(i2c->pctrl) && s3c24xx_i2c_parse_dt_gpio(i2c)) pctrl 247 drivers/media/platform/exynos4-is/fimc-is.h struct pinctrl *pctrl; pctrl 1618 drivers/mtd/devices/docg3.c int pctrl, mode; pctrl 1621 drivers/mtd/devices/docg3.c pctrl = doc_register_readb(docg3, DOC_ASICMODE); pctrl 1622 drivers/mtd/devices/docg3.c mode = pctrl & 0x03; pctrl 1627 drivers/mtd/devices/docg3.c pctrl, pctrl 1628 drivers/mtd/devices/docg3.c pctrl & DOC_ASICMODE_RAM_WE ? 1 : 0, pctrl 1629 drivers/mtd/devices/docg3.c pctrl & DOC_ASICMODE_RSTIN_RESET ? 1 : 0, pctrl 1630 drivers/mtd/devices/docg3.c pctrl & DOC_ASICMODE_BDETCT_RESET ? 1 : 0, pctrl 1631 drivers/mtd/devices/docg3.c pctrl & DOC_ASICMODE_MDWREN ? 1 : 0, pctrl 1632 drivers/mtd/devices/docg3.c pctrl & DOC_ASICMODE_POWERDOWN ? 1 : 0, pctrl 60 drivers/phy/hisilicon/phy-hi3660-usb3.c struct regmap *pctrl; pctrl 78 drivers/phy/hisilicon/phy-hi3660-usb3.c ret = regmap_write(priv->pctrl, PCTRL_PERI_CTRL3, val); pctrl 154 drivers/phy/hisilicon/phy-hi3660-usb3.c ret = regmap_write(priv->pctrl, PCTRL_PERI_CTRL3, val); pctrl 189 drivers/phy/hisilicon/phy-hi3660-usb3.c priv->pctrl = syscon_regmap_lookup_by_phandle(dev->of_node, pctrl 191 drivers/phy/hisilicon/phy-hi3660-usb3.c if (IS_ERR(priv->pctrl)) { pctrl 193 drivers/phy/hisilicon/phy-hi3660-usb3.c return PTR_ERR(priv->pctrl); pctrl 65 drivers/pinctrl/actions/pinctrl-owl.c static u32 owl_read_field(struct owl_pinctrl *pctrl, u32 reg, pctrl 70 drivers/pinctrl/actions/pinctrl-owl.c tmp = readl_relaxed(pctrl->base + reg); pctrl 76 drivers/pinctrl/actions/pinctrl-owl.c static void owl_write_field(struct owl_pinctrl *pctrl, u32 reg, u32 arg, pctrl 84 drivers/pinctrl/actions/pinctrl-owl.c owl_update_bits(pctrl->base + reg, mask, (arg << bit)); pctrl 89 drivers/pinctrl/actions/pinctrl-owl.c struct owl_pinctrl *pctrl = pinctrl_dev_get_drvdata(pctrldev); pctrl 91 drivers/pinctrl/actions/pinctrl-owl.c return pctrl->soc->ngroups; pctrl 97 drivers/pinctrl/actions/pinctrl-owl.c struct owl_pinctrl *pctrl = pinctrl_dev_get_drvdata(pctrldev); pctrl 99 drivers/pinctrl/actions/pinctrl-owl.c return pctrl->soc->groups[group].name; pctrl 107 drivers/pinctrl/actions/pinctrl-owl.c struct owl_pinctrl *pctrl = pinctrl_dev_get_drvdata(pctrldev); pctrl 109 drivers/pinctrl/actions/pinctrl-owl.c *pins = pctrl->soc->groups[group].pads; pctrl 110 drivers/pinctrl/actions/pinctrl-owl.c *num_pins = pctrl->soc->groups[group].npads; pctrl 119 drivers/pinctrl/actions/pinctrl-owl.c struct owl_pinctrl *pctrl = pinctrl_dev_get_drvdata(pctrldev); pctrl 121 drivers/pinctrl/actions/pinctrl-owl.c seq_printf(s, "%s", dev_name(pctrl->dev)); pctrl 135 drivers/pinctrl/actions/pinctrl-owl.c struct owl_pinctrl *pctrl = pinctrl_dev_get_drvdata(pctrldev); pctrl 137 drivers/pinctrl/actions/pinctrl-owl.c return pctrl->soc->nfunctions; pctrl 143 drivers/pinctrl/actions/pinctrl-owl.c struct owl_pinctrl *pctrl = pinctrl_dev_get_drvdata(pctrldev); pctrl 145 drivers/pinctrl/actions/pinctrl-owl.c return pctrl->soc->functions[function].name; pctrl 153 drivers/pinctrl/actions/pinctrl-owl.c struct owl_pinctrl *pctrl = pinctrl_dev_get_drvdata(pctrldev); pctrl 155 drivers/pinctrl/actions/pinctrl-owl.c *groups = pctrl->soc->functions[function].groups; pctrl 156 drivers/pinctrl/actions/pinctrl-owl.c *num_groups = pctrl->soc->functions[function].ngroups; pctrl 192 drivers/pinctrl/actions/pinctrl-owl.c struct owl_pinctrl *pctrl = pinctrl_dev_get_drvdata(pctrldev); pctrl 197 drivers/pinctrl/actions/pinctrl-owl.c g = &pctrl->soc->groups[group]; pctrl 202 drivers/pinctrl/actions/pinctrl-owl.c raw_spin_lock_irqsave(&pctrl->lock, flags); pctrl 204 drivers/pinctrl/actions/pinctrl-owl.c owl_update_bits(pctrl->base + g->mfpctl_reg, mask, val); pctrl 206 drivers/pinctrl/actions/pinctrl-owl.c raw_spin_unlock_irqrestore(&pctrl->lock, flags); pctrl 254 drivers/pinctrl/actions/pinctrl-owl.c struct owl_pinctrl *pctrl = pinctrl_dev_get_drvdata(pctrldev); pctrl 259 drivers/pinctrl/actions/pinctrl-owl.c info = &pctrl->soc->padinfo[pin]; pctrl 265 drivers/pinctrl/actions/pinctrl-owl.c arg = owl_read_field(pctrl, reg, bit, width); pctrl 267 drivers/pinctrl/actions/pinctrl-owl.c if (!pctrl->soc->padctl_val2arg) pctrl 270 drivers/pinctrl/actions/pinctrl-owl.c ret = pctrl->soc->padctl_val2arg(info, param, &arg); pctrl 284 drivers/pinctrl/actions/pinctrl-owl.c struct owl_pinctrl *pctrl = pinctrl_dev_get_drvdata(pctrldev); pctrl 291 drivers/pinctrl/actions/pinctrl-owl.c info = &pctrl->soc->padinfo[pin]; pctrl 301 drivers/pinctrl/actions/pinctrl-owl.c if (!pctrl->soc->padctl_arg2val) pctrl 304 drivers/pinctrl/actions/pinctrl-owl.c ret = pctrl->soc->padctl_arg2val(info, param, &arg); pctrl 308 drivers/pinctrl/actions/pinctrl-owl.c raw_spin_lock_irqsave(&pctrl->lock, flags); pctrl 310 drivers/pinctrl/actions/pinctrl-owl.c owl_write_field(pctrl, reg, arg, bit, width); pctrl 312 drivers/pinctrl/actions/pinctrl-owl.c raw_spin_unlock_irqrestore(&pctrl->lock, flags); pctrl 423 drivers/pinctrl/actions/pinctrl-owl.c struct owl_pinctrl *pctrl = pinctrl_dev_get_drvdata(pctrldev); pctrl 428 drivers/pinctrl/actions/pinctrl-owl.c g = &pctrl->soc->groups[group]; pctrl 434 drivers/pinctrl/actions/pinctrl-owl.c arg = owl_read_field(pctrl, reg, bit, width); pctrl 452 drivers/pinctrl/actions/pinctrl-owl.c struct owl_pinctrl *pctrl = pinctrl_dev_get_drvdata(pctrldev); pctrl 458 drivers/pinctrl/actions/pinctrl-owl.c g = &pctrl->soc->groups[group]; pctrl 473 drivers/pinctrl/actions/pinctrl-owl.c raw_spin_lock_irqsave(&pctrl->lock, flags); pctrl 475 drivers/pinctrl/actions/pinctrl-owl.c owl_write_field(pctrl, reg, arg, bit, width); pctrl 477 drivers/pinctrl/actions/pinctrl-owl.c raw_spin_unlock_irqrestore(&pctrl->lock, flags); pctrl 499 drivers/pinctrl/actions/pinctrl-owl.c owl_gpio_get_port(struct owl_pinctrl *pctrl, unsigned int *pin) pctrl 503 drivers/pinctrl/actions/pinctrl-owl.c for (i = 0; i < pctrl->soc->nports; i++) { pctrl 504 drivers/pinctrl/actions/pinctrl-owl.c const struct owl_gpio_port *port = &pctrl->soc->ports[i]; pctrl 533 drivers/pinctrl/actions/pinctrl-owl.c struct owl_pinctrl *pctrl = gpiochip_get_data(chip); pctrl 538 drivers/pinctrl/actions/pinctrl-owl.c port = owl_gpio_get_port(pctrl, &offset); pctrl 542 drivers/pinctrl/actions/pinctrl-owl.c gpio_base = pctrl->base + port->offset; pctrl 548 drivers/pinctrl/actions/pinctrl-owl.c raw_spin_lock_irqsave(&pctrl->lock, flags); pctrl 550 drivers/pinctrl/actions/pinctrl-owl.c raw_spin_unlock_irqrestore(&pctrl->lock, flags); pctrl 557 drivers/pinctrl/actions/pinctrl-owl.c struct owl_pinctrl *pctrl = gpiochip_get_data(chip); pctrl 562 drivers/pinctrl/actions/pinctrl-owl.c port = owl_gpio_get_port(pctrl, &offset); pctrl 566 drivers/pinctrl/actions/pinctrl-owl.c gpio_base = pctrl->base + port->offset; pctrl 568 drivers/pinctrl/actions/pinctrl-owl.c raw_spin_lock_irqsave(&pctrl->lock, flags); pctrl 574 drivers/pinctrl/actions/pinctrl-owl.c raw_spin_unlock_irqrestore(&pctrl->lock, flags); pctrl 579 drivers/pinctrl/actions/pinctrl-owl.c struct owl_pinctrl *pctrl = gpiochip_get_data(chip); pctrl 585 drivers/pinctrl/actions/pinctrl-owl.c port = owl_gpio_get_port(pctrl, &offset); pctrl 589 drivers/pinctrl/actions/pinctrl-owl.c gpio_base = pctrl->base + port->offset; pctrl 591 drivers/pinctrl/actions/pinctrl-owl.c raw_spin_lock_irqsave(&pctrl->lock, flags); pctrl 593 drivers/pinctrl/actions/pinctrl-owl.c raw_spin_unlock_irqrestore(&pctrl->lock, flags); pctrl 600 drivers/pinctrl/actions/pinctrl-owl.c struct owl_pinctrl *pctrl = gpiochip_get_data(chip); pctrl 605 drivers/pinctrl/actions/pinctrl-owl.c port = owl_gpio_get_port(pctrl, &offset); pctrl 609 drivers/pinctrl/actions/pinctrl-owl.c gpio_base = pctrl->base + port->offset; pctrl 611 drivers/pinctrl/actions/pinctrl-owl.c raw_spin_lock_irqsave(&pctrl->lock, flags); pctrl 613 drivers/pinctrl/actions/pinctrl-owl.c raw_spin_unlock_irqrestore(&pctrl->lock, flags); pctrl 618 drivers/pinctrl/actions/pinctrl-owl.c struct owl_pinctrl *pctrl = gpiochip_get_data(chip); pctrl 623 drivers/pinctrl/actions/pinctrl-owl.c port = owl_gpio_get_port(pctrl, &offset); pctrl 627 drivers/pinctrl/actions/pinctrl-owl.c gpio_base = pctrl->base + port->offset; pctrl 629 drivers/pinctrl/actions/pinctrl-owl.c raw_spin_lock_irqsave(&pctrl->lock, flags); pctrl 632 drivers/pinctrl/actions/pinctrl-owl.c raw_spin_unlock_irqrestore(&pctrl->lock, flags); pctrl 640 drivers/pinctrl/actions/pinctrl-owl.c struct owl_pinctrl *pctrl = gpiochip_get_data(chip); pctrl 645 drivers/pinctrl/actions/pinctrl-owl.c port = owl_gpio_get_port(pctrl, &offset); pctrl 649 drivers/pinctrl/actions/pinctrl-owl.c gpio_base = pctrl->base + port->offset; pctrl 651 drivers/pinctrl/actions/pinctrl-owl.c raw_spin_lock_irqsave(&pctrl->lock, flags); pctrl 655 drivers/pinctrl/actions/pinctrl-owl.c raw_spin_unlock_irqrestore(&pctrl->lock, flags); pctrl 660 drivers/pinctrl/actions/pinctrl-owl.c static void irq_set_type(struct owl_pinctrl *pctrl, int gpio, unsigned int type) pctrl 675 drivers/pinctrl/actions/pinctrl-owl.c if (owl_gpio_get(&pctrl->chip, gpio)) pctrl 701 drivers/pinctrl/actions/pinctrl-owl.c port = owl_gpio_get_port(pctrl, &gpio); pctrl 705 drivers/pinctrl/actions/pinctrl-owl.c gpio_base = pctrl->base + port->offset; pctrl 707 drivers/pinctrl/actions/pinctrl-owl.c raw_spin_lock_irqsave(&pctrl->lock, flags); pctrl 715 drivers/pinctrl/actions/pinctrl-owl.c raw_spin_unlock_irqrestore(&pctrl->lock, flags); pctrl 721 drivers/pinctrl/actions/pinctrl-owl.c struct owl_pinctrl *pctrl = gpiochip_get_data(gc); pctrl 728 drivers/pinctrl/actions/pinctrl-owl.c port = owl_gpio_get_port(pctrl, &gpio); pctrl 732 drivers/pinctrl/actions/pinctrl-owl.c gpio_base = pctrl->base + port->offset; pctrl 734 drivers/pinctrl/actions/pinctrl-owl.c raw_spin_lock_irqsave(&pctrl->lock, flags); pctrl 744 drivers/pinctrl/actions/pinctrl-owl.c raw_spin_unlock_irqrestore(&pctrl->lock, flags); pctrl 750 drivers/pinctrl/actions/pinctrl-owl.c struct owl_pinctrl *pctrl = gpiochip_get_data(gc); pctrl 757 drivers/pinctrl/actions/pinctrl-owl.c port = owl_gpio_get_port(pctrl, &gpio); pctrl 761 drivers/pinctrl/actions/pinctrl-owl.c gpio_base = pctrl->base + port->offset; pctrl 762 drivers/pinctrl/actions/pinctrl-owl.c raw_spin_lock_irqsave(&pctrl->lock, flags); pctrl 773 drivers/pinctrl/actions/pinctrl-owl.c raw_spin_unlock_irqrestore(&pctrl->lock, flags); pctrl 779 drivers/pinctrl/actions/pinctrl-owl.c struct owl_pinctrl *pctrl = gpiochip_get_data(gc); pctrl 791 drivers/pinctrl/actions/pinctrl-owl.c irq_set_type(pctrl, gpio, IRQ_TYPE_EDGE_FALLING); pctrl 793 drivers/pinctrl/actions/pinctrl-owl.c irq_set_type(pctrl, gpio, IRQ_TYPE_EDGE_RISING); pctrl 796 drivers/pinctrl/actions/pinctrl-owl.c port = owl_gpio_get_port(pctrl, &gpio); pctrl 800 drivers/pinctrl/actions/pinctrl-owl.c gpio_base = pctrl->base + port->offset; pctrl 802 drivers/pinctrl/actions/pinctrl-owl.c raw_spin_lock_irqsave(&pctrl->lock, flags); pctrl 807 drivers/pinctrl/actions/pinctrl-owl.c raw_spin_unlock_irqrestore(&pctrl->lock, flags); pctrl 813 drivers/pinctrl/actions/pinctrl-owl.c struct owl_pinctrl *pctrl = gpiochip_get_data(gc); pctrl 820 drivers/pinctrl/actions/pinctrl-owl.c irq_set_type(pctrl, data->hwirq, type); pctrl 827 drivers/pinctrl/actions/pinctrl-owl.c struct owl_pinctrl *pctrl = irq_desc_get_handler_data(desc); pctrl 829 drivers/pinctrl/actions/pinctrl-owl.c struct irq_domain *domain = pctrl->chip.irq.domain; pctrl 838 drivers/pinctrl/actions/pinctrl-owl.c for (i = 0; i < pctrl->soc->nports; i++) { pctrl 839 drivers/pinctrl/actions/pinctrl-owl.c port = &pctrl->soc->ports[i]; pctrl 840 drivers/pinctrl/actions/pinctrl-owl.c base = pctrl->base + port->offset; pctrl 843 drivers/pinctrl/actions/pinctrl-owl.c if (parent != pctrl->irq[i]) pctrl 863 drivers/pinctrl/actions/pinctrl-owl.c static int owl_gpio_init(struct owl_pinctrl *pctrl) pctrl 869 drivers/pinctrl/actions/pinctrl-owl.c chip = &pctrl->chip; pctrl 871 drivers/pinctrl/actions/pinctrl-owl.c chip->ngpio = pctrl->soc->ngpios; pctrl 872 drivers/pinctrl/actions/pinctrl-owl.c chip->label = dev_name(pctrl->dev); pctrl 873 drivers/pinctrl/actions/pinctrl-owl.c chip->parent = pctrl->dev; pctrl 875 drivers/pinctrl/actions/pinctrl-owl.c chip->of_node = pctrl->dev->of_node; pctrl 877 drivers/pinctrl/actions/pinctrl-owl.c pctrl->irq_chip.name = chip->of_node->name; pctrl 878 drivers/pinctrl/actions/pinctrl-owl.c pctrl->irq_chip.irq_ack = owl_gpio_irq_ack; pctrl 879 drivers/pinctrl/actions/pinctrl-owl.c pctrl->irq_chip.irq_mask = owl_gpio_irq_mask; pctrl 880 drivers/pinctrl/actions/pinctrl-owl.c pctrl->irq_chip.irq_unmask = owl_gpio_irq_unmask; pctrl 881 drivers/pinctrl/actions/pinctrl-owl.c pctrl->irq_chip.irq_set_type = owl_gpio_irq_set_type; pctrl 884 drivers/pinctrl/actions/pinctrl-owl.c gpio_irq->chip = &pctrl->irq_chip; pctrl 888 drivers/pinctrl/actions/pinctrl-owl.c gpio_irq->parent_handler_data = pctrl; pctrl 889 drivers/pinctrl/actions/pinctrl-owl.c gpio_irq->num_parents = pctrl->num_irq; pctrl 890 drivers/pinctrl/actions/pinctrl-owl.c gpio_irq->parents = pctrl->irq; pctrl 892 drivers/pinctrl/actions/pinctrl-owl.c gpio_irq->map = devm_kcalloc(pctrl->dev, chip->ngpio, pctrl 897 drivers/pinctrl/actions/pinctrl-owl.c for (i = 0, offset = 0; i < pctrl->soc->nports; i++) { pctrl 898 drivers/pinctrl/actions/pinctrl-owl.c const struct owl_gpio_port *port = &pctrl->soc->ports[i]; pctrl 906 drivers/pinctrl/actions/pinctrl-owl.c ret = gpiochip_add_data(&pctrl->chip, pctrl); pctrl 908 drivers/pinctrl/actions/pinctrl-owl.c dev_err(pctrl->dev, "failed to register gpiochip\n"); pctrl 919 drivers/pinctrl/actions/pinctrl-owl.c struct owl_pinctrl *pctrl; pctrl 922 drivers/pinctrl/actions/pinctrl-owl.c pctrl = devm_kzalloc(&pdev->dev, sizeof(*pctrl), GFP_KERNEL); pctrl 923 drivers/pinctrl/actions/pinctrl-owl.c if (!pctrl) pctrl 927 drivers/pinctrl/actions/pinctrl-owl.c pctrl->base = devm_ioremap_resource(&pdev->dev, res); pctrl 928 drivers/pinctrl/actions/pinctrl-owl.c if (IS_ERR(pctrl->base)) pctrl 929 drivers/pinctrl/actions/pinctrl-owl.c return PTR_ERR(pctrl->base); pctrl 932 drivers/pinctrl/actions/pinctrl-owl.c pctrl->clk = devm_clk_get(&pdev->dev, NULL); pctrl 933 drivers/pinctrl/actions/pinctrl-owl.c if (IS_ERR(pctrl->clk)) { pctrl 935 drivers/pinctrl/actions/pinctrl-owl.c return PTR_ERR(pctrl->clk); pctrl 938 drivers/pinctrl/actions/pinctrl-owl.c ret = clk_prepare_enable(pctrl->clk); pctrl 944 drivers/pinctrl/actions/pinctrl-owl.c raw_spin_lock_init(&pctrl->lock); pctrl 950 drivers/pinctrl/actions/pinctrl-owl.c pctrl->chip.direction_input = owl_gpio_direction_input; pctrl 951 drivers/pinctrl/actions/pinctrl-owl.c pctrl->chip.direction_output = owl_gpio_direction_output; pctrl 952 drivers/pinctrl/actions/pinctrl-owl.c pctrl->chip.get = owl_gpio_get; pctrl 953 drivers/pinctrl/actions/pinctrl-owl.c pctrl->chip.set = owl_gpio_set; pctrl 954 drivers/pinctrl/actions/pinctrl-owl.c pctrl->chip.request = owl_gpio_request; pctrl 955 drivers/pinctrl/actions/pinctrl-owl.c pctrl->chip.free = owl_gpio_free; pctrl 957 drivers/pinctrl/actions/pinctrl-owl.c pctrl->soc = soc_data; pctrl 958 drivers/pinctrl/actions/pinctrl-owl.c pctrl->dev = &pdev->dev; pctrl 960 drivers/pinctrl/actions/pinctrl-owl.c pctrl->pctrldev = devm_pinctrl_register(&pdev->dev, pctrl 961 drivers/pinctrl/actions/pinctrl-owl.c &owl_pinctrl_desc, pctrl); pctrl 962 drivers/pinctrl/actions/pinctrl-owl.c if (IS_ERR(pctrl->pctrldev)) { pctrl 964 drivers/pinctrl/actions/pinctrl-owl.c ret = PTR_ERR(pctrl->pctrldev); pctrl 972 drivers/pinctrl/actions/pinctrl-owl.c pctrl->num_irq = ret; pctrl 974 drivers/pinctrl/actions/pinctrl-owl.c pctrl->irq = devm_kcalloc(&pdev->dev, pctrl->num_irq, pctrl 975 drivers/pinctrl/actions/pinctrl-owl.c sizeof(*pctrl->irq), GFP_KERNEL); pctrl 976 drivers/pinctrl/actions/pinctrl-owl.c if (!pctrl->irq) { pctrl 981 drivers/pinctrl/actions/pinctrl-owl.c for (i = 0; i < pctrl->num_irq ; i++) { pctrl 985 drivers/pinctrl/actions/pinctrl-owl.c pctrl->irq[i] = ret; pctrl 988 drivers/pinctrl/actions/pinctrl-owl.c ret = owl_gpio_init(pctrl); pctrl 992 drivers/pinctrl/actions/pinctrl-owl.c platform_set_drvdata(pdev, pctrl); pctrl 997 drivers/pinctrl/actions/pinctrl-owl.c clk_disable_unprepare(pctrl->clk); pctrl 37 drivers/pinctrl/berlin/berlin.c struct berlin_pinctrl *pctrl = pinctrl_dev_get_drvdata(pctrl_dev); pctrl 39 drivers/pinctrl/berlin/berlin.c return pctrl->desc->ngroups; pctrl 45 drivers/pinctrl/berlin/berlin.c struct berlin_pinctrl *pctrl = pinctrl_dev_get_drvdata(pctrl_dev); pctrl 47 drivers/pinctrl/berlin/berlin.c return pctrl->desc->groups[group].name; pctrl 55 drivers/pinctrl/berlin/berlin.c struct berlin_pinctrl *pctrl = pinctrl_dev_get_drvdata(pctrl_dev); pctrl 66 drivers/pinctrl/berlin/berlin.c dev_err(pctrl->dev, pctrl 73 drivers/pinctrl/berlin/berlin.c dev_err(pctrl->dev, pctrl 81 drivers/pinctrl/berlin/berlin.c dev_err(pctrl->dev, "can't reserve map: %d\n", ret); pctrl 90 drivers/pinctrl/berlin/berlin.c dev_err(pctrl->dev, "can't add map: %d\n", ret); pctrl 107 drivers/pinctrl/berlin/berlin.c struct berlin_pinctrl *pctrl = pinctrl_dev_get_drvdata(pctrl_dev); pctrl 109 drivers/pinctrl/berlin/berlin.c return pctrl->nfunctions; pctrl 115 drivers/pinctrl/berlin/berlin.c struct berlin_pinctrl *pctrl = pinctrl_dev_get_drvdata(pctrl_dev); pctrl 117 drivers/pinctrl/berlin/berlin.c return pctrl->functions[function].name; pctrl 125 drivers/pinctrl/berlin/berlin.c struct berlin_pinctrl *pctrl = pinctrl_dev_get_drvdata(pctrl_dev); pctrl 127 drivers/pinctrl/berlin/berlin.c *groups = pctrl->functions[function].groups; pctrl 128 drivers/pinctrl/berlin/berlin.c *num_groups = pctrl->functions[function].ngroups; pctrl 134 drivers/pinctrl/berlin/berlin.c berlin_pinctrl_find_function_by_name(struct berlin_pinctrl *pctrl, pctrl 154 drivers/pinctrl/berlin/berlin.c struct berlin_pinctrl *pctrl = pinctrl_dev_get_drvdata(pctrl_dev); pctrl 155 drivers/pinctrl/berlin/berlin.c const struct berlin_desc_group *group_desc = pctrl->desc->groups + group; pctrl 156 drivers/pinctrl/berlin/berlin.c struct berlin_pinctrl_function *func = pctrl->functions + function; pctrl 158 drivers/pinctrl/berlin/berlin.c berlin_pinctrl_find_function_by_name(pctrl, group_desc, pctrl 168 drivers/pinctrl/berlin/berlin.c regmap_update_bits(pctrl->regmap, group_desc->offset, mask, val); pctrl 180 drivers/pinctrl/berlin/berlin.c static int berlin_pinctrl_add_function(struct berlin_pinctrl *pctrl, pctrl 183 drivers/pinctrl/berlin/berlin.c struct berlin_pinctrl_function *function = pctrl->functions; pctrl 196 drivers/pinctrl/berlin/berlin.c pctrl->nfunctions++; pctrl 203 drivers/pinctrl/berlin/berlin.c struct berlin_pinctrl *pctrl = platform_get_drvdata(pdev); pctrl 208 drivers/pinctrl/berlin/berlin.c pctrl->nfunctions = 0; pctrl 210 drivers/pinctrl/berlin/berlin.c for (i = 0; i < pctrl->desc->ngroups; i++) { pctrl 211 drivers/pinctrl/berlin/berlin.c desc_group = pctrl->desc->groups + i; pctrl 217 drivers/pinctrl/berlin/berlin.c pctrl->functions = kcalloc(max_functions, pctrl 218 drivers/pinctrl/berlin/berlin.c sizeof(*pctrl->functions), GFP_KERNEL); pctrl 219 drivers/pinctrl/berlin/berlin.c if (!pctrl->functions) pctrl 223 drivers/pinctrl/berlin/berlin.c for (i = 0; i < pctrl->desc->ngroups; i++) { pctrl 224 drivers/pinctrl/berlin/berlin.c desc_group = pctrl->desc->groups + i; pctrl 228 drivers/pinctrl/berlin/berlin.c berlin_pinctrl_add_function(pctrl, desc_function->name); pctrl 233 drivers/pinctrl/berlin/berlin.c pctrl->functions = krealloc(pctrl->functions, pctrl 234 drivers/pinctrl/berlin/berlin.c pctrl->nfunctions * sizeof(*pctrl->functions), pctrl 238 drivers/pinctrl/berlin/berlin.c for (i = 0; i < pctrl->desc->ngroups; i++) { pctrl 239 drivers/pinctrl/berlin/berlin.c desc_group = pctrl->desc->groups + i; pctrl 244 drivers/pinctrl/berlin/berlin.c *function = pctrl->functions; pctrl 257 drivers/pinctrl/berlin/berlin.c kfree(pctrl->functions); pctrl 269 drivers/pinctrl/berlin/berlin.c kfree(pctrl->functions); pctrl 299 drivers/pinctrl/berlin/berlin.c struct berlin_pinctrl *pctrl; pctrl 302 drivers/pinctrl/berlin/berlin.c pctrl = devm_kzalloc(dev, sizeof(*pctrl), GFP_KERNEL); pctrl 303 drivers/pinctrl/berlin/berlin.c if (!pctrl) pctrl 306 drivers/pinctrl/berlin/berlin.c platform_set_drvdata(pdev, pctrl); pctrl 308 drivers/pinctrl/berlin/berlin.c pctrl->regmap = regmap; pctrl 309 drivers/pinctrl/berlin/berlin.c pctrl->dev = &pdev->dev; pctrl 310 drivers/pinctrl/berlin/berlin.c pctrl->desc = desc; pctrl 318 drivers/pinctrl/berlin/berlin.c pctrl->pctrl_dev = devm_pinctrl_register(dev, &berlin_pctrl_desc, pctrl 319 drivers/pinctrl/berlin/berlin.c pctrl); pctrl 320 drivers/pinctrl/berlin/berlin.c if (IS_ERR(pctrl->pctrl_dev)) { pctrl 322 drivers/pinctrl/berlin/berlin.c return PTR_ERR(pctrl->pctrl_dev); pctrl 666 drivers/pinctrl/intel/pinctrl-cherryview.c static void __iomem *chv_padreg(struct chv_pinctrl *pctrl, unsigned int offset, pctrl 675 drivers/pinctrl/intel/pinctrl-cherryview.c return pctrl->regs + offset + reg; pctrl 686 drivers/pinctrl/intel/pinctrl-cherryview.c static bool chv_pad_locked(struct chv_pinctrl *pctrl, unsigned int offset) pctrl 690 drivers/pinctrl/intel/pinctrl-cherryview.c reg = chv_padreg(pctrl, offset, CHV_PADCTRL1); pctrl 696 drivers/pinctrl/intel/pinctrl-cherryview.c struct chv_pinctrl *pctrl = pinctrl_dev_get_drvdata(pctldev); pctrl 698 drivers/pinctrl/intel/pinctrl-cherryview.c return pctrl->community->ngroups; pctrl 704 drivers/pinctrl/intel/pinctrl-cherryview.c struct chv_pinctrl *pctrl = pinctrl_dev_get_drvdata(pctldev); pctrl 706 drivers/pinctrl/intel/pinctrl-cherryview.c return pctrl->community->groups[group].name; pctrl 712 drivers/pinctrl/intel/pinctrl-cherryview.c struct chv_pinctrl *pctrl = pinctrl_dev_get_drvdata(pctldev); pctrl 714 drivers/pinctrl/intel/pinctrl-cherryview.c *pins = pctrl->community->groups[group].pins; pctrl 715 drivers/pinctrl/intel/pinctrl-cherryview.c *npins = pctrl->community->groups[group].npins; pctrl 722 drivers/pinctrl/intel/pinctrl-cherryview.c struct chv_pinctrl *pctrl = pinctrl_dev_get_drvdata(pctldev); pctrl 729 drivers/pinctrl/intel/pinctrl-cherryview.c ctrl0 = readl(chv_padreg(pctrl, offset, CHV_PADCTRL0)); pctrl 730 drivers/pinctrl/intel/pinctrl-cherryview.c ctrl1 = readl(chv_padreg(pctrl, offset, CHV_PADCTRL1)); pctrl 731 drivers/pinctrl/intel/pinctrl-cherryview.c locked = chv_pad_locked(pctrl, offset); pctrl 761 drivers/pinctrl/intel/pinctrl-cherryview.c struct chv_pinctrl *pctrl = pinctrl_dev_get_drvdata(pctldev); pctrl 763 drivers/pinctrl/intel/pinctrl-cherryview.c return pctrl->community->nfunctions; pctrl 769 drivers/pinctrl/intel/pinctrl-cherryview.c struct chv_pinctrl *pctrl = pinctrl_dev_get_drvdata(pctldev); pctrl 771 drivers/pinctrl/intel/pinctrl-cherryview.c return pctrl->community->functions[function].name; pctrl 779 drivers/pinctrl/intel/pinctrl-cherryview.c struct chv_pinctrl *pctrl = pinctrl_dev_get_drvdata(pctldev); pctrl 781 drivers/pinctrl/intel/pinctrl-cherryview.c *groups = pctrl->community->functions[function].groups; pctrl 782 drivers/pinctrl/intel/pinctrl-cherryview.c *ngroups = pctrl->community->functions[function].ngroups; pctrl 789 drivers/pinctrl/intel/pinctrl-cherryview.c struct chv_pinctrl *pctrl = pinctrl_dev_get_drvdata(pctldev); pctrl 794 drivers/pinctrl/intel/pinctrl-cherryview.c grp = &pctrl->community->groups[group]; pctrl 800 drivers/pinctrl/intel/pinctrl-cherryview.c if (chv_pad_locked(pctrl, grp->pins[i])) { pctrl 801 drivers/pinctrl/intel/pinctrl-cherryview.c dev_warn(pctrl->dev, "unable to set mode for locked pin %u\n", pctrl 826 drivers/pinctrl/intel/pinctrl-cherryview.c reg = chv_padreg(pctrl, pin, CHV_PADCTRL0); pctrl 836 drivers/pinctrl/intel/pinctrl-cherryview.c reg = chv_padreg(pctrl, pin, CHV_PADCTRL1); pctrl 842 drivers/pinctrl/intel/pinctrl-cherryview.c dev_dbg(pctrl->dev, "configured pin %u mode %u OE %sinverted\n", pctrl 851 drivers/pinctrl/intel/pinctrl-cherryview.c static void chv_gpio_clear_triggering(struct chv_pinctrl *pctrl, pctrl 857 drivers/pinctrl/intel/pinctrl-cherryview.c reg = chv_padreg(pctrl, offset, CHV_PADCTRL1); pctrl 868 drivers/pinctrl/intel/pinctrl-cherryview.c struct chv_pinctrl *pctrl = pinctrl_dev_get_drvdata(pctldev); pctrl 875 drivers/pinctrl/intel/pinctrl-cherryview.c if (chv_pad_locked(pctrl, offset)) { pctrl 876 drivers/pinctrl/intel/pinctrl-cherryview.c value = readl(chv_padreg(pctrl, offset, CHV_PADCTRL0)); pctrl 886 drivers/pinctrl/intel/pinctrl-cherryview.c for (i = 0; i < ARRAY_SIZE(pctrl->intr_lines); i++) { pctrl 887 drivers/pinctrl/intel/pinctrl-cherryview.c if (pctrl->intr_lines[i] == offset) { pctrl 888 drivers/pinctrl/intel/pinctrl-cherryview.c pctrl->intr_lines[i] = 0; pctrl 894 drivers/pinctrl/intel/pinctrl-cherryview.c chv_gpio_clear_triggering(pctrl, offset); pctrl 896 drivers/pinctrl/intel/pinctrl-cherryview.c reg = chv_padreg(pctrl, offset, CHV_PADCTRL0); pctrl 924 drivers/pinctrl/intel/pinctrl-cherryview.c struct chv_pinctrl *pctrl = pinctrl_dev_get_drvdata(pctldev); pctrl 929 drivers/pinctrl/intel/pinctrl-cherryview.c if (!chv_pad_locked(pctrl, offset)) pctrl 930 drivers/pinctrl/intel/pinctrl-cherryview.c chv_gpio_clear_triggering(pctrl, offset); pctrl 939 drivers/pinctrl/intel/pinctrl-cherryview.c struct chv_pinctrl *pctrl = pinctrl_dev_get_drvdata(pctldev); pctrl 940 drivers/pinctrl/intel/pinctrl-cherryview.c void __iomem *reg = chv_padreg(pctrl, offset, CHV_PADCTRL0); pctrl 971 drivers/pinctrl/intel/pinctrl-cherryview.c struct chv_pinctrl *pctrl = pinctrl_dev_get_drvdata(pctldev); pctrl 979 drivers/pinctrl/intel/pinctrl-cherryview.c ctrl0 = readl(chv_padreg(pctrl, pin, CHV_PADCTRL0)); pctrl 980 drivers/pinctrl/intel/pinctrl-cherryview.c ctrl1 = readl(chv_padreg(pctrl, pin, CHV_PADCTRL1)); pctrl 1048 drivers/pinctrl/intel/pinctrl-cherryview.c static int chv_config_set_pull(struct chv_pinctrl *pctrl, unsigned int pin, pctrl 1051 drivers/pinctrl/intel/pinctrl-cherryview.c void __iomem *reg = chv_padreg(pctrl, pin, CHV_PADCTRL0); pctrl 1114 drivers/pinctrl/intel/pinctrl-cherryview.c static int chv_config_set_oden(struct chv_pinctrl *pctrl, unsigned int pin, pctrl 1117 drivers/pinctrl/intel/pinctrl-cherryview.c void __iomem *reg = chv_padreg(pctrl, pin, CHV_PADCTRL1); pctrl 1138 drivers/pinctrl/intel/pinctrl-cherryview.c struct chv_pinctrl *pctrl = pinctrl_dev_get_drvdata(pctldev); pctrl 1143 drivers/pinctrl/intel/pinctrl-cherryview.c if (chv_pad_locked(pctrl, pin)) pctrl 1154 drivers/pinctrl/intel/pinctrl-cherryview.c ret = chv_config_set_pull(pctrl, pin, param, arg); pctrl 1160 drivers/pinctrl/intel/pinctrl-cherryview.c ret = chv_config_set_oden(pctrl, pin, false); pctrl 1166 drivers/pinctrl/intel/pinctrl-cherryview.c ret = chv_config_set_oden(pctrl, pin, true); pctrl 1175 drivers/pinctrl/intel/pinctrl-cherryview.c dev_dbg(pctrl->dev, "pin %d set config %d arg %u\n", pin, pctrl 1239 drivers/pinctrl/intel/pinctrl-cherryview.c struct chv_pinctrl *pctrl = gpiochip_get_data(chip); pctrl 1244 drivers/pinctrl/intel/pinctrl-cherryview.c ctrl0 = readl(chv_padreg(pctrl, offset, CHV_PADCTRL0)); pctrl 1257 drivers/pinctrl/intel/pinctrl-cherryview.c struct chv_pinctrl *pctrl = gpiochip_get_data(chip); pctrl 1264 drivers/pinctrl/intel/pinctrl-cherryview.c reg = chv_padreg(pctrl, offset, CHV_PADCTRL0); pctrl 1279 drivers/pinctrl/intel/pinctrl-cherryview.c struct chv_pinctrl *pctrl = gpiochip_get_data(chip); pctrl 1284 drivers/pinctrl/intel/pinctrl-cherryview.c ctrl0 = readl(chv_padreg(pctrl, offset, CHV_PADCTRL0)); pctrl 1319 drivers/pinctrl/intel/pinctrl-cherryview.c struct chv_pinctrl *pctrl = gpiochip_get_data(gc); pctrl 1325 drivers/pinctrl/intel/pinctrl-cherryview.c intr_line = readl(chv_padreg(pctrl, pin, CHV_PADCTRL0)); pctrl 1328 drivers/pinctrl/intel/pinctrl-cherryview.c chv_writel(BIT(intr_line), pctrl->regs + CHV_INTSTAT); pctrl 1336 drivers/pinctrl/intel/pinctrl-cherryview.c struct chv_pinctrl *pctrl = gpiochip_get_data(gc); pctrl 1343 drivers/pinctrl/intel/pinctrl-cherryview.c intr_line = readl(chv_padreg(pctrl, pin, CHV_PADCTRL0)); pctrl 1347 drivers/pinctrl/intel/pinctrl-cherryview.c value = readl(pctrl->regs + CHV_INTMASK); pctrl 1352 drivers/pinctrl/intel/pinctrl-cherryview.c chv_writel(value, pctrl->regs + CHV_INTMASK); pctrl 1381 drivers/pinctrl/intel/pinctrl-cherryview.c struct chv_pinctrl *pctrl = gpiochip_get_data(gc); pctrl 1388 drivers/pinctrl/intel/pinctrl-cherryview.c intsel = readl(chv_padreg(pctrl, pin, CHV_PADCTRL0)); pctrl 1392 drivers/pinctrl/intel/pinctrl-cherryview.c value = readl(chv_padreg(pctrl, pin, CHV_PADCTRL1)); pctrl 1398 drivers/pinctrl/intel/pinctrl-cherryview.c if (!pctrl->intr_lines[intsel]) { pctrl 1400 drivers/pinctrl/intel/pinctrl-cherryview.c pctrl->intr_lines[intsel] = pin; pctrl 1412 drivers/pinctrl/intel/pinctrl-cherryview.c struct chv_pinctrl *pctrl = gpiochip_get_data(gc); pctrl 1432 drivers/pinctrl/intel/pinctrl-cherryview.c if (!chv_pad_locked(pctrl, pin)) { pctrl 1433 drivers/pinctrl/intel/pinctrl-cherryview.c void __iomem *reg = chv_padreg(pctrl, pin, CHV_PADCTRL1); pctrl 1455 drivers/pinctrl/intel/pinctrl-cherryview.c value = readl(chv_padreg(pctrl, pin, CHV_PADCTRL0)); pctrl 1459 drivers/pinctrl/intel/pinctrl-cherryview.c pctrl->intr_lines[value] = pin; pctrl 1474 drivers/pinctrl/intel/pinctrl-cherryview.c struct chv_pinctrl *pctrl = gpiochip_get_data(gc); pctrl 1483 drivers/pinctrl/intel/pinctrl-cherryview.c pending = readl(pctrl->regs + CHV_INTSTAT); pctrl 1486 drivers/pinctrl/intel/pinctrl-cherryview.c for_each_set_bit(intr_line, &pending, pctrl->community->nirqs) { pctrl 1489 drivers/pinctrl/intel/pinctrl-cherryview.c offset = pctrl->intr_lines[intr_line]; pctrl 1542 drivers/pinctrl/intel/pinctrl-cherryview.c struct chv_pinctrl *pctrl = gpiochip_get_data(chip); pctrl 1543 drivers/pinctrl/intel/pinctrl-cherryview.c const struct chv_community *community = pctrl->community; pctrl 1553 drivers/pinctrl/intel/pinctrl-cherryview.c intsel = readl(chv_padreg(pctrl, desc->number, CHV_PADCTRL0)); pctrl 1562 drivers/pinctrl/intel/pinctrl-cherryview.c static int chv_gpio_probe(struct chv_pinctrl *pctrl, int irq) pctrl 1565 drivers/pinctrl/intel/pinctrl-cherryview.c struct gpio_chip *chip = &pctrl->chip; pctrl 1567 drivers/pinctrl/intel/pinctrl-cherryview.c const struct chv_community *community = pctrl->community; pctrl 1573 drivers/pinctrl/intel/pinctrl-cherryview.c chip->label = dev_name(pctrl->dev); pctrl 1574 drivers/pinctrl/intel/pinctrl-cherryview.c chip->parent = pctrl->dev; pctrl 1579 drivers/pinctrl/intel/pinctrl-cherryview.c ret = devm_gpiochip_add_data(pctrl->dev, chip, pctrl); pctrl 1581 drivers/pinctrl/intel/pinctrl-cherryview.c dev_err(pctrl->dev, "Failed to register gpiochip\n"); pctrl 1587 drivers/pinctrl/intel/pinctrl-cherryview.c ret = gpiochip_add_pin_range(chip, dev_name(pctrl->dev), pctrl 1591 drivers/pinctrl/intel/pinctrl-cherryview.c dev_err(pctrl->dev, "failed to add GPIO pin range\n"); pctrl 1608 drivers/pinctrl/intel/pinctrl-cherryview.c chv_writel(GENMASK(31, pctrl->community->nirqs), pctrl 1609 drivers/pinctrl/intel/pinctrl-cherryview.c pctrl->regs + CHV_INTMASK); pctrl 1613 drivers/pinctrl/intel/pinctrl-cherryview.c chv_writel(0xffff, pctrl->regs + CHV_INTSTAT); pctrl 1616 drivers/pinctrl/intel/pinctrl-cherryview.c irq_base = devm_irq_alloc_descs(pctrl->dev, -1, 0, pctrl 1619 drivers/pinctrl/intel/pinctrl-cherryview.c dev_err(pctrl->dev, "Failed to allocate IRQ numbers\n"); pctrl 1624 drivers/pinctrl/intel/pinctrl-cherryview.c pctrl->irqchip.name = "chv-gpio"; pctrl 1625 drivers/pinctrl/intel/pinctrl-cherryview.c pctrl->irqchip.irq_startup = chv_gpio_irq_startup; pctrl 1626 drivers/pinctrl/intel/pinctrl-cherryview.c pctrl->irqchip.irq_ack = chv_gpio_irq_ack; pctrl 1627 drivers/pinctrl/intel/pinctrl-cherryview.c pctrl->irqchip.irq_mask = chv_gpio_irq_mask; pctrl 1628 drivers/pinctrl/intel/pinctrl-cherryview.c pctrl->irqchip.irq_unmask = chv_gpio_irq_unmask; pctrl 1629 drivers/pinctrl/intel/pinctrl-cherryview.c pctrl->irqchip.irq_set_type = chv_gpio_irq_type; pctrl 1630 drivers/pinctrl/intel/pinctrl-cherryview.c pctrl->irqchip.flags = IRQCHIP_SKIP_SET_WAKE; pctrl 1632 drivers/pinctrl/intel/pinctrl-cherryview.c ret = gpiochip_irqchip_add(chip, &pctrl->irqchip, 0, pctrl 1635 drivers/pinctrl/intel/pinctrl-cherryview.c dev_err(pctrl->dev, "failed to add IRQ chip\n"); pctrl 1649 drivers/pinctrl/intel/pinctrl-cherryview.c gpiochip_set_chained_irqchip(chip, &pctrl->irqchip, irq, pctrl 1658 drivers/pinctrl/intel/pinctrl-cherryview.c struct chv_pinctrl *pctrl = region_context; pctrl 1665 drivers/pinctrl/intel/pinctrl-cherryview.c chv_writel((u32)(*value), pctrl->regs + (u32)address); pctrl 1667 drivers/pinctrl/intel/pinctrl-cherryview.c *value = readl(pctrl->regs + (u32)address); pctrl 1678 drivers/pinctrl/intel/pinctrl-cherryview.c struct chv_pinctrl *pctrl; pctrl 1687 drivers/pinctrl/intel/pinctrl-cherryview.c pctrl = devm_kzalloc(&pdev->dev, sizeof(*pctrl), GFP_KERNEL); pctrl 1688 drivers/pinctrl/intel/pinctrl-cherryview.c if (!pctrl) pctrl 1693 drivers/pinctrl/intel/pinctrl-cherryview.c pctrl->community = chv_communities[i]; pctrl 1699 drivers/pinctrl/intel/pinctrl-cherryview.c pctrl->dev = &pdev->dev; pctrl 1702 drivers/pinctrl/intel/pinctrl-cherryview.c pctrl->saved_pin_context = devm_kcalloc(pctrl->dev, pctrl 1703 drivers/pinctrl/intel/pinctrl-cherryview.c pctrl->community->npins, sizeof(*pctrl->saved_pin_context), pctrl 1705 drivers/pinctrl/intel/pinctrl-cherryview.c if (!pctrl->saved_pin_context) pctrl 1709 drivers/pinctrl/intel/pinctrl-cherryview.c pctrl->regs = devm_platform_ioremap_resource(pdev, 0); pctrl 1710 drivers/pinctrl/intel/pinctrl-cherryview.c if (IS_ERR(pctrl->regs)) pctrl 1711 drivers/pinctrl/intel/pinctrl-cherryview.c return PTR_ERR(pctrl->regs); pctrl 1717 drivers/pinctrl/intel/pinctrl-cherryview.c pctrl->pctldesc = chv_pinctrl_desc; pctrl 1718 drivers/pinctrl/intel/pinctrl-cherryview.c pctrl->pctldesc.name = dev_name(&pdev->dev); pctrl 1719 drivers/pinctrl/intel/pinctrl-cherryview.c pctrl->pctldesc.pins = pctrl->community->pins; pctrl 1720 drivers/pinctrl/intel/pinctrl-cherryview.c pctrl->pctldesc.npins = pctrl->community->npins; pctrl 1722 drivers/pinctrl/intel/pinctrl-cherryview.c pctrl->pctldev = devm_pinctrl_register(&pdev->dev, &pctrl->pctldesc, pctrl 1723 drivers/pinctrl/intel/pinctrl-cherryview.c pctrl); pctrl 1724 drivers/pinctrl/intel/pinctrl-cherryview.c if (IS_ERR(pctrl->pctldev)) { pctrl 1726 drivers/pinctrl/intel/pinctrl-cherryview.c return PTR_ERR(pctrl->pctldev); pctrl 1729 drivers/pinctrl/intel/pinctrl-cherryview.c ret = chv_gpio_probe(pctrl, irq); pctrl 1734 drivers/pinctrl/intel/pinctrl-cherryview.c pctrl->community->acpi_space_id, pctrl 1736 drivers/pinctrl/intel/pinctrl-cherryview.c NULL, pctrl); pctrl 1740 drivers/pinctrl/intel/pinctrl-cherryview.c platform_set_drvdata(pdev, pctrl); pctrl 1747 drivers/pinctrl/intel/pinctrl-cherryview.c struct chv_pinctrl *pctrl = platform_get_drvdata(pdev); pctrl 1750 drivers/pinctrl/intel/pinctrl-cherryview.c pctrl->community->acpi_space_id, pctrl 1759 drivers/pinctrl/intel/pinctrl-cherryview.c struct chv_pinctrl *pctrl = dev_get_drvdata(dev); pctrl 1765 drivers/pinctrl/intel/pinctrl-cherryview.c pctrl->saved_intmask = readl(pctrl->regs + CHV_INTMASK); pctrl 1767 drivers/pinctrl/intel/pinctrl-cherryview.c for (i = 0; i < pctrl->community->npins; i++) { pctrl 1772 drivers/pinctrl/intel/pinctrl-cherryview.c desc = &pctrl->community->pins[i]; pctrl 1773 drivers/pinctrl/intel/pinctrl-cherryview.c if (chv_pad_locked(pctrl, desc->number)) pctrl 1776 drivers/pinctrl/intel/pinctrl-cherryview.c ctx = &pctrl->saved_pin_context[i]; pctrl 1778 drivers/pinctrl/intel/pinctrl-cherryview.c reg = chv_padreg(pctrl, desc->number, CHV_PADCTRL0); pctrl 1781 drivers/pinctrl/intel/pinctrl-cherryview.c reg = chv_padreg(pctrl, desc->number, CHV_PADCTRL1); pctrl 1792 drivers/pinctrl/intel/pinctrl-cherryview.c struct chv_pinctrl *pctrl = dev_get_drvdata(dev); pctrl 1803 drivers/pinctrl/intel/pinctrl-cherryview.c chv_writel(0, pctrl->regs + CHV_INTMASK); pctrl 1805 drivers/pinctrl/intel/pinctrl-cherryview.c for (i = 0; i < pctrl->community->npins; i++) { pctrl 1811 drivers/pinctrl/intel/pinctrl-cherryview.c desc = &pctrl->community->pins[i]; pctrl 1812 drivers/pinctrl/intel/pinctrl-cherryview.c if (chv_pad_locked(pctrl, desc->number)) pctrl 1815 drivers/pinctrl/intel/pinctrl-cherryview.c ctx = &pctrl->saved_pin_context[i]; pctrl 1818 drivers/pinctrl/intel/pinctrl-cherryview.c reg = chv_padreg(pctrl, desc->number, CHV_PADCTRL0); pctrl 1822 drivers/pinctrl/intel/pinctrl-cherryview.c dev_dbg(pctrl->dev, "restored pin %2u ctrl0 0x%08x\n", pctrl 1826 drivers/pinctrl/intel/pinctrl-cherryview.c reg = chv_padreg(pctrl, desc->number, CHV_PADCTRL1); pctrl 1830 drivers/pinctrl/intel/pinctrl-cherryview.c dev_dbg(pctrl->dev, "restored pin %2u ctrl1 0x%08x\n", pctrl 1839 drivers/pinctrl/intel/pinctrl-cherryview.c chv_writel(0xffff, pctrl->regs + CHV_INTSTAT); pctrl 1840 drivers/pinctrl/intel/pinctrl-cherryview.c chv_writel(pctrl->saved_intmask, pctrl->regs + CHV_INTMASK); pctrl 124 drivers/pinctrl/intel/pinctrl-intel.c static struct intel_community *intel_get_community(struct intel_pinctrl *pctrl, pctrl 130 drivers/pinctrl/intel/pinctrl-intel.c for (i = 0; i < pctrl->ncommunities; i++) { pctrl 131 drivers/pinctrl/intel/pinctrl-intel.c community = &pctrl->communities[i]; pctrl 137 drivers/pinctrl/intel/pinctrl-intel.c dev_warn(pctrl->dev, "failed to find community for pin %u\n", pin); pctrl 157 drivers/pinctrl/intel/pinctrl-intel.c static void __iomem *intel_get_padcfg(struct intel_pinctrl *pctrl, pctrl 164 drivers/pinctrl/intel/pinctrl-intel.c community = intel_get_community(pctrl, pin); pctrl 177 drivers/pinctrl/intel/pinctrl-intel.c static bool intel_pad_owned_by_host(struct intel_pinctrl *pctrl, unsigned int pin) pctrl 184 drivers/pinctrl/intel/pinctrl-intel.c community = intel_get_community(pctrl, pin); pctrl 202 drivers/pinctrl/intel/pinctrl-intel.c static bool intel_pad_acpi_mode(struct intel_pinctrl *pctrl, unsigned int pin) pctrl 209 drivers/pinctrl/intel/pinctrl-intel.c community = intel_get_community(pctrl, pin); pctrl 245 drivers/pinctrl/intel/pinctrl-intel.c static int intel_pad_locked(struct intel_pinctrl *pctrl, unsigned int pin) pctrl 253 drivers/pinctrl/intel/pinctrl-intel.c community = intel_get_community(pctrl, pin); pctrl 283 drivers/pinctrl/intel/pinctrl-intel.c static bool intel_pad_is_unlocked(struct intel_pinctrl *pctrl, unsigned int pin) pctrl 285 drivers/pinctrl/intel/pinctrl-intel.c return (intel_pad_locked(pctrl, pin) & PAD_LOCKED) == PAD_UNLOCKED; pctrl 288 drivers/pinctrl/intel/pinctrl-intel.c static bool intel_pad_usable(struct intel_pinctrl *pctrl, unsigned int pin) pctrl 290 drivers/pinctrl/intel/pinctrl-intel.c return intel_pad_owned_by_host(pctrl, pin) && intel_pad_is_unlocked(pctrl, pin); pctrl 295 drivers/pinctrl/intel/pinctrl-intel.c struct intel_pinctrl *pctrl = pinctrl_dev_get_drvdata(pctldev); pctrl 297 drivers/pinctrl/intel/pinctrl-intel.c return pctrl->soc->ngroups; pctrl 303 drivers/pinctrl/intel/pinctrl-intel.c struct intel_pinctrl *pctrl = pinctrl_dev_get_drvdata(pctldev); pctrl 305 drivers/pinctrl/intel/pinctrl-intel.c return pctrl->soc->groups[group].name; pctrl 311 drivers/pinctrl/intel/pinctrl-intel.c struct intel_pinctrl *pctrl = pinctrl_dev_get_drvdata(pctldev); pctrl 313 drivers/pinctrl/intel/pinctrl-intel.c *pins = pctrl->soc->groups[group].pins; pctrl 314 drivers/pinctrl/intel/pinctrl-intel.c *npins = pctrl->soc->groups[group].npins; pctrl 321 drivers/pinctrl/intel/pinctrl-intel.c struct intel_pinctrl *pctrl = pinctrl_dev_get_drvdata(pctldev); pctrl 327 drivers/pinctrl/intel/pinctrl-intel.c if (!intel_pad_owned_by_host(pctrl, pin)) { pctrl 332 drivers/pinctrl/intel/pinctrl-intel.c cfg0 = readl(intel_get_padcfg(pctrl, pin, PADCFG0)); pctrl 333 drivers/pinctrl/intel/pinctrl-intel.c cfg1 = readl(intel_get_padcfg(pctrl, pin, PADCFG1)); pctrl 344 drivers/pinctrl/intel/pinctrl-intel.c padcfg = intel_get_padcfg(pctrl, pin, PADCFG2); pctrl 348 drivers/pinctrl/intel/pinctrl-intel.c locked = intel_pad_locked(pctrl, pin); pctrl 349 drivers/pinctrl/intel/pinctrl-intel.c acpi = intel_pad_acpi_mode(pctrl, pin); pctrl 378 drivers/pinctrl/intel/pinctrl-intel.c struct intel_pinctrl *pctrl = pinctrl_dev_get_drvdata(pctldev); pctrl 380 drivers/pinctrl/intel/pinctrl-intel.c return pctrl->soc->nfunctions; pctrl 386 drivers/pinctrl/intel/pinctrl-intel.c struct intel_pinctrl *pctrl = pinctrl_dev_get_drvdata(pctldev); pctrl 388 drivers/pinctrl/intel/pinctrl-intel.c return pctrl->soc->functions[function].name; pctrl 396 drivers/pinctrl/intel/pinctrl-intel.c struct intel_pinctrl *pctrl = pinctrl_dev_get_drvdata(pctldev); pctrl 398 drivers/pinctrl/intel/pinctrl-intel.c *groups = pctrl->soc->functions[function].groups; pctrl 399 drivers/pinctrl/intel/pinctrl-intel.c *ngroups = pctrl->soc->functions[function].ngroups; pctrl 406 drivers/pinctrl/intel/pinctrl-intel.c struct intel_pinctrl *pctrl = pinctrl_dev_get_drvdata(pctldev); pctrl 407 drivers/pinctrl/intel/pinctrl-intel.c const struct intel_pingroup *grp = &pctrl->soc->groups[group]; pctrl 411 drivers/pinctrl/intel/pinctrl-intel.c raw_spin_lock_irqsave(&pctrl->lock, flags); pctrl 418 drivers/pinctrl/intel/pinctrl-intel.c if (!intel_pad_usable(pctrl, grp->pins[i])) { pctrl 419 drivers/pinctrl/intel/pinctrl-intel.c raw_spin_unlock_irqrestore(&pctrl->lock, flags); pctrl 429 drivers/pinctrl/intel/pinctrl-intel.c padcfg0 = intel_get_padcfg(pctrl, grp->pins[i], PADCFG0); pctrl 442 drivers/pinctrl/intel/pinctrl-intel.c raw_spin_unlock_irqrestore(&pctrl->lock, flags); pctrl 483 drivers/pinctrl/intel/pinctrl-intel.c struct intel_pinctrl *pctrl = pinctrl_dev_get_drvdata(pctldev); pctrl 487 drivers/pinctrl/intel/pinctrl-intel.c raw_spin_lock_irqsave(&pctrl->lock, flags); pctrl 489 drivers/pinctrl/intel/pinctrl-intel.c if (!intel_pad_owned_by_host(pctrl, pin)) { pctrl 490 drivers/pinctrl/intel/pinctrl-intel.c raw_spin_unlock_irqrestore(&pctrl->lock, flags); pctrl 494 drivers/pinctrl/intel/pinctrl-intel.c if (!intel_pad_is_unlocked(pctrl, pin)) { pctrl 495 drivers/pinctrl/intel/pinctrl-intel.c raw_spin_unlock_irqrestore(&pctrl->lock, flags); pctrl 499 drivers/pinctrl/intel/pinctrl-intel.c padcfg0 = intel_get_padcfg(pctrl, pin, PADCFG0); pctrl 508 drivers/pinctrl/intel/pinctrl-intel.c raw_spin_unlock_irqrestore(&pctrl->lock, flags); pctrl 517 drivers/pinctrl/intel/pinctrl-intel.c raw_spin_unlock_irqrestore(&pctrl->lock, flags); pctrl 526 drivers/pinctrl/intel/pinctrl-intel.c struct intel_pinctrl *pctrl = pinctrl_dev_get_drvdata(pctldev); pctrl 530 drivers/pinctrl/intel/pinctrl-intel.c raw_spin_lock_irqsave(&pctrl->lock, flags); pctrl 532 drivers/pinctrl/intel/pinctrl-intel.c padcfg0 = intel_get_padcfg(pctrl, pin, PADCFG0); pctrl 535 drivers/pinctrl/intel/pinctrl-intel.c raw_spin_unlock_irqrestore(&pctrl->lock, flags); pctrl 552 drivers/pinctrl/intel/pinctrl-intel.c struct intel_pinctrl *pctrl = pinctrl_dev_get_drvdata(pctldev); pctrl 558 drivers/pinctrl/intel/pinctrl-intel.c if (!intel_pad_owned_by_host(pctrl, pin)) pctrl 561 drivers/pinctrl/intel/pinctrl-intel.c community = intel_get_community(pctrl, pin); pctrl 562 drivers/pinctrl/intel/pinctrl-intel.c value = readl(intel_get_padcfg(pctrl, pin, PADCFG1)); pctrl 616 drivers/pinctrl/intel/pinctrl-intel.c padcfg2 = intel_get_padcfg(pctrl, pin, PADCFG2); pctrl 638 drivers/pinctrl/intel/pinctrl-intel.c static int intel_config_set_pull(struct intel_pinctrl *pctrl, unsigned int pin, pctrl 649 drivers/pinctrl/intel/pinctrl-intel.c raw_spin_lock_irqsave(&pctrl->lock, flags); pctrl 651 drivers/pinctrl/intel/pinctrl-intel.c community = intel_get_community(pctrl, pin); pctrl 652 drivers/pinctrl/intel/pinctrl-intel.c padcfg1 = intel_get_padcfg(pctrl, pin, PADCFG1); pctrl 711 drivers/pinctrl/intel/pinctrl-intel.c raw_spin_unlock_irqrestore(&pctrl->lock, flags); pctrl 716 drivers/pinctrl/intel/pinctrl-intel.c static int intel_config_set_debounce(struct intel_pinctrl *pctrl, pctrl 724 drivers/pinctrl/intel/pinctrl-intel.c padcfg2 = intel_get_padcfg(pctrl, pin, PADCFG2); pctrl 728 drivers/pinctrl/intel/pinctrl-intel.c padcfg0 = intel_get_padcfg(pctrl, pin, PADCFG0); pctrl 730 drivers/pinctrl/intel/pinctrl-intel.c raw_spin_lock_irqsave(&pctrl->lock, flags); pctrl 758 drivers/pinctrl/intel/pinctrl-intel.c raw_spin_unlock_irqrestore(&pctrl->lock, flags); pctrl 766 drivers/pinctrl/intel/pinctrl-intel.c struct intel_pinctrl *pctrl = pinctrl_dev_get_drvdata(pctldev); pctrl 769 drivers/pinctrl/intel/pinctrl-intel.c if (!intel_pad_usable(pctrl, pin)) pctrl 777 drivers/pinctrl/intel/pinctrl-intel.c ret = intel_config_set_pull(pctrl, pin, configs[i]); pctrl 783 drivers/pinctrl/intel/pinctrl-intel.c ret = intel_config_set_debounce(pctrl, pin, pctrl 821 drivers/pinctrl/intel/pinctrl-intel.c static int intel_gpio_to_pin(struct intel_pinctrl *pctrl, unsigned int offset, pctrl 827 drivers/pinctrl/intel/pinctrl-intel.c for (i = 0; i < pctrl->ncommunities; i++) { pctrl 828 drivers/pinctrl/intel/pinctrl-intel.c const struct intel_community *comm = &pctrl->communities[i]; pctrl 862 drivers/pinctrl/intel/pinctrl-intel.c static __maybe_unused int intel_pin_to_gpio(struct intel_pinctrl *pctrl, int pin) pctrl 867 drivers/pinctrl/intel/pinctrl-intel.c community = intel_get_community(pctrl, pin); pctrl 880 drivers/pinctrl/intel/pinctrl-intel.c struct intel_pinctrl *pctrl = gpiochip_get_data(chip); pctrl 885 drivers/pinctrl/intel/pinctrl-intel.c pin = intel_gpio_to_pin(pctrl, offset, NULL, NULL); pctrl 889 drivers/pinctrl/intel/pinctrl-intel.c reg = intel_get_padcfg(pctrl, pin, PADCFG0); pctrl 903 drivers/pinctrl/intel/pinctrl-intel.c struct intel_pinctrl *pctrl = gpiochip_get_data(chip); pctrl 909 drivers/pinctrl/intel/pinctrl-intel.c pin = intel_gpio_to_pin(pctrl, offset, NULL, NULL); pctrl 913 drivers/pinctrl/intel/pinctrl-intel.c reg = intel_get_padcfg(pctrl, pin, PADCFG0); pctrl 917 drivers/pinctrl/intel/pinctrl-intel.c raw_spin_lock_irqsave(&pctrl->lock, flags); pctrl 924 drivers/pinctrl/intel/pinctrl-intel.c raw_spin_unlock_irqrestore(&pctrl->lock, flags); pctrl 929 drivers/pinctrl/intel/pinctrl-intel.c struct intel_pinctrl *pctrl = gpiochip_get_data(chip); pctrl 934 drivers/pinctrl/intel/pinctrl-intel.c pin = intel_gpio_to_pin(pctrl, offset, NULL, NULL); pctrl 938 drivers/pinctrl/intel/pinctrl-intel.c reg = intel_get_padcfg(pctrl, pin, PADCFG0); pctrl 977 drivers/pinctrl/intel/pinctrl-intel.c struct intel_pinctrl *pctrl = gpiochip_get_data(gc); pctrl 982 drivers/pinctrl/intel/pinctrl-intel.c pin = intel_gpio_to_pin(pctrl, irqd_to_hwirq(d), &community, &padgrp); pctrl 990 drivers/pinctrl/intel/pinctrl-intel.c raw_spin_lock(&pctrl->lock); pctrl 992 drivers/pinctrl/intel/pinctrl-intel.c raw_spin_unlock(&pctrl->lock); pctrl 999 drivers/pinctrl/intel/pinctrl-intel.c struct intel_pinctrl *pctrl = gpiochip_get_data(gc); pctrl 1004 drivers/pinctrl/intel/pinctrl-intel.c pin = intel_gpio_to_pin(pctrl, irqd_to_hwirq(d), &community, &padgrp); pctrl 1017 drivers/pinctrl/intel/pinctrl-intel.c raw_spin_lock_irqsave(&pctrl->lock, flags); pctrl 1028 drivers/pinctrl/intel/pinctrl-intel.c raw_spin_unlock_irqrestore(&pctrl->lock, flags); pctrl 1045 drivers/pinctrl/intel/pinctrl-intel.c struct intel_pinctrl *pctrl = gpiochip_get_data(gc); pctrl 1046 drivers/pinctrl/intel/pinctrl-intel.c unsigned int pin = intel_gpio_to_pin(pctrl, irqd_to_hwirq(d), NULL, NULL); pctrl 1051 drivers/pinctrl/intel/pinctrl-intel.c reg = intel_get_padcfg(pctrl, pin, PADCFG0); pctrl 1060 drivers/pinctrl/intel/pinctrl-intel.c if (intel_pad_acpi_mode(pctrl, pin)) { pctrl 1061 drivers/pinctrl/intel/pinctrl-intel.c dev_warn(pctrl->dev, "pin %u cannot be used as IRQ\n", pin); pctrl 1065 drivers/pinctrl/intel/pinctrl-intel.c raw_spin_lock_irqsave(&pctrl->lock, flags); pctrl 1094 drivers/pinctrl/intel/pinctrl-intel.c raw_spin_unlock_irqrestore(&pctrl->lock, flags); pctrl 1102 drivers/pinctrl/intel/pinctrl-intel.c struct intel_pinctrl *pctrl = gpiochip_get_data(gc); pctrl 1103 drivers/pinctrl/intel/pinctrl-intel.c unsigned int pin = intel_gpio_to_pin(pctrl, irqd_to_hwirq(d), NULL, NULL); pctrl 1106 drivers/pinctrl/intel/pinctrl-intel.c enable_irq_wake(pctrl->irq); pctrl 1108 drivers/pinctrl/intel/pinctrl-intel.c disable_irq_wake(pctrl->irq); pctrl 1110 drivers/pinctrl/intel/pinctrl-intel.c dev_dbg(pctrl->dev, "%sable wake for pin %u\n", on ? "en" : "dis", pin); pctrl 1114 drivers/pinctrl/intel/pinctrl-intel.c static irqreturn_t intel_gpio_community_irq_handler(struct intel_pinctrl *pctrl, pctrl 1117 drivers/pinctrl/intel/pinctrl-intel.c struct gpio_chip *gc = &pctrl->chip; pctrl 1150 drivers/pinctrl/intel/pinctrl-intel.c struct intel_pinctrl *pctrl = data; pctrl 1155 drivers/pinctrl/intel/pinctrl-intel.c for (i = 0; i < pctrl->ncommunities; i++) { pctrl 1156 drivers/pinctrl/intel/pinctrl-intel.c community = &pctrl->communities[i]; pctrl 1157 drivers/pinctrl/intel/pinctrl-intel.c ret |= intel_gpio_community_irq_handler(pctrl, community); pctrl 1163 drivers/pinctrl/intel/pinctrl-intel.c static int intel_gpio_add_pin_ranges(struct intel_pinctrl *pctrl, pctrl 1174 drivers/pinctrl/intel/pinctrl-intel.c ret = gpiochip_add_pin_range(&pctrl->chip, dev_name(pctrl->dev), pctrl 1184 drivers/pinctrl/intel/pinctrl-intel.c static unsigned intel_gpio_ngpio(const struct intel_pinctrl *pctrl) pctrl 1190 drivers/pinctrl/intel/pinctrl-intel.c for (i = 0; i < pctrl->ncommunities; i++) { pctrl 1191 drivers/pinctrl/intel/pinctrl-intel.c community = &pctrl->communities[i]; pctrl 1206 drivers/pinctrl/intel/pinctrl-intel.c static int intel_gpio_probe(struct intel_pinctrl *pctrl, int irq) pctrl 1210 drivers/pinctrl/intel/pinctrl-intel.c pctrl->chip = intel_gpio_chip; pctrl 1213 drivers/pinctrl/intel/pinctrl-intel.c pctrl->chip.ngpio = intel_gpio_ngpio(pctrl); pctrl 1214 drivers/pinctrl/intel/pinctrl-intel.c pctrl->chip.label = dev_name(pctrl->dev); pctrl 1215 drivers/pinctrl/intel/pinctrl-intel.c pctrl->chip.parent = pctrl->dev; pctrl 1216 drivers/pinctrl/intel/pinctrl-intel.c pctrl->chip.base = -1; pctrl 1217 drivers/pinctrl/intel/pinctrl-intel.c pctrl->irq = irq; pctrl 1220 drivers/pinctrl/intel/pinctrl-intel.c pctrl->irqchip.name = dev_name(pctrl->dev); pctrl 1221 drivers/pinctrl/intel/pinctrl-intel.c pctrl->irqchip.irq_ack = intel_gpio_irq_ack; pctrl 1222 drivers/pinctrl/intel/pinctrl-intel.c pctrl->irqchip.irq_mask = intel_gpio_irq_mask; pctrl 1223 drivers/pinctrl/intel/pinctrl-intel.c pctrl->irqchip.irq_unmask = intel_gpio_irq_unmask; pctrl 1224 drivers/pinctrl/intel/pinctrl-intel.c pctrl->irqchip.irq_set_type = intel_gpio_irq_type; pctrl 1225 drivers/pinctrl/intel/pinctrl-intel.c pctrl->irqchip.irq_set_wake = intel_gpio_irq_wake; pctrl 1226 drivers/pinctrl/intel/pinctrl-intel.c pctrl->irqchip.flags = IRQCHIP_MASK_ON_SUSPEND; pctrl 1228 drivers/pinctrl/intel/pinctrl-intel.c ret = devm_gpiochip_add_data(pctrl->dev, &pctrl->chip, pctrl); pctrl 1230 drivers/pinctrl/intel/pinctrl-intel.c dev_err(pctrl->dev, "failed to register gpiochip\n"); pctrl 1234 drivers/pinctrl/intel/pinctrl-intel.c for (i = 0; i < pctrl->ncommunities; i++) { pctrl 1235 drivers/pinctrl/intel/pinctrl-intel.c struct intel_community *community = &pctrl->communities[i]; pctrl 1237 drivers/pinctrl/intel/pinctrl-intel.c ret = intel_gpio_add_pin_ranges(pctrl, community); pctrl 1239 drivers/pinctrl/intel/pinctrl-intel.c dev_err(pctrl->dev, "failed to add GPIO pin range\n"); pctrl 1249 drivers/pinctrl/intel/pinctrl-intel.c ret = devm_request_irq(pctrl->dev, irq, intel_gpio_irq, pctrl 1251 drivers/pinctrl/intel/pinctrl-intel.c dev_name(pctrl->dev), pctrl); pctrl 1253 drivers/pinctrl/intel/pinctrl-intel.c dev_err(pctrl->dev, "failed to request interrupt\n"); pctrl 1257 drivers/pinctrl/intel/pinctrl-intel.c ret = gpiochip_irqchip_add(&pctrl->chip, &pctrl->irqchip, 0, pctrl 1260 drivers/pinctrl/intel/pinctrl-intel.c dev_err(pctrl->dev, "failed to add irqchip\n"); pctrl 1264 drivers/pinctrl/intel/pinctrl-intel.c gpiochip_set_chained_irqchip(&pctrl->chip, &pctrl->irqchip, irq, NULL); pctrl 1268 drivers/pinctrl/intel/pinctrl-intel.c static int intel_pinctrl_add_padgroups(struct intel_pinctrl *pctrl, pctrl 1281 drivers/pinctrl/intel/pinctrl-intel.c gpps = devm_kcalloc(pctrl->dev, ngpps, sizeof(*gpps), GFP_KERNEL); pctrl 1321 drivers/pinctrl/intel/pinctrl-intel.c static int intel_pinctrl_pm_init(struct intel_pinctrl *pctrl) pctrl 1324 drivers/pinctrl/intel/pinctrl-intel.c const struct intel_pinctrl_soc_data *soc = pctrl->soc; pctrl 1329 drivers/pinctrl/intel/pinctrl-intel.c pads = devm_kcalloc(pctrl->dev, soc->npins, sizeof(*pads), GFP_KERNEL); pctrl 1333 drivers/pinctrl/intel/pinctrl-intel.c communities = devm_kcalloc(pctrl->dev, pctrl->ncommunities, pctrl 1339 drivers/pinctrl/intel/pinctrl-intel.c for (i = 0; i < pctrl->ncommunities; i++) { pctrl 1340 drivers/pinctrl/intel/pinctrl-intel.c struct intel_community *community = &pctrl->communities[i]; pctrl 1343 drivers/pinctrl/intel/pinctrl-intel.c intmask = devm_kcalloc(pctrl->dev, community->ngpps, pctrl 1350 drivers/pinctrl/intel/pinctrl-intel.c hostown = devm_kcalloc(pctrl->dev, community->ngpps, pctrl 1358 drivers/pinctrl/intel/pinctrl-intel.c pctrl->context.pads = pads; pctrl 1359 drivers/pinctrl/intel/pinctrl-intel.c pctrl->context.communities = communities; pctrl 1368 drivers/pinctrl/intel/pinctrl-intel.c struct intel_pinctrl *pctrl; pctrl 1374 drivers/pinctrl/intel/pinctrl-intel.c pctrl = devm_kzalloc(&pdev->dev, sizeof(*pctrl), GFP_KERNEL); pctrl 1375 drivers/pinctrl/intel/pinctrl-intel.c if (!pctrl) pctrl 1378 drivers/pinctrl/intel/pinctrl-intel.c pctrl->dev = &pdev->dev; pctrl 1379 drivers/pinctrl/intel/pinctrl-intel.c pctrl->soc = soc_data; pctrl 1380 drivers/pinctrl/intel/pinctrl-intel.c raw_spin_lock_init(&pctrl->lock); pctrl 1386 drivers/pinctrl/intel/pinctrl-intel.c pctrl->ncommunities = pctrl->soc->ncommunities; pctrl 1387 drivers/pinctrl/intel/pinctrl-intel.c pctrl->communities = devm_kcalloc(&pdev->dev, pctrl->ncommunities, pctrl 1388 drivers/pinctrl/intel/pinctrl-intel.c sizeof(*pctrl->communities), GFP_KERNEL); pctrl 1389 drivers/pinctrl/intel/pinctrl-intel.c if (!pctrl->communities) pctrl 1392 drivers/pinctrl/intel/pinctrl-intel.c for (i = 0; i < pctrl->ncommunities; i++) { pctrl 1393 drivers/pinctrl/intel/pinctrl-intel.c struct intel_community *community = &pctrl->communities[i]; pctrl 1397 drivers/pinctrl/intel/pinctrl-intel.c *community = pctrl->soc->communities[i]; pctrl 1423 drivers/pinctrl/intel/pinctrl-intel.c ret = intel_pinctrl_add_padgroups(pctrl, community); pctrl 1432 drivers/pinctrl/intel/pinctrl-intel.c ret = intel_pinctrl_pm_init(pctrl); pctrl 1436 drivers/pinctrl/intel/pinctrl-intel.c pctrl->pctldesc = intel_pinctrl_desc; pctrl 1437 drivers/pinctrl/intel/pinctrl-intel.c pctrl->pctldesc.name = dev_name(&pdev->dev); pctrl 1438 drivers/pinctrl/intel/pinctrl-intel.c pctrl->pctldesc.pins = pctrl->soc->pins; pctrl 1439 drivers/pinctrl/intel/pinctrl-intel.c pctrl->pctldesc.npins = pctrl->soc->npins; pctrl 1441 drivers/pinctrl/intel/pinctrl-intel.c pctrl->pctldev = devm_pinctrl_register(&pdev->dev, &pctrl->pctldesc, pctrl 1442 drivers/pinctrl/intel/pinctrl-intel.c pctrl); pctrl 1443 drivers/pinctrl/intel/pinctrl-intel.c if (IS_ERR(pctrl->pctldev)) { pctrl 1445 drivers/pinctrl/intel/pinctrl-intel.c return PTR_ERR(pctrl->pctldev); pctrl 1448 drivers/pinctrl/intel/pinctrl-intel.c ret = intel_gpio_probe(pctrl, irq); pctrl 1452 drivers/pinctrl/intel/pinctrl-intel.c platform_set_drvdata(pdev, pctrl); pctrl 1500 drivers/pinctrl/intel/pinctrl-intel.c static bool intel_pinctrl_should_save(struct intel_pinctrl *pctrl, unsigned int pin) pctrl 1502 drivers/pinctrl/intel/pinctrl-intel.c const struct pin_desc *pd = pin_desc_get(pctrl->pctldev, pin); pctrl 1504 drivers/pinctrl/intel/pinctrl-intel.c if (!pd || !intel_pad_usable(pctrl, pin)) pctrl 1514 drivers/pinctrl/intel/pinctrl-intel.c gpiochip_line_is_irq(&pctrl->chip, intel_pin_to_gpio(pctrl, pin))) pctrl 1522 drivers/pinctrl/intel/pinctrl-intel.c struct intel_pinctrl *pctrl = dev_get_drvdata(dev); pctrl 1527 drivers/pinctrl/intel/pinctrl-intel.c pads = pctrl->context.pads; pctrl 1528 drivers/pinctrl/intel/pinctrl-intel.c for (i = 0; i < pctrl->soc->npins; i++) { pctrl 1529 drivers/pinctrl/intel/pinctrl-intel.c const struct pinctrl_pin_desc *desc = &pctrl->soc->pins[i]; pctrl 1533 drivers/pinctrl/intel/pinctrl-intel.c if (!intel_pinctrl_should_save(pctrl, desc->number)) pctrl 1536 drivers/pinctrl/intel/pinctrl-intel.c val = readl(intel_get_padcfg(pctrl, desc->number, PADCFG0)); pctrl 1538 drivers/pinctrl/intel/pinctrl-intel.c val = readl(intel_get_padcfg(pctrl, desc->number, PADCFG1)); pctrl 1541 drivers/pinctrl/intel/pinctrl-intel.c padcfg = intel_get_padcfg(pctrl, desc->number, PADCFG2); pctrl 1546 drivers/pinctrl/intel/pinctrl-intel.c communities = pctrl->context.communities; pctrl 1547 drivers/pinctrl/intel/pinctrl-intel.c for (i = 0; i < pctrl->ncommunities; i++) { pctrl 1548 drivers/pinctrl/intel/pinctrl-intel.c struct intel_community *community = &pctrl->communities[i]; pctrl 1565 drivers/pinctrl/intel/pinctrl-intel.c static void intel_gpio_irq_init(struct intel_pinctrl *pctrl) pctrl 1569 drivers/pinctrl/intel/pinctrl-intel.c for (i = 0; i < pctrl->ncommunities; i++) { pctrl 1574 drivers/pinctrl/intel/pinctrl-intel.c community = &pctrl->communities[i]; pctrl 1612 drivers/pinctrl/intel/pinctrl-intel.c struct intel_pinctrl *pctrl = dev_get_drvdata(dev); pctrl 1618 drivers/pinctrl/intel/pinctrl-intel.c intel_gpio_irq_init(pctrl); pctrl 1620 drivers/pinctrl/intel/pinctrl-intel.c pads = pctrl->context.pads; pctrl 1621 drivers/pinctrl/intel/pinctrl-intel.c for (i = 0; i < pctrl->soc->npins; i++) { pctrl 1622 drivers/pinctrl/intel/pinctrl-intel.c const struct pinctrl_pin_desc *desc = &pctrl->soc->pins[i]; pctrl 1626 drivers/pinctrl/intel/pinctrl-intel.c if (!intel_pinctrl_should_save(pctrl, desc->number)) pctrl 1629 drivers/pinctrl/intel/pinctrl-intel.c padcfg = intel_get_padcfg(pctrl, desc->number, PADCFG0); pctrl 1637 drivers/pinctrl/intel/pinctrl-intel.c padcfg = intel_get_padcfg(pctrl, desc->number, PADCFG1); pctrl 1645 drivers/pinctrl/intel/pinctrl-intel.c padcfg = intel_get_padcfg(pctrl, desc->number, PADCFG2); pctrl 1656 drivers/pinctrl/intel/pinctrl-intel.c communities = pctrl->context.communities; pctrl 1657 drivers/pinctrl/intel/pinctrl-intel.c for (i = 0; i < pctrl->ncommunities; i++) { pctrl 1658 drivers/pinctrl/intel/pinctrl-intel.c struct intel_community *community = &pctrl->communities[i]; pctrl 1678 drivers/pinctrl/intel/pinctrl-intel.c requested = intel_gpio_is_requested(&pctrl->chip, pctrl 554 drivers/pinctrl/mediatek/pinctrl-moore.c err = pinctrl_generic_add_group(hw->pctrl, group->name, pctrl 574 drivers/pinctrl/mediatek/pinctrl-moore.c err = pinmux_generic_add_function(hw->pctrl, func->name, pctrl 650 drivers/pinctrl/mediatek/pinctrl-moore.c &hw->pctrl); pctrl 671 drivers/pinctrl/mediatek/pinctrl-moore.c err = pinctrl_enable(hw->pctrl); pctrl 240 drivers/pinctrl/mediatek/pinctrl-mtk-common-v2.h struct pinctrl_dev *pctrl; pctrl 905 drivers/pinctrl/mediatek/pinctrl-paris.c &hw->pctrl); pctrl 909 drivers/pinctrl/mediatek/pinctrl-paris.c err = pinctrl_enable(hw->pctrl); pctrl 1862 drivers/pinctrl/nuvoton/pinctrl-npcm7xx.c static int npcm7xx_gpio_of(struct npcm7xx_pinctrl *pctrl) pctrl 1870 drivers/pinctrl/nuvoton/pinctrl-npcm7xx.c for_each_available_child_of_node(pctrl->dev->of_node, np) pctrl 1874 drivers/pinctrl/nuvoton/pinctrl-npcm7xx.c dev_err(pctrl->dev, pctrl 1879 drivers/pinctrl/nuvoton/pinctrl-npcm7xx.c pctrl->gpio_bank[id].base = pctrl 1884 drivers/pinctrl/nuvoton/pinctrl-npcm7xx.c dev_err(pctrl->dev, pctrl 1890 drivers/pinctrl/nuvoton/pinctrl-npcm7xx.c ret = bgpio_init(&pctrl->gpio_bank[id].gc, pctrl 1891 drivers/pinctrl/nuvoton/pinctrl-npcm7xx.c pctrl->dev, 4, pctrl 1892 drivers/pinctrl/nuvoton/pinctrl-npcm7xx.c pctrl->gpio_bank[id].base + pctrl 1894 drivers/pinctrl/nuvoton/pinctrl-npcm7xx.c pctrl->gpio_bank[id].base + pctrl 1898 drivers/pinctrl/nuvoton/pinctrl-npcm7xx.c pctrl->gpio_bank[id].base + pctrl 1902 drivers/pinctrl/nuvoton/pinctrl-npcm7xx.c dev_err(pctrl->dev, "bgpio_init() failed\n"); pctrl 1910 drivers/pinctrl/nuvoton/pinctrl-npcm7xx.c dev_err(pctrl->dev, pctrl 1916 drivers/pinctrl/nuvoton/pinctrl-npcm7xx.c pctrl->gpio_bank[id].irq = irq; pctrl 1917 drivers/pinctrl/nuvoton/pinctrl-npcm7xx.c pctrl->gpio_bank[id].irq_chip = npcmgpio_irqchip; pctrl 1918 drivers/pinctrl/nuvoton/pinctrl-npcm7xx.c pctrl->gpio_bank[id].gc.parent = pctrl->dev; pctrl 1919 drivers/pinctrl/nuvoton/pinctrl-npcm7xx.c pctrl->gpio_bank[id].irqbase = pctrl 1921 drivers/pinctrl/nuvoton/pinctrl-npcm7xx.c pctrl->gpio_bank[id].pinctrl_id = pinspec.args[0]; pctrl 1922 drivers/pinctrl/nuvoton/pinctrl-npcm7xx.c pctrl->gpio_bank[id].gc.base = pinspec.args[1]; pctrl 1923 drivers/pinctrl/nuvoton/pinctrl-npcm7xx.c pctrl->gpio_bank[id].gc.ngpio = pinspec.args[2]; pctrl 1924 drivers/pinctrl/nuvoton/pinctrl-npcm7xx.c pctrl->gpio_bank[id].gc.owner = THIS_MODULE; pctrl 1925 drivers/pinctrl/nuvoton/pinctrl-npcm7xx.c pctrl->gpio_bank[id].gc.label = pctrl 1926 drivers/pinctrl/nuvoton/pinctrl-npcm7xx.c devm_kasprintf(pctrl->dev, GFP_KERNEL, "%pOF", pctrl 1928 drivers/pinctrl/nuvoton/pinctrl-npcm7xx.c if (pctrl->gpio_bank[id].gc.label == NULL) pctrl 1931 drivers/pinctrl/nuvoton/pinctrl-npcm7xx.c pctrl->gpio_bank[id].gc.dbg_show = npcmgpio_dbg_show; pctrl 1932 drivers/pinctrl/nuvoton/pinctrl-npcm7xx.c pctrl->gpio_bank[id].direction_input = pctrl 1933 drivers/pinctrl/nuvoton/pinctrl-npcm7xx.c pctrl->gpio_bank[id].gc.direction_input; pctrl 1934 drivers/pinctrl/nuvoton/pinctrl-npcm7xx.c pctrl->gpio_bank[id].gc.direction_input = pctrl 1936 drivers/pinctrl/nuvoton/pinctrl-npcm7xx.c pctrl->gpio_bank[id].direction_output = pctrl 1937 drivers/pinctrl/nuvoton/pinctrl-npcm7xx.c pctrl->gpio_bank[id].gc.direction_output; pctrl 1938 drivers/pinctrl/nuvoton/pinctrl-npcm7xx.c pctrl->gpio_bank[id].gc.direction_output = pctrl 1940 drivers/pinctrl/nuvoton/pinctrl-npcm7xx.c pctrl->gpio_bank[id].request = pctrl 1941 drivers/pinctrl/nuvoton/pinctrl-npcm7xx.c pctrl->gpio_bank[id].gc.request; pctrl 1942 drivers/pinctrl/nuvoton/pinctrl-npcm7xx.c pctrl->gpio_bank[id].gc.request = npcmgpio_gpio_request; pctrl 1943 drivers/pinctrl/nuvoton/pinctrl-npcm7xx.c pctrl->gpio_bank[id].gc.free = npcmgpio_gpio_free; pctrl 1944 drivers/pinctrl/nuvoton/pinctrl-npcm7xx.c pctrl->gpio_bank[id].gc.of_node = np; pctrl 1948 drivers/pinctrl/nuvoton/pinctrl-npcm7xx.c pctrl->bank_num = id; pctrl 1952 drivers/pinctrl/nuvoton/pinctrl-npcm7xx.c static int npcm7xx_gpio_register(struct npcm7xx_pinctrl *pctrl) pctrl 1956 drivers/pinctrl/nuvoton/pinctrl-npcm7xx.c for (id = 0 ; id < pctrl->bank_num ; id++) { pctrl 1957 drivers/pinctrl/nuvoton/pinctrl-npcm7xx.c ret = devm_gpiochip_add_data(pctrl->dev, pctrl 1958 drivers/pinctrl/nuvoton/pinctrl-npcm7xx.c &pctrl->gpio_bank[id].gc, pctrl 1959 drivers/pinctrl/nuvoton/pinctrl-npcm7xx.c &pctrl->gpio_bank[id]); pctrl 1961 drivers/pinctrl/nuvoton/pinctrl-npcm7xx.c dev_err(pctrl->dev, "Failed to add GPIO chip %u\n", id); pctrl 1965 drivers/pinctrl/nuvoton/pinctrl-npcm7xx.c ret = gpiochip_add_pin_range(&pctrl->gpio_bank[id].gc, pctrl 1966 drivers/pinctrl/nuvoton/pinctrl-npcm7xx.c dev_name(pctrl->dev), pctrl 1967 drivers/pinctrl/nuvoton/pinctrl-npcm7xx.c pctrl->gpio_bank[id].pinctrl_id, pctrl 1968 drivers/pinctrl/nuvoton/pinctrl-npcm7xx.c pctrl->gpio_bank[id].gc.base, pctrl 1969 drivers/pinctrl/nuvoton/pinctrl-npcm7xx.c pctrl->gpio_bank[id].gc.ngpio); pctrl 1971 drivers/pinctrl/nuvoton/pinctrl-npcm7xx.c dev_err(pctrl->dev, "Failed to add GPIO bank %u\n", id); pctrl 1972 drivers/pinctrl/nuvoton/pinctrl-npcm7xx.c gpiochip_remove(&pctrl->gpio_bank[id].gc); pctrl 1976 drivers/pinctrl/nuvoton/pinctrl-npcm7xx.c ret = gpiochip_irqchip_add(&pctrl->gpio_bank[id].gc, pctrl 1977 drivers/pinctrl/nuvoton/pinctrl-npcm7xx.c &pctrl->gpio_bank[id].irq_chip, pctrl 1981 drivers/pinctrl/nuvoton/pinctrl-npcm7xx.c dev_err(pctrl->dev, pctrl 1983 drivers/pinctrl/nuvoton/pinctrl-npcm7xx.c gpiochip_remove(&pctrl->gpio_bank[id].gc); pctrl 1987 drivers/pinctrl/nuvoton/pinctrl-npcm7xx.c gpiochip_set_chained_irqchip(&pctrl->gpio_bank[id].gc, pctrl 1988 drivers/pinctrl/nuvoton/pinctrl-npcm7xx.c &pctrl->gpio_bank[id].irq_chip, pctrl 1989 drivers/pinctrl/nuvoton/pinctrl-npcm7xx.c pctrl->gpio_bank[id].irq, pctrl 1997 drivers/pinctrl/nuvoton/pinctrl-npcm7xx.c gpiochip_remove(&pctrl->gpio_bank[id - 1].gc); pctrl 2004 drivers/pinctrl/nuvoton/pinctrl-npcm7xx.c struct npcm7xx_pinctrl *pctrl; pctrl 2007 drivers/pinctrl/nuvoton/pinctrl-npcm7xx.c pctrl = devm_kzalloc(&pdev->dev, sizeof(*pctrl), GFP_KERNEL); pctrl 2008 drivers/pinctrl/nuvoton/pinctrl-npcm7xx.c if (!pctrl) pctrl 2011 drivers/pinctrl/nuvoton/pinctrl-npcm7xx.c pctrl->dev = &pdev->dev; pctrl 2012 drivers/pinctrl/nuvoton/pinctrl-npcm7xx.c dev_set_drvdata(&pdev->dev, pctrl); pctrl 2014 drivers/pinctrl/nuvoton/pinctrl-npcm7xx.c pctrl->gcr_regmap = pctrl 2016 drivers/pinctrl/nuvoton/pinctrl-npcm7xx.c if (IS_ERR(pctrl->gcr_regmap)) { pctrl 2017 drivers/pinctrl/nuvoton/pinctrl-npcm7xx.c dev_err(pctrl->dev, "didn't find nuvoton,npcm750-gcr\n"); pctrl 2018 drivers/pinctrl/nuvoton/pinctrl-npcm7xx.c return PTR_ERR(pctrl->gcr_regmap); pctrl 2021 drivers/pinctrl/nuvoton/pinctrl-npcm7xx.c ret = npcm7xx_gpio_of(pctrl); pctrl 2023 drivers/pinctrl/nuvoton/pinctrl-npcm7xx.c dev_err(pctrl->dev, "Failed to gpio dt-binding %u\n", ret); pctrl 2027 drivers/pinctrl/nuvoton/pinctrl-npcm7xx.c pctrl->pctldev = devm_pinctrl_register(&pdev->dev, pctrl 2028 drivers/pinctrl/nuvoton/pinctrl-npcm7xx.c &npcm7xx_pinctrl_desc, pctrl); pctrl 2029 drivers/pinctrl/nuvoton/pinctrl-npcm7xx.c if (IS_ERR(pctrl->pctldev)) { pctrl 2031 drivers/pinctrl/nuvoton/pinctrl-npcm7xx.c return PTR_ERR(pctrl->pctldev); pctrl 2034 drivers/pinctrl/nuvoton/pinctrl-npcm7xx.c ret = npcm7xx_gpio_register(pctrl); pctrl 2036 drivers/pinctrl/nuvoton/pinctrl-npcm7xx.c dev_err(pctrl->dev, "Failed to register gpio %u\n", ret); pctrl 783 drivers/pinctrl/pinctrl-amd.c const struct pin_desc *pd = pin_desc_get(gpio_dev->pctrl, pin); pctrl 802 drivers/pinctrl/pinctrl-amd.c struct pinctrl_desc *desc = gpio_dev->pctrl->desc; pctrl 820 drivers/pinctrl/pinctrl-amd.c struct pinctrl_desc *desc = gpio_dev->pctrl->desc; pctrl 909 drivers/pinctrl/pinctrl-amd.c gpio_dev->pctrl = devm_pinctrl_register(&pdev->dev, &amd_pinctrl_desc, pctrl 911 drivers/pinctrl/pinctrl-amd.c if (IS_ERR(gpio_dev->pctrl)) { pctrl 913 drivers/pinctrl/pinctrl-amd.c return PTR_ERR(gpio_dev->pctrl); pctrl 95 drivers/pinctrl/pinctrl-amd.h struct pinctrl_dev *pctrl; pctrl 918 drivers/pinctrl/pinctrl-bm1880.c struct bm1880_pinctrl *pctrl = pinctrl_dev_get_drvdata(pctldev); pctrl 920 drivers/pinctrl/pinctrl-bm1880.c return pctrl->ngroups; pctrl 926 drivers/pinctrl/pinctrl-bm1880.c struct bm1880_pinctrl *pctrl = pinctrl_dev_get_drvdata(pctldev); pctrl 928 drivers/pinctrl/pinctrl-bm1880.c return pctrl->groups[selector].name; pctrl 936 drivers/pinctrl/pinctrl-bm1880.c struct bm1880_pinctrl *pctrl = pinctrl_dev_get_drvdata(pctldev); pctrl 938 drivers/pinctrl/pinctrl-bm1880.c *pins = pctrl->groups[selector].pins; pctrl 939 drivers/pinctrl/pinctrl-bm1880.c *num_pins = pctrl->groups[selector].npins; pctrl 955 drivers/pinctrl/pinctrl-bm1880.c struct bm1880_pinctrl *pctrl = pinctrl_dev_get_drvdata(pctldev); pctrl 957 drivers/pinctrl/pinctrl-bm1880.c return pctrl->nfuncs; pctrl 963 drivers/pinctrl/pinctrl-bm1880.c struct bm1880_pinctrl *pctrl = pinctrl_dev_get_drvdata(pctldev); pctrl 965 drivers/pinctrl/pinctrl-bm1880.c return pctrl->funcs[selector].name; pctrl 973 drivers/pinctrl/pinctrl-bm1880.c struct bm1880_pinctrl *pctrl = pinctrl_dev_get_drvdata(pctldev); pctrl 975 drivers/pinctrl/pinctrl-bm1880.c *groups = pctrl->funcs[selector].groups; pctrl 976 drivers/pinctrl/pinctrl-bm1880.c *num_groups = pctrl->funcs[selector].ngroups; pctrl 984 drivers/pinctrl/pinctrl-bm1880.c struct bm1880_pinctrl *pctrl = pinctrl_dev_get_drvdata(pctldev); pctrl 985 drivers/pinctrl/pinctrl-bm1880.c const struct bm1880_pctrl_group *pgrp = &pctrl->groups[group]; pctrl 986 drivers/pinctrl/pinctrl-bm1880.c const struct bm1880_pinmux_function *func = &pctrl->funcs[function]; pctrl 993 drivers/pinctrl/pinctrl-bm1880.c u32 regval = readl_relaxed(pctrl->base + BM1880_REG_MUX + pctrl 999 drivers/pinctrl/pinctrl-bm1880.c writel_relaxed(regval, pctrl->base + BM1880_REG_MUX + offset); pctrl 1152 drivers/pinctrl/pinctrl-bm1880.c struct bm1880_pinctrl *pctrl = pinctrl_dev_get_drvdata(pctldev); pctrl 1159 drivers/pinctrl/pinctrl-bm1880.c regval = readl_relaxed(pctrl->base + BM1880_REG_MUX + offset); pctrl 1184 drivers/pinctrl/pinctrl-bm1880.c ret = bm1880_pinconf_drv_get(pctrl->pinconf[pin].drv_bits, pctrl 1205 drivers/pinctrl/pinctrl-bm1880.c struct bm1880_pinctrl *pctrl = pinctrl_dev_get_drvdata(pctldev); pctrl 1210 drivers/pinctrl/pinctrl-bm1880.c regval = readl_relaxed(pctrl->base + BM1880_REG_MUX + offset); pctrl 1246 drivers/pinctrl/pinctrl-bm1880.c pctrl->pinconf[pin].drv_bits, pctrl 1259 drivers/pinctrl/pinctrl-bm1880.c writel_relaxed(regval, pctrl->base + BM1880_REG_MUX + offset); pctrl 1271 drivers/pinctrl/pinctrl-bm1880.c struct bm1880_pinctrl *pctrl = pinctrl_dev_get_drvdata(pctldev); pctrl 1272 drivers/pinctrl/pinctrl-bm1880.c const struct bm1880_pctrl_group *pgrp = &pctrl->groups[selector]; pctrl 1312 drivers/pinctrl/pinctrl-bm1880.c struct bm1880_pinctrl *pctrl; pctrl 1314 drivers/pinctrl/pinctrl-bm1880.c pctrl = devm_kzalloc(&pdev->dev, sizeof(*pctrl), GFP_KERNEL); pctrl 1315 drivers/pinctrl/pinctrl-bm1880.c if (!pctrl) pctrl 1319 drivers/pinctrl/pinctrl-bm1880.c pctrl->base = devm_ioremap_resource(&pdev->dev, res); pctrl 1320 drivers/pinctrl/pinctrl-bm1880.c if (IS_ERR(pctrl->base)) pctrl 1321 drivers/pinctrl/pinctrl-bm1880.c return PTR_ERR(pctrl->base); pctrl 1323 drivers/pinctrl/pinctrl-bm1880.c pctrl->groups = bm1880_pctrl_groups; pctrl 1324 drivers/pinctrl/pinctrl-bm1880.c pctrl->ngroups = ARRAY_SIZE(bm1880_pctrl_groups); pctrl 1325 drivers/pinctrl/pinctrl-bm1880.c pctrl->funcs = bm1880_pmux_functions; pctrl 1326 drivers/pinctrl/pinctrl-bm1880.c pctrl->nfuncs = ARRAY_SIZE(bm1880_pmux_functions); pctrl 1327 drivers/pinctrl/pinctrl-bm1880.c pctrl->pinconf = bm1880_pinconf; pctrl 1329 drivers/pinctrl/pinctrl-bm1880.c pctrl->pctrldev = devm_pinctrl_register(&pdev->dev, &bm1880_desc, pctrl 1330 drivers/pinctrl/pinctrl-bm1880.c pctrl); pctrl 1331 drivers/pinctrl/pinctrl-bm1880.c if (IS_ERR(pctrl->pctrldev)) pctrl 1332 drivers/pinctrl/pinctrl-bm1880.c return PTR_ERR(pctrl->pctrldev); pctrl 1334 drivers/pinctrl/pinctrl-bm1880.c platform_set_drvdata(pdev, pctrl); pctrl 423 drivers/pinctrl/pinctrl-falcon.c pinctrl_add_gpio_range(falcon_info.pctrl, range); pctrl 337 drivers/pinctrl/pinctrl-lantiq.c info->pctrl = devm_pinctrl_register(&pdev->dev, desc, info); pctrl 338 drivers/pinctrl/pinctrl-lantiq.c if (IS_ERR(info->pctrl)) { pctrl 340 drivers/pinctrl/pinctrl-lantiq.c return PTR_ERR(info->pctrl); pctrl 64 drivers/pinctrl/pinctrl-lantiq.h struct pinctrl_dev *pctrl; pctrl 1789 drivers/pinctrl/pinctrl-xway.c pinctrl_add_gpio_range(xway_info.pctrl, &xway_gpio_range); pctrl 41 drivers/pinctrl/pinctrl-zynq.c struct pinctrl_dev *pctrl; pctrl 826 drivers/pinctrl/pinctrl-zynq.c struct zynq_pinctrl *pctrl = pinctrl_dev_get_drvdata(pctldev); pctrl 828 drivers/pinctrl/pinctrl-zynq.c return pctrl->ngroups; pctrl 834 drivers/pinctrl/pinctrl-zynq.c struct zynq_pinctrl *pctrl = pinctrl_dev_get_drvdata(pctldev); pctrl 836 drivers/pinctrl/pinctrl-zynq.c return pctrl->groups[selector].name; pctrl 844 drivers/pinctrl/pinctrl-zynq.c struct zynq_pinctrl *pctrl = pinctrl_dev_get_drvdata(pctldev); pctrl 846 drivers/pinctrl/pinctrl-zynq.c *pins = pctrl->groups[selector].pins; pctrl 847 drivers/pinctrl/pinctrl-zynq.c *num_pins = pctrl->groups[selector].npins; pctrl 863 drivers/pinctrl/pinctrl-zynq.c struct zynq_pinctrl *pctrl = pinctrl_dev_get_drvdata(pctldev); pctrl 865 drivers/pinctrl/pinctrl-zynq.c return pctrl->nfuncs; pctrl 871 drivers/pinctrl/pinctrl-zynq.c struct zynq_pinctrl *pctrl = pinctrl_dev_get_drvdata(pctldev); pctrl 873 drivers/pinctrl/pinctrl-zynq.c return pctrl->funcs[selector].name; pctrl 881 drivers/pinctrl/pinctrl-zynq.c struct zynq_pinctrl *pctrl = pinctrl_dev_get_drvdata(pctldev); pctrl 883 drivers/pinctrl/pinctrl-zynq.c *groups = pctrl->funcs[selector].groups; pctrl 884 drivers/pinctrl/pinctrl-zynq.c *num_groups = pctrl->funcs[selector].ngroups; pctrl 893 drivers/pinctrl/pinctrl-zynq.c struct zynq_pinctrl *pctrl = pinctrl_dev_get_drvdata(pctldev); pctrl 894 drivers/pinctrl/pinctrl-zynq.c const struct zynq_pctrl_group *pgrp = &pctrl->groups[group]; pctrl 895 drivers/pinctrl/pinctrl-zynq.c const struct zynq_pinmux_function *func = &pctrl->funcs[function]; pctrl 906 drivers/pinctrl/pinctrl-zynq.c ret = regmap_read(pctrl->syscon, pctrl 907 drivers/pinctrl/pinctrl-zynq.c pctrl->pctrl_offset + func->mux, ®); pctrl 913 drivers/pinctrl/pinctrl-zynq.c ret = regmap_write(pctrl->syscon, pctrl 914 drivers/pinctrl/pinctrl-zynq.c pctrl->pctrl_offset + func->mux, reg); pctrl 920 drivers/pinctrl/pinctrl-zynq.c u32 reg, addr = pctrl->pctrl_offset + (4 * pin); pctrl 922 drivers/pinctrl/pinctrl-zynq.c ret = regmap_read(pctrl->syscon, addr, ®); pctrl 928 drivers/pinctrl/pinctrl-zynq.c ret = regmap_write(pctrl->syscon, addr, reg); pctrl 992 drivers/pinctrl/pinctrl-zynq.c struct zynq_pinctrl *pctrl = pinctrl_dev_get_drvdata(pctldev); pctrl 997 drivers/pinctrl/pinctrl-zynq.c ret = regmap_read(pctrl->syscon, pctrl->pctrl_offset + (4 * pin), ®); pctrl 1050 drivers/pinctrl/pinctrl-zynq.c struct zynq_pinctrl *pctrl = pinctrl_dev_get_drvdata(pctldev); pctrl 1055 drivers/pinctrl/pinctrl-zynq.c ret = regmap_read(pctrl->syscon, pctrl->pctrl_offset + (4 * pin), ®); pctrl 1110 drivers/pinctrl/pinctrl-zynq.c ret = regmap_write(pctrl->syscon, pctrl->pctrl_offset + (4 * pin), reg); pctrl 1123 drivers/pinctrl/pinctrl-zynq.c struct zynq_pinctrl *pctrl = pinctrl_dev_get_drvdata(pctldev); pctrl 1124 drivers/pinctrl/pinctrl-zynq.c const struct zynq_pctrl_group *pgrp = &pctrl->groups[selector]; pctrl 1162 drivers/pinctrl/pinctrl-zynq.c struct zynq_pinctrl *pctrl; pctrl 1164 drivers/pinctrl/pinctrl-zynq.c pctrl = devm_kzalloc(&pdev->dev, sizeof(*pctrl), GFP_KERNEL); pctrl 1165 drivers/pinctrl/pinctrl-zynq.c if (!pctrl) pctrl 1168 drivers/pinctrl/pinctrl-zynq.c pctrl->syscon = syscon_regmap_lookup_by_phandle(pdev->dev.of_node, pctrl 1170 drivers/pinctrl/pinctrl-zynq.c if (IS_ERR(pctrl->syscon)) { pctrl 1172 drivers/pinctrl/pinctrl-zynq.c return PTR_ERR(pctrl->syscon); pctrl 1180 drivers/pinctrl/pinctrl-zynq.c pctrl->pctrl_offset = res->start; pctrl 1182 drivers/pinctrl/pinctrl-zynq.c pctrl->groups = zynq_pctrl_groups; pctrl 1183 drivers/pinctrl/pinctrl-zynq.c pctrl->ngroups = ARRAY_SIZE(zynq_pctrl_groups); pctrl 1184 drivers/pinctrl/pinctrl-zynq.c pctrl->funcs = zynq_pmux_functions; pctrl 1185 drivers/pinctrl/pinctrl-zynq.c pctrl->nfuncs = ARRAY_SIZE(zynq_pmux_functions); pctrl 1187 drivers/pinctrl/pinctrl-zynq.c pctrl->pctrl = devm_pinctrl_register(&pdev->dev, &zynq_desc, pctrl); pctrl 1188 drivers/pinctrl/pinctrl-zynq.c if (IS_ERR(pctrl->pctrl)) pctrl 1189 drivers/pinctrl/pinctrl-zynq.c return PTR_ERR(pctrl->pctrl); pctrl 1191 drivers/pinctrl/pinctrl-zynq.c platform_set_drvdata(pdev, pctrl); pctrl 52 drivers/pinctrl/qcom/pinctrl-msm.c struct pinctrl_dev *pctrl; pctrl 70 drivers/pinctrl/qcom/pinctrl-msm.c static u32 msm_readl_##name(struct msm_pinctrl *pctrl, \ pctrl 73 drivers/pinctrl/qcom/pinctrl-msm.c return readl(pctrl->regs[g->tile] + g->name##_reg); \ pctrl 75 drivers/pinctrl/qcom/pinctrl-msm.c static void msm_writel_##name(u32 val, struct msm_pinctrl *pctrl, \ pctrl 78 drivers/pinctrl/qcom/pinctrl-msm.c writel(val, pctrl->regs[g->tile] + g->name##_reg); \ pctrl 89 drivers/pinctrl/qcom/pinctrl-msm.c struct msm_pinctrl *pctrl = pinctrl_dev_get_drvdata(pctldev); pctrl 91 drivers/pinctrl/qcom/pinctrl-msm.c return pctrl->soc->ngroups; pctrl 97 drivers/pinctrl/qcom/pinctrl-msm.c struct msm_pinctrl *pctrl = pinctrl_dev_get_drvdata(pctldev); pctrl 99 drivers/pinctrl/qcom/pinctrl-msm.c return pctrl->soc->groups[group].name; pctrl 107 drivers/pinctrl/qcom/pinctrl-msm.c struct msm_pinctrl *pctrl = pinctrl_dev_get_drvdata(pctldev); pctrl 109 drivers/pinctrl/qcom/pinctrl-msm.c *pins = pctrl->soc->groups[group].pins; pctrl 110 drivers/pinctrl/qcom/pinctrl-msm.c *num_pins = pctrl->soc->groups[group].npins; pctrl 124 drivers/pinctrl/qcom/pinctrl-msm.c struct msm_pinctrl *pctrl = pinctrl_dev_get_drvdata(pctldev); pctrl 125 drivers/pinctrl/qcom/pinctrl-msm.c struct gpio_chip *chip = &pctrl->chip; pctrl 132 drivers/pinctrl/qcom/pinctrl-msm.c struct msm_pinctrl *pctrl = pinctrl_dev_get_drvdata(pctldev); pctrl 134 drivers/pinctrl/qcom/pinctrl-msm.c return pctrl->soc->nfunctions; pctrl 140 drivers/pinctrl/qcom/pinctrl-msm.c struct msm_pinctrl *pctrl = pinctrl_dev_get_drvdata(pctldev); pctrl 142 drivers/pinctrl/qcom/pinctrl-msm.c return pctrl->soc->functions[function].name; pctrl 150 drivers/pinctrl/qcom/pinctrl-msm.c struct msm_pinctrl *pctrl = pinctrl_dev_get_drvdata(pctldev); pctrl 152 drivers/pinctrl/qcom/pinctrl-msm.c *groups = pctrl->soc->functions[function].groups; pctrl 153 drivers/pinctrl/qcom/pinctrl-msm.c *num_groups = pctrl->soc->functions[function].ngroups; pctrl 161 drivers/pinctrl/qcom/pinctrl-msm.c struct msm_pinctrl *pctrl = pinctrl_dev_get_drvdata(pctldev); pctrl 167 drivers/pinctrl/qcom/pinctrl-msm.c g = &pctrl->soc->groups[group]; pctrl 178 drivers/pinctrl/qcom/pinctrl-msm.c raw_spin_lock_irqsave(&pctrl->lock, flags); pctrl 180 drivers/pinctrl/qcom/pinctrl-msm.c val = msm_readl_ctl(pctrl, g); pctrl 183 drivers/pinctrl/qcom/pinctrl-msm.c msm_writel_ctl(val, pctrl, g); pctrl 185 drivers/pinctrl/qcom/pinctrl-msm.c raw_spin_unlock_irqrestore(&pctrl->lock, flags); pctrl 194 drivers/pinctrl/qcom/pinctrl-msm.c struct msm_pinctrl *pctrl = pinctrl_dev_get_drvdata(pctldev); pctrl 195 drivers/pinctrl/qcom/pinctrl-msm.c const struct msm_pingroup *g = &pctrl->soc->groups[offset]; pctrl 214 drivers/pinctrl/qcom/pinctrl-msm.c static int msm_config_reg(struct msm_pinctrl *pctrl, pctrl 260 drivers/pinctrl/qcom/pinctrl-msm.c struct msm_pinctrl *pctrl = pinctrl_dev_get_drvdata(pctldev); pctrl 268 drivers/pinctrl/qcom/pinctrl-msm.c g = &pctrl->soc->groups[group]; pctrl 270 drivers/pinctrl/qcom/pinctrl-msm.c ret = msm_config_reg(pctrl, g, param, &mask, &bit); pctrl 274 drivers/pinctrl/qcom/pinctrl-msm.c val = msm_readl_ctl(pctrl, g); pctrl 290 drivers/pinctrl/qcom/pinctrl-msm.c if (pctrl->soc->pull_no_keeper) pctrl 298 drivers/pinctrl/qcom/pinctrl-msm.c if (pctrl->soc->pull_no_keeper) pctrl 313 drivers/pinctrl/qcom/pinctrl-msm.c val = msm_readl_io(pctrl, g); pctrl 337 drivers/pinctrl/qcom/pinctrl-msm.c struct msm_pinctrl *pctrl = pinctrl_dev_get_drvdata(pctldev); pctrl 347 drivers/pinctrl/qcom/pinctrl-msm.c g = &pctrl->soc->groups[group]; pctrl 353 drivers/pinctrl/qcom/pinctrl-msm.c ret = msm_config_reg(pctrl, g, param, &mask, &bit); pctrl 366 drivers/pinctrl/qcom/pinctrl-msm.c if (pctrl->soc->pull_no_keeper) pctrl 372 drivers/pinctrl/qcom/pinctrl-msm.c if (pctrl->soc->pull_no_keeper) pctrl 386 drivers/pinctrl/qcom/pinctrl-msm.c raw_spin_lock_irqsave(&pctrl->lock, flags); pctrl 387 drivers/pinctrl/qcom/pinctrl-msm.c val = msm_readl_io(pctrl, g); pctrl 392 drivers/pinctrl/qcom/pinctrl-msm.c msm_writel_io(val, pctrl, g); pctrl 393 drivers/pinctrl/qcom/pinctrl-msm.c raw_spin_unlock_irqrestore(&pctrl->lock, flags); pctrl 403 drivers/pinctrl/qcom/pinctrl-msm.c dev_err(pctrl->dev, "Unsupported config parameter: %x\n", pctrl 410 drivers/pinctrl/qcom/pinctrl-msm.c dev_err(pctrl->dev, "config %x: %x is invalid\n", param, arg); pctrl 414 drivers/pinctrl/qcom/pinctrl-msm.c raw_spin_lock_irqsave(&pctrl->lock, flags); pctrl 415 drivers/pinctrl/qcom/pinctrl-msm.c val = msm_readl_ctl(pctrl, g); pctrl 418 drivers/pinctrl/qcom/pinctrl-msm.c msm_writel_ctl(val, pctrl, g); pctrl 419 drivers/pinctrl/qcom/pinctrl-msm.c raw_spin_unlock_irqrestore(&pctrl->lock, flags); pctrl 434 drivers/pinctrl/qcom/pinctrl-msm.c struct msm_pinctrl *pctrl = gpiochip_get_data(chip); pctrl 438 drivers/pinctrl/qcom/pinctrl-msm.c g = &pctrl->soc->groups[offset]; pctrl 440 drivers/pinctrl/qcom/pinctrl-msm.c raw_spin_lock_irqsave(&pctrl->lock, flags); pctrl 442 drivers/pinctrl/qcom/pinctrl-msm.c val = msm_readl_ctl(pctrl, g); pctrl 444 drivers/pinctrl/qcom/pinctrl-msm.c msm_writel_ctl(val, pctrl, g); pctrl 446 drivers/pinctrl/qcom/pinctrl-msm.c raw_spin_unlock_irqrestore(&pctrl->lock, flags); pctrl 454 drivers/pinctrl/qcom/pinctrl-msm.c struct msm_pinctrl *pctrl = gpiochip_get_data(chip); pctrl 458 drivers/pinctrl/qcom/pinctrl-msm.c g = &pctrl->soc->groups[offset]; pctrl 460 drivers/pinctrl/qcom/pinctrl-msm.c raw_spin_lock_irqsave(&pctrl->lock, flags); pctrl 462 drivers/pinctrl/qcom/pinctrl-msm.c val = msm_readl_io(pctrl, g); pctrl 467 drivers/pinctrl/qcom/pinctrl-msm.c msm_writel_io(val, pctrl, g); pctrl 469 drivers/pinctrl/qcom/pinctrl-msm.c val = msm_readl_ctl(pctrl, g); pctrl 471 drivers/pinctrl/qcom/pinctrl-msm.c msm_writel_ctl(val, pctrl, g); pctrl 473 drivers/pinctrl/qcom/pinctrl-msm.c raw_spin_unlock_irqrestore(&pctrl->lock, flags); pctrl 480 drivers/pinctrl/qcom/pinctrl-msm.c struct msm_pinctrl *pctrl = gpiochip_get_data(chip); pctrl 484 drivers/pinctrl/qcom/pinctrl-msm.c g = &pctrl->soc->groups[offset]; pctrl 486 drivers/pinctrl/qcom/pinctrl-msm.c val = msm_readl_ctl(pctrl, g); pctrl 495 drivers/pinctrl/qcom/pinctrl-msm.c struct msm_pinctrl *pctrl = gpiochip_get_data(chip); pctrl 498 drivers/pinctrl/qcom/pinctrl-msm.c g = &pctrl->soc->groups[offset]; pctrl 500 drivers/pinctrl/qcom/pinctrl-msm.c val = msm_readl_io(pctrl, g); pctrl 507 drivers/pinctrl/qcom/pinctrl-msm.c struct msm_pinctrl *pctrl = gpiochip_get_data(chip); pctrl 511 drivers/pinctrl/qcom/pinctrl-msm.c g = &pctrl->soc->groups[offset]; pctrl 513 drivers/pinctrl/qcom/pinctrl-msm.c raw_spin_lock_irqsave(&pctrl->lock, flags); pctrl 515 drivers/pinctrl/qcom/pinctrl-msm.c val = msm_readl_io(pctrl, g); pctrl 520 drivers/pinctrl/qcom/pinctrl-msm.c msm_writel_io(val, pctrl, g); pctrl 522 drivers/pinctrl/qcom/pinctrl-msm.c raw_spin_unlock_irqrestore(&pctrl->lock, flags); pctrl 535 drivers/pinctrl/qcom/pinctrl-msm.c struct msm_pinctrl *pctrl = gpiochip_get_data(chip); pctrl 559 drivers/pinctrl/qcom/pinctrl-msm.c g = &pctrl->soc->groups[offset]; pctrl 560 drivers/pinctrl/qcom/pinctrl-msm.c ctl_reg = msm_readl_ctl(pctrl, g); pctrl 561 drivers/pinctrl/qcom/pinctrl-msm.c io_reg = msm_readl_io(pctrl, g); pctrl 576 drivers/pinctrl/qcom/pinctrl-msm.c if (pctrl->soc->pull_no_keeper) pctrl 600 drivers/pinctrl/qcom/pinctrl-msm.c struct msm_pinctrl *pctrl = gpiochip_get_data(gc); pctrl 603 drivers/pinctrl/qcom/pinctrl-msm.c const int *reserved = pctrl->soc->reserved_gpios; pctrl 611 drivers/pinctrl/qcom/pinctrl-msm.c dev_err(pctrl->dev, "invalid list of reserved GPIOs\n"); pctrl 621 drivers/pinctrl/qcom/pinctrl-msm.c len = ret = device_property_count_u16(pctrl->dev, "gpios"); pctrl 632 drivers/pinctrl/qcom/pinctrl-msm.c ret = device_property_read_u16_array(pctrl->dev, "gpios", tmp, len); pctrl 634 drivers/pinctrl/qcom/pinctrl-msm.c dev_err(pctrl->dev, "could not read list of GPIOs\n"); pctrl 678 drivers/pinctrl/qcom/pinctrl-msm.c static void msm_gpio_update_dual_edge_pos(struct msm_pinctrl *pctrl, pctrl 687 drivers/pinctrl/qcom/pinctrl-msm.c val = msm_readl_io(pctrl, g) & BIT(g->in_bit); pctrl 689 drivers/pinctrl/qcom/pinctrl-msm.c pol = msm_readl_intr_cfg(pctrl, g); pctrl 691 drivers/pinctrl/qcom/pinctrl-msm.c msm_writel_intr_cfg(pol, pctrl, g); pctrl 693 drivers/pinctrl/qcom/pinctrl-msm.c val2 = msm_readl_io(pctrl, g) & BIT(g->in_bit); pctrl 694 drivers/pinctrl/qcom/pinctrl-msm.c intstat = msm_readl_intr_status(pctrl, g); pctrl 698 drivers/pinctrl/qcom/pinctrl-msm.c dev_err(pctrl->dev, "dual-edge irq failed to stabilize, %#08x != %#08x\n", pctrl 705 drivers/pinctrl/qcom/pinctrl-msm.c struct msm_pinctrl *pctrl = gpiochip_get_data(gc); pctrl 710 drivers/pinctrl/qcom/pinctrl-msm.c g = &pctrl->soc->groups[d->hwirq]; pctrl 712 drivers/pinctrl/qcom/pinctrl-msm.c raw_spin_lock_irqsave(&pctrl->lock, flags); pctrl 714 drivers/pinctrl/qcom/pinctrl-msm.c val = msm_readl_intr_cfg(pctrl, g); pctrl 739 drivers/pinctrl/qcom/pinctrl-msm.c msm_writel_intr_cfg(val, pctrl, g); pctrl 741 drivers/pinctrl/qcom/pinctrl-msm.c clear_bit(d->hwirq, pctrl->enabled_irqs); pctrl 743 drivers/pinctrl/qcom/pinctrl-msm.c raw_spin_unlock_irqrestore(&pctrl->lock, flags); pctrl 749 drivers/pinctrl/qcom/pinctrl-msm.c struct msm_pinctrl *pctrl = gpiochip_get_data(gc); pctrl 754 drivers/pinctrl/qcom/pinctrl-msm.c g = &pctrl->soc->groups[d->hwirq]; pctrl 756 drivers/pinctrl/qcom/pinctrl-msm.c raw_spin_lock_irqsave(&pctrl->lock, flags); pctrl 764 drivers/pinctrl/qcom/pinctrl-msm.c val = msm_readl_intr_status(pctrl, g); pctrl 766 drivers/pinctrl/qcom/pinctrl-msm.c msm_writel_intr_status(val, pctrl, g); pctrl 769 drivers/pinctrl/qcom/pinctrl-msm.c val = msm_readl_intr_cfg(pctrl, g); pctrl 772 drivers/pinctrl/qcom/pinctrl-msm.c msm_writel_intr_cfg(val, pctrl, g); pctrl 774 drivers/pinctrl/qcom/pinctrl-msm.c set_bit(d->hwirq, pctrl->enabled_irqs); pctrl 776 drivers/pinctrl/qcom/pinctrl-msm.c raw_spin_unlock_irqrestore(&pctrl->lock, flags); pctrl 793 drivers/pinctrl/qcom/pinctrl-msm.c struct msm_pinctrl *pctrl = gpiochip_get_data(gc); pctrl 798 drivers/pinctrl/qcom/pinctrl-msm.c g = &pctrl->soc->groups[d->hwirq]; pctrl 800 drivers/pinctrl/qcom/pinctrl-msm.c raw_spin_lock_irqsave(&pctrl->lock, flags); pctrl 802 drivers/pinctrl/qcom/pinctrl-msm.c val = msm_readl_intr_status(pctrl, g); pctrl 807 drivers/pinctrl/qcom/pinctrl-msm.c msm_writel_intr_status(val, pctrl, g); pctrl 809 drivers/pinctrl/qcom/pinctrl-msm.c if (test_bit(d->hwirq, pctrl->dual_edge_irqs)) pctrl 810 drivers/pinctrl/qcom/pinctrl-msm.c msm_gpio_update_dual_edge_pos(pctrl, g, d); pctrl 812 drivers/pinctrl/qcom/pinctrl-msm.c raw_spin_unlock_irqrestore(&pctrl->lock, flags); pctrl 818 drivers/pinctrl/qcom/pinctrl-msm.c struct msm_pinctrl *pctrl = gpiochip_get_data(gc); pctrl 823 drivers/pinctrl/qcom/pinctrl-msm.c g = &pctrl->soc->groups[d->hwirq]; pctrl 825 drivers/pinctrl/qcom/pinctrl-msm.c raw_spin_lock_irqsave(&pctrl->lock, flags); pctrl 831 drivers/pinctrl/qcom/pinctrl-msm.c set_bit(d->hwirq, pctrl->dual_edge_irqs); pctrl 833 drivers/pinctrl/qcom/pinctrl-msm.c clear_bit(d->hwirq, pctrl->dual_edge_irqs); pctrl 836 drivers/pinctrl/qcom/pinctrl-msm.c val = msm_readl_intr_target(pctrl, g); pctrl 839 drivers/pinctrl/qcom/pinctrl-msm.c msm_writel_intr_target(val, pctrl, g); pctrl 846 drivers/pinctrl/qcom/pinctrl-msm.c val = msm_readl_intr_cfg(pctrl, g); pctrl 894 drivers/pinctrl/qcom/pinctrl-msm.c msm_writel_intr_cfg(val, pctrl, g); pctrl 896 drivers/pinctrl/qcom/pinctrl-msm.c if (test_bit(d->hwirq, pctrl->dual_edge_irqs)) pctrl 897 drivers/pinctrl/qcom/pinctrl-msm.c msm_gpio_update_dual_edge_pos(pctrl, g, d); pctrl 899 drivers/pinctrl/qcom/pinctrl-msm.c raw_spin_unlock_irqrestore(&pctrl->lock, flags); pctrl 912 drivers/pinctrl/qcom/pinctrl-msm.c struct msm_pinctrl *pctrl = gpiochip_get_data(gc); pctrl 915 drivers/pinctrl/qcom/pinctrl-msm.c raw_spin_lock_irqsave(&pctrl->lock, flags); pctrl 917 drivers/pinctrl/qcom/pinctrl-msm.c irq_set_irq_wake(pctrl->irq, on); pctrl 919 drivers/pinctrl/qcom/pinctrl-msm.c raw_spin_unlock_irqrestore(&pctrl->lock, flags); pctrl 927 drivers/pinctrl/qcom/pinctrl-msm.c struct msm_pinctrl *pctrl = gpiochip_get_data(gc); pctrl 933 drivers/pinctrl/qcom/pinctrl-msm.c ret = msm_pinmux_request_gpio(pctrl->pctrl, NULL, d->hwirq); pctrl 963 drivers/pinctrl/qcom/pinctrl-msm.c struct msm_pinctrl *pctrl = gpiochip_get_data(gc); pctrl 976 drivers/pinctrl/qcom/pinctrl-msm.c for_each_set_bit(i, pctrl->enabled_irqs, pctrl->chip.ngpio) { pctrl 977 drivers/pinctrl/qcom/pinctrl-msm.c g = &pctrl->soc->groups[i]; pctrl 978 drivers/pinctrl/qcom/pinctrl-msm.c val = msm_readl_intr_status(pctrl, g); pctrl 993 drivers/pinctrl/qcom/pinctrl-msm.c static bool msm_gpio_needs_valid_mask(struct msm_pinctrl *pctrl) pctrl 995 drivers/pinctrl/qcom/pinctrl-msm.c if (pctrl->soc->reserved_gpios) pctrl 998 drivers/pinctrl/qcom/pinctrl-msm.c return device_property_count_u16(pctrl->dev, "gpios") > 0; pctrl 1001 drivers/pinctrl/qcom/pinctrl-msm.c static int msm_gpio_init(struct msm_pinctrl *pctrl) pctrl 1006 drivers/pinctrl/qcom/pinctrl-msm.c unsigned ngpio = pctrl->soc->ngpios; pctrl 1011 drivers/pinctrl/qcom/pinctrl-msm.c chip = &pctrl->chip; pctrl 1014 drivers/pinctrl/qcom/pinctrl-msm.c chip->label = dev_name(pctrl->dev); pctrl 1015 drivers/pinctrl/qcom/pinctrl-msm.c chip->parent = pctrl->dev; pctrl 1017 drivers/pinctrl/qcom/pinctrl-msm.c chip->of_node = pctrl->dev->of_node; pctrl 1018 drivers/pinctrl/qcom/pinctrl-msm.c if (msm_gpio_needs_valid_mask(pctrl)) pctrl 1021 drivers/pinctrl/qcom/pinctrl-msm.c pctrl->irq_chip.name = "msmgpio"; pctrl 1022 drivers/pinctrl/qcom/pinctrl-msm.c pctrl->irq_chip.irq_enable = msm_gpio_irq_enable; pctrl 1023 drivers/pinctrl/qcom/pinctrl-msm.c pctrl->irq_chip.irq_mask = msm_gpio_irq_mask; pctrl 1024 drivers/pinctrl/qcom/pinctrl-msm.c pctrl->irq_chip.irq_unmask = msm_gpio_irq_unmask; pctrl 1025 drivers/pinctrl/qcom/pinctrl-msm.c pctrl->irq_chip.irq_ack = msm_gpio_irq_ack; pctrl 1026 drivers/pinctrl/qcom/pinctrl-msm.c pctrl->irq_chip.irq_set_type = msm_gpio_irq_set_type; pctrl 1027 drivers/pinctrl/qcom/pinctrl-msm.c pctrl->irq_chip.irq_set_wake = msm_gpio_irq_set_wake; pctrl 1028 drivers/pinctrl/qcom/pinctrl-msm.c pctrl->irq_chip.irq_request_resources = msm_gpio_irq_reqres; pctrl 1029 drivers/pinctrl/qcom/pinctrl-msm.c pctrl->irq_chip.irq_release_resources = msm_gpio_irq_relres; pctrl 1032 drivers/pinctrl/qcom/pinctrl-msm.c girq->chip = &pctrl->irq_chip; pctrl 1035 drivers/pinctrl/qcom/pinctrl-msm.c girq->parents = devm_kcalloc(pctrl->dev, 1, sizeof(*girq->parents), pctrl 1041 drivers/pinctrl/qcom/pinctrl-msm.c girq->parents[0] = pctrl->irq; pctrl 1043 drivers/pinctrl/qcom/pinctrl-msm.c ret = gpiochip_add_data(&pctrl->chip, pctrl); pctrl 1045 drivers/pinctrl/qcom/pinctrl-msm.c dev_err(pctrl->dev, "Failed register gpiochip\n"); pctrl 1059 drivers/pinctrl/qcom/pinctrl-msm.c if (!of_property_read_bool(pctrl->dev->of_node, "gpio-ranges")) { pctrl 1060 drivers/pinctrl/qcom/pinctrl-msm.c ret = gpiochip_add_pin_range(&pctrl->chip, pctrl 1061 drivers/pinctrl/qcom/pinctrl-msm.c dev_name(pctrl->dev), 0, 0, chip->ngpio); pctrl 1063 drivers/pinctrl/qcom/pinctrl-msm.c dev_err(pctrl->dev, "Failed to add pin range\n"); pctrl 1064 drivers/pinctrl/qcom/pinctrl-msm.c gpiochip_remove(&pctrl->chip); pctrl 1075 drivers/pinctrl/qcom/pinctrl-msm.c struct msm_pinctrl *pctrl = container_of(nb, struct msm_pinctrl, restart_nb); pctrl 1077 drivers/pinctrl/qcom/pinctrl-msm.c writel(0, pctrl->regs[0] + PS_HOLD_OFFSET); pctrl 1089 drivers/pinctrl/qcom/pinctrl-msm.c static void msm_pinctrl_setup_pm_reset(struct msm_pinctrl *pctrl) pctrl 1092 drivers/pinctrl/qcom/pinctrl-msm.c const struct msm_function *func = pctrl->soc->functions; pctrl 1094 drivers/pinctrl/qcom/pinctrl-msm.c for (i = 0; i < pctrl->soc->nfunctions; i++) pctrl 1096 drivers/pinctrl/qcom/pinctrl-msm.c pctrl->restart_nb.notifier_call = msm_ps_hold_restart; pctrl 1097 drivers/pinctrl/qcom/pinctrl-msm.c pctrl->restart_nb.priority = 128; pctrl 1098 drivers/pinctrl/qcom/pinctrl-msm.c if (register_restart_handler(&pctrl->restart_nb)) pctrl 1099 drivers/pinctrl/qcom/pinctrl-msm.c dev_err(pctrl->dev, pctrl 1101 drivers/pinctrl/qcom/pinctrl-msm.c poweroff_pctrl = pctrl; pctrl 1109 drivers/pinctrl/qcom/pinctrl-msm.c struct msm_pinctrl *pctrl = dev_get_drvdata(dev); pctrl 1111 drivers/pinctrl/qcom/pinctrl-msm.c return pinctrl_force_sleep(pctrl->pctrl); pctrl 1116 drivers/pinctrl/qcom/pinctrl-msm.c struct msm_pinctrl *pctrl = dev_get_drvdata(dev); pctrl 1118 drivers/pinctrl/qcom/pinctrl-msm.c return pinctrl_force_default(pctrl->pctrl); pctrl 1129 drivers/pinctrl/qcom/pinctrl-msm.c struct msm_pinctrl *pctrl; pctrl 1134 drivers/pinctrl/qcom/pinctrl-msm.c pctrl = devm_kzalloc(&pdev->dev, sizeof(*pctrl), GFP_KERNEL); pctrl 1135 drivers/pinctrl/qcom/pinctrl-msm.c if (!pctrl) pctrl 1138 drivers/pinctrl/qcom/pinctrl-msm.c pctrl->dev = &pdev->dev; pctrl 1139 drivers/pinctrl/qcom/pinctrl-msm.c pctrl->soc = soc_data; pctrl 1140 drivers/pinctrl/qcom/pinctrl-msm.c pctrl->chip = msm_gpio_template; pctrl 1142 drivers/pinctrl/qcom/pinctrl-msm.c raw_spin_lock_init(&pctrl->lock); pctrl 1148 drivers/pinctrl/qcom/pinctrl-msm.c pctrl->regs[i] = devm_ioremap_resource(&pdev->dev, res); pctrl 1149 drivers/pinctrl/qcom/pinctrl-msm.c if (IS_ERR(pctrl->regs[i])) pctrl 1150 drivers/pinctrl/qcom/pinctrl-msm.c return PTR_ERR(pctrl->regs[i]); pctrl 1154 drivers/pinctrl/qcom/pinctrl-msm.c pctrl->regs[0] = devm_ioremap_resource(&pdev->dev, res); pctrl 1155 drivers/pinctrl/qcom/pinctrl-msm.c if (IS_ERR(pctrl->regs[0])) pctrl 1156 drivers/pinctrl/qcom/pinctrl-msm.c return PTR_ERR(pctrl->regs[0]); pctrl 1159 drivers/pinctrl/qcom/pinctrl-msm.c msm_pinctrl_setup_pm_reset(pctrl); pctrl 1161 drivers/pinctrl/qcom/pinctrl-msm.c pctrl->irq = platform_get_irq(pdev, 0); pctrl 1162 drivers/pinctrl/qcom/pinctrl-msm.c if (pctrl->irq < 0) pctrl 1163 drivers/pinctrl/qcom/pinctrl-msm.c return pctrl->irq; pctrl 1165 drivers/pinctrl/qcom/pinctrl-msm.c pctrl->desc.owner = THIS_MODULE; pctrl 1166 drivers/pinctrl/qcom/pinctrl-msm.c pctrl->desc.pctlops = &msm_pinctrl_ops; pctrl 1167 drivers/pinctrl/qcom/pinctrl-msm.c pctrl->desc.pmxops = &msm_pinmux_ops; pctrl 1168 drivers/pinctrl/qcom/pinctrl-msm.c pctrl->desc.confops = &msm_pinconf_ops; pctrl 1169 drivers/pinctrl/qcom/pinctrl-msm.c pctrl->desc.name = dev_name(&pdev->dev); pctrl 1170 drivers/pinctrl/qcom/pinctrl-msm.c pctrl->desc.pins = pctrl->soc->pins; pctrl 1171 drivers/pinctrl/qcom/pinctrl-msm.c pctrl->desc.npins = pctrl->soc->npins; pctrl 1173 drivers/pinctrl/qcom/pinctrl-msm.c pctrl->pctrl = devm_pinctrl_register(&pdev->dev, &pctrl->desc, pctrl); pctrl 1174 drivers/pinctrl/qcom/pinctrl-msm.c if (IS_ERR(pctrl->pctrl)) { pctrl 1176 drivers/pinctrl/qcom/pinctrl-msm.c return PTR_ERR(pctrl->pctrl); pctrl 1179 drivers/pinctrl/qcom/pinctrl-msm.c ret = msm_gpio_init(pctrl); pctrl 1183 drivers/pinctrl/qcom/pinctrl-msm.c platform_set_drvdata(pdev, pctrl); pctrl 1193 drivers/pinctrl/qcom/pinctrl-msm.c struct msm_pinctrl *pctrl = platform_get_drvdata(pdev); pctrl 1195 drivers/pinctrl/qcom/pinctrl-msm.c gpiochip_remove(&pctrl->chip); pctrl 1197 drivers/pinctrl/qcom/pinctrl-msm.c unregister_restart_handler(&pctrl->restart_nb); pctrl 91 drivers/pinctrl/qcom/pinctrl-ssbi-gpio.c struct pinctrl_dev *pctrl; pctrl 130 drivers/pinctrl/qcom/pinctrl-ssbi-gpio.c static int pm8xxx_read_bank(struct pm8xxx_gpio *pctrl, pctrl 136 drivers/pinctrl/qcom/pinctrl-ssbi-gpio.c ret = regmap_write(pctrl->regmap, pin->reg, val); pctrl 138 drivers/pinctrl/qcom/pinctrl-ssbi-gpio.c dev_err(pctrl->dev, "failed to select bank %d\n", bank); pctrl 142 drivers/pinctrl/qcom/pinctrl-ssbi-gpio.c ret = regmap_read(pctrl->regmap, pin->reg, &val); pctrl 144 drivers/pinctrl/qcom/pinctrl-ssbi-gpio.c dev_err(pctrl->dev, "failed to read register %d\n", bank); pctrl 151 drivers/pinctrl/qcom/pinctrl-ssbi-gpio.c static int pm8xxx_write_bank(struct pm8xxx_gpio *pctrl, pctrl 161 drivers/pinctrl/qcom/pinctrl-ssbi-gpio.c ret = regmap_write(pctrl->regmap, pin->reg, val); pctrl 163 drivers/pinctrl/qcom/pinctrl-ssbi-gpio.c dev_err(pctrl->dev, "failed to write register\n"); pctrl 170 drivers/pinctrl/qcom/pinctrl-ssbi-gpio.c struct pm8xxx_gpio *pctrl = pinctrl_dev_get_drvdata(pctldev); pctrl 172 drivers/pinctrl/qcom/pinctrl-ssbi-gpio.c return pctrl->npins; pctrl 187 drivers/pinctrl/qcom/pinctrl-ssbi-gpio.c struct pm8xxx_gpio *pctrl = pinctrl_dev_get_drvdata(pctldev); pctrl 189 drivers/pinctrl/qcom/pinctrl-ssbi-gpio.c *pins = &pctrl->desc.pins[group].number; pctrl 219 drivers/pinctrl/qcom/pinctrl-ssbi-gpio.c struct pm8xxx_gpio *pctrl = pinctrl_dev_get_drvdata(pctldev); pctrl 222 drivers/pinctrl/qcom/pinctrl-ssbi-gpio.c *num_groups = pctrl->npins; pctrl 230 drivers/pinctrl/qcom/pinctrl-ssbi-gpio.c struct pm8xxx_gpio *pctrl = pinctrl_dev_get_drvdata(pctldev); pctrl 231 drivers/pinctrl/qcom/pinctrl-ssbi-gpio.c struct pm8xxx_pin_data *pin = pctrl->desc.pins[group].drv_data; pctrl 237 drivers/pinctrl/qcom/pinctrl-ssbi-gpio.c pm8xxx_write_bank(pctrl, pin, 4, val); pctrl 253 drivers/pinctrl/qcom/pinctrl-ssbi-gpio.c struct pm8xxx_gpio *pctrl = pinctrl_dev_get_drvdata(pctldev); pctrl 254 drivers/pinctrl/qcom/pinctrl-ssbi-gpio.c struct pm8xxx_pin_data *pin = pctrl->desc.pins[offset].drv_data; pctrl 323 drivers/pinctrl/qcom/pinctrl-ssbi-gpio.c struct pm8xxx_gpio *pctrl = pinctrl_dev_get_drvdata(pctldev); pctrl 324 drivers/pinctrl/qcom/pinctrl-ssbi-gpio.c struct pm8xxx_pin_data *pin = pctrl->desc.pins[offset].drv_data; pctrl 350 drivers/pinctrl/qcom/pinctrl-ssbi-gpio.c dev_err(pctrl->dev, "invalid pull-up strength\n"); pctrl 380 drivers/pinctrl/qcom/pinctrl-ssbi-gpio.c dev_err(pctrl->dev, "invalid drive strength\n"); pctrl 395 drivers/pinctrl/qcom/pinctrl-ssbi-gpio.c dev_err(pctrl->dev, pctrl 405 drivers/pinctrl/qcom/pinctrl-ssbi-gpio.c pm8xxx_write_bank(pctrl, pin, 0, val); pctrl 412 drivers/pinctrl/qcom/pinctrl-ssbi-gpio.c pm8xxx_write_bank(pctrl, pin, 1, val); pctrl 417 drivers/pinctrl/qcom/pinctrl-ssbi-gpio.c pm8xxx_write_bank(pctrl, pin, 2, val); pctrl 423 drivers/pinctrl/qcom/pinctrl-ssbi-gpio.c pm8xxx_write_bank(pctrl, pin, 3, val); pctrl 428 drivers/pinctrl/qcom/pinctrl-ssbi-gpio.c pm8xxx_write_bank(pctrl, pin, 4, val); pctrl 435 drivers/pinctrl/qcom/pinctrl-ssbi-gpio.c pm8xxx_write_bank(pctrl, pin, 5, val); pctrl 458 drivers/pinctrl/qcom/pinctrl-ssbi-gpio.c struct pm8xxx_gpio *pctrl = gpiochip_get_data(chip); pctrl 459 drivers/pinctrl/qcom/pinctrl-ssbi-gpio.c struct pm8xxx_pin_data *pin = pctrl->desc.pins[offset].drv_data; pctrl 465 drivers/pinctrl/qcom/pinctrl-ssbi-gpio.c pm8xxx_write_bank(pctrl, pin, 1, val); pctrl 474 drivers/pinctrl/qcom/pinctrl-ssbi-gpio.c struct pm8xxx_gpio *pctrl = gpiochip_get_data(chip); pctrl 475 drivers/pinctrl/qcom/pinctrl-ssbi-gpio.c struct pm8xxx_pin_data *pin = pctrl->desc.pins[offset].drv_data; pctrl 485 drivers/pinctrl/qcom/pinctrl-ssbi-gpio.c pm8xxx_write_bank(pctrl, pin, 1, val); pctrl 492 drivers/pinctrl/qcom/pinctrl-ssbi-gpio.c struct pm8xxx_gpio *pctrl = gpiochip_get_data(chip); pctrl 493 drivers/pinctrl/qcom/pinctrl-ssbi-gpio.c struct pm8xxx_pin_data *pin = pctrl->desc.pins[offset].drv_data; pctrl 511 drivers/pinctrl/qcom/pinctrl-ssbi-gpio.c struct pm8xxx_gpio *pctrl = gpiochip_get_data(chip); pctrl 512 drivers/pinctrl/qcom/pinctrl-ssbi-gpio.c struct pm8xxx_pin_data *pin = pctrl->desc.pins[offset].drv_data; pctrl 521 drivers/pinctrl/qcom/pinctrl-ssbi-gpio.c pm8xxx_write_bank(pctrl, pin, 1, val); pctrl 540 drivers/pinctrl/qcom/pinctrl-ssbi-gpio.c struct pm8xxx_gpio *pctrl = gpiochip_get_data(chip); pctrl 541 drivers/pinctrl/qcom/pinctrl-ssbi-gpio.c struct pm8xxx_pin_data *pin = pctrl->desc.pins[offset].drv_data; pctrl 545 drivers/pinctrl/qcom/pinctrl-ssbi-gpio.c fwspec.fwnode = pctrl->fwnode; pctrl 563 drivers/pinctrl/qcom/pinctrl-ssbi-gpio.c struct pm8xxx_gpio *pctrl = gpiochip_get_data(chip); pctrl 564 drivers/pinctrl/qcom/pinctrl-ssbi-gpio.c struct pm8xxx_pin_data *pin = pctrl->desc.pins[offset].drv_data; pctrl 578 drivers/pinctrl/qcom/pinctrl-ssbi-gpio.c struct pm8xxx_gpio *pctrl = gpiochip_get_data(chip); pctrl 579 drivers/pinctrl/qcom/pinctrl-ssbi-gpio.c struct pm8xxx_pin_data *pin = pctrl->desc.pins[offset].drv_data; pctrl 638 drivers/pinctrl/qcom/pinctrl-ssbi-gpio.c static int pm8xxx_pin_populate(struct pm8xxx_gpio *pctrl, pctrl 643 drivers/pinctrl/qcom/pinctrl-ssbi-gpio.c val = pm8xxx_read_bank(pctrl, pin, 0); pctrl 649 drivers/pinctrl/qcom/pinctrl-ssbi-gpio.c val = pm8xxx_read_bank(pctrl, pin, 1); pctrl 657 drivers/pinctrl/qcom/pinctrl-ssbi-gpio.c val = pm8xxx_read_bank(pctrl, pin, 2); pctrl 667 drivers/pinctrl/qcom/pinctrl-ssbi-gpio.c val = pm8xxx_read_bank(pctrl, pin, 3); pctrl 674 drivers/pinctrl/qcom/pinctrl-ssbi-gpio.c val = pm8xxx_read_bank(pctrl, pin, 4); pctrl 680 drivers/pinctrl/qcom/pinctrl-ssbi-gpio.c val = pm8xxx_read_bank(pctrl, pin, 5); pctrl 702 drivers/pinctrl/qcom/pinctrl-ssbi-gpio.c struct pm8xxx_gpio *pctrl = container_of(domain->host_data, pctrl 706 drivers/pinctrl/qcom/pinctrl-ssbi-gpio.c fwspec->param[0] > pctrl->chip.ngpio) pctrl 718 drivers/pinctrl/qcom/pinctrl-ssbi-gpio.c struct pm8xxx_gpio *pctrl = container_of(domain->host_data, pctrl 732 drivers/pinctrl/qcom/pinctrl-ssbi-gpio.c &pm8xxx_irq_chip, pctrl, handle_level_irq, pctrl 768 drivers/pinctrl/qcom/pinctrl-ssbi-gpio.c struct pm8xxx_gpio *pctrl; pctrl 771 drivers/pinctrl/qcom/pinctrl-ssbi-gpio.c pctrl = devm_kzalloc(&pdev->dev, sizeof(*pctrl), GFP_KERNEL); pctrl 772 drivers/pinctrl/qcom/pinctrl-ssbi-gpio.c if (!pctrl) pctrl 775 drivers/pinctrl/qcom/pinctrl-ssbi-gpio.c pctrl->dev = &pdev->dev; pctrl 776 drivers/pinctrl/qcom/pinctrl-ssbi-gpio.c pctrl->npins = (uintptr_t) device_get_match_data(&pdev->dev); pctrl 778 drivers/pinctrl/qcom/pinctrl-ssbi-gpio.c pctrl->regmap = dev_get_regmap(pdev->dev.parent, NULL); pctrl 779 drivers/pinctrl/qcom/pinctrl-ssbi-gpio.c if (!pctrl->regmap) { pctrl 784 drivers/pinctrl/qcom/pinctrl-ssbi-gpio.c pctrl->desc = pm8xxx_pinctrl_desc; pctrl 785 drivers/pinctrl/qcom/pinctrl-ssbi-gpio.c pctrl->desc.npins = pctrl->npins; pctrl 788 drivers/pinctrl/qcom/pinctrl-ssbi-gpio.c pctrl->desc.npins, pctrl 795 drivers/pinctrl/qcom/pinctrl-ssbi-gpio.c pctrl->desc.npins, pctrl 801 drivers/pinctrl/qcom/pinctrl-ssbi-gpio.c for (i = 0; i < pctrl->desc.npins; i++) { pctrl 805 drivers/pinctrl/qcom/pinctrl-ssbi-gpio.c ret = pm8xxx_pin_populate(pctrl, &pin_data[i]); pctrl 813 drivers/pinctrl/qcom/pinctrl-ssbi-gpio.c pctrl->desc.pins = pins; pctrl 815 drivers/pinctrl/qcom/pinctrl-ssbi-gpio.c pctrl->desc.num_custom_params = ARRAY_SIZE(pm8xxx_gpio_bindings); pctrl 816 drivers/pinctrl/qcom/pinctrl-ssbi-gpio.c pctrl->desc.custom_params = pm8xxx_gpio_bindings; pctrl 818 drivers/pinctrl/qcom/pinctrl-ssbi-gpio.c pctrl->desc.custom_conf_items = pm8xxx_conf_items; pctrl 821 drivers/pinctrl/qcom/pinctrl-ssbi-gpio.c pctrl->pctrl = devm_pinctrl_register(&pdev->dev, &pctrl->desc, pctrl); pctrl 822 drivers/pinctrl/qcom/pinctrl-ssbi-gpio.c if (IS_ERR(pctrl->pctrl)) { pctrl 824 drivers/pinctrl/qcom/pinctrl-ssbi-gpio.c return PTR_ERR(pctrl->pctrl); pctrl 827 drivers/pinctrl/qcom/pinctrl-ssbi-gpio.c pctrl->chip = pm8xxx_gpio_template; pctrl 828 drivers/pinctrl/qcom/pinctrl-ssbi-gpio.c pctrl->chip.base = -1; pctrl 829 drivers/pinctrl/qcom/pinctrl-ssbi-gpio.c pctrl->chip.parent = &pdev->dev; pctrl 830 drivers/pinctrl/qcom/pinctrl-ssbi-gpio.c pctrl->chip.of_node = pdev->dev.of_node; pctrl 831 drivers/pinctrl/qcom/pinctrl-ssbi-gpio.c pctrl->chip.of_gpio_n_cells = 2; pctrl 832 drivers/pinctrl/qcom/pinctrl-ssbi-gpio.c pctrl->chip.label = dev_name(pctrl->dev); pctrl 833 drivers/pinctrl/qcom/pinctrl-ssbi-gpio.c pctrl->chip.ngpio = pctrl->npins; pctrl 835 drivers/pinctrl/qcom/pinctrl-ssbi-gpio.c parent_node = of_irq_find_parent(pctrl->dev->of_node); pctrl 844 drivers/pinctrl/qcom/pinctrl-ssbi-gpio.c pctrl->fwnode = of_node_to_fwnode(pctrl->dev->of_node); pctrl 845 drivers/pinctrl/qcom/pinctrl-ssbi-gpio.c pctrl->domain = irq_domain_create_hierarchy(parent_domain, 0, pctrl 846 drivers/pinctrl/qcom/pinctrl-ssbi-gpio.c pctrl->chip.ngpio, pctrl 847 drivers/pinctrl/qcom/pinctrl-ssbi-gpio.c pctrl->fwnode, pctrl 849 drivers/pinctrl/qcom/pinctrl-ssbi-gpio.c &pctrl->chip); pctrl 850 drivers/pinctrl/qcom/pinctrl-ssbi-gpio.c if (!pctrl->domain) pctrl 853 drivers/pinctrl/qcom/pinctrl-ssbi-gpio.c ret = gpiochip_add_data(&pctrl->chip, pctrl); pctrl 869 drivers/pinctrl/qcom/pinctrl-ssbi-gpio.c if (!of_property_read_bool(pctrl->dev->of_node, "gpio-ranges")) { pctrl 870 drivers/pinctrl/qcom/pinctrl-ssbi-gpio.c ret = gpiochip_add_pin_range(&pctrl->chip, dev_name(pctrl->dev), pctrl 871 drivers/pinctrl/qcom/pinctrl-ssbi-gpio.c 0, 0, pctrl->chip.ngpio); pctrl 873 drivers/pinctrl/qcom/pinctrl-ssbi-gpio.c dev_err(pctrl->dev, "failed to add pin range\n"); pctrl 878 drivers/pinctrl/qcom/pinctrl-ssbi-gpio.c platform_set_drvdata(pdev, pctrl); pctrl 885 drivers/pinctrl/qcom/pinctrl-ssbi-gpio.c gpiochip_remove(&pctrl->chip); pctrl 887 drivers/pinctrl/qcom/pinctrl-ssbi-gpio.c irq_domain_remove(pctrl->domain); pctrl 894 drivers/pinctrl/qcom/pinctrl-ssbi-gpio.c struct pm8xxx_gpio *pctrl = platform_get_drvdata(pdev); pctrl 896 drivers/pinctrl/qcom/pinctrl-ssbi-gpio.c gpiochip_remove(&pctrl->chip); pctrl 897 drivers/pinctrl/qcom/pinctrl-ssbi-gpio.c irq_domain_remove(pctrl->domain); pctrl 127 drivers/pinctrl/qcom/pinctrl-ssbi-mpp.c struct pinctrl_dev *pctrl; pctrl 164 drivers/pinctrl/qcom/pinctrl-ssbi-mpp.c static int pm8xxx_mpp_update(struct pm8xxx_mpp *pctrl, pctrl 233 drivers/pinctrl/qcom/pinctrl-ssbi-mpp.c ret = regmap_write(pctrl->regmap, pin->reg, val); pctrl 235 drivers/pinctrl/qcom/pinctrl-ssbi-mpp.c dev_err(pctrl->dev, "failed to write register\n"); pctrl 242 drivers/pinctrl/qcom/pinctrl-ssbi-mpp.c struct pm8xxx_mpp *pctrl = pinctrl_dev_get_drvdata(pctldev); pctrl 244 drivers/pinctrl/qcom/pinctrl-ssbi-mpp.c return pctrl->npins; pctrl 259 drivers/pinctrl/qcom/pinctrl-ssbi-mpp.c struct pm8xxx_mpp *pctrl = pinctrl_dev_get_drvdata(pctldev); pctrl 261 drivers/pinctrl/qcom/pinctrl-ssbi-mpp.c *pins = &pctrl->desc.pins[group].number; pctrl 291 drivers/pinctrl/qcom/pinctrl-ssbi-mpp.c struct pm8xxx_mpp *pctrl = pinctrl_dev_get_drvdata(pctldev); pctrl 294 drivers/pinctrl/qcom/pinctrl-ssbi-mpp.c *num_groups = pctrl->npins; pctrl 302 drivers/pinctrl/qcom/pinctrl-ssbi-mpp.c struct pm8xxx_mpp *pctrl = pinctrl_dev_get_drvdata(pctldev); pctrl 303 drivers/pinctrl/qcom/pinctrl-ssbi-mpp.c struct pm8xxx_pin_data *pin = pctrl->desc.pins[group].drv_data; pctrl 306 drivers/pinctrl/qcom/pinctrl-ssbi-mpp.c pm8xxx_mpp_update(pctrl, pin); pctrl 322 drivers/pinctrl/qcom/pinctrl-ssbi-mpp.c struct pm8xxx_mpp *pctrl = pinctrl_dev_get_drvdata(pctldev); pctrl 323 drivers/pinctrl/qcom/pinctrl-ssbi-mpp.c struct pm8xxx_pin_data *pin = pctrl->desc.pins[offset].drv_data; pctrl 372 drivers/pinctrl/qcom/pinctrl-ssbi-mpp.c struct pm8xxx_mpp *pctrl = pinctrl_dev_get_drvdata(pctldev); pctrl 373 drivers/pinctrl/qcom/pinctrl-ssbi-mpp.c struct pm8xxx_pin_data *pin = pctrl->desc.pins[offset].drv_data; pctrl 415 drivers/pinctrl/qcom/pinctrl-ssbi-mpp.c dev_err(pctrl->dev, pctrl 422 drivers/pinctrl/qcom/pinctrl-ssbi-mpp.c pm8xxx_mpp_update(pctrl, pin); pctrl 444 drivers/pinctrl/qcom/pinctrl-ssbi-mpp.c struct pm8xxx_mpp *pctrl = gpiochip_get_data(chip); pctrl 445 drivers/pinctrl/qcom/pinctrl-ssbi-mpp.c struct pm8xxx_pin_data *pin = pctrl->desc.pins[offset].drv_data; pctrl 459 drivers/pinctrl/qcom/pinctrl-ssbi-mpp.c pm8xxx_mpp_update(pctrl, pin); pctrl 468 drivers/pinctrl/qcom/pinctrl-ssbi-mpp.c struct pm8xxx_mpp *pctrl = gpiochip_get_data(chip); pctrl 469 drivers/pinctrl/qcom/pinctrl-ssbi-mpp.c struct pm8xxx_pin_data *pin = pctrl->desc.pins[offset].drv_data; pctrl 485 drivers/pinctrl/qcom/pinctrl-ssbi-mpp.c pm8xxx_mpp_update(pctrl, pin); pctrl 492 drivers/pinctrl/qcom/pinctrl-ssbi-mpp.c struct pm8xxx_mpp *pctrl = gpiochip_get_data(chip); pctrl 493 drivers/pinctrl/qcom/pinctrl-ssbi-mpp.c struct pm8xxx_pin_data *pin = pctrl->desc.pins[offset].drv_data; pctrl 509 drivers/pinctrl/qcom/pinctrl-ssbi-mpp.c struct pm8xxx_mpp *pctrl = gpiochip_get_data(chip); pctrl 510 drivers/pinctrl/qcom/pinctrl-ssbi-mpp.c struct pm8xxx_pin_data *pin = pctrl->desc.pins[offset].drv_data; pctrl 514 drivers/pinctrl/qcom/pinctrl-ssbi-mpp.c pm8xxx_mpp_update(pctrl, pin); pctrl 533 drivers/pinctrl/qcom/pinctrl-ssbi-mpp.c struct pm8xxx_mpp *pctrl = gpiochip_get_data(chip); pctrl 534 drivers/pinctrl/qcom/pinctrl-ssbi-mpp.c struct pm8xxx_pin_data *pin = pctrl->desc.pins[offset].drv_data; pctrl 548 drivers/pinctrl/qcom/pinctrl-ssbi-mpp.c struct pm8xxx_mpp *pctrl = gpiochip_get_data(chip); pctrl 549 drivers/pinctrl/qcom/pinctrl-ssbi-mpp.c struct pm8xxx_pin_data *pin = pctrl->desc.pins[offset].drv_data; pctrl 649 drivers/pinctrl/qcom/pinctrl-ssbi-mpp.c static int pm8xxx_pin_populate(struct pm8xxx_mpp *pctrl, pctrl 658 drivers/pinctrl/qcom/pinctrl-ssbi-mpp.c ret = regmap_read(pctrl->regmap, pin->reg, &val); pctrl 660 drivers/pinctrl/qcom/pinctrl-ssbi-mpp.c dev_err(pctrl->dev, "failed to read register\n"); pctrl 752 drivers/pinctrl/qcom/pinctrl-ssbi-mpp.c struct pm8xxx_mpp *pctrl; pctrl 756 drivers/pinctrl/qcom/pinctrl-ssbi-mpp.c pctrl = devm_kzalloc(&pdev->dev, sizeof(*pctrl), GFP_KERNEL); pctrl 757 drivers/pinctrl/qcom/pinctrl-ssbi-mpp.c if (!pctrl) pctrl 760 drivers/pinctrl/qcom/pinctrl-ssbi-mpp.c pctrl->dev = &pdev->dev; pctrl 766 drivers/pinctrl/qcom/pinctrl-ssbi-mpp.c pctrl->npins = npins; pctrl 768 drivers/pinctrl/qcom/pinctrl-ssbi-mpp.c pctrl->regmap = dev_get_regmap(pdev->dev.parent, NULL); pctrl 769 drivers/pinctrl/qcom/pinctrl-ssbi-mpp.c if (!pctrl->regmap) { pctrl 774 drivers/pinctrl/qcom/pinctrl-ssbi-mpp.c pctrl->desc = pm8xxx_pinctrl_desc; pctrl 775 drivers/pinctrl/qcom/pinctrl-ssbi-mpp.c pctrl->desc.npins = pctrl->npins; pctrl 778 drivers/pinctrl/qcom/pinctrl-ssbi-mpp.c pctrl->desc.npins, pctrl 785 drivers/pinctrl/qcom/pinctrl-ssbi-mpp.c pctrl->desc.npins, pctrl 791 drivers/pinctrl/qcom/pinctrl-ssbi-mpp.c for (i = 0; i < pctrl->desc.npins; i++) { pctrl 797 drivers/pinctrl/qcom/pinctrl-ssbi-mpp.c ret = pm8xxx_pin_populate(pctrl, &pin_data[i]); pctrl 805 drivers/pinctrl/qcom/pinctrl-ssbi-mpp.c pctrl->desc.pins = pins; pctrl 807 drivers/pinctrl/qcom/pinctrl-ssbi-mpp.c pctrl->desc.num_custom_params = ARRAY_SIZE(pm8xxx_mpp_bindings); pctrl 808 drivers/pinctrl/qcom/pinctrl-ssbi-mpp.c pctrl->desc.custom_params = pm8xxx_mpp_bindings; pctrl 810 drivers/pinctrl/qcom/pinctrl-ssbi-mpp.c pctrl->desc.custom_conf_items = pm8xxx_conf_items; pctrl 813 drivers/pinctrl/qcom/pinctrl-ssbi-mpp.c pctrl->pctrl = devm_pinctrl_register(&pdev->dev, &pctrl->desc, pctrl); pctrl 814 drivers/pinctrl/qcom/pinctrl-ssbi-mpp.c if (IS_ERR(pctrl->pctrl)) { pctrl 816 drivers/pinctrl/qcom/pinctrl-ssbi-mpp.c return PTR_ERR(pctrl->pctrl); pctrl 819 drivers/pinctrl/qcom/pinctrl-ssbi-mpp.c pctrl->chip = pm8xxx_mpp_template; pctrl 820 drivers/pinctrl/qcom/pinctrl-ssbi-mpp.c pctrl->chip.base = -1; pctrl 821 drivers/pinctrl/qcom/pinctrl-ssbi-mpp.c pctrl->chip.parent = &pdev->dev; pctrl 822 drivers/pinctrl/qcom/pinctrl-ssbi-mpp.c pctrl->chip.of_node = pdev->dev.of_node; pctrl 823 drivers/pinctrl/qcom/pinctrl-ssbi-mpp.c pctrl->chip.of_gpio_n_cells = 2; pctrl 824 drivers/pinctrl/qcom/pinctrl-ssbi-mpp.c pctrl->chip.label = dev_name(pctrl->dev); pctrl 825 drivers/pinctrl/qcom/pinctrl-ssbi-mpp.c pctrl->chip.ngpio = pctrl->npins; pctrl 826 drivers/pinctrl/qcom/pinctrl-ssbi-mpp.c ret = gpiochip_add_data(&pctrl->chip, pctrl); pctrl 832 drivers/pinctrl/qcom/pinctrl-ssbi-mpp.c ret = gpiochip_add_pin_range(&pctrl->chip, pctrl 833 drivers/pinctrl/qcom/pinctrl-ssbi-mpp.c dev_name(pctrl->dev), pctrl 834 drivers/pinctrl/qcom/pinctrl-ssbi-mpp.c 0, 0, pctrl->chip.ngpio); pctrl 836 drivers/pinctrl/qcom/pinctrl-ssbi-mpp.c dev_err(pctrl->dev, "failed to add pin range\n"); pctrl 840 drivers/pinctrl/qcom/pinctrl-ssbi-mpp.c platform_set_drvdata(pdev, pctrl); pctrl 847 drivers/pinctrl/qcom/pinctrl-ssbi-mpp.c gpiochip_remove(&pctrl->chip); pctrl 854 drivers/pinctrl/qcom/pinctrl-ssbi-mpp.c struct pm8xxx_mpp *pctrl = platform_get_drvdata(pdev); pctrl 856 drivers/pinctrl/qcom/pinctrl-ssbi-mpp.c gpiochip_remove(&pctrl->chip); pctrl 412 drivers/staging/rtl8188eu/core/rtw_xmit.c pattrib->pctrl = 0; pctrl 138 drivers/staging/rtl8188eu/include/rtw_xmit.h u8 pctrl;/* per packet txdesc control enable */ pctrl 536 drivers/staging/rtl8712/rtl8712_xmit.c if (pattrib->pctrl == 1) { /* mp tx packets */ pctrl 549 drivers/staging/rtl8712/rtl8712_xmit.c pattrib->pctrl = 0;/* reset to zero; */ pctrl 213 drivers/staging/rtl8712/rtl871x_xmit.c pattrib->pctrl = 0; pctrl 235 drivers/staging/rtl8712/rtl871x_xmit.c pattrib->pctrl = 1; pctrl 107 drivers/staging/rtl8712/rtl871x_xmit.h u8 pctrl;/*per packet txdesc control enable*/ pctrl 499 drivers/staging/rtl8723bs/core/rtw_xmit.c pattrib->pctrl = true; pctrl 823 drivers/staging/rtl8723bs/core/rtw_xmit.c pattrib->pctrl = 0; pctrl 3097 drivers/staging/rtl8723bs/hal/rtl8723b_hal_init.c && (!pattrib->pctrl) pctrl 176 drivers/staging/rtl8723bs/include/rtw_xmit.h u8 pctrl;/* per packet txdesc control enable */