Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

gpiolib: Discourage to use formatting strings in line names

Currently the documentation for line names allows to use %u inside
the alternative name. This is broken in character device approach
from day 1 and being in use solely in sysfs.

Character device interface has a line number as a part of its address,
so the users better rely on it. Hence remove the misleading documentation.

On top of that, there are no in-kernel users (out of 6, if I'm correct)
for such names and moreover if one exists it won't help in distinguishing
lines with the same naming as '%u' will also be in them and we will get
a warning in gpiochip_set_desc_names() for such cases.

Signed-off-by: Andy Shevchenko <andy.shevchenko@gmail.com>
Reviewed-by: Linus Walleij <linus.walleij@linaro.org>
Reviewed-by: Kent Gibson <warthog618@gmail.com>
Link: https://lore.kernel.org/r/20240505141420.627398-1-andy.shevchenko@gmail.com
Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski@linaro.org>

authored by

Andy Shevchenko and committed by
Bartosz Golaszewski
2b5ae9c7 68a25c36

+1 -3
+1 -3
include/linux/gpio/driver.h
··· 376 376 * @names: if set, must be an array of strings to use as alternative 377 377 * names for the GPIOs in this chip. Any entry in the array 378 378 * may be NULL if there is no alias for the GPIO, however the 379 - * array must be @ngpio entries long. A name can include a single printk 380 - * format specifier for an unsigned int. It is substituted by the actual 381 - * number of the gpio. 379 + * array must be @ngpio entries long. 382 380 * @can_sleep: flag must be set iff get()/set() methods sleep, as they 383 381 * must while accessing GPIO expander chips over I2C or SPI. This 384 382 * implies that if the chip supports IRQs, these IRQs need to be threaded