Lines Matching refs:info

44 	const struct imx_pinctrl_soc_info *info;  member
48 const struct imx_pinctrl_soc_info *info, in imx_pinctrl_find_group_by_name() argument
54 for (i = 0; i < info->ngroups; i++) { in imx_pinctrl_find_group_by_name()
55 if (!strcmp(info->groups[i].name, name)) { in imx_pinctrl_find_group_by_name()
56 grp = &info->groups[i]; in imx_pinctrl_find_group_by_name()
67 const struct imx_pinctrl_soc_info *info = ipctl->info; in imx_get_groups_count() local
69 return info->ngroups; in imx_get_groups_count()
76 const struct imx_pinctrl_soc_info *info = ipctl->info; in imx_get_group_name() local
78 return info->groups[selector].name; in imx_get_group_name()
86 const struct imx_pinctrl_soc_info *info = ipctl->info; in imx_get_group_pins() local
88 if (selector >= info->ngroups) in imx_get_group_pins()
91 *pins = info->groups[selector].pin_ids; in imx_get_group_pins()
92 *npins = info->groups[selector].npins; in imx_get_group_pins()
108 const struct imx_pinctrl_soc_info *info = ipctl->info; in imx_dt_node_to_map() local
119 grp = imx_pinctrl_find_group_by_name(info, np->name); in imx_dt_node_to_map()
121 dev_err(info->dev, "unable to find group for node %s\n", in imx_dt_node_to_map()
188 const struct imx_pinctrl_soc_info *info = ipctl->info; in imx_pmx_set() local
198 grp = &info->groups[group]; in imx_pmx_set()
202 info->functions[selector].name, grp->name); in imx_pmx_set()
207 pin_reg = &info->pin_regs[pin_id]; in imx_pmx_set()
211 info->pins[pin_id].name); in imx_pmx_set()
215 if (info->flags & SHARE_MUX_CONF_REG) { in imx_pmx_set()
277 const struct imx_pinctrl_soc_info *info = ipctl->info; in imx_pmx_get_funcs_count() local
279 return info->nfunctions; in imx_pmx_get_funcs_count()
286 const struct imx_pinctrl_soc_info *info = ipctl->info; in imx_pmx_get_func_name() local
288 return info->functions[selector].name; in imx_pmx_get_func_name()
296 const struct imx_pinctrl_soc_info *info = ipctl->info; in imx_pmx_get_groups() local
298 *groups = info->functions[selector].groups; in imx_pmx_get_groups()
299 *num_groups = info->functions[selector].num_groups; in imx_pmx_get_groups()
308 const struct imx_pinctrl_soc_info *info = ipctl->info; in imx_pmx_gpio_request_enable() local
316 if (!(info->flags & SHARE_MUX_CONF_REG)) in imx_pmx_gpio_request_enable()
319 pin_reg = &info->pin_regs[offset]; in imx_pmx_gpio_request_enable()
324 for (group = 0; group < info->ngroups; group++) { in imx_pmx_gpio_request_enable()
325 grp = &info->groups[group]; in imx_pmx_gpio_request_enable()
348 const struct imx_pinctrl_soc_info *info = ipctl->info; in imx_pmx_gpio_set_direction() local
356 if (!(info->flags & SHARE_MUX_CONF_REG)) in imx_pmx_gpio_set_direction()
359 pin_reg = &info->pin_regs[offset]; in imx_pmx_gpio_set_direction()
387 const struct imx_pinctrl_soc_info *info = ipctl->info; in imx_pinconf_get() local
388 const struct imx_pin_reg *pin_reg = &info->pin_regs[pin_id]; in imx_pinconf_get()
391 dev_err(info->dev, "Pin(%s) does not support config function\n", in imx_pinconf_get()
392 info->pins[pin_id].name); in imx_pinconf_get()
398 if (info->flags & SHARE_MUX_CONF_REG) in imx_pinconf_get()
409 const struct imx_pinctrl_soc_info *info = ipctl->info; in imx_pinconf_set() local
410 const struct imx_pin_reg *pin_reg = &info->pin_regs[pin_id]; in imx_pinconf_set()
414 dev_err(info->dev, "Pin(%s) does not support config function\n", in imx_pinconf_set()
415 info->pins[pin_id].name); in imx_pinconf_set()
420 info->pins[pin_id].name); in imx_pinconf_set()
423 if (info->flags & SHARE_MUX_CONF_REG) { in imx_pinconf_set()
443 const struct imx_pinctrl_soc_info *info = ipctl->info; in imx_pinconf_dbg_show() local
444 const struct imx_pin_reg *pin_reg = &info->pin_regs[pin_id]; in imx_pinconf_dbg_show()
460 const struct imx_pinctrl_soc_info *info = ipctl->info; in imx_pinconf_group_dbg_show() local
466 if (group > info->ngroups) in imx_pinconf_group_dbg_show()
470 grp = &info->groups[group]; in imx_pinconf_group_dbg_show()
504 struct imx_pinctrl_soc_info *info, in imx_pinctrl_parse_groups() argument
512 dev_dbg(info->dev, "group(%d): %s\n", index, np->name); in imx_pinctrl_parse_groups()
514 if (info->flags & SHARE_MUX_CONF_REG) in imx_pinctrl_parse_groups()
527 dev_err(info->dev, "no fsl,pins property in node %s\n", np->full_name); in imx_pinctrl_parse_groups()
533 dev_err(info->dev, "Invalid fsl,pins property in node %s\n", np->full_name); in imx_pinctrl_parse_groups()
538 grp->pins = devm_kzalloc(info->dev, grp->npins * sizeof(struct imx_pin), in imx_pinctrl_parse_groups()
540 grp->pin_ids = devm_kzalloc(info->dev, grp->npins * sizeof(unsigned int), in imx_pinctrl_parse_groups()
552 if (!(info->flags & ZERO_OFFSET_VALID) && !mux_reg) in imx_pinctrl_parse_groups()
555 if (info->flags & SHARE_MUX_CONF_REG) { in imx_pinctrl_parse_groups()
564 pin_reg = &info->pin_regs[pin_id]; in imx_pinctrl_parse_groups()
579 dev_dbg(info->dev, "%s: 0x%x 0x%08lx", info->pins[pin_id].name, in imx_pinctrl_parse_groups()
587 struct imx_pinctrl_soc_info *info, in imx_pinctrl_parse_functions() argument
595 dev_dbg(info->dev, "parse function(%d): %s\n", index, np->name); in imx_pinctrl_parse_functions()
597 func = &info->functions[index]; in imx_pinctrl_parse_functions()
603 dev_err(info->dev, "no groups defined in %s\n", np->full_name); in imx_pinctrl_parse_functions()
606 func->groups = devm_kzalloc(info->dev, in imx_pinctrl_parse_functions()
611 grp = &info->groups[info->group_index++]; in imx_pinctrl_parse_functions()
612 imx_pinctrl_parse_groups(child, grp, info, i++); in imx_pinctrl_parse_functions()
642 struct imx_pinctrl_soc_info *info) in imx_pinctrl_probe_dt() argument
664 info->nfunctions = nfuncs; in imx_pinctrl_probe_dt()
665 info->functions = devm_kzalloc(&pdev->dev, nfuncs * sizeof(struct imx_pmx_func), in imx_pinctrl_probe_dt()
667 if (!info->functions) in imx_pinctrl_probe_dt()
671 info->ngroups = of_get_child_count(np); in imx_pinctrl_probe_dt()
673 info->ngroups = 0; in imx_pinctrl_probe_dt()
675 info->ngroups += of_get_child_count(child); in imx_pinctrl_probe_dt()
677 info->groups = devm_kzalloc(&pdev->dev, info->ngroups * sizeof(struct imx_pin_group), in imx_pinctrl_probe_dt()
679 if (!info->groups) in imx_pinctrl_probe_dt()
683 imx_pinctrl_parse_functions(np, info, 0); in imx_pinctrl_probe_dt()
686 imx_pinctrl_parse_functions(child, info, i++); in imx_pinctrl_probe_dt()
693 struct imx_pinctrl_soc_info *info) in imx_pinctrl_probe() argument
701 if (!info || !info->pins || !info->npins) { in imx_pinctrl_probe()
705 info->dev = &pdev->dev; in imx_pinctrl_probe()
712 info->pin_regs = devm_kmalloc(&pdev->dev, sizeof(*info->pin_regs) * in imx_pinctrl_probe()
713 info->npins, GFP_KERNEL); in imx_pinctrl_probe()
714 if (!info->pin_regs) in imx_pinctrl_probe()
717 for (i = 0; i < info->npins; i++) { in imx_pinctrl_probe()
718 info->pin_regs[i].mux_reg = -1; in imx_pinctrl_probe()
719 info->pin_regs[i].conf_reg = -1; in imx_pinctrl_probe()
744 imx_pinctrl_desc.pins = info->pins; in imx_pinctrl_probe()
745 imx_pinctrl_desc.npins = info->npins; in imx_pinctrl_probe()
747 ret = imx_pinctrl_probe_dt(pdev, info); in imx_pinctrl_probe()
753 ipctl->info = info; in imx_pinctrl_probe()
754 ipctl->dev = info->dev; in imx_pinctrl_probe()