Lines Matching defs:mpci
177 struct max77620_pctrl_info *mpci = pinctrl_dev_get_drvdata(pctldev);
179 return mpci->num_pin_groups;
185 struct max77620_pctrl_info *mpci = pinctrl_dev_get_drvdata(pctldev);
187 return mpci->pin_groups[group].name;
194 struct max77620_pctrl_info *mpci = pinctrl_dev_get_drvdata(pctldev);
196 *pins = mpci->pin_groups[group].pins;
197 *num_pins = mpci->pin_groups[group].npins;
212 struct max77620_pctrl_info *mpci = pinctrl_dev_get_drvdata(pctldev);
214 return mpci->num_functions;
220 struct max77620_pctrl_info *mpci = pinctrl_dev_get_drvdata(pctldev);
222 return mpci->functions[function].name;
230 struct max77620_pctrl_info *mpci = pinctrl_dev_get_drvdata(pctldev);
232 *groups = mpci->functions[function].groups;
233 *num_groups = mpci->functions[function].ngroups;
241 struct max77620_pctrl_info *mpci = pinctrl_dev_get_drvdata(pctldev);
247 } else if (function == mpci->pin_groups[group].alt_option) {
250 dev_err(mpci->dev, "GPIO %u doesn't have function %u\n",
254 ret = regmap_update_bits(mpci->rmap, MAX77620_REG_AME_GPIO,
257 dev_err(mpci->dev, "REG AME GPIO update failed: %d\n", ret);
272 struct max77620_pctrl_info *mpci = pinctrl_dev_get_drvdata(pctldev);
273 struct device *dev = mpci->dev;
281 if (mpci->pin_info[pin].drv_type == MAX77620_PIN_OD_DRV)
286 if (mpci->pin_info[pin].drv_type == MAX77620_PIN_PP_DRV)
291 ret = regmap_read(mpci->rmap, MAX77620_REG_PUE_GPIO, &val);
301 ret = regmap_read(mpci->rmap, MAX77620_REG_PDE_GPIO, &val);
320 static int max77620_get_default_fps(struct max77620_pctrl_info *mpci,
326 ret = regmap_read(mpci->rmap, addr, &val);
328 dev_err(mpci->dev, "Reg PUE_GPIO read failed: %d\n", ret);
336 static int max77620_set_fps_param(struct max77620_pctrl_info *mpci,
339 struct max77620_fps_config *fps_config = &mpci->fps_config[pin];
377 dev_err(mpci->dev, "Invalid parameter %d for pin %d\n",
385 ret = regmap_update_bits(mpci->rmap, addr, mask, param_val << shift);
387 dev_err(mpci->dev, "Reg 0x%02x update failed %d\n", addr, ret);
396 struct max77620_pctrl_info *mpci = pinctrl_dev_get_drvdata(pctldev);
397 struct device *dev = mpci->dev;
414 ret = regmap_update_bits(mpci->rmap,
421 mpci->pin_info[pin].drv_type = val ?
427 ret = regmap_update_bits(mpci->rmap,
434 mpci->pin_info[pin].drv_type = val ?
444 fps_config = &mpci->fps_config[pin];
450 mpci, addr,
464 ret = max77620_set_fps_param(mpci, pin, param);
475 fps_config = &mpci->fps_config[pin];
481 mpci, addr,
504 ret = regmap_update_bits(mpci->rmap,
513 ret = regmap_update_bits(mpci->rmap,
551 struct max77620_pctrl_info *mpci;
554 mpci = devm_kzalloc(&pdev->dev, sizeof(*mpci), GFP_KERNEL);
555 if (!mpci)
558 mpci->dev = &pdev->dev;
559 mpci->dev->of_node = pdev->dev.parent->of_node;
560 mpci->rmap = max77620->rmap;
562 mpci->pins = max77620_pins_desc;
563 mpci->num_pins = ARRAY_SIZE(max77620_pins_desc);
564 mpci->functions = max77620_pin_function;
565 mpci->num_functions = ARRAY_SIZE(max77620_pin_function);
566 mpci->pin_groups = max77620_pingroups;
567 mpci->num_pin_groups = ARRAY_SIZE(max77620_pingroups);
568 platform_set_drvdata(pdev, mpci);
578 mpci->fps_config[i].active_fps_src = -1;
579 mpci->fps_config[i].active_power_up_slots = -1;
580 mpci->fps_config[i].active_power_down_slots = -1;
581 mpci->fps_config[i].suspend_fps_src = -1;
582 mpci->fps_config[i].suspend_power_up_slots = -1;
583 mpci->fps_config[i].suspend_power_down_slots = -1;
586 mpci->pctl = devm_pinctrl_register(&pdev->dev, &max77620_pinctrl_desc,
587 mpci);
588 if (IS_ERR(mpci->pctl)) {
590 return PTR_ERR(mpci->pctl);
611 struct max77620_pctrl_info *mpci = dev_get_drvdata(dev);
619 mpci, pin, max77620_suspend_fps_param[p]);
627 struct max77620_pctrl_info *mpci = dev_get_drvdata(dev);
635 mpci, pin, max77620_active_fps_param[p]);