Lines Matching refs:pctrl
53 struct pinctrl_dev *pctrl; member
778 struct zynq_pinctrl *pctrl = pinctrl_dev_get_drvdata(pctldev); in zynq_pctrl_get_groups_count() local
780 return pctrl->ngroups; in zynq_pctrl_get_groups_count()
786 struct zynq_pinctrl *pctrl = pinctrl_dev_get_drvdata(pctldev); in zynq_pctrl_get_group_name() local
788 return pctrl->groups[selector].name; in zynq_pctrl_get_group_name()
796 struct zynq_pinctrl *pctrl = pinctrl_dev_get_drvdata(pctldev); in zynq_pctrl_get_group_pins() local
798 *pins = pctrl->groups[selector].pins; in zynq_pctrl_get_group_pins()
799 *num_pins = pctrl->groups[selector].npins; in zynq_pctrl_get_group_pins()
815 struct zynq_pinctrl *pctrl = pinctrl_dev_get_drvdata(pctldev); in zynq_pmux_get_functions_count() local
817 return pctrl->nfuncs; in zynq_pmux_get_functions_count()
823 struct zynq_pinctrl *pctrl = pinctrl_dev_get_drvdata(pctldev); in zynq_pmux_get_function_name() local
825 return pctrl->funcs[selector].name; in zynq_pmux_get_function_name()
833 struct zynq_pinctrl *pctrl = pinctrl_dev_get_drvdata(pctldev); in zynq_pmux_get_function_groups() local
835 *groups = pctrl->funcs[selector].groups; in zynq_pmux_get_function_groups()
836 *num_groups = pctrl->funcs[selector].ngroups; in zynq_pmux_get_function_groups()
845 struct zynq_pinctrl *pctrl = pinctrl_dev_get_drvdata(pctldev); in zynq_pinmux_set_mux() local
846 const struct zynq_pctrl_group *pgrp = &pctrl->groups[group]; in zynq_pinmux_set_mux()
847 const struct zynq_pinmux_function *func = &pctrl->funcs[function]; in zynq_pinmux_set_mux()
858 ret = regmap_read(pctrl->syscon, in zynq_pinmux_set_mux()
859 pctrl->pctrl_offset + func->mux, ®); in zynq_pinmux_set_mux()
865 ret = regmap_write(pctrl->syscon, in zynq_pinmux_set_mux()
866 pctrl->pctrl_offset + func->mux, reg); in zynq_pinmux_set_mux()
872 u32 reg, addr = pctrl->pctrl_offset + (4 * pin); in zynq_pinmux_set_mux()
874 ret = regmap_read(pctrl->syscon, addr, ®); in zynq_pinmux_set_mux()
880 ret = regmap_write(pctrl->syscon, addr, reg); in zynq_pinmux_set_mux()
947 struct zynq_pinctrl *pctrl = pinctrl_dev_get_drvdata(pctldev); in zynq_pinconf_cfg_get() local
952 ret = regmap_read(pctrl->syscon, pctrl->pctrl_offset + (4 * pin), ®); in zynq_pinconf_cfg_get()
1005 struct zynq_pinctrl *pctrl = pinctrl_dev_get_drvdata(pctldev); in zynq_pinconf_cfg_set() local
1010 ret = regmap_read(pctrl->syscon, pctrl->pctrl_offset + (4 * pin), ®); in zynq_pinconf_cfg_set()
1065 ret = regmap_write(pctrl->syscon, pctrl->pctrl_offset + (4 * pin), reg); in zynq_pinconf_cfg_set()
1078 struct zynq_pinctrl *pctrl = pinctrl_dev_get_drvdata(pctldev); in zynq_pinconf_group_set() local
1079 const struct zynq_pctrl_group *pgrp = &pctrl->groups[selector]; in zynq_pinconf_group_set()
1117 struct zynq_pinctrl *pctrl; in zynq_pinctrl_probe() local
1119 pctrl = devm_kzalloc(&pdev->dev, sizeof(*pctrl), GFP_KERNEL); in zynq_pinctrl_probe()
1120 if (!pctrl) in zynq_pinctrl_probe()
1123 pctrl->syscon = syscon_regmap_lookup_by_phandle(pdev->dev.of_node, in zynq_pinctrl_probe()
1125 if (IS_ERR(pctrl->syscon)) { in zynq_pinctrl_probe()
1127 return PTR_ERR(pctrl->syscon); in zynq_pinctrl_probe()
1135 pctrl->pctrl_offset = res->start; in zynq_pinctrl_probe()
1137 pctrl->groups = zynq_pctrl_groups; in zynq_pinctrl_probe()
1138 pctrl->ngroups = ARRAY_SIZE(zynq_pctrl_groups); in zynq_pinctrl_probe()
1139 pctrl->funcs = zynq_pmux_functions; in zynq_pinctrl_probe()
1140 pctrl->nfuncs = ARRAY_SIZE(zynq_pmux_functions); in zynq_pinctrl_probe()
1142 pctrl->pctrl = pinctrl_register(&zynq_desc, &pdev->dev, pctrl); in zynq_pinctrl_probe()
1143 if (!pctrl->pctrl) in zynq_pinctrl_probe()
1146 platform_set_drvdata(pdev, pctrl); in zynq_pinctrl_probe()
1155 struct zynq_pinctrl *pctrl = platform_get_drvdata(pdev); in zynq_pinctrl_remove() local
1157 pinctrl_unregister(pctrl->pctrl); in zynq_pinctrl_remove()