pmx 34 drivers/pinctrl/meson/pinctrl-meson-axg-pmx.c struct meson_axg_pmx_data *pmx = pc->data->pmx_data; pmx 36 drivers/pinctrl/meson/pinctrl-meson-axg-pmx.c for (i = 0; i < pmx->num_pmx_banks; i++) pmx 37 drivers/pinctrl/meson/pinctrl-meson-axg-pmx.c if (pin >= pmx->pmx_banks[i].first && pmx 38 drivers/pinctrl/meson/pinctrl-meson-axg-pmx.c pin <= pmx->pmx_banks[i].last) { pmx 39 drivers/pinctrl/meson/pinctrl-meson-axg-pmx.c *bank = &pmx->pmx_banks[i]; pmx 660 drivers/pinctrl/pinctrl-artpec6.c struct artpec6_pmx *pmx = pinctrl_dev_get_drvdata(pctldev); pmx 684 drivers/pinctrl/pinctrl-artpec6.c regval = readl(pmx->base + reg); pmx 687 drivers/pinctrl/pinctrl-artpec6.c writel(regval, pmx->base + reg); pmx 695 drivers/pinctrl/pinctrl-artpec6.c struct artpec6_pmx *pmx = pinctrl_dev_get_drvdata(pctldev); pmx 697 drivers/pinctrl/pinctrl-artpec6.c dev_dbg(pmx->dev, "enabling %s function for pin group %s\n", pmx 710 drivers/pinctrl/pinctrl-artpec6.c struct artpec6_pmx *pmx = pinctrl_dev_get_drvdata(pctldev); pmx 717 drivers/pinctrl/pinctrl-artpec6.c val = readl_relaxed(pmx->base + reg); pmx 720 drivers/pinctrl/pinctrl-artpec6.c writel_relaxed(val, pmx->base + reg); pmx 736 drivers/pinctrl/pinctrl-artpec6.c struct artpec6_pmx *pmx = pinctrl_dev_get_drvdata(pctldev); pmx 741 drivers/pinctrl/pinctrl-artpec6.c if (pin >= pmx->num_pins) { pmx 742 drivers/pinctrl/pinctrl-artpec6.c dev_dbg(pmx->dev, "pinconf is not supported for pin %s\n", pmx 743 drivers/pinctrl/pinctrl-artpec6.c pmx->pins[pin].name); pmx 747 drivers/pinctrl/pinctrl-artpec6.c dev_dbg(pmx->dev, "getting configuration for pin %s\n", pmx 748 drivers/pinctrl/pinctrl-artpec6.c pmx->pins[pin].name); pmx 751 drivers/pinctrl/pinctrl-artpec6.c regval = readl(pmx->base + artpec6_pmx_reg_offset(pin)); pmx 797 drivers/pinctrl/pinctrl-artpec6.c struct artpec6_pmx *pmx = pinctrl_dev_get_drvdata(pctldev); pmx 805 drivers/pinctrl/pinctrl-artpec6.c if (pin >= pmx->num_pins) { pmx 806 drivers/pinctrl/pinctrl-artpec6.c dev_dbg(pmx->dev, "pinconf is not supported for pin %s\n", pmx 807 drivers/pinctrl/pinctrl-artpec6.c pmx->pins[pin].name); pmx 811 drivers/pinctrl/pinctrl-artpec6.c dev_dbg(pmx->dev, "setting configuration for pin %s\n", pmx 812 drivers/pinctrl/pinctrl-artpec6.c pmx->pins[pin].name); pmx 814 drivers/pinctrl/pinctrl-artpec6.c reg = pmx->base + artpec6_pmx_reg_offset(pin); pmx 871 drivers/pinctrl/pinctrl-artpec6.c dev_dbg(pmx->dev, "parameter not supported\n"); pmx 921 drivers/pinctrl/pinctrl-artpec6.c static void artpec6_pmx_reset(struct artpec6_pmx *pmx) pmx 923 drivers/pinctrl/pinctrl-artpec6.c void __iomem *base = pmx->base; pmx 938 drivers/pinctrl/pinctrl-artpec6.c struct artpec6_pmx *pmx; pmx 941 drivers/pinctrl/pinctrl-artpec6.c pmx = devm_kzalloc(&pdev->dev, sizeof(*pmx), GFP_KERNEL); pmx 942 drivers/pinctrl/pinctrl-artpec6.c if (!pmx) pmx 945 drivers/pinctrl/pinctrl-artpec6.c pmx->dev = &pdev->dev; pmx 948 drivers/pinctrl/pinctrl-artpec6.c pmx->base = devm_ioremap_resource(&pdev->dev, res); pmx 950 drivers/pinctrl/pinctrl-artpec6.c if (IS_ERR(pmx->base)) pmx 951 drivers/pinctrl/pinctrl-artpec6.c return PTR_ERR(pmx->base); pmx 953 drivers/pinctrl/pinctrl-artpec6.c artpec6_pmx_reset(pmx); pmx 955 drivers/pinctrl/pinctrl-artpec6.c pmx->pins = artpec6_pins; pmx 956 drivers/pinctrl/pinctrl-artpec6.c pmx->num_pins = ARRAY_SIZE(artpec6_pins); pmx 957 drivers/pinctrl/pinctrl-artpec6.c pmx->functions = artpec6_pmx_functions; pmx 958 drivers/pinctrl/pinctrl-artpec6.c pmx->num_functions = ARRAY_SIZE(artpec6_pmx_functions); pmx 959 drivers/pinctrl/pinctrl-artpec6.c pmx->pin_groups = artpec6_pin_groups; pmx 960 drivers/pinctrl/pinctrl-artpec6.c pmx->num_pin_groups = ARRAY_SIZE(artpec6_pin_groups); pmx 961 drivers/pinctrl/pinctrl-artpec6.c pmx->pctl = pinctrl_register(&artpec6_desc, &pdev->dev, pmx); pmx 963 drivers/pinctrl/pinctrl-artpec6.c if (IS_ERR(pmx->pctl)) { pmx 965 drivers/pinctrl/pinctrl-artpec6.c return PTR_ERR(pmx->pctl); pmx 968 drivers/pinctrl/pinctrl-artpec6.c platform_set_drvdata(pdev, pmx); pmx 977 drivers/pinctrl/pinctrl-artpec6.c struct artpec6_pmx *pmx = platform_get_drvdata(pdev); pmx 979 drivers/pinctrl/pinctrl-artpec6.c pinctrl_unregister(pmx->pctl); pmx 1958 drivers/pinctrl/pinctrl-gemini.c struct gemini_pmx *pmx = pinctrl_dev_get_drvdata(pctldev); pmx 1960 drivers/pinctrl/pinctrl-gemini.c if (pmx->is_3512) pmx 1962 drivers/pinctrl/pinctrl-gemini.c if (pmx->is_3516) pmx 1970 drivers/pinctrl/pinctrl-gemini.c struct gemini_pmx *pmx = pinctrl_dev_get_drvdata(pctldev); pmx 1972 drivers/pinctrl/pinctrl-gemini.c if (pmx->is_3512) pmx 1974 drivers/pinctrl/pinctrl-gemini.c if (pmx->is_3516) pmx 1984 drivers/pinctrl/pinctrl-gemini.c struct gemini_pmx *pmx = pinctrl_dev_get_drvdata(pctldev); pmx 1987 drivers/pinctrl/pinctrl-gemini.c if (pmx->flash_pin && pmx 1988 drivers/pinctrl/pinctrl-gemini.c pmx->is_3512 && pmx 1994 drivers/pinctrl/pinctrl-gemini.c if (pmx->flash_pin && pmx 1995 drivers/pinctrl/pinctrl-gemini.c pmx->is_3516 && pmx 2001 drivers/pinctrl/pinctrl-gemini.c if (pmx->is_3512) { pmx 2005 drivers/pinctrl/pinctrl-gemini.c if (pmx->is_3516) { pmx 2191 drivers/pinctrl/pinctrl-gemini.c struct gemini_pmx *pmx; pmx 2198 drivers/pinctrl/pinctrl-gemini.c pmx = pinctrl_dev_get_drvdata(pctldev); pmx 2201 drivers/pinctrl/pinctrl-gemini.c if (pmx->is_3512) pmx 2203 drivers/pinctrl/pinctrl-gemini.c else if (pmx->is_3516) pmx 2206 drivers/pinctrl/pinctrl-gemini.c dev_err(pmx->dev, "invalid SoC type\n"); pmx 2210 drivers/pinctrl/pinctrl-gemini.c dev_dbg(pmx->dev, pmx 2214 drivers/pinctrl/pinctrl-gemini.c regmap_read(pmx->map, GLOBAL_MISC_CTRL, &before); pmx 2215 drivers/pinctrl/pinctrl-gemini.c regmap_update_bits(pmx->map, GLOBAL_MISC_CTRL, pmx 2218 drivers/pinctrl/pinctrl-gemini.c regmap_read(pmx->map, GLOBAL_MISC_CTRL, &after); pmx 2234 drivers/pinctrl/pinctrl-gemini.c dev_err(pmx->dev, pmx 2239 drivers/pinctrl/pinctrl-gemini.c dev_err(pmx->dev, pmx 2243 drivers/pinctrl/pinctrl-gemini.c dev_dbg(pmx->dev, pmx 2256 drivers/pinctrl/pinctrl-gemini.c dev_err(pmx->dev, pmx 2261 drivers/pinctrl/pinctrl-gemini.c dev_err(pmx->dev, pmx 2265 drivers/pinctrl/pinctrl-gemini.c dev_dbg(pmx->dev, pmx 2363 drivers/pinctrl/pinctrl-gemini.c static const struct gemini_pin_conf *gemini_get_pin_conf(struct gemini_pmx *pmx, pmx 2369 drivers/pinctrl/pinctrl-gemini.c for (i = 0; i < pmx->nconfs; i++) { pmx 2370 drivers/pinctrl/pinctrl-gemini.c retconf = &pmx->confs[i]; pmx 2380 drivers/pinctrl/pinctrl-gemini.c struct gemini_pmx *pmx = pinctrl_dev_get_drvdata(pctldev); pmx 2387 drivers/pinctrl/pinctrl-gemini.c conf = gemini_get_pin_conf(pmx, pin); pmx 2390 drivers/pinctrl/pinctrl-gemini.c regmap_read(pmx->map, conf->reg, &val); pmx 2405 drivers/pinctrl/pinctrl-gemini.c struct gemini_pmx *pmx = pinctrl_dev_get_drvdata(pctldev); pmx 2420 drivers/pinctrl/pinctrl-gemini.c conf = gemini_get_pin_conf(pmx, pin); pmx 2422 drivers/pinctrl/pinctrl-gemini.c dev_err(pmx->dev, pmx 2427 drivers/pinctrl/pinctrl-gemini.c dev_dbg(pmx->dev, pmx 2430 drivers/pinctrl/pinctrl-gemini.c regmap_update_bits(pmx->map, conf->reg, conf->mask, arg); pmx 2433 drivers/pinctrl/pinctrl-gemini.c dev_err(pmx->dev, "Invalid config param %04x\n", param); pmx 2446 drivers/pinctrl/pinctrl-gemini.c struct gemini_pmx *pmx = pinctrl_dev_get_drvdata(pctldev); pmx 2453 drivers/pinctrl/pinctrl-gemini.c if (pmx->is_3512) pmx 2455 drivers/pinctrl/pinctrl-gemini.c if (pmx->is_3516) pmx 2460 drivers/pinctrl/pinctrl-gemini.c dev_err(pmx->dev, "pin config group \"%s\" does " pmx 2486 drivers/pinctrl/pinctrl-gemini.c dev_err(pmx->dev, pmx 2492 drivers/pinctrl/pinctrl-gemini.c regmap_update_bits(pmx->map, GLOBAL_IODRIVE, pmx 2495 drivers/pinctrl/pinctrl-gemini.c dev_dbg(pmx->dev, pmx 2500 drivers/pinctrl/pinctrl-gemini.c dev_err(pmx->dev, "invalid config param %04x\n", param); pmx 2525 drivers/pinctrl/pinctrl-gemini.c struct gemini_pmx *pmx; pmx 2535 drivers/pinctrl/pinctrl-gemini.c pmx = devm_kzalloc(&pdev->dev, sizeof(*pmx), GFP_KERNEL); pmx 2536 drivers/pinctrl/pinctrl-gemini.c if (!pmx) pmx 2539 drivers/pinctrl/pinctrl-gemini.c pmx->dev = &pdev->dev; pmx 2550 drivers/pinctrl/pinctrl-gemini.c pmx->map = map; pmx 2561 drivers/pinctrl/pinctrl-gemini.c pmx->is_3512 = true; pmx 2562 drivers/pinctrl/pinctrl-gemini.c pmx->confs = gemini_confs_3512; pmx 2563 drivers/pinctrl/pinctrl-gemini.c pmx->nconfs = ARRAY_SIZE(gemini_confs_3512); pmx 2568 drivers/pinctrl/pinctrl-gemini.c pmx->is_3516 = true; pmx 2569 drivers/pinctrl/pinctrl-gemini.c pmx->confs = gemini_confs_3516; pmx 2570 drivers/pinctrl/pinctrl-gemini.c pmx->nconfs = ARRAY_SIZE(gemini_confs_3516); pmx 2594 drivers/pinctrl/pinctrl-gemini.c pmx->flash_pin = !!(val & GLOBAL_STATUS_FLPIN); pmx 2595 drivers/pinctrl/pinctrl-gemini.c dev_info(dev, "flash pin is %s\n", pmx->flash_pin ? "set" : "not set"); pmx 2597 drivers/pinctrl/pinctrl-gemini.c pmx->pctl = devm_pinctrl_register(dev, &gemini_pmx_desc, pmx); pmx 2598 drivers/pinctrl/pinctrl-gemini.c if (IS_ERR(pmx->pctl)) { pmx 2600 drivers/pinctrl/pinctrl-gemini.c return PTR_ERR(pmx->pctl); pmx 52 drivers/pinctrl/samsung/pinctrl-samsung.c struct samsung_pinctrl_drv_data *pmx = pinctrl_dev_get_drvdata(pctldev); pmx 54 drivers/pinctrl/samsung/pinctrl-samsung.c return pmx->nr_groups; pmx 60 drivers/pinctrl/samsung/pinctrl-samsung.c struct samsung_pinctrl_drv_data *pmx = pinctrl_dev_get_drvdata(pctldev); pmx 62 drivers/pinctrl/samsung/pinctrl-samsung.c return pmx->pin_groups[group].name; pmx 70 drivers/pinctrl/samsung/pinctrl-samsung.c struct samsung_pinctrl_drv_data *pmx = pinctrl_dev_get_drvdata(pctldev); pmx 72 drivers/pinctrl/samsung/pinctrl-samsung.c *pins = pmx->pin_groups[group].pins; pmx 73 drivers/pinctrl/samsung/pinctrl-samsung.c *num_pins = pmx->pin_groups[group].num_pins; pmx 50 drivers/pinctrl/sh-pfc/pinctrl.c struct sh_pfc_pinctrl *pmx = pinctrl_dev_get_drvdata(pctldev); pmx 52 drivers/pinctrl/sh-pfc/pinctrl.c return pmx->pfc->info->nr_groups; pmx 58 drivers/pinctrl/sh-pfc/pinctrl.c struct sh_pfc_pinctrl *pmx = pinctrl_dev_get_drvdata(pctldev); pmx 60 drivers/pinctrl/sh-pfc/pinctrl.c return pmx->pfc->info->groups[selector].name; pmx 66 drivers/pinctrl/sh-pfc/pinctrl.c struct sh_pfc_pinctrl *pmx = pinctrl_dev_get_drvdata(pctldev); pmx 68 drivers/pinctrl/sh-pfc/pinctrl.c *pins = pmx->pfc->info->groups[selector].pins; pmx 69 drivers/pinctrl/sh-pfc/pinctrl.c *num_pins = pmx->pfc->info->groups[selector].nr_pins; pmx 107 drivers/pinctrl/sh-pfc/pinctrl.c struct sh_pfc_pinctrl *pmx = pinctrl_dev_get_drvdata(pctldev); pmx 108 drivers/pinctrl/sh-pfc/pinctrl.c struct device *dev = pmx->pfc->dev; pmx 126 drivers/pinctrl/sh-pfc/pinctrl.c if (!pmx->func_prop_name) { pmx 129 drivers/pinctrl/sh-pfc/pinctrl.c pmx->func_prop_name = "function"; pmx 130 drivers/pinctrl/sh-pfc/pinctrl.c pmx->groups_prop_name = "groups"; pmx 131 drivers/pinctrl/sh-pfc/pinctrl.c pmx->pins_prop_name = "pins"; pmx 133 drivers/pinctrl/sh-pfc/pinctrl.c pmx->func_prop_name = "renesas,function"; pmx 134 drivers/pinctrl/sh-pfc/pinctrl.c pmx->groups_prop_name = "renesas,groups"; pmx 135 drivers/pinctrl/sh-pfc/pinctrl.c pmx->pins_prop_name = "renesas,pins"; pmx 142 drivers/pinctrl/sh-pfc/pinctrl.c ret = of_property_read_string(np, pmx->func_prop_name, &function); pmx 160 drivers/pinctrl/sh-pfc/pinctrl.c ret = of_property_count_strings(np, pmx->pins_prop_name); pmx 170 drivers/pinctrl/sh-pfc/pinctrl.c ret = of_property_count_strings(np, pmx->groups_prop_name); pmx 201 drivers/pinctrl/sh-pfc/pinctrl.c of_property_for_each_string(np, pmx->groups_prop_name, prop, group) { pmx 225 drivers/pinctrl/sh-pfc/pinctrl.c of_property_for_each_string(np, pmx->pins_prop_name, prop, pin) { pmx 262 drivers/pinctrl/sh-pfc/pinctrl.c struct sh_pfc_pinctrl *pmx = pinctrl_dev_get_drvdata(pctldev); pmx 263 drivers/pinctrl/sh-pfc/pinctrl.c struct device *dev = pmx->pfc->dev; pmx 316 drivers/pinctrl/sh-pfc/pinctrl.c struct sh_pfc_pinctrl *pmx = pinctrl_dev_get_drvdata(pctldev); pmx 318 drivers/pinctrl/sh-pfc/pinctrl.c return pmx->pfc->info->nr_functions; pmx 324 drivers/pinctrl/sh-pfc/pinctrl.c struct sh_pfc_pinctrl *pmx = pinctrl_dev_get_drvdata(pctldev); pmx 326 drivers/pinctrl/sh-pfc/pinctrl.c return pmx->pfc->info->functions[selector].name; pmx 334 drivers/pinctrl/sh-pfc/pinctrl.c struct sh_pfc_pinctrl *pmx = pinctrl_dev_get_drvdata(pctldev); pmx 336 drivers/pinctrl/sh-pfc/pinctrl.c *groups = pmx->pfc->info->functions[selector].groups; pmx 337 drivers/pinctrl/sh-pfc/pinctrl.c *num_groups = pmx->pfc->info->functions[selector].nr_groups; pmx 345 drivers/pinctrl/sh-pfc/pinctrl.c struct sh_pfc_pinctrl *pmx = pinctrl_dev_get_drvdata(pctldev); pmx 346 drivers/pinctrl/sh-pfc/pinctrl.c struct sh_pfc *pfc = pmx->pfc; pmx 358 drivers/pinctrl/sh-pfc/pinctrl.c struct sh_pfc_pin_config *cfg = &pmx->configs[idx]; pmx 377 drivers/pinctrl/sh-pfc/pinctrl.c struct sh_pfc_pin_config *cfg = &pmx->configs[idx]; pmx 392 drivers/pinctrl/sh-pfc/pinctrl.c struct sh_pfc_pinctrl *pmx = pinctrl_dev_get_drvdata(pctldev); pmx 393 drivers/pinctrl/sh-pfc/pinctrl.c struct sh_pfc *pfc = pmx->pfc; pmx 395 drivers/pinctrl/sh-pfc/pinctrl.c struct sh_pfc_pin_config *cfg = &pmx->configs[idx]; pmx 426 drivers/pinctrl/sh-pfc/pinctrl.c struct sh_pfc_pinctrl *pmx = pinctrl_dev_get_drvdata(pctldev); pmx 427 drivers/pinctrl/sh-pfc/pinctrl.c struct sh_pfc *pfc = pmx->pfc; pmx 429 drivers/pinctrl/sh-pfc/pinctrl.c struct sh_pfc_pin_config *cfg = &pmx->configs[idx]; pmx 444 drivers/pinctrl/sh-pfc/pinctrl.c struct sh_pfc_pinctrl *pmx = pinctrl_dev_get_drvdata(pctldev); pmx 445 drivers/pinctrl/sh-pfc/pinctrl.c struct sh_pfc *pfc = pmx->pfc; pmx 599 drivers/pinctrl/sh-pfc/pinctrl.c struct sh_pfc_pinctrl *pmx = pinctrl_dev_get_drvdata(pctldev); pmx 600 drivers/pinctrl/sh-pfc/pinctrl.c struct sh_pfc *pfc = pmx->pfc; pmx 669 drivers/pinctrl/sh-pfc/pinctrl.c struct sh_pfc_pinctrl *pmx = pinctrl_dev_get_drvdata(pctldev); pmx 670 drivers/pinctrl/sh-pfc/pinctrl.c struct sh_pfc *pfc = pmx->pfc; pmx 745 drivers/pinctrl/sh-pfc/pinctrl.c struct sh_pfc_pinctrl *pmx = pinctrl_dev_get_drvdata(pctldev); pmx 750 drivers/pinctrl/sh-pfc/pinctrl.c pins = pmx->pfc->info->groups[group].pins; pmx 751 drivers/pinctrl/sh-pfc/pinctrl.c num_pins = pmx->pfc->info->groups[group].nr_pins; pmx 771 drivers/pinctrl/sh-pfc/pinctrl.c static int sh_pfc_map_pins(struct sh_pfc *pfc, struct sh_pfc_pinctrl *pmx) pmx 776 drivers/pinctrl/sh-pfc/pinctrl.c pmx->pins = devm_kcalloc(pfc->dev, pmx 777 drivers/pinctrl/sh-pfc/pinctrl.c pfc->info->nr_pins, sizeof(*pmx->pins), pmx 779 drivers/pinctrl/sh-pfc/pinctrl.c if (unlikely(!pmx->pins)) pmx 782 drivers/pinctrl/sh-pfc/pinctrl.c pmx->configs = devm_kcalloc(pfc->dev, pmx 783 drivers/pinctrl/sh-pfc/pinctrl.c pfc->info->nr_pins, sizeof(*pmx->configs), pmx 785 drivers/pinctrl/sh-pfc/pinctrl.c if (unlikely(!pmx->configs)) pmx 790 drivers/pinctrl/sh-pfc/pinctrl.c struct pinctrl_pin_desc *pin = &pmx->pins[i]; pmx 802 drivers/pinctrl/sh-pfc/pinctrl.c struct sh_pfc_pinctrl *pmx; pmx 805 drivers/pinctrl/sh-pfc/pinctrl.c pmx = devm_kzalloc(pfc->dev, sizeof(*pmx), GFP_KERNEL); pmx 806 drivers/pinctrl/sh-pfc/pinctrl.c if (unlikely(!pmx)) pmx 809 drivers/pinctrl/sh-pfc/pinctrl.c pmx->pfc = pfc; pmx 811 drivers/pinctrl/sh-pfc/pinctrl.c ret = sh_pfc_map_pins(pfc, pmx); pmx 815 drivers/pinctrl/sh-pfc/pinctrl.c pmx->pctl_desc.name = DRV_NAME; pmx 816 drivers/pinctrl/sh-pfc/pinctrl.c pmx->pctl_desc.owner = THIS_MODULE; pmx 817 drivers/pinctrl/sh-pfc/pinctrl.c pmx->pctl_desc.pctlops = &sh_pfc_pinctrl_ops; pmx 818 drivers/pinctrl/sh-pfc/pinctrl.c pmx->pctl_desc.pmxops = &sh_pfc_pinmux_ops; pmx 819 drivers/pinctrl/sh-pfc/pinctrl.c pmx->pctl_desc.confops = &sh_pfc_pinconf_ops; pmx 820 drivers/pinctrl/sh-pfc/pinctrl.c pmx->pctl_desc.pins = pmx->pins; pmx 821 drivers/pinctrl/sh-pfc/pinctrl.c pmx->pctl_desc.npins = pfc->info->nr_pins; pmx 823 drivers/pinctrl/sh-pfc/pinctrl.c ret = devm_pinctrl_register_and_init(pfc->dev, &pmx->pctl_desc, pmx, pmx 824 drivers/pinctrl/sh-pfc/pinctrl.c &pmx->pctl); pmx 831 drivers/pinctrl/sh-pfc/pinctrl.c return pinctrl_enable(pmx->pctl); pmx 4937 drivers/pinctrl/sirf/pinctrl-atlas7.c struct atlas7_pmx *pmx = pinctrl_dev_get_drvdata(pctldev); pmx 4939 drivers/pinctrl/sirf/pinctrl-atlas7.c return pmx->pctl_data->funcs_cnt; pmx 4945 drivers/pinctrl/sirf/pinctrl-atlas7.c struct atlas7_pmx *pmx = pinctrl_dev_get_drvdata(pctldev); pmx 4947 drivers/pinctrl/sirf/pinctrl-atlas7.c return pmx->pctl_data->funcs[selector].name; pmx 4954 drivers/pinctrl/sirf/pinctrl-atlas7.c struct atlas7_pmx *pmx = pinctrl_dev_get_drvdata(pctldev); pmx 4956 drivers/pinctrl/sirf/pinctrl-atlas7.c *groups = pmx->pctl_data->funcs[selector].groups; pmx 4957 drivers/pinctrl/sirf/pinctrl-atlas7.c *num_groups = pmx->pctl_data->funcs[selector].num_groups; pmx 4962 drivers/pinctrl/sirf/pinctrl-atlas7.c static void __atlas7_pmx_pin_input_disable_set(struct atlas7_pmx *pmx, pmx 4973 drivers/pinctrl/sirf/pinctrl-atlas7.c pmx->regs[BANK_DS] + CLR_REG(mux->dinput_reg)); pmx 4975 drivers/pinctrl/sirf/pinctrl-atlas7.c pmx->regs[BANK_DS] + mux->dinput_reg); pmx 4979 drivers/pinctrl/sirf/pinctrl-atlas7.c pmx->regs[BANK_DS] + CLR_REG(mux->dinput_val_reg)); pmx 4981 drivers/pinctrl/sirf/pinctrl-atlas7.c pmx->regs[BANK_DS] + mux->dinput_val_reg); pmx 4985 drivers/pinctrl/sirf/pinctrl-atlas7.c static void __atlas7_pmx_pin_input_disable_clr(struct atlas7_pmx *pmx, pmx 4991 drivers/pinctrl/sirf/pinctrl-atlas7.c pmx->regs[BANK_DS] + CLR_REG(mux->dinput_reg)); pmx 4993 drivers/pinctrl/sirf/pinctrl-atlas7.c pmx->regs[BANK_DS] + mux->dinput_reg); pmx 4996 drivers/pinctrl/sirf/pinctrl-atlas7.c pmx->regs[BANK_DS] + CLR_REG(mux->dinput_val_reg)); pmx 4998 drivers/pinctrl/sirf/pinctrl-atlas7.c pmx->regs[BANK_DS] + mux->dinput_val_reg); pmx 5002 drivers/pinctrl/sirf/pinctrl-atlas7.c static int __atlas7_pmx_pin_ad_sel(struct atlas7_pmx *pmx, pmx 5010 drivers/pinctrl/sirf/pinctrl-atlas7.c pmx->regs[bank] + CLR_REG(conf->ad_ctrl_reg)); pmx 5013 drivers/pinctrl/sirf/pinctrl-atlas7.c regv = readl(pmx->regs[bank] + conf->ad_ctrl_reg); pmx 5016 drivers/pinctrl/sirf/pinctrl-atlas7.c pmx->regs[bank] + conf->ad_ctrl_reg); pmx 5018 drivers/pinctrl/sirf/pinctrl-atlas7.c regv = readl(pmx->regs[bank] + conf->ad_ctrl_reg); pmx 5024 drivers/pinctrl/sirf/pinctrl-atlas7.c static int __atlas7_pmx_pin_analog_enable(struct atlas7_pmx *pmx, pmx 5031 drivers/pinctrl/sirf/pinctrl-atlas7.c return __atlas7_pmx_pin_ad_sel(pmx, conf, bank, 0); pmx 5034 drivers/pinctrl/sirf/pinctrl-atlas7.c static int __atlas7_pmx_pin_digital_enable(struct atlas7_pmx *pmx, pmx 5041 drivers/pinctrl/sirf/pinctrl-atlas7.c return __atlas7_pmx_pin_ad_sel(pmx, conf, bank, 1); pmx 5044 drivers/pinctrl/sirf/pinctrl-atlas7.c static int __atlas7_pmx_pin_enable(struct atlas7_pmx *pmx, pmx 5056 drivers/pinctrl/sirf/pinctrl-atlas7.c conf = &pmx->pctl_data->confs[pin]; pmx 5061 drivers/pinctrl/sirf/pinctrl-atlas7.c ret = __atlas7_pmx_pin_analog_enable(pmx, conf, bank); pmx 5063 drivers/pinctrl/sirf/pinctrl-atlas7.c dev_err(pmx->dev, pmx 5070 drivers/pinctrl/sirf/pinctrl-atlas7.c ret = __atlas7_pmx_pin_digital_enable(pmx, conf, bank); pmx 5072 drivers/pinctrl/sirf/pinctrl-atlas7.c dev_err(pmx->dev, pmx 5080 drivers/pinctrl/sirf/pinctrl-atlas7.c pmx->regs[bank] + CLR_REG(conf->mux_reg)); pmx 5083 drivers/pinctrl/sirf/pinctrl-atlas7.c regv = readl(pmx->regs[bank] + conf->mux_reg); pmx 5086 drivers/pinctrl/sirf/pinctrl-atlas7.c pmx->regs[bank] + conf->mux_reg); pmx 5088 drivers/pinctrl/sirf/pinctrl-atlas7.c regv = readl(pmx->regs[bank] + conf->mux_reg); pmx 5099 drivers/pinctrl/sirf/pinctrl-atlas7.c struct atlas7_pmx *pmx = pinctrl_dev_get_drvdata(pctldev); pmx 5105 drivers/pinctrl/sirf/pinctrl-atlas7.c pmx_func = &pmx->pctl_data->funcs[func_selector]; pmx 5106 drivers/pinctrl/sirf/pinctrl-atlas7.c pin_grp = &pmx->pctl_data->grps[group_selector]; pmx 5114 drivers/pinctrl/sirf/pinctrl-atlas7.c writel(1, pmx->sys2pci_base + SYS2PCI_SDIO9SEL); pmx 5116 drivers/pinctrl/sirf/pinctrl-atlas7.c writel(0, pmx->sys2pci_base + SYS2PCI_SDIO9SEL); pmx 5123 drivers/pinctrl/sirf/pinctrl-atlas7.c __atlas7_pmx_pin_input_disable_set(pmx, mux); pmx 5124 drivers/pinctrl/sirf/pinctrl-atlas7.c ret = __atlas7_pmx_pin_enable(pmx, mux->pin, mux->func); pmx 5126 drivers/pinctrl/sirf/pinctrl-atlas7.c dev_err(pmx->dev, pmx 5132 drivers/pinctrl/sirf/pinctrl-atlas7.c __atlas7_pmx_pin_input_disable_clr(pmx, mux); pmx 5164 drivers/pinctrl/sirf/pinctrl-atlas7.c struct atlas7_pmx *pmx = pinctrl_dev_get_drvdata(pctldev); pmx 5165 drivers/pinctrl/sirf/pinctrl-atlas7.c struct atlas7_pad_config *conf = &pmx->pctl_data->confs[pin]; pmx 5173 drivers/pinctrl/sirf/pinctrl-atlas7.c pull_sel_reg = pmx->regs[bank] + conf->pupd_reg; pmx 5190 drivers/pinctrl/sirf/pinctrl-atlas7.c struct atlas7_pmx *pmx = pinctrl_dev_get_drvdata(pctldev); pmx 5191 drivers/pinctrl/sirf/pinctrl-atlas7.c struct atlas7_pad_config *conf = &pmx->pctl_data->confs[pin]; pmx 5201 drivers/pinctrl/sirf/pinctrl-atlas7.c ds_sel_reg = pmx->regs[bank] + conf->drvstr_reg; pmx 5217 drivers/pinctrl/sirf/pinctrl-atlas7.c struct atlas7_pmx *pmx = pinctrl_dev_get_drvdata(pctldev); pmx 5218 drivers/pinctrl/sirf/pinctrl-atlas7.c struct atlas7_pad_config *conf = &pmx->pctl_data->confs[pin]; pmx 5240 drivers/pinctrl/sirf/pinctrl-atlas7.c struct atlas7_pmx *pmx = pinctrl_dev_get_drvdata(pctldev); pmx 5243 drivers/pinctrl/sirf/pinctrl-atlas7.c dev_dbg(pmx->dev, pmx 5251 drivers/pinctrl/sirf/pinctrl-atlas7.c dev_err(pmx->dev, pmx 5257 drivers/pinctrl/sirf/pinctrl-atlas7.c __atlas7_pmx_pin_enable(pmx, pin, FUNC_GPIO); pmx 5272 drivers/pinctrl/sirf/pinctrl-atlas7.c struct atlas7_pmx *pmx = pinctrl_dev_get_drvdata(pctldev); pmx 5274 drivers/pinctrl/sirf/pinctrl-atlas7.c return pmx->pctl_data->grps_cnt; pmx 5280 drivers/pinctrl/sirf/pinctrl-atlas7.c struct atlas7_pmx *pmx = pinctrl_dev_get_drvdata(pctldev); pmx 5282 drivers/pinctrl/sirf/pinctrl-atlas7.c return pmx->pctl_data->grps[group].name; pmx 5288 drivers/pinctrl/sirf/pinctrl-atlas7.c struct atlas7_pmx *pmx = pinctrl_dev_get_drvdata(pctldev); pmx 5290 drivers/pinctrl/sirf/pinctrl-atlas7.c *num_pins = pmx->pctl_data->grps[group].num_pins; pmx 5291 drivers/pinctrl/sirf/pinctrl-atlas7.c *pins = pmx->pctl_data->grps[group].pins; pmx 5405 drivers/pinctrl/sirf/pinctrl-atlas7.c struct atlas7_pmx *pmx; pmx 5412 drivers/pinctrl/sirf/pinctrl-atlas7.c pmx = devm_kzalloc(&pdev->dev, sizeof(*pmx), GFP_KERNEL); pmx 5413 drivers/pinctrl/sirf/pinctrl-atlas7.c if (!pmx) pmx 5428 drivers/pinctrl/sirf/pinctrl-atlas7.c pmx->sys2pci_base = devm_ioremap_resource(&pdev->dev, &res); pmx 5429 drivers/pinctrl/sirf/pinctrl-atlas7.c if (IS_ERR(pmx->sys2pci_base)) pmx 5432 drivers/pinctrl/sirf/pinctrl-atlas7.c pmx->dev = &pdev->dev; pmx 5434 drivers/pinctrl/sirf/pinctrl-atlas7.c pmx->pctl_data = &atlas7_ioc_data; pmx 5435 drivers/pinctrl/sirf/pinctrl-atlas7.c pmx->pctl_desc.name = "pinctrl-atlas7"; pmx 5436 drivers/pinctrl/sirf/pinctrl-atlas7.c pmx->pctl_desc.pins = pmx->pctl_data->pads; pmx 5437 drivers/pinctrl/sirf/pinctrl-atlas7.c pmx->pctl_desc.npins = pmx->pctl_data->pads_cnt; pmx 5438 drivers/pinctrl/sirf/pinctrl-atlas7.c pmx->pctl_desc.pctlops = &atlas7_pinctrl_ops; pmx 5439 drivers/pinctrl/sirf/pinctrl-atlas7.c pmx->pctl_desc.pmxops = &atlas7_pinmux_ops; pmx 5440 drivers/pinctrl/sirf/pinctrl-atlas7.c pmx->pctl_desc.confops = &atlas7_pinconf_ops; pmx 5443 drivers/pinctrl/sirf/pinctrl-atlas7.c pmx->regs[idx] = of_iomap(np, idx); pmx 5444 drivers/pinctrl/sirf/pinctrl-atlas7.c if (!pmx->regs[idx]) { pmx 5453 drivers/pinctrl/sirf/pinctrl-atlas7.c pmx->pctl = pinctrl_register(&pmx->pctl_desc, &pdev->dev, pmx); pmx 5454 drivers/pinctrl/sirf/pinctrl-atlas7.c if (IS_ERR(pmx->pctl)) { pmx 5456 drivers/pinctrl/sirf/pinctrl-atlas7.c ret = PTR_ERR(pmx->pctl); pmx 5460 drivers/pinctrl/sirf/pinctrl-atlas7.c platform_set_drvdata(pdev, pmx); pmx 5468 drivers/pinctrl/sirf/pinctrl-atlas7.c if (!pmx->regs[idx]) pmx 5470 drivers/pinctrl/sirf/pinctrl-atlas7.c iounmap(pmx->regs[idx]); pmx 5479 drivers/pinctrl/sirf/pinctrl-atlas7.c struct atlas7_pmx *pmx = dev_get_drvdata(dev); pmx 5488 drivers/pinctrl/sirf/pinctrl-atlas7.c for (idx = 0; idx < pmx->pctl_desc.npins; idx++) { pmx 5490 drivers/pinctrl/sirf/pinctrl-atlas7.c conf = &pmx->pctl_data->confs[idx]; pmx 5492 drivers/pinctrl/sirf/pinctrl-atlas7.c status = &pmx->sleep_data[idx]; pmx 5495 drivers/pinctrl/sirf/pinctrl-atlas7.c regv = readl(pmx->regs[bank] + conf->mux_reg); pmx 5502 drivers/pinctrl/sirf/pinctrl-atlas7.c regv = readl(pmx->regs[bank] + conf->ad_ctrl_reg); pmx 5512 drivers/pinctrl/sirf/pinctrl-atlas7.c regv = readl(pmx->regs[bank] + conf->drvstr_reg); pmx 5518 drivers/pinctrl/sirf/pinctrl-atlas7.c regv = readl(pmx->regs[bank] + conf->pupd_reg); pmx 5528 drivers/pinctrl/sirf/pinctrl-atlas7.c pmx->status_ds[idx] = readl(pmx->regs[BANK_DS] + pmx 5530 drivers/pinctrl/sirf/pinctrl-atlas7.c pmx->status_dsv[idx] = readl(pmx->regs[BANK_DS] + pmx 5539 drivers/pinctrl/sirf/pinctrl-atlas7.c struct atlas7_pmx *pmx = dev_get_drvdata(dev); pmx 5543 drivers/pinctrl/sirf/pinctrl-atlas7.c for (idx = 0; idx < pmx->pctl_desc.npins; idx++) { pmx 5545 drivers/pinctrl/sirf/pinctrl-atlas7.c status = &pmx->sleep_data[idx]; pmx 5548 drivers/pinctrl/sirf/pinctrl-atlas7.c __atlas7_pmx_pin_enable(pmx, idx, (u32)status->func & 0xff); pmx 5554 drivers/pinctrl/sirf/pinctrl-atlas7.c __altas7_pinctrl_set_drive_strength_sel(pmx->pctl, idx, pmx 5559 drivers/pinctrl/sirf/pinctrl-atlas7.c altas7_pinctrl_set_pull_sel(pmx->pctl, idx, pmx 5568 drivers/pinctrl/sirf/pinctrl-atlas7.c writel(~0, pmx->regs[BANK_DS] + pmx 5570 drivers/pinctrl/sirf/pinctrl-atlas7.c writel(pmx->status_ds[idx], pmx->regs[BANK_DS] + pmx 5572 drivers/pinctrl/sirf/pinctrl-atlas7.c writel(~0, pmx->regs[BANK_DS] + pmx 5574 drivers/pinctrl/sirf/pinctrl-atlas7.c writel(pmx->status_dsv[idx], pmx->regs[BANK_DS] + pmx 319 drivers/pinctrl/sirf/pinctrl-sirf.c spmx->pmx = pinctrl_register(&sirfsoc_pinmux_desc, &pdev->dev, spmx); pmx 320 drivers/pinctrl/sirf/pinctrl-sirf.c if (IS_ERR(spmx->pmx)) { pmx 322 drivers/pinctrl/sirf/pinctrl-sirf.c ret = PTR_ERR(spmx->pmx); pmx 43 drivers/pinctrl/sirf/pinctrl-sirf.h struct pinctrl_dev *pmx; pmx 31 drivers/pinctrl/spear/pinctrl-spear.c static void muxregs_endisable(struct spear_pmx *pmx, pmx 40 drivers/pinctrl/spear/pinctrl-spear.c val = pmx_readl(pmx, muxreg->reg); pmx 49 drivers/pinctrl/spear/pinctrl-spear.c pmx_writel(pmx, val, muxreg->reg); pmx 53 drivers/pinctrl/spear/pinctrl-spear.c static int set_mode(struct spear_pmx *pmx, int mode) pmx 59 drivers/pinctrl/spear/pinctrl-spear.c if (!pmx->machdata->pmx_modes || !pmx->machdata->npmx_modes) pmx 62 drivers/pinctrl/spear/pinctrl-spear.c for (i = 0; i < pmx->machdata->npmx_modes; i++) { pmx 63 drivers/pinctrl/spear/pinctrl-spear.c if (pmx->machdata->pmx_modes[i]->mode == (1 << mode)) { pmx 64 drivers/pinctrl/spear/pinctrl-spear.c pmx_mode = pmx->machdata->pmx_modes[i]; pmx 72 drivers/pinctrl/spear/pinctrl-spear.c val = pmx_readl(pmx, pmx_mode->reg); pmx 75 drivers/pinctrl/spear/pinctrl-spear.c pmx_writel(pmx, val, pmx_mode->reg); pmx 77 drivers/pinctrl/spear/pinctrl-spear.c pmx->machdata->mode = pmx_mode->mode; pmx 78 drivers/pinctrl/spear/pinctrl-spear.c dev_info(pmx->dev, "Configured Mode: %s with id: %x\n\n", pmx 116 drivers/pinctrl/spear/pinctrl-spear.c struct spear_pmx *pmx = pinctrl_dev_get_drvdata(pctldev); pmx 118 drivers/pinctrl/spear/pinctrl-spear.c return pmx->machdata->ngroups; pmx 124 drivers/pinctrl/spear/pinctrl-spear.c struct spear_pmx *pmx = pinctrl_dev_get_drvdata(pctldev); pmx 126 drivers/pinctrl/spear/pinctrl-spear.c return pmx->machdata->groups[group]->name; pmx 132 drivers/pinctrl/spear/pinctrl-spear.c struct spear_pmx *pmx = pinctrl_dev_get_drvdata(pctldev); pmx 134 drivers/pinctrl/spear/pinctrl-spear.c *pins = pmx->machdata->groups[group]->pins; pmx 135 drivers/pinctrl/spear/pinctrl-spear.c *num_pins = pmx->machdata->groups[group]->npins; pmx 151 drivers/pinctrl/spear/pinctrl-spear.c struct spear_pmx *pmx = pinctrl_dev_get_drvdata(pctldev); pmx 175 drivers/pinctrl/spear/pinctrl-spear.c dev_err(pmx->dev, "No child nodes passed via DT\n"); pmx 216 drivers/pinctrl/spear/pinctrl-spear.c struct spear_pmx *pmx = pinctrl_dev_get_drvdata(pctldev); pmx 218 drivers/pinctrl/spear/pinctrl-spear.c return pmx->machdata->nfunctions; pmx 224 drivers/pinctrl/spear/pinctrl-spear.c struct spear_pmx *pmx = pinctrl_dev_get_drvdata(pctldev); pmx 226 drivers/pinctrl/spear/pinctrl-spear.c return pmx->machdata->functions[function]->name; pmx 233 drivers/pinctrl/spear/pinctrl-spear.c struct spear_pmx *pmx = pinctrl_dev_get_drvdata(pctldev); pmx 235 drivers/pinctrl/spear/pinctrl-spear.c *groups = pmx->machdata->functions[function]->groups; pmx 236 drivers/pinctrl/spear/pinctrl-spear.c *ngroups = pmx->machdata->functions[function]->ngroups; pmx 244 drivers/pinctrl/spear/pinctrl-spear.c struct spear_pmx *pmx = pinctrl_dev_get_drvdata(pctldev); pmx 250 drivers/pinctrl/spear/pinctrl-spear.c pgroup = pmx->machdata->groups[group]; pmx 256 drivers/pinctrl/spear/pinctrl-spear.c if (pmx->machdata->modes_supported) { pmx 257 drivers/pinctrl/spear/pinctrl-spear.c if (!(pmx->machdata->mode & modemux->modes)) pmx 262 drivers/pinctrl/spear/pinctrl-spear.c muxregs_endisable(pmx, modemux->muxregs, modemux->nmuxregs, pmx 267 drivers/pinctrl/spear/pinctrl-spear.c dev_err(pmx->dev, "pinmux group: %s not supported\n", pmx 282 drivers/pinctrl/spear/pinctrl-spear.c static struct spear_gpio_pingroup *get_gpio_pingroup(struct spear_pmx *pmx, pmx 288 drivers/pinctrl/spear/pinctrl-spear.c if (!pmx->machdata->gpio_pingroups) pmx 291 drivers/pinctrl/spear/pinctrl-spear.c for (i = 0; i < pmx->machdata->ngpio_pingroups; i++) { pmx 292 drivers/pinctrl/spear/pinctrl-spear.c gpio_pingroup = &pmx->machdata->gpio_pingroups[i]; pmx 306 drivers/pinctrl/spear/pinctrl-spear.c struct spear_pmx *pmx = pinctrl_dev_get_drvdata(pctldev); pmx 307 drivers/pinctrl/spear/pinctrl-spear.c struct spear_pinctrl_machdata *machdata = pmx->machdata; pmx 314 drivers/pinctrl/spear/pinctrl-spear.c gpio_pingroup = get_gpio_pingroup(pmx, offset); pmx 316 drivers/pinctrl/spear/pinctrl-spear.c muxregs_endisable(pmx, gpio_pingroup->muxregs, pmx 324 drivers/pinctrl/spear/pinctrl-spear.c machdata->gpio_request_endisable(pmx, offset, enable); pmx 362 drivers/pinctrl/spear/pinctrl-spear.c struct spear_pmx *pmx; pmx 367 drivers/pinctrl/spear/pinctrl-spear.c pmx = devm_kzalloc(&pdev->dev, sizeof(*pmx), GFP_KERNEL); pmx 368 drivers/pinctrl/spear/pinctrl-spear.c if (!pmx) pmx 372 drivers/pinctrl/spear/pinctrl-spear.c pmx->vbase = devm_ioremap_resource(&pdev->dev, res); pmx 373 drivers/pinctrl/spear/pinctrl-spear.c if (IS_ERR(pmx->vbase)) pmx 374 drivers/pinctrl/spear/pinctrl-spear.c return PTR_ERR(pmx->vbase); pmx 376 drivers/pinctrl/spear/pinctrl-spear.c pmx->dev = &pdev->dev; pmx 377 drivers/pinctrl/spear/pinctrl-spear.c pmx->machdata = machdata; pmx 388 drivers/pinctrl/spear/pinctrl-spear.c if (set_mode(pmx, mode)) { pmx 395 drivers/pinctrl/spear/pinctrl-spear.c platform_set_drvdata(pdev, pmx); pmx 400 drivers/pinctrl/spear/pinctrl-spear.c pmx->pctl = devm_pinctrl_register(&pdev->dev, &spear_pinctrl_desc, pmx); pmx 401 drivers/pinctrl/spear/pinctrl-spear.c if (IS_ERR(pmx->pctl)) { pmx 403 drivers/pinctrl/spear/pinctrl-spear.c return PTR_ERR(pmx->pctl); pmx 160 drivers/pinctrl/spear/pinctrl-spear.h void (*gpio_request_endisable)(struct spear_pmx *pmx, int offset, pmx 185 drivers/pinctrl/spear/pinctrl-spear.h static inline u32 pmx_readl(struct spear_pmx *pmx, u32 reg) pmx 187 drivers/pinctrl/spear/pinctrl-spear.h return readl_relaxed(pmx->vbase + reg); pmx 190 drivers/pinctrl/spear/pinctrl-spear.h static inline void pmx_writel(struct spear_pmx *pmx, u32 val, u32 reg) pmx 192 drivers/pinctrl/spear/pinctrl-spear.h writel_relaxed(val, pmx->vbase + reg); pmx 1973 drivers/pinctrl/spear/pinctrl-spear1340.c static void gpio_request_endisable(struct spear_pmx *pmx, int pin, pmx 1990 drivers/pinctrl/spear/pinctrl-spear1340.c val = pmx_readl(pmx, regoffset); pmx 1996 drivers/pinctrl/spear/pinctrl-spear1340.c pmx_writel(pmx, val, regoffset); pmx 28 drivers/pinctrl/tegra/pinctrl-tegra.c static inline u32 pmx_readl(struct tegra_pmx *pmx, u32 bank, u32 reg) pmx 30 drivers/pinctrl/tegra/pinctrl-tegra.c return readl(pmx->regs[bank] + reg); pmx 33 drivers/pinctrl/tegra/pinctrl-tegra.c static inline void pmx_writel(struct tegra_pmx *pmx, u32 val, u32 bank, u32 reg) pmx 35 drivers/pinctrl/tegra/pinctrl-tegra.c writel_relaxed(val, pmx->regs[bank] + reg); pmx 37 drivers/pinctrl/tegra/pinctrl-tegra.c pmx_readl(pmx, bank, reg); pmx 42 drivers/pinctrl/tegra/pinctrl-tegra.c struct tegra_pmx *pmx = pinctrl_dev_get_drvdata(pctldev); pmx 44 drivers/pinctrl/tegra/pinctrl-tegra.c return pmx->soc->ngroups; pmx 50 drivers/pinctrl/tegra/pinctrl-tegra.c struct tegra_pmx *pmx = pinctrl_dev_get_drvdata(pctldev); pmx 52 drivers/pinctrl/tegra/pinctrl-tegra.c return pmx->soc->groups[group].name; pmx 60 drivers/pinctrl/tegra/pinctrl-tegra.c struct tegra_pmx *pmx = pinctrl_dev_get_drvdata(pctldev); pmx 62 drivers/pinctrl/tegra/pinctrl-tegra.c *pins = pmx->soc->groups[group].pins; pmx 63 drivers/pinctrl/tegra/pinctrl-tegra.c *num_pins = pmx->soc->groups[group].npins; pmx 223 drivers/pinctrl/tegra/pinctrl-tegra.c struct tegra_pmx *pmx = pinctrl_dev_get_drvdata(pctldev); pmx 225 drivers/pinctrl/tegra/pinctrl-tegra.c return pmx->soc->nfunctions; pmx 231 drivers/pinctrl/tegra/pinctrl-tegra.c struct tegra_pmx *pmx = pinctrl_dev_get_drvdata(pctldev); pmx 233 drivers/pinctrl/tegra/pinctrl-tegra.c return pmx->soc->functions[function].name; pmx 241 drivers/pinctrl/tegra/pinctrl-tegra.c struct tegra_pmx *pmx = pinctrl_dev_get_drvdata(pctldev); pmx 243 drivers/pinctrl/tegra/pinctrl-tegra.c *groups = pmx->soc->functions[function].groups; pmx 244 drivers/pinctrl/tegra/pinctrl-tegra.c *num_groups = pmx->soc->functions[function].ngroups; pmx 253 drivers/pinctrl/tegra/pinctrl-tegra.c struct tegra_pmx *pmx = pinctrl_dev_get_drvdata(pctldev); pmx 258 drivers/pinctrl/tegra/pinctrl-tegra.c g = &pmx->soc->groups[group]; pmx 270 drivers/pinctrl/tegra/pinctrl-tegra.c val = pmx_readl(pmx, g->mux_bank, g->mux_reg); pmx 273 drivers/pinctrl/tegra/pinctrl-tegra.c pmx_writel(pmx, val, g->mux_bank, g->mux_reg); pmx 285 drivers/pinctrl/tegra/pinctrl-tegra.c static int tegra_pinconf_reg(struct tegra_pmx *pmx, pmx 335 drivers/pinctrl/tegra/pinctrl-tegra.c if (pmx->soc->hsm_in_mux) { pmx 346 drivers/pinctrl/tegra/pinctrl-tegra.c if (pmx->soc->schmitt_in_mux) { pmx 387 drivers/pinctrl/tegra/pinctrl-tegra.c if (pmx->soc->drvtype_in_mux) { pmx 398 drivers/pinctrl/tegra/pinctrl-tegra.c dev_err(pmx->dev, "Invalid config param %04x\n", param); pmx 414 drivers/pinctrl/tegra/pinctrl-tegra.c dev_err(pmx->dev, pmx 442 drivers/pinctrl/tegra/pinctrl-tegra.c struct tegra_pmx *pmx = pinctrl_dev_get_drvdata(pctldev); pmx 451 drivers/pinctrl/tegra/pinctrl-tegra.c g = &pmx->soc->groups[group]; pmx 453 drivers/pinctrl/tegra/pinctrl-tegra.c ret = tegra_pinconf_reg(pmx, g, param, true, &bank, ®, &bit, pmx 458 drivers/pinctrl/tegra/pinctrl-tegra.c val = pmx_readl(pmx, bank, reg); pmx 471 drivers/pinctrl/tegra/pinctrl-tegra.c struct tegra_pmx *pmx = pinctrl_dev_get_drvdata(pctldev); pmx 480 drivers/pinctrl/tegra/pinctrl-tegra.c g = &pmx->soc->groups[group]; pmx 486 drivers/pinctrl/tegra/pinctrl-tegra.c ret = tegra_pinconf_reg(pmx, g, param, true, &bank, ®, &bit, pmx 491 drivers/pinctrl/tegra/pinctrl-tegra.c val = pmx_readl(pmx, bank, reg); pmx 517 drivers/pinctrl/tegra/pinctrl-tegra.c pmx_writel(pmx, val, bank, reg); pmx 541 drivers/pinctrl/tegra/pinctrl-tegra.c struct tegra_pmx *pmx = pinctrl_dev_get_drvdata(pctldev); pmx 548 drivers/pinctrl/tegra/pinctrl-tegra.c g = &pmx->soc->groups[group]; pmx 551 drivers/pinctrl/tegra/pinctrl-tegra.c ret = tegra_pinconf_reg(pmx, g, cfg_params[i].param, false, pmx 556 drivers/pinctrl/tegra/pinctrl-tegra.c val = pmx_readl(pmx, bank, reg); pmx 610 drivers/pinctrl/tegra/pinctrl-tegra.c static void tegra_pinctrl_clear_parked_bits(struct tegra_pmx *pmx) pmx 616 drivers/pinctrl/tegra/pinctrl-tegra.c for (i = 0; i < pmx->soc->ngroups; ++i) { pmx 617 drivers/pinctrl/tegra/pinctrl-tegra.c g = &pmx->soc->groups[i]; pmx 629 drivers/pinctrl/tegra/pinctrl-tegra.c val = pmx_readl(pmx, bank, reg); pmx 631 drivers/pinctrl/tegra/pinctrl-tegra.c pmx_writel(pmx, val, bank, reg); pmx 649 drivers/pinctrl/tegra/pinctrl-tegra.c struct tegra_pmx *pmx = dev_get_drvdata(dev); pmx 650 drivers/pinctrl/tegra/pinctrl-tegra.c u32 *backup_regs = pmx->backup_regs; pmx 655 drivers/pinctrl/tegra/pinctrl-tegra.c for (i = 0; i < pmx->nbanks; i++) { pmx 657 drivers/pinctrl/tegra/pinctrl-tegra.c regs = pmx->regs[i]; pmx 662 drivers/pinctrl/tegra/pinctrl-tegra.c return pinctrl_force_sleep(pmx->pctl); pmx 667 drivers/pinctrl/tegra/pinctrl-tegra.c struct tegra_pmx *pmx = dev_get_drvdata(dev); pmx 668 drivers/pinctrl/tegra/pinctrl-tegra.c u32 *backup_regs = pmx->backup_regs; pmx 673 drivers/pinctrl/tegra/pinctrl-tegra.c for (i = 0; i < pmx->nbanks; i++) { pmx 675 drivers/pinctrl/tegra/pinctrl-tegra.c regs = pmx->regs[i]; pmx 681 drivers/pinctrl/tegra/pinctrl-tegra.c readl_relaxed(pmx->regs[0]); pmx 711 drivers/pinctrl/tegra/pinctrl-tegra.c struct tegra_pmx *pmx; pmx 718 drivers/pinctrl/tegra/pinctrl-tegra.c pmx = devm_kzalloc(&pdev->dev, sizeof(*pmx), GFP_KERNEL); pmx 719 drivers/pinctrl/tegra/pinctrl-tegra.c if (!pmx) pmx 722 drivers/pinctrl/tegra/pinctrl-tegra.c pmx->dev = &pdev->dev; pmx 723 drivers/pinctrl/tegra/pinctrl-tegra.c pmx->soc = soc_data; pmx 729 drivers/pinctrl/tegra/pinctrl-tegra.c pmx->group_pins = devm_kcalloc(&pdev->dev, pmx 730 drivers/pinctrl/tegra/pinctrl-tegra.c soc_data->ngroups * 4, sizeof(*pmx->group_pins), pmx 732 drivers/pinctrl/tegra/pinctrl-tegra.c if (!pmx->group_pins) pmx 735 drivers/pinctrl/tegra/pinctrl-tegra.c group_pins = pmx->group_pins; pmx 753 drivers/pinctrl/tegra/pinctrl-tegra.c BUG_ON(group_pins - pmx->group_pins >= pmx 760 drivers/pinctrl/tegra/pinctrl-tegra.c tegra_pinctrl_gpio_range.npins = pmx->soc->ngpios; pmx 762 drivers/pinctrl/tegra/pinctrl-tegra.c tegra_pinctrl_desc.pins = pmx->soc->pins; pmx 763 drivers/pinctrl/tegra/pinctrl-tegra.c tegra_pinctrl_desc.npins = pmx->soc->npins; pmx 771 drivers/pinctrl/tegra/pinctrl-tegra.c pmx->nbanks = i; pmx 773 drivers/pinctrl/tegra/pinctrl-tegra.c pmx->regs = devm_kcalloc(&pdev->dev, pmx->nbanks, sizeof(*pmx->regs), pmx 775 drivers/pinctrl/tegra/pinctrl-tegra.c if (!pmx->regs) pmx 778 drivers/pinctrl/tegra/pinctrl-tegra.c pmx->backup_regs = devm_kzalloc(&pdev->dev, backup_regs_size, pmx 780 drivers/pinctrl/tegra/pinctrl-tegra.c if (!pmx->backup_regs) pmx 783 drivers/pinctrl/tegra/pinctrl-tegra.c for (i = 0; i < pmx->nbanks; i++) { pmx 785 drivers/pinctrl/tegra/pinctrl-tegra.c pmx->regs[i] = devm_ioremap_resource(&pdev->dev, res); pmx 786 drivers/pinctrl/tegra/pinctrl-tegra.c if (IS_ERR(pmx->regs[i])) pmx 787 drivers/pinctrl/tegra/pinctrl-tegra.c return PTR_ERR(pmx->regs[i]); pmx 790 drivers/pinctrl/tegra/pinctrl-tegra.c pmx->pctl = devm_pinctrl_register(&pdev->dev, &tegra_pinctrl_desc, pmx); pmx 791 drivers/pinctrl/tegra/pinctrl-tegra.c if (IS_ERR(pmx->pctl)) { pmx 793 drivers/pinctrl/tegra/pinctrl-tegra.c return PTR_ERR(pmx->pctl); pmx 796 drivers/pinctrl/tegra/pinctrl-tegra.c tegra_pinctrl_clear_parked_bits(pmx); pmx 798 drivers/pinctrl/tegra/pinctrl-tegra.c if (!gpio_node_has_range(pmx->soc->gpio_compatible)) pmx 799 drivers/pinctrl/tegra/pinctrl-tegra.c pinctrl_add_gpio_range(pmx->pctl, &tegra_pinctrl_gpio_range); pmx 801 drivers/pinctrl/tegra/pinctrl-tegra.c platform_set_drvdata(pdev, pmx); pmx 2238 drivers/pinctrl/tegra/pinctrl-tegra20.c struct tegra_pmx *pmx = platform_get_drvdata(pdev); pmx 2241 drivers/pinctrl/tegra/pinctrl-tegra20.c pmx->regs[1] + 0x8, 2, 2, CLK_MUX_READ_ONLY, NULL); pmx 2244 drivers/pinctrl/tegra/pinctrl-tegra20.c pmx->regs[1] + 0x8, 4, 2, CLK_MUX_READ_ONLY, NULL);