]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
platform/x86: int3472: Increase ov08x40 handshake GPIO delay to 45 ms
authorHans de Goede <hansg@kernel.org>
Fri, 25 Jul 2025 21:52:59 +0000 (23:52 +0200)
committerIlpo Järvinen <ilpo.jarvinen@linux.intel.com>
Tue, 19 Aug 2025 08:37:45 +0000 (11:37 +0300)
On HP laptops with an ov08x40 sensor the 25 ms delay coming from Intel's
out of tree drivers is not enough. Testing has confirmed that 45 ms does
work.

Add a quirk to the int3472_gpio_map[] to increase the delay to 45 ms to fix
probing of the ov08x40 sensor failing on these laptops.

Note this only impacts laptops which actually use an ov08x40 sensor with
a handshake GPIO.

Link: https://bugzilla.redhat.com/show_bug.cgi?id=2333331
Signed-off-by: Hans de Goede <hansg@kernel.org>
Reviewed-by: Sakari Ailus <sakari.ailus@linux.intel.com>
Reviewed-by: Andy Shevchenko <andy@kernel.org>
Link: https://lore.kernel.org/r/20250725215259.402796-4-hansg@kernel.org
Reviewed-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>
Signed-off-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>
drivers/platform/x86/intel/int3472/discrete.c

index 791ea565fdc191b216894d2f6fd2fb563a8888df..8d721c23f801332157957506790d088e60e0a7cf 100644 (file)
@@ -157,6 +157,13 @@ static const struct int3472_gpio_map int3472_gpio_map[] = {
                .type_to = INT3472_GPIO_TYPE_RESET,
                .con_id = "enable",
        },
+       {       /* ov08x40's handshake pin needs a 45 ms delay on some HP laptops */
+               .hid = "OVTI08F4",
+               .type_from = INT3472_GPIO_TYPE_HANDSHAKE,
+               .type_to = INT3472_GPIO_TYPE_HANDSHAKE,
+               .con_id = "dvdd",
+               .enable_time_us = 45 * USEC_PER_MSEC,
+       },
 };
 
 static void int3472_get_con_id_and_polarity(struct int3472_discrete_device *int3472, u8 *type,