milos-linux/drivers/gpio
Mathieu Dubois-Briand b424bb88af gpiolib: Allow to use setters with return value for output-only gpios
The gpiod_direction_output_raw_commit() function checks if any setter
callback is present before doing anything. As the new GPIO setters with
return values were introduced, make this check also succeed if one is
present.

Fixes: 98ce1eb1fd ("gpiolib: introduce gpio_chip setters that return values")
Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com>
Link: https://lore.kernel.org/r/20250411-mdb-gpiolib-setters-fix-v2-1-9611280d8822@bootlin.com
Signed-off-by: Bartosz Golaszewski <brgl@bgdev.pl>
2025-04-14 20:31:00 +02:00
..
dev-sync-probe.c gpio: introduce utilities for synchronous fake device creation 2025-02-24 14:57:39 +01:00
dev-sync-probe.h gpio: introduce utilities for synchronous fake device creation 2025-02-24 14:57:39 +01:00
gpio-74x164.c gpio: 74x164: use new line value setter callbacks 2025-03-10 11:52:12 +01:00
gpio-74xx-mmio.c
gpio-104-dio-48e.c module: Convert symbol namespace to string literal 2024-12-02 11:34:44 -08:00
gpio-104-idi-48.c
gpio-104-idio-16.c module: Convert symbol namespace to string literal 2024-12-02 11:34:44 -08:00
gpio-adnp.c gpio: adnp: use new line value setter callbacks 2025-03-10 11:54:34 +01:00
gpio-adp5520.c gpio: adp5520: use new line value setter callbacks 2025-03-10 11:52:12 +01:00
gpio-adp5585.c gpio: adp5585: use new line value setter callbacks 2025-03-10 11:52:12 +01:00
gpio-aggregator.c Linux 6.14-rc7 2025-03-17 08:27:10 +01:00
gpio-altera-a10sr.c gpio: altera-a10sr: use new line value setter callbacks 2025-03-10 11:52:12 +01:00
gpio-altera.c gpio: altera: use new line value setter callbacks 2025-03-10 11:52:13 +01:00
gpio-amd-fch.c gpio: amd-fch: use new line value setter callbacks 2025-03-10 11:52:13 +01:00
gpio-amd8111.c gpio: amd8111: use new line value setter callbacks 2025-03-10 11:52:13 +01:00
gpio-amdpt.c gpio: amdpt: remove remove() 2024-10-17 08:53:34 +02:00
gpio-arizona.c gpio: arizona: use new line value setter callbacks 2025-03-10 11:52:13 +01:00
gpio-aspeed-sgpio.c gpio: aspeed-sgpio: use new line value setter callbacks 2025-03-10 11:52:13 +01:00
gpio-aspeed.c gpio: aspeed: use new line value setter callbacks 2025-03-10 11:52:13 +01:00
gpio-ath79.c gpio: ath79: remove support for platform data 2024-09-02 09:45:18 +02:00
gpio-bcm-kona.c gpio: bcm-kona: use new line value setter callbacks 2025-03-17 08:27:41 +01:00
gpio-bd9571mwv.c gpio: bd9571mwv: use new line value setter callbacks 2025-03-17 08:27:41 +01:00
gpio-bd71815.c gpio: bd71815: use new line value setter callbacks 2025-03-17 08:27:41 +01:00
gpio-bd71828.c gpio: bd71828: use new line value setter callbacks 2025-03-17 08:27:41 +01:00
gpio-brcmstb.c gpio: Use str_enable_disable-like helpers 2025-02-03 09:12:44 +01:00
gpio-bt8xx.c gpio: bt8xx: use new line value setter callbacks 2025-03-17 08:27:41 +01:00
gpio-cadence.c gpio: Switch back to struct platform_driver::remove() 2024-10-17 09:00:48 +02:00
gpio-cgbc.c gpio: cgbc: use new line value setter callbacks 2025-03-17 08:27:41 +01:00
gpio-clps711x.c
gpio-creg-snps.c gpio: creg-snps: use new line value setter callbacks 2025-03-17 08:27:41 +01:00
gpio-cros-ec.c gpio: cros-ec: use new line value setter callbacks 2025-03-17 08:27:41 +01:00
gpio-crystalcove.c gpio: crystalcove: use new line value setter callbacks 2025-03-17 08:27:41 +01:00
gpio-cs5535.c gpio: cs5535: use new line value setter callbacks 2025-03-17 08:27:41 +01:00
gpio-da9052.c gpio: da9052: use new line value setter callbacks 2025-03-17 08:27:42 +01:00
gpio-da9055.c gpio: da9055: use new line value setter callbacks 2025-03-17 08:27:42 +01:00
gpio-davinci.c gpio: davinci: use value returning setters 2025-02-26 11:17:40 +01:00
gpio-dln2.c gpio: Switch back to struct platform_driver::remove() 2024-10-17 09:00:48 +02:00
gpio-ds4520.c
gpio-dwapb.c gpio: dwapb: Add ACPI HID for DWAPB GPIO controller on Fujitsu MONAKA 2024-10-31 13:37:54 +01:00
gpio-eic-sprd.c gpio: eic-sprd: use generic device_get_match_data() 2024-10-14 10:28:56 +02:00
gpio-elkhartlake.c module: Convert symbol namespace to string literal 2024-12-02 11:34:44 -08:00
gpio-em.c pinctrl: em: drop the wrapper around pinctrl_gpio_request() 2023-11-04 10:23:23 +01:00
gpio-en7523.c gpio: EN7523: fix kernel-doc warnings 2024-01-15 23:15:35 +01:00
gpio-ep93xx.c Fix a potential abuse of seq_printf() format string in drivers 2024-11-22 15:31:35 +01:00
gpio-exar.c gpio: exar: set value when external pull-up or pull-down is present 2024-11-21 09:08:47 +01:00
gpio-f7188x.c
gpio-ftgpio010.c gpio: ftgpio010: shrink code 2024-10-21 09:23:34 +02:00
gpio-fxl6408.c gpio: Drop explicit initialization of struct i2c_device_id::driver_data to 0 2024-07-29 10:50:51 +02:00
gpio-ge.c
gpio-gpio-mm.c module: Convert symbol namespace to string literal 2024-12-02 11:34:44 -08:00
gpio-graniterapids.c gpio: graniterapids: Fix GPIO Ack functionality 2024-12-10 10:35:13 +01:00
gpio-grgpio.c gpio: Use str_enable_disable-like helpers 2025-02-03 09:12:44 +01:00
gpio-gw-pld.c gpio: add missing MODULE_DESCRIPTION() macros 2024-06-07 10:05:21 +02:00
gpio-hisi.c gpio: hisi: Fix format specifier 2023-10-13 08:39:30 +02:00
gpio-hlwd.c Fix a potential abuse of seq_printf() format string in drivers 2024-11-22 15:31:35 +01:00
gpio-htc-egpio.c
gpio-i8255.c module: Convert symbol namespace to string literal 2024-12-02 11:34:44 -08:00
gpio-i8255.h
gpio-ich.c
gpio-idio-16.c gpio: idio-16: Actually make use of the GPIO_IDIO_16 symbol namespace 2024-12-10 11:38:57 +01:00
gpio-idio-16.h
gpio-idt3243x.c
gpio-imx-scu.c
gpio-it87.c
gpio-ixp4xx.c gpio: ixp4xx: Replace of_node_to_fwnode() with more suitable API 2024-09-02 12:27:36 +02:00
gpio-janz-ttl.c
gpio-kempld.c
gpio-latch.c gpio: latch: use value returning setters 2025-02-26 11:17:40 +01:00
gpio-ljca.c Linux 6.13-rc2 2024-12-10 11:38:38 +01:00
gpio-logicvc.c
gpio-loongson-64bit.c gpio: loongson-64bit: Add more gpio chip support 2025-03-05 09:55:56 +01:00
gpio-loongson.c
gpio-loongson1.c
gpio-lp873x.c
gpio-lp3943.c
gpio-lp87565.c
gpio-lpc18xx.c gpio: Switch back to struct platform_driver::remove() 2024-10-17 09:00:48 +02:00
gpio-lpc32xx.c gpio: lpc32xx: fix module autoloading 2024-04-12 21:30:58 +02:00
gpio-madera.c
gpio-max730x.c gpio: max730x: use devres to shrink and simplify code 2024-10-21 09:23:47 +02:00
gpio-max732x.c
gpio-max3191x.c gpio: max3191x: use gpiod_multi_set_value_cansleep 2025-02-12 10:36:40 +01:00
gpio-max7300.c gpio: Drop explicit initialization of struct i2c_device_id::driver_data to 0 2024-07-29 10:50:51 +02:00
gpio-max7301.c
gpio-max77620.c
gpio-max77650.c gpio: max77650: use value returning setters 2025-02-26 11:17:40 +01:00
gpio-mb86s7x.c gpio: mb86s7x: remove some dead code in mb86s70_gpio_to_irq() 2024-10-24 10:37:51 +02:00
gpio-mc33880.c gpio updates for v6.11-rc1 2024-07-15 17:53:24 -07:00
gpio-menz127.c module: Convert symbol namespace to string literal 2024-12-02 11:34:44 -08:00
gpio-merrifield.c module: Convert symbol namespace to string literal 2024-12-02 11:34:44 -08:00
gpio-ml-ioh.c
gpio-mlxbf.c
gpio-mlxbf2.c Fix a potential abuse of seq_printf() format string in drivers 2024-11-22 15:31:35 +01:00
gpio-mlxbf3.c gpio: mlxbf3: Support shutdown() function 2024-08-10 21:35:16 +02:00
gpio-mm-lantiq.c gpio: Switch back to struct platform_driver::remove() 2024-10-17 09:00:48 +02:00
gpio-mmio.c gpio: mmio: Add flag for calling pinctrl back-end 2025-02-24 20:49:20 +01:00
gpio-mockup.c gpio: mockup: use value returning setters 2025-02-26 11:17:39 +01:00
gpio-moxtet.c
gpio-mpc8xxx.c gpio: mpc8xxx: Fix wakeup source leaks on device unbind 2025-04-08 10:56:25 +02:00
gpio-mpc5200.c gpio: Switch back to struct platform_driver::remove() 2024-10-17 09:00:48 +02:00
gpio-mpfs.c gpio: mpfs: add CoreGPIO support 2024-11-13 16:29:27 +01:00
gpio-mpsse.c gpio: mpsse: Remove usage of the deprecated ida_simple_xx() API 2024-11-22 15:23:31 +01:00
gpio-msc313.c gpio: msc313: Replace of_node_to_fwnode() with more suitable API 2024-09-02 12:27:36 +02:00
gpio-mt7621.c
gpio-mvebu.c gpio: mvebu: use value returning setters 2025-02-26 11:17:40 +01:00
gpio-mxc.c gpio: mxc: remove dead code after switch to DT-only 2025-01-23 08:44:51 +01:00
gpio-mxs.c
gpio-nomadik.c gpio: Use str_enable_disable-like helpers 2025-02-03 09:12:44 +01:00
gpio-npcm-sgpio.c gpio: nuvoton: Fix sgpio irq handle error 2024-05-07 09:44:33 +02:00
gpio-octeon.c
gpio-omap.c Driver core changes for 6.13-rc1 2024-11-29 11:43:29 -08:00
gpio-palmas.c
gpio-pca953x.c gpio: pca953x: use value returning setters 2025-02-26 11:17:39 +01:00
gpio-pca9570.c
gpio-pcf857x.c gpio: pcf857x: add support for reset-gpios on (most) PCA967x 2025-02-26 11:25:30 +01:00
gpio-pch.c gpio: pch: kerneldoc fixes for excess members 2024-09-02 14:35:32 +02:00
gpio-pci-idio-16.c module: Convert symbol namespace to string literal 2024-12-02 11:34:44 -08:00
gpio-pcie-idio-24.c gpio: pcie-idio-24: Replace deprecated PCI functions 2024-11-04 09:15:38 +01:00
gpio-pisosr.c
gpio-pl061.c Fix a potential abuse of seq_printf() format string in drivers 2024-11-22 15:31:35 +01:00
gpio-pmic-eic-sprd.c gpio: pmic-eic-sprd: Configure the bit corresponding to the EIC through offset 2024-01-03 09:50:47 +01:00
gpio-pxa.c treewide: rename pinctrl_gpio_direction_output_new() 2023-11-04 10:23:22 +01:00
gpio-raspberrypi-exp.c
gpio-rc5t583.c
gpio-rcar.c Linux 6.14-rc7 2025-03-17 08:27:10 +01:00
gpio-rda.c
gpio-rdc321x.c gpio: rdc321x: Convert PCIBIOS_* return codes to errnos 2024-05-30 11:21:05 +02:00
gpio-realtek-otto.c
gpio-reg.c
gpio-regmap.c gpio: regmap: use value returning setters 2025-02-26 11:17:39 +01:00
gpio-rockchip.c gpio: rockchip: support new version GPIO 2024-11-12 13:51:25 +01:00
gpio-rtd.c gpio: rtd: Fix signedness bug in probe 2024-01-15 11:07:46 +01:00
gpio-sa1100.c
gpio-sama5d2-piobu.c gpio: sama5d2-piobu: convert comma to semicolon 2024-09-05 09:34:51 +02:00
gpio-sch.c gpio: sch: Utilise temporary variable for struct device 2024-04-15 16:12:18 +03:00
gpio-sch311x.c
gpio-sifive.c gpio: sifive: remove unneeded call to platform_set_drvdata() 2023-11-15 15:39:40 +01:00
gpio-sim.c gpio: sim: use value returning setters 2025-02-26 11:17:39 +01:00
gpio-siox.c
gpio-sl28cpld.c
gpio-sloppy-logic-analyzer.c Linux 6.12-rc6 2024-11-04 08:46:55 +01:00
gpio-sodaville.c
gpio-spear-spics.c
gpio-sprd.c
gpio-stmpe.c Linux 6.14-rc4 2025-02-24 09:58:42 +01:00
gpio-stp-xway.c gpio: stp-xway: Simplify using devm_clk_get_enabled() 2024-09-02 12:31:48 +02:00
gpio-syscon.c gpio: syscon: fix excess struct member build warning 2024-09-02 12:35:59 +02:00
gpio-tangier.c module: Convert symbol namespace to string literal 2024-12-02 11:34:44 -08:00
gpio-tangier.h gpio: tangier: unexport suspend/resume handles 2023-11-13 17:59:48 +02:00
gpio-tb10x.c gpio: Switch back to struct platform_driver::remove() 2024-10-17 09:00:48 +02:00
gpio-tc3589x.c
gpio-tegra.c Fix a potential abuse of seq_printf() format string in drivers 2024-11-22 15:31:35 +01:00
gpio-tegra186.c gpio: tegra186: fix resource handling in ACPI probe path 2025-04-07 08:53:10 +02:00
gpio-thunderx.c gpio: thunderx: Replace of_node_to_fwnode() with more suitable API 2024-09-02 12:27:36 +02:00
gpio-timberdale.c
gpio-tn48m.c
gpio-tpic2810.c
gpio-tps6586x.c
gpio-tps65086.c
gpio-tps65218.c
gpio-tps65219.c gpio: tps65219: Use existing kernel gpio macros 2024-12-20 14:44:24 +01:00
gpio-tps65910.c
gpio-tps65912.c
gpio-tps68470.c
gpio-tqmx86.c gpio: tqmx86: add support for changing GPIO directions 2024-12-16 10:00:46 +01:00
gpio-ts4800.c
gpio-ts4900.c gpio: ts4900: use generic device properties 2024-10-14 10:28:21 +02:00
gpio-ts5500.c gpio: Switch back to struct platform_driver::remove() 2024-10-17 09:00:48 +02:00
gpio-twl4030.c
gpio-twl6040.c gpio: twl4030: use gpiochip_get_data 2024-12-05 13:14:44 +01:00
gpio-uniphier.c gpio: Switch back to struct platform_driver::remove() 2024-10-17 09:00:48 +02:00
gpio-vf610.c gpio: vf610: Switch to gpio-mmio 2025-02-24 20:49:43 +01:00
gpio-viperboard.c
gpio-virtio.c gpio: virtio: support multiple virtio-gpio controller instances 2025-02-11 09:21:18 +01:00
gpio-virtuser.c gpio: virtuser: convert to use dev-sync-probe utilities 2025-02-24 14:57:40 +01:00
gpio-visconti.c Fix a potential abuse of seq_printf() format string in drivers 2024-11-22 15:31:35 +01:00
gpio-vx855.c
gpio-wcd934x.c
gpio-wcove.c gpio: Use str_enable_disable-like helpers 2025-02-03 09:12:44 +01:00
gpio-winbond.c
gpio-wm831x.c gpio: Use str_enable_disable-like helpers 2025-02-03 09:12:44 +01:00
gpio-wm8350.c
gpio-wm8994.c gpio: wm8994: use gpiochip_dup_line_label() 2023-12-08 09:26:25 +01:00
gpio-ws16c48.c
gpio-xgene-sb.c gpio: xgene-sb: don't use "proxy" headers 2024-10-22 09:21:12 +02:00
gpio-xgene.c
gpio-xgs-iproc.c Driver core changes for 6.13-rc1 2024-11-29 11:43:29 -08:00
gpio-xilinx.c gpio: xilinx: Replace custom variants of bitmap_read()/bitmap_write() 2025-02-12 10:58:14 +01:00
gpio-xlp.c
gpio-xra1403.c gpio: Use str_enable_disable-like helpers 2025-02-03 09:12:44 +01:00
gpio-xtensa.c
gpio-zevio.c gpio: zevio: Add missed label initialisation 2024-11-21 09:06:17 +01:00
gpio-zynq.c gpio: zynq: Fix wakeup source leaks on device unbind 2025-04-08 10:56:38 +02:00
gpio-zynqmp-modepin.c gpio: modepin: Enable module autoloading 2024-09-02 15:00:53 +02:00
gpiolib-acpi.c intel-gpio for v6.15-1 2025-03-13 09:45:50 +01:00
gpiolib-acpi.h gpio: acpi: Make acpi_gpio_count() take firmware node as a parameter 2024-03-01 09:08:34 +01:00
gpiolib-cdev.c gpio: cdev: use raw notifier for line state events 2025-03-13 09:20:12 +01:00
gpiolib-cdev.h
gpiolib-devres.c gpio: deprecate devm_gpiod_unhinge() 2025-04-08 10:41:58 +02:00
gpiolib-legacy.c gpio: Get rid of GPIOF_ACTIVE_LOW 2024-11-09 14:55:33 +01:00
gpiolib-of.c gpiolib: of: Move Atmel HSMCI quirk up out of the regulator comment 2025-04-08 11:06:45 +02:00
gpiolib-of.h gpio: of: Make of_gpio_get_count() take firmware node as a parameter 2024-03-01 09:07:21 +01:00
gpiolib-swnode.c module: Convert symbol namespace to string literal 2024-12-02 11:34:44 -08:00
gpiolib-swnode.h
gpiolib-sysfs.c gpio: sysfs: emit chardev line-state events on edge store 2024-11-04 08:56:20 +01:00
gpiolib-sysfs.h gpiolib: revert the attempt to protect the GPIO device list with an rwsem 2024-01-17 09:52:37 +01:00
gpiolib.c gpiolib: Allow to use setters with return value for output-only gpios 2025-04-14 20:31:00 +02:00
gpiolib.h Linux 6.14-rc7 2025-03-17 08:27:10 +01:00
Kconfig gpio: bt8xx: allow to build the module with COMPILE_TEST=y 2025-03-17 08:27:41 +01:00
Makefile gpio: introduce utilities for synchronous fake device creation 2025-02-24 14:57:39 +01:00
TODO gpio: TODO: track the removal of regulator-related workarounds 2025-04-08 10:41:59 +02:00