[PATCH v1 2/2] pinctrl: nuvoton: add NPCM8XX pinctrl and GPIO driver
Tomer Maimon
tmaimon77 at gmail.com
Tue Jul 12 21:34:53 AEST 2022
HI Krzysztof,
Thanks for your comment, they will be addressed next version,
On Tue, 12 Jul 2022 at 12:50, Krzysztof Kozlowski
<krzysztof.kozlowski at linaro.org> wrote:
>
> On 10/07/2022 12:21, Tomer Maimon wrote:
> > Add pinctrl and GPIO controller driver support to Arbel BMC NPCM8XX SoC.
> >
> > Arbel BMC NPCM8XX pinctrl driver based on Poleg NPCM7XX, except the
> > pin mux mapping difference the NPCM8XX GPIO supports adjust debounce
> > period time.
> >
> > Signed-off-by: Tomer Maimon <tmaimon77 at gmail.com>
>
> (...)
>
> > +
> > +static int npcm8xx_pinctrl_probe(struct platform_device *pdev)
> > +{
> > + struct npcm8xx_pinctrl *pctrl;
> > + int ret;
> > +
> > + pctrl = devm_kzalloc(&pdev->dev, sizeof(*pctrl), GFP_KERNEL);
> > + if (!pctrl)
> > + return -ENOMEM;
> > +
> > + pctrl->dev = &pdev->dev;
> > + dev_set_drvdata(&pdev->dev, pctrl);
> > +
> > + pctrl->gcr_regmap =
> > + syscon_regmap_lookup_by_compatible("nuvoton,npcm845-gcr");
>
> No. Use property. By this patchset, I would expect that you learnt from
> previous mistakes around this. Why repeating the same trouble second time?
>
> > + if (IS_ERR(pctrl->gcr_regmap)) {
> > + dev_err(pctrl->dev, "didn't find nuvoton,npcm845-gcr\n");
> > + return PTR_ERR(pctrl->gcr_regmap);
> > + }
> > +
> > + ret = npcm8xx_gpio_of(pctrl);
> > + if (ret < 0) {
> > + dev_err(pctrl->dev, "Failed to gpio dt-binding %u\n", ret);
> > + return ret;
> > + }
> > +
> > + pctrl->pctldev = devm_pinctrl_register(&pdev->dev,
> > + &npcm8xx_pinctrl_desc, pctrl);
> > + if (IS_ERR(pctrl->pctldev)) {
> > + dev_err(&pdev->dev, "Failed to register pinctrl device\n");
> > + return PTR_ERR(pctrl->pctldev);
> > + }
> > +
> > + ret = npcm8xx_gpio_register(pctrl);
> > + if (ret < 0) {
> > + dev_err(pctrl->dev, "Failed to register gpio %u\n", ret);
> > + return ret;
> > + }
> > +
> > + pr_info("npcm8xx Pinctrl driver probed\n");
>
>
> No pr_ in devices. No success debug messages.
>
> > + return 0;
> > +}
> > +
> > +static const struct of_device_id npcm8xx_pinctrl_match[] = {
> > + { .compatible = "nuvoton,npcm845-pinctrl" },
> > + { },
> > +};
> > +MODULE_DEVICE_TABLE(of, npcm8xx_pinctrl_match);
> > +
> > +static struct platform_driver npcm8xx_pinctrl_driver = {
> > + .probe = npcm8xx_pinctrl_probe,
> > + .driver = {
> > + .name = "npcm8xx-pinctrl",
> > + .of_match_table = npcm8xx_pinctrl_match,
> > + .suppress_bind_attrs = true,
> > + },
> > +};
> > +
> > +static int __init npcm8xx_pinctrl_register(void)
> > +{
> > + return platform_driver_register(&npcm8xx_pinctrl_driver);
> > +}
> > +arch_initcall(npcm8xx_pinctrl_register);
> > +
> > +MODULE_LICENSE("GPL v2");
> > +MODULE_AUTHOR("tomer.maimon at nuvoton.com");
> > +MODULE_DESCRIPTION("Nuvoton NPCM8XX Pinctrl and GPIO driver");
>
>
> Best regards,
> Krzysztof
Best regards,
Tomer
More information about the openbmc
mailing list