Lines Matching defs:sprd_pctl

159 static int sprd_pinctrl_get_id_by_name(struct sprd_pinctrl *sprd_pctl,
162 struct sprd_pinctrl_soc_info *info = sprd_pctl->info;
174 sprd_pinctrl_get_pin_by_id(struct sprd_pinctrl *sprd_pctl, unsigned int id)
176 struct sprd_pinctrl_soc_info *info = sprd_pctl->info;
191 sprd_pinctrl_find_group_by_name(struct sprd_pinctrl *sprd_pctl,
194 struct sprd_pinctrl_soc_info *info = sprd_pctl->info;
881 struct sprd_pinctrl *sprd_pctl,
894 grp->pins = devm_kcalloc(sprd_pctl->dev,
901 ret = sprd_pinctrl_get_id_by_name(sprd_pctl, pin_name);
907 dev_dbg(sprd_pctl->dev,
931 static int sprd_pinctrl_parse_dt(struct sprd_pinctrl *sprd_pctl)
933 struct sprd_pinctrl_soc_info *info = sprd_pctl->info;
934 struct device_node *np = sprd_pctl->dev->of_node;
947 info->groups = devm_kcalloc(sprd_pctl->dev,
954 info->grp_names = devm_kcalloc(sprd_pctl->dev,
964 ret = sprd_pinctrl_parse_groups(child, sprd_pctl, grp);
976 sprd_pctl, grp);
992 static int sprd_pinctrl_add_pins(struct sprd_pinctrl *sprd_pctl,
996 struct sprd_pinctrl_soc_info *info = sprd_pctl->info;
1002 info->pins = devm_kcalloc(sprd_pctl->dev,
1016 pin->reg = (unsigned long)sprd_pctl->base +
1022 pin->reg = (unsigned long)sprd_pctl->base +
1027 pin->reg = (unsigned long)sprd_pctl->base +
1034 dev_dbg(sprd_pctl->dev, "pin name[%s-%d], type = %d, "
1047 struct sprd_pinctrl *sprd_pctl;
1052 sprd_pctl = devm_kzalloc(&pdev->dev, sizeof(struct sprd_pinctrl),
1054 if (!sprd_pctl)
1057 sprd_pctl->base = devm_platform_ioremap_resource(pdev, 0);
1058 if (IS_ERR(sprd_pctl->base))
1059 return PTR_ERR(sprd_pctl->base);
1067 sprd_pctl->info = pinctrl_info;
1068 sprd_pctl->dev = &pdev->dev;
1069 platform_set_drvdata(pdev, sprd_pctl);
1071 ret = sprd_pinctrl_add_pins(sprd_pctl, sprd_soc_pin_info, pins_cnt);
1077 ret = sprd_pinctrl_parse_dt(sprd_pctl);
1100 sprd_pctl->pctl = pinctrl_register(&sprd_pinctrl_desc,
1101 &pdev->dev, (void *)sprd_pctl);
1102 if (IS_ERR(sprd_pctl->pctl)) {
1104 return PTR_ERR(sprd_pctl->pctl);
1113 struct sprd_pinctrl *sprd_pctl = platform_get_drvdata(pdev);
1115 pinctrl_unregister(sprd_pctl->pctl);