[PATCH v3 1/1] gpio: mpfs: add polarfire soc gpio support

Marc Zyngier maz at kernel.org
Sat Jul 16 03:44:26 PDT 2022


On Sat, 16 Jul 2022 08:11:13 +0100,
<lewis.hanly at microchip.com> wrote:
> 
> From: Lewis Hanly <lewis.hanly at microchip.com>
> 
> Add a driver to support the Polarfire SoC gpio controller.
> 
> Signed-off-by: Lewis Hanly <lewis.hanly at microchip.com>
> ---
>  drivers/gpio/Kconfig     |   9 +
>  drivers/gpio/Makefile    |   1 +
>  drivers/gpio/gpio-mpfs.c | 361 +++++++++++++++++++++++++++++++++++++++
>  3 files changed, 371 insertions(+)
>  create mode 100644 drivers/gpio/gpio-mpfs.c

A couple of other nits:

> +static const struct of_device_id mpfs_of_ids[] = {
> +	{ .compatible = "microchip,mpfs-gpio", },

Where is the DT binding for this?

> +	{ /* end of list */ }
> +};
> +
> +static struct platform_driver mpfs_gpio_driver = {
> +	.probe = mpfs_gpio_probe,
> +	.driver = {
> +		.name = "microchip,mpfs-gpio",
> +		.of_match_table = mpfs_of_ids,
> +	},
> +	.remove = mpfs_gpio_remove,

No, please. You cannot enforce that there are no interrupts being used
(and nothing checks for this), and you're pretty much guaranteed that
the system will catch fire on the first interrupt being delivered.
Moreover, your "remove" callback only turns the clock off, which is
yet another nail on that coffin.

	M.

-- 
Without deviation from the norm, progress is not possible.



More information about the linux-riscv mailing list