[PATCH v2 4/4] gpio: scmi: Add gpio_scmi driver
Peng Fan
peng.fan at oss.nxp.com
Mon Mar 23 04:41:49 CET 2026
Hi Dan,
On Wed, Mar 11, 2026 at 10:41:36PM +0300, Dan Carpenter wrote:
>This provides GPIO support over SCMI. It is built on top of the
>pinctrl-scmi driver. The device tree entry would work the same as
>in linux. Perhaps something like this.
>+
[....]
>+ ret = snprintf(NULL, 0, "gpio_scmi%d_", bank_cnt);
>+ uc_priv->bank_name = devm_kzalloc(dev, ret + 1, GFP_KERNEL);
>+ if (!uc_priv->bank_name)
>+ return -ENOMEM;
>+ snprintf(uc_priv->bank_name, ret + 1, "gpio_scmi%d_", bank_cnt);
build fail in CI [1]:
drivers/gpio/gpio_scmi.c: In function 'scmi_gpio_probe':
drivers/gpio/gpio_scmi.c:227:25: error: passing argument 1 of 'snprintf' discards 'const' qualifier from pointer target type [-Werror=discarded-qualifiers]
227 | snprintf(uc_priv->bank_name, ret + 1, "gpio_scmi%d_", bank_cnt);
| ~~~~~~~^~~~~~~~~~~
In file included from include/log.h:12,
from include/linux/printk.h:4,
from include/linux/kernel.h:5,
from include/linux/libfdt_env.h:13,
from include/linux/libfdt.h:6,
from include/fdtdec.h:17,
from include/dm/ofnode.h:11,
from include/asm-generic/gpio.h:10,
from ./arch/sandbox/include/asm/gpio.h:24,
from drivers/gpio/gpio_scmi.c:6:
include/stdio.h:60:20: note: expected 'char *' but argument is of type 'const char *'
60 | int snprintf(char *buf, size_t size, const char *fmt, ...)
| ~~~~~~^~~
CC drivers/net/phy/broadcom.o
[1] https://source.denx.de/u-boot/custodians/u-boot-fsl-qoriq/-/jobs/1408382
Thanks,
Peng
>+ bank_cnt++;
>+
>+ uc_priv->gpio_count = priv->num_pins;
>+
>+ return 0;
>+}
>+
>+static const struct udevice_id scmi_gpio_match[] = {
>+ { .compatible = "scmi-pinctrl-gpio" },
>+ { }
>+};
>+
>+U_BOOT_DRIVER(scmi_pinctrl_gpio) = {
>+ .name = "scmi_pinctrl_gpio",
>+ .id = UCLASS_GPIO,
>+ .of_match = scmi_gpio_match,
>+ .probe = scmi_gpio_probe,
>+ .priv_auto = sizeof(struct scmi_gpio_priv),
>+ .ops = &scmi_gpio_ops,
>+};
>+
>--
>2.51.0
>
>
More information about the U-Boot
mailing list