Lines Matching refs:ipctl
107 struct s32_pinctrl *ipctl = pinctrl_dev_get_drvdata(pctldev);
109 unsigned int mem_regions = ipctl->info->soc_data->mem_regions;
113 pin_range = ipctl->regions[i].pin_range;
115 return &ipctl->regions[i];
179 struct s32_pinctrl *ipctl = pinctrl_dev_get_drvdata(pctldev);
180 const struct s32_pinctrl_soc_info *info = ipctl->info;
188 struct s32_pinctrl *ipctl = pinctrl_dev_get_drvdata(pctldev);
189 const struct s32_pinctrl_soc_info *info = ipctl->info;
198 struct s32_pinctrl *ipctl = pinctrl_dev_get_drvdata(pctldev);
199 const struct s32_pinctrl_soc_info *info = ipctl->info;
220 struct s32_pinctrl *ipctl = pinctrl_dev_get_drvdata(pctldev);
221 struct device *dev = ipctl->dev;
307 struct s32_pinctrl *ipctl = pinctrl_dev_get_drvdata(pctldev);
308 const struct s32_pinctrl_soc_info *info = ipctl->info;
318 dev_dbg(ipctl->dev, "set mux for function %s group %s\n",
345 struct s32_pinctrl *ipctl = pinctrl_dev_get_drvdata(pctldev);
346 const struct s32_pinctrl_soc_info *info = ipctl->info;
354 struct s32_pinctrl *ipctl = pinctrl_dev_get_drvdata(pctldev);
355 const struct s32_pinctrl_soc_info *info = ipctl->info;
365 struct s32_pinctrl *ipctl = pinctrl_dev_get_drvdata(pctldev);
366 const struct s32_pinctrl_soc_info *info = ipctl->info;
378 struct s32_pinctrl *ipctl = pinctrl_dev_get_drvdata(pctldev);
396 spin_lock_irqsave(&ipctl->gpio_configs_lock, flags);
397 list_add(&gpio_pin->list, &ipctl->gpio_configs);
398 spin_unlock_irqrestore(&ipctl->gpio_configs_lock, flags);
410 struct s32_pinctrl *ipctl = pinctrl_dev_get_drvdata(pctldev);
415 spin_lock_irqsave(&ipctl->gpio_configs_lock, flags);
417 list_for_each_entry_safe(gpio_pin, tmp, &ipctl->gpio_configs, list) {
431 spin_unlock_irqrestore(&ipctl->gpio_configs_lock, flags);
562 struct s32_pinctrl *ipctl = pinctrl_dev_get_drvdata(pctldev);
570 dev_dbg(ipctl->dev, "pinconf set pin %s with %u configs\n",
582 dev_dbg(ipctl->dev, "update: pin %u cfg 0x%x\n", pin_id, config);
605 struct s32_pinctrl *ipctl = pinctrl_dev_get_drvdata(pctldev);
606 const struct s32_pinctrl_soc_info *info = ipctl->info;
637 struct s32_pinctrl *ipctl = pinctrl_dev_get_drvdata(pctldev);
638 const struct s32_pinctrl_soc_info *info = ipctl->info;
664 static bool s32_pinctrl_should_save(struct s32_pinctrl *ipctl,
667 const struct pin_desc *pd = pin_desc_get(ipctl->pctl, pin);
685 struct s32_pinctrl *ipctl = platform_get_drvdata(pdev);
687 const struct s32_pinctrl_soc_info *info = ipctl->info;
688 struct s32_pinctrl_context *saved_context = &ipctl->saved_context;
696 if (!s32_pinctrl_should_save(ipctl, pin->number))
699 ret = s32_regmap_read(ipctl->pctl, pin->number, &config);
712 struct s32_pinctrl *ipctl = platform_get_drvdata(pdev);
713 const struct s32_pinctrl_soc_info *info = ipctl->info;
715 struct s32_pinctrl_context *saved_context = &ipctl->saved_context;
721 if (!s32_pinctrl_should_save(ipctl, pin->number))
724 ret = s32_regmap_write(ipctl->pctl, pin->number,
830 struct s32_pinctrl *ipctl)
832 struct s32_pinctrl_soc_info *info = ipctl->info;
851 ipctl->regions = devm_kcalloc(&pdev->dev, mem_regions,
852 sizeof(*ipctl->regions), GFP_KERNEL);
853 if (!ipctl->regions)
861 snprintf(ipctl->regions[i].name,
862 sizeof(ipctl->regions[i].name), "map%u", i);
864 s32_regmap_config.name = ipctl->regions[i].name;
875 ipctl->regions[i].map = map;
876 ipctl->regions[i].pin_range = &info->soc_data->mem_pin_ranges[i];
915 struct s32_pinctrl *ipctl;
936 ipctl = devm_kzalloc(&pdev->dev, sizeof(*ipctl), GFP_KERNEL);
937 if (!ipctl)
940 ipctl->info = info;
941 ipctl->dev = info->dev;
942 platform_set_drvdata(pdev, ipctl);
944 INIT_LIST_HEAD(&ipctl->gpio_configs);
945 spin_lock_init(&ipctl->gpio_configs_lock);
960 ret = s32_pinctrl_probe_dt(pdev, ipctl);
966 ipctl->pctl = devm_pinctrl_register(&pdev->dev, s32_pinctrl_desc,
967 ipctl);
968 if (IS_ERR(ipctl->pctl))
969 return dev_err_probe(&pdev->dev, PTR_ERR(ipctl->pctl),
973 saved_context = &ipctl->saved_context;