Lines Matching refs:pmx
50 struct sh_pfc_pinctrl *pmx = pinctrl_dev_get_drvdata(pctldev); in sh_pfc_get_groups_count() local
52 return pmx->pfc->info->nr_groups; in sh_pfc_get_groups_count()
58 struct sh_pfc_pinctrl *pmx = pinctrl_dev_get_drvdata(pctldev); in sh_pfc_get_group_name() local
60 return pmx->pfc->info->groups[selector].name; in sh_pfc_get_group_name()
66 struct sh_pfc_pinctrl *pmx = pinctrl_dev_get_drvdata(pctldev); in sh_pfc_get_group_pins() local
68 *pins = pmx->pfc->info->groups[selector].pins; in sh_pfc_get_group_pins()
69 *num_pins = pmx->pfc->info->groups[selector].nr_pins; in sh_pfc_get_group_pins()
107 struct sh_pfc_pinctrl *pmx = pinctrl_dev_get_drvdata(pctldev); in sh_pfc_dt_subnode_to_map() local
108 struct device *dev = pmx->pfc->dev; in sh_pfc_dt_subnode_to_map()
126 if (!pmx->func_prop_name) { in sh_pfc_dt_subnode_to_map()
129 pmx->func_prop_name = "function"; in sh_pfc_dt_subnode_to_map()
130 pmx->groups_prop_name = "groups"; in sh_pfc_dt_subnode_to_map()
131 pmx->pins_prop_name = "pins"; in sh_pfc_dt_subnode_to_map()
133 pmx->func_prop_name = "renesas,function"; in sh_pfc_dt_subnode_to_map()
134 pmx->groups_prop_name = "renesas,groups"; in sh_pfc_dt_subnode_to_map()
135 pmx->pins_prop_name = "renesas,pins"; in sh_pfc_dt_subnode_to_map()
142 ret = of_property_read_string(np, pmx->func_prop_name, &function); in sh_pfc_dt_subnode_to_map()
160 ret = of_property_count_strings(np, pmx->pins_prop_name); in sh_pfc_dt_subnode_to_map()
170 ret = of_property_count_strings(np, pmx->groups_prop_name); in sh_pfc_dt_subnode_to_map()
201 of_property_for_each_string(np, pmx->groups_prop_name, prop, group) { in sh_pfc_dt_subnode_to_map()
225 of_property_for_each_string(np, pmx->pins_prop_name, prop, pin) { in sh_pfc_dt_subnode_to_map()
262 struct sh_pfc_pinctrl *pmx = pinctrl_dev_get_drvdata(pctldev); in sh_pfc_dt_node_to_map() local
263 struct device *dev = pmx->pfc->dev; in sh_pfc_dt_node_to_map()
316 struct sh_pfc_pinctrl *pmx = pinctrl_dev_get_drvdata(pctldev); in sh_pfc_get_functions_count() local
318 return pmx->pfc->info->nr_functions; in sh_pfc_get_functions_count()
324 struct sh_pfc_pinctrl *pmx = pinctrl_dev_get_drvdata(pctldev); in sh_pfc_get_function_name() local
326 return pmx->pfc->info->functions[selector].name; in sh_pfc_get_function_name()
334 struct sh_pfc_pinctrl *pmx = pinctrl_dev_get_drvdata(pctldev); in sh_pfc_get_function_groups() local
336 *groups = pmx->pfc->info->functions[selector].groups; in sh_pfc_get_function_groups()
337 *num_groups = pmx->pfc->info->functions[selector].nr_groups; in sh_pfc_get_function_groups()
345 struct sh_pfc_pinctrl *pmx = pinctrl_dev_get_drvdata(pctldev); in sh_pfc_func_set_mux() local
346 struct sh_pfc *pfc = pmx->pfc; in sh_pfc_func_set_mux()
358 struct sh_pfc_pin_config *cfg = &pmx->configs[idx]; in sh_pfc_func_set_mux()
377 struct sh_pfc_pin_config *cfg = &pmx->configs[idx]; in sh_pfc_func_set_mux()
392 struct sh_pfc_pinctrl *pmx = pinctrl_dev_get_drvdata(pctldev); in sh_pfc_gpio_request_enable() local
393 struct sh_pfc *pfc = pmx->pfc; in sh_pfc_gpio_request_enable()
395 struct sh_pfc_pin_config *cfg = &pmx->configs[idx]; in sh_pfc_gpio_request_enable()
426 struct sh_pfc_pinctrl *pmx = pinctrl_dev_get_drvdata(pctldev); in sh_pfc_gpio_disable_free() local
427 struct sh_pfc *pfc = pmx->pfc; in sh_pfc_gpio_disable_free()
429 struct sh_pfc_pin_config *cfg = &pmx->configs[idx]; in sh_pfc_gpio_disable_free()
444 struct sh_pfc_pinctrl *pmx = pinctrl_dev_get_drvdata(pctldev); in sh_pfc_gpio_set_direction() local
445 struct sh_pfc *pfc = pmx->pfc; in sh_pfc_gpio_set_direction()
599 struct sh_pfc_pinctrl *pmx = pinctrl_dev_get_drvdata(pctldev); in sh_pfc_pinconf_get() local
600 struct sh_pfc *pfc = pmx->pfc; in sh_pfc_pinconf_get()
669 struct sh_pfc_pinctrl *pmx = pinctrl_dev_get_drvdata(pctldev); in sh_pfc_pinconf_set() local
670 struct sh_pfc *pfc = pmx->pfc; in sh_pfc_pinconf_set()
745 struct sh_pfc_pinctrl *pmx = pinctrl_dev_get_drvdata(pctldev); in sh_pfc_pinconf_group_set() local
750 pins = pmx->pfc->info->groups[group].pins; in sh_pfc_pinconf_group_set()
751 num_pins = pmx->pfc->info->groups[group].nr_pins; in sh_pfc_pinconf_group_set()
771 static int sh_pfc_map_pins(struct sh_pfc *pfc, struct sh_pfc_pinctrl *pmx) in sh_pfc_map_pins() argument
776 pmx->pins = devm_kcalloc(pfc->dev, in sh_pfc_map_pins()
777 pfc->info->nr_pins, sizeof(*pmx->pins), in sh_pfc_map_pins()
779 if (unlikely(!pmx->pins)) in sh_pfc_map_pins()
782 pmx->configs = devm_kcalloc(pfc->dev, in sh_pfc_map_pins()
783 pfc->info->nr_pins, sizeof(*pmx->configs), in sh_pfc_map_pins()
785 if (unlikely(!pmx->configs)) in sh_pfc_map_pins()
790 struct pinctrl_pin_desc *pin = &pmx->pins[i]; in sh_pfc_map_pins()
802 struct sh_pfc_pinctrl *pmx; in sh_pfc_register_pinctrl() local
805 pmx = devm_kzalloc(pfc->dev, sizeof(*pmx), GFP_KERNEL); in sh_pfc_register_pinctrl()
806 if (unlikely(!pmx)) in sh_pfc_register_pinctrl()
809 pmx->pfc = pfc; in sh_pfc_register_pinctrl()
811 ret = sh_pfc_map_pins(pfc, pmx); in sh_pfc_register_pinctrl()
815 pmx->pctl_desc.name = DRV_NAME; in sh_pfc_register_pinctrl()
816 pmx->pctl_desc.owner = THIS_MODULE; in sh_pfc_register_pinctrl()
817 pmx->pctl_desc.pctlops = &sh_pfc_pinctrl_ops; in sh_pfc_register_pinctrl()
818 pmx->pctl_desc.pmxops = &sh_pfc_pinmux_ops; in sh_pfc_register_pinctrl()
819 pmx->pctl_desc.confops = &sh_pfc_pinconf_ops; in sh_pfc_register_pinctrl()
820 pmx->pctl_desc.pins = pmx->pins; in sh_pfc_register_pinctrl()
821 pmx->pctl_desc.npins = pfc->info->nr_pins; in sh_pfc_register_pinctrl()
823 ret = devm_pinctrl_register_and_init(pfc->dev, &pmx->pctl_desc, pmx, in sh_pfc_register_pinctrl()
824 &pmx->pctl); in sh_pfc_register_pinctrl()
831 return pinctrl_enable(pmx->pctl); in sh_pfc_register_pinctrl()