Re: [PATCH RFC 07/14] pinctrl: qcom: Add MSM8917 tlmm pinctrl driver

From: Dmitry Baryshkov
Date: Sat Oct 19 2024 - 09:20:36 EST


On Sat, Oct 19, 2024 at 01:50:44PM +0200, Barnabás Czémán wrote:
> From: Otto Pflüger <otto.pflueger@xxxxxxxxx>
>
> It is based on MSM8916 driver with the pinctrl definitions from
> Qualcomm's downstream MSM8917 driver.
>
> Signed-off-by: Otto Pflüger <otto.pflueger@xxxxxxxxx>
> Signed-off-by: Barnabás Czémán <barnabas.czeman@xxxxxxxxxxxxxx>
> ---
> drivers/pinctrl/qcom/Kconfig.msm | 6 +
> drivers/pinctrl/qcom/Makefile | 1 +
> drivers/pinctrl/qcom/pinctrl-msm8917.c | 1622 ++++++++++++++++++++++++++++++++
> 3 files changed, 1629 insertions(+)
>
> diff --git a/drivers/pinctrl/qcom/Kconfig.msm b/drivers/pinctrl/qcom/Kconfig.msm
> index c79f0c3c873da56e8c0e1de9f91bce4b552221d2..f53043ea213012447aaaf07e9f339a16493a1b95 100644
> --- a/drivers/pinctrl/qcom/Kconfig.msm
> +++ b/drivers/pinctrl/qcom/Kconfig.msm
> @@ -137,6 +137,12 @@ config PINCTRL_MSM8916
> This is the pinctrl, pinmux, pinconf and gpiolib driver for the
> Qualcomm TLMM block found on the Qualcomm 8916 platform.
>
> +config PINCTRL_MSM8917
> + tristate "Qualcomm 8917 pin controller driver"
> + help
> + This is the pinctrl, pinmux, pinconf and gpiolib driver for the
> + Qualcomm TLMM block found on the Qualcomm 8917 platform.
> +

MSM8917, not just 8917.

[...]

> + msm_mux_wcss_wlan2,
> + msm_mux_webcam_rst,
> + msm_mux_webcam_standby,
> + msm_mux_wsa_io,
> + msm_mux_wsa_irq,
> + msm_mux_NA,

s/NA/_/ through the file, see recent tlmm drivers. This generally
improves readability.

> +};
> +

[...]

> +
> +static const struct msm_pingroup msm8917_groups[] = {
> + PINGROUP(0, blsp_spi1, blsp_uart1, qdss_tracedata_b, NA, NA, NA, NA,
> + NA, NA),

And here too. Compare the string above with

PINGROUP(0, blsp_spi1, blsp_uart1, qdss_tracedata_b, _, _, _, _, _, _),

> +};
> +
> +#define NUM_GPIO_PINGROUPS 134

inline

> +
> +static const struct msm_pinctrl_soc_data msm8917_pinctrl = {
> + .pins = msm8917_pins,
> + .npins = ARRAY_SIZE(msm8917_pins),
> + .functions = msm8917_functions,
> + .nfunctions = ARRAY_SIZE(msm8917_functions),
> + .groups = msm8917_groups,
> + .ngroups = ARRAY_SIZE(msm8917_groups),
> + .ngpios = NUM_GPIO_PINGROUPS,
> +};
> +
> +static int msm8917_pinctrl_probe(struct platform_device *pdev)
> +{
> + return msm_pinctrl_probe(pdev, &msm8917_pinctrl);
> +}
> +
> +static const struct of_device_id msm8917_pinctrl_of_match[] = {
> + { .compatible = "qcom,msm8917-pinctrl", },
> + { },
> +};
> +
> +static struct platform_driver msm8917_pinctrl_driver = {
> + .driver = {
> + .name = "msm8917-pinctrl",
> + .of_match_table = msm8917_pinctrl_of_match,
> + },
> + .probe = msm8917_pinctrl_probe,
> + .remove_new = msm_pinctrl_remove,

Just .remove

> +};
> +
> +static int __init msm8917_pinctrl_init(void)
> +{
> + return platform_driver_register(&msm8917_pinctrl_driver);
> +}
> +arch_initcall(msm8917_pinctrl_init);
> +
> +static void __exit msm8917_pinctrl_exit(void)
> +{
> + platform_driver_unregister(&msm8917_pinctrl_driver);
> +}
> +module_exit(msm8917_pinctrl_exit);
> +
> +MODULE_DESCRIPTION("Qualcomm msm8917 pinctrl driver");
> +MODULE_LICENSE("GPL");
> +MODULE_DEVICE_TABLE(of, msm8917_pinctrl_of_match);

Please move this after the match table.

>
> --
> 2.47.0
>

--
With best wishes
Dmitry