Lines Matching refs:npct
443 static void nmk_prcm_altcx_set_mode(struct nmk_pinctrl *npct, in nmk_prcm_altcx_set_mode() argument
453 if (!npct->prcm_base) in nmk_prcm_altcx_set_mode()
457 dev_err(npct->dev, "PRCM GPIOCR: alternate-C%i is invalid\n", in nmk_prcm_altcx_set_mode()
462 for (i = 0 ; i < npct->soc->npins_altcx ; i++) { in nmk_prcm_altcx_set_mode()
463 if (npct->soc->altcx_pins[i].pin == offset) in nmk_prcm_altcx_set_mode()
466 if (i == npct->soc->npins_altcx) { in nmk_prcm_altcx_set_mode()
467 dev_dbg(npct->dev, "PRCM GPIOCR: pin %i is not found\n", in nmk_prcm_altcx_set_mode()
472 pin_desc = npct->soc->altcx_pins + i; in nmk_prcm_altcx_set_mode()
473 gpiocr_regs = npct->soc->prcm_gpiocr_registers; in nmk_prcm_altcx_set_mode()
484 if (readl(npct->prcm_base + reg) & BIT(bit)) { in nmk_prcm_altcx_set_mode()
485 nmk_write_masked(npct->prcm_base + reg, BIT(bit), 0); in nmk_prcm_altcx_set_mode()
486 dev_dbg(npct->dev, in nmk_prcm_altcx_set_mode()
497 dev_warn(npct->dev, in nmk_prcm_altcx_set_mode()
513 if (readl(npct->prcm_base + reg) & BIT(bit)) { in nmk_prcm_altcx_set_mode()
514 nmk_write_masked(npct->prcm_base + reg, BIT(bit), 0); in nmk_prcm_altcx_set_mode()
515 dev_dbg(npct->dev, in nmk_prcm_altcx_set_mode()
524 dev_dbg(npct->dev, "PRCM GPIOCR: pin %i: alternate-C%i has been selected\n", in nmk_prcm_altcx_set_mode()
526 nmk_write_masked(npct->prcm_base + reg, BIT(bit), BIT(bit)); in nmk_prcm_altcx_set_mode()
580 struct nmk_pinctrl *npct = pinctrl_dev_get_drvdata(pctldev); in nmk_prcm_gpiocr_get_mode() local
584 if (!npct->prcm_base) in nmk_prcm_gpiocr_get_mode()
587 for (i = 0; i < npct->soc->npins_altcx; i++) { in nmk_prcm_gpiocr_get_mode()
588 if (npct->soc->altcx_pins[i].pin == gpio) in nmk_prcm_gpiocr_get_mode()
591 if (i == npct->soc->npins_altcx) in nmk_prcm_gpiocr_get_mode()
594 pin_desc = npct->soc->altcx_pins + i; in nmk_prcm_gpiocr_get_mode()
595 gpiocr_regs = npct->soc->prcm_gpiocr_registers; in nmk_prcm_gpiocr_get_mode()
600 if (readl(npct->prcm_base + reg) & BIT(bit)) in nmk_prcm_gpiocr_get_mode()
1172 struct nmk_pinctrl *npct = pinctrl_dev_get_drvdata(pctldev); in nmk_get_groups_cnt() local
1174 return npct->soc->ngroups; in nmk_get_groups_cnt()
1180 struct nmk_pinctrl *npct = pinctrl_dev_get_drvdata(pctldev); in nmk_get_group_name() local
1182 return npct->soc->groups[selector].name; in nmk_get_group_name()
1189 struct nmk_pinctrl *npct = pinctrl_dev_get_drvdata(pctldev); in nmk_get_group_pins() local
1191 *pins = npct->soc->groups[selector].pins; in nmk_get_group_pins()
1192 *num_pins = npct->soc->groups[selector].npins; in nmk_get_group_pins()
1357 struct nmk_pinctrl *npct = pinctrl_dev_get_drvdata(pctldev); in nmk_find_pin_name() local
1360 for (i = 0; i < npct->soc->npins; i++) in nmk_find_pin_name()
1361 if (npct->soc->pins[i].number == pin_number) in nmk_find_pin_name()
1362 return npct->soc->pins[i].name; in nmk_find_pin_name()
1492 struct nmk_pinctrl *npct = pinctrl_dev_get_drvdata(pctldev); in nmk_pmx_get_funcs_cnt() local
1494 return npct->soc->nfunctions; in nmk_pmx_get_funcs_cnt()
1500 struct nmk_pinctrl *npct = pinctrl_dev_get_drvdata(pctldev); in nmk_pmx_get_func_name() local
1502 return npct->soc->functions[function].name; in nmk_pmx_get_func_name()
1510 struct nmk_pinctrl *npct = pinctrl_dev_get_drvdata(pctldev); in nmk_pmx_get_func_groups() local
1512 *groups = npct->soc->functions[function].groups; in nmk_pmx_get_func_groups()
1513 *num_groups = npct->soc->functions[function].ngroups; in nmk_pmx_get_func_groups()
1521 struct nmk_pinctrl *npct = pinctrl_dev_get_drvdata(pctldev); in nmk_pmx_set() local
1529 g = &npct->soc->groups[group]; in nmk_pmx_set()
1534 dev_dbg(npct->dev, "enable group %s, %u pins\n", g->name, g->npins); in nmk_pmx_set()
1580 dev_err(npct->dev, in nmk_pmx_set()
1585 dev_dbg(npct->dev, "setting pin %d to altsetting %d\n", g->pins[i], g->altsetting); in nmk_pmx_set()
1611 nmk_prcm_altcx_set_mode(npct, g->pins[i], in nmk_pmx_set()
1631 struct nmk_pinctrl *npct = pinctrl_dev_get_drvdata(pctldev); in nmk_gpio_request_enable() local
1637 dev_err(npct->dev, "invalid range\n"); in nmk_gpio_request_enable()
1641 dev_err(npct->dev, "missing GPIO chip in range\n"); in nmk_gpio_request_enable()
1647 dev_dbg(npct->dev, "enable pin %u as GPIO\n", offset); in nmk_gpio_request_enable()
1662 struct nmk_pinctrl *npct = pinctrl_dev_get_drvdata(pctldev); in nmk_gpio_disable_free() local
1664 dev_dbg(npct->dev, "disable pin %u as GPIO\n", offset); in nmk_gpio_disable_free()
1698 struct nmk_pinctrl *npct = pinctrl_dev_get_drvdata(pctldev); in nmk_pin_config_set() local
1707 dev_err(npct->dev, in nmk_pin_config_set()
1815 struct nmk_pinctrl *npct; in nmk_pinctrl_suspend() local
1817 npct = dev_get_drvdata(dev); in nmk_pinctrl_suspend()
1818 if (!npct) in nmk_pinctrl_suspend()
1821 return pinctrl_force_sleep(npct->pctl); in nmk_pinctrl_suspend()
1826 struct nmk_pinctrl *npct; in nmk_pinctrl_resume() local
1828 npct = dev_get_drvdata(dev); in nmk_pinctrl_resume()
1829 if (!npct) in nmk_pinctrl_resume()
1832 return pinctrl_force_default(npct->pctl); in nmk_pinctrl_resume()
1841 struct nmk_pinctrl *npct; in nmk_pinctrl_probe() local
1845 npct = devm_kzalloc(&pdev->dev, sizeof(*npct), GFP_KERNEL); in nmk_pinctrl_probe()
1846 if (!npct) in nmk_pinctrl_probe()
1856 nmk_pinctrl_stn8815_init(&npct->soc); in nmk_pinctrl_probe()
1858 nmk_pinctrl_db8500_init(&npct->soc); in nmk_pinctrl_probe()
1860 nmk_pinctrl_db8540_init(&npct->soc); in nmk_pinctrl_probe()
1889 npct->prcm_base = of_iomap(prcm_np, 0); in nmk_pinctrl_probe()
1892 if (!npct->prcm_base) { in nmk_pinctrl_probe()
1903 nmk_pinctrl_desc.pins = npct->soc->pins; in nmk_pinctrl_probe()
1904 nmk_pinctrl_desc.npins = npct->soc->npins; in nmk_pinctrl_probe()
1905 npct->dev = &pdev->dev; in nmk_pinctrl_probe()
1907 npct->pctl = devm_pinctrl_register(&pdev->dev, &nmk_pinctrl_desc, npct); in nmk_pinctrl_probe()
1908 if (IS_ERR(npct->pctl)) { in nmk_pinctrl_probe()
1910 return PTR_ERR(npct->pctl); in nmk_pinctrl_probe()
1913 platform_set_drvdata(pdev, npct); in nmk_pinctrl_probe()