Re: [PATCH v3 1/2] pinctrl: pinctrl-loongson2: add pinctrl driver support

From: Krzysztof Kozlowski
Date: Tue Oct 25 2022 - 12:08:04 EST


On 23/10/2022 21:42, Yinbo Zhu wrote:
> The loongson2 SoC has a few pins that can be used as GPIOs or take
> multiple other functions. Add a driver for the pinmuxing.
>
> There is currently no support for GPIO pin pull-up and pull-down.

Thank you for your patch. There is something to discuss/improve.

> +static const struct pinmux_ops loongson2_pmx_ops = {
> + .set_mux = loongson2_pmx_set_mux,
> + .get_functions_count = loongson2_pmx_get_funcs_count,
> + .get_function_name = loongson2_pmx_get_func_name,
> + .get_function_groups = loongson2_pmx_get_groups,
> +};
> +
> +static int loongson2_pinctrl_probe(struct platform_device *pdev)
> +{
> + struct device *dev = &pdev->dev;
> + struct loongson2_pinctrl *pctrl;
> + struct resource *res;
> +
> + pctrl = devm_kzalloc(dev, sizeof(*pctrl), GFP_KERNEL);
> + if (!pctrl)
> + return -ENOMEM;
> +
> + res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
> + pctrl->reg_base = devm_ioremap_resource(dev, res);

This is still not fixed.

> + if (IS_ERR(pctrl->reg_base))
> + return dev_err_probe(pctrl->dev, PTR_ERR(pctrl->reg_base),
> + "unable to map I/O memory");


Best regards,
Krzysztof