Commit 9628ee0c2219 for kernel
commit 9628ee0c2219daaa6374b0c5f5a5c0d55e0e263b
Merge: 44388c8f3e22 dae739137441
Author: Linus Torvalds <torvalds@linux-foundation.org>
Date: Sat Oct 24 20:02:48 2026 -1000
Merge tag 'gpio-fixes-for-v7.4-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/brgl/linux
Pull gpio fixes from Bartosz Golaszewski:
- add ACPI quirks for Thinkpad L13 Gen 2a and Acer Nitro 16S AI to
ignore a wrong GPIO interrupt declaration
- add missing return value check of devm_gpiochip_add_data() to
gpio-lpc32xx
- don't set GPIOD_FLAG_IS_OUT from character device code as GPIO core
already does it where needed and it can lead to providing invalid
info to user-space on request errors
- don't report a bogus -ENOMEM for a line requested without a label
- propagate errors occurring when setting line values for pins for
which we emulate open-drain or open-source drive settings
- fix interrupt handling bugs in gpio-pca953x and gpio-davinci
- fix more memory leaks in GPIO core
- clear event clock flags from pins on GPIO release
* tag 'gpio-fixes-for-v7.4-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/brgl/linux:
gpiolib: don't report -ENOMEM for a requested line without a label
gpiolib: Propagate emulated drive errors when setting arrays
gpio: pca953x: Handle direction register read errors in IRQ paths
gpio: pca953x: Preserve wakeup accounting on parent IRQ failure
gpio: davinci: Clear interrupt status in every bank on suspend
gpiolib: Free chip resources when allocating the label fails
gpiolib: cdev: don't set GPIOD_FLAG_IS_OUT
gpiolib: clear the event clock flags when a line is released
gpiolib: fix memory leak in gpiod_set_array_value_complex() EPERM error path
gpiolib: acpi: Ignore GPIO 11 interrupt on Acer Nitro 16S AI
gpio: lpc32xx: check devm_gpiochip_add_data() return value
gpiolib: acpi: Ignore GPIO 11 interrupt on ThinkPad L13 Gen 2a
diff --cc drivers/gpio/gpiolib-acpi-quirks.c
index 9a523871800d,c1ce4700e2a4..3f89a87601c1
--- a/drivers/gpio/gpiolib-acpi-quirks.c
+++ b/drivers/gpio/gpiolib-acpi-quirks.c
@@@ -343,22 -343,20 +343,36 @@@ static const struct dmi_system_id gpiol
.ignore_interrupt = "AMDI0030:00@11",
},
},
+ {
+ /*
+ * GPIO 11 is the power enable of the internal USB camera.
+ * The firmware drives it high but also lists it in _AEI with
+ * an empty handler. Requesting it as an input turns the camera
+ * off, so it never enumerates.
+ * Found in BIOS V1.14
+ */
+ .matches = {
+ DMI_MATCH(DMI_SYS_VENDOR, "Acer"),
+ DMI_MATCH(DMI_PRODUCT_FAMILY, "Acer Nitro V 16S AI"),
+ },
+ .driver_data = &(struct acpi_gpiolib_dmi_quirk) {
+ .ignore_interrupt = "AMDI0030:00@11",
+ },
+ },
+ {
+ /*
+ * Same camera power enable on GPIO 11 as the Acer Nitro V 16S AI
+ * above. It also powers the internal microphones.
+ * Found in BIOS V1.53
+ */
+ .matches = {
+ DMI_MATCH(DMI_SYS_VENDOR, "Acer"),
+ DMI_MATCH(DMI_PRODUCT_FAMILY, "Acer Nitro 16S AI"),
+ },
+ .driver_data = &(struct acpi_gpiolib_dmi_quirk) {
+ .ignore_interrupt = "AMDI0030:00@11",
+ },
+ },
{
/*
* Wakeup only works when keyboard backlight is turned off