From: Hans de Goede <johannes.goede@oss.qualcomm.com>
To: "Ilpo Järvinen" <ilpo.jarvinen@linux.intel.com>,
"Daniel Scally" <dan.scally@ideasonboard.com>,
"Sakari Ailus" <sakari.ailus@linux.intel.com>
Cc: platform-driver-x86@vger.kernel.org, linux-media@vger.kernel.org,
James Alexander <opensource@inspiredexperts.com>,
stable@vger.kernel.org
Subject: Re: [PATCH] platform/x86: int3472: Increase handshake GPIO delay to 200 ms
Date: Tue, 18 Aug 2026 14:22:22 +0200 [thread overview]
Message-ID: <fabcdf9e-e825-4bcf-876f-0aeea9524b00@oss.qualcomm.com> (raw)
In-Reply-To: <20260818121445.160751-1-johannes.goede@oss.qualcomm.com>
Hi,
On 18-Aug-26 14:14, Hans de Goede wrote:
> There have been several reports of the sensor not properly powering on,
> on laptops where an INT3472 handshake GPIO is used. Both with ov08x40 and
> hi556 sensors.
>
> Testing has shown that a delay of 200 ms is necessary in some cases.
> The handshake GPIO is typically used to signal an extra bridge or other IC
> with that IC running the full sensor power sequence based on the handshake
> signal and also possible controlling I2C pass-through.
>
> It seems that in some cases that extra IC takes up to 200 ms to before
> the sensor is fully powered up and ready for I2C communication.
>
> With the default handshake signal delay increased to 200 ms the quirk to
> increase it to 45 ms for the ov08x40 is no longer necessary and is actually
> undesirable since some ov08x40 setups also need the longer delay, drop it.
>
> Fixes: 30359c239ba8 ("platform/x86: int3472: Increase ov08x40 handshake GPIO delay to 45 ms")
> Closes: https://lore.kernel.org/platform-driver-x86/20260816204247.2844986-1-opensource@inspiredexperts.com/
> Reported-by: James Alexander <opensource@inspiredexperts.com>
> Closes: https://bugzilla.redhat.com/show_bug.cgi?id=2333331
> Closes: https://bugzilla.redhat.com/show_bug.cgi?id=2333647
> Cc: stable@vger.kernel.org
> Signed-off-by: Hans de Goede <johannes.goede@oss.qualcomm.com>
This does not apply cleanly on media-committers/next, let me send a v2
with this fixed.
James, assuming you are not running a -next kernel, if you want to give
this a test run you can use this v1 for testing.
Regards,
Hans
> ---
> drivers/platform/x86/intel/int3472/discrete.c | 12 +++---------
> 1 file changed, 3 insertions(+), 9 deletions(-)
>
> diff --git a/drivers/platform/x86/intel/int3472/discrete.c b/drivers/platform/x86/intel/int3472/discrete.c
> index 115bb37577a1..f9e42959647e 100644
> --- a/drivers/platform/x86/intel/int3472/discrete.c
> +++ b/drivers/platform/x86/intel/int3472/discrete.c
> @@ -15,6 +15,7 @@
> #include <linux/platform_data/x86/int3472.h>
> #include <linux/platform_device.h>
> #include <linux/string_choices.h>
> +#include <linux/time64.h>
> #include <linux/uuid.h>
>
> /*
> @@ -157,13 +158,6 @@ 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,
> @@ -234,8 +228,8 @@ static void int3472_get_con_id_and_polarity(struct int3472_discrete_device *int3
> case INT3472_GPIO_TYPE_HANDSHAKE:
> *con_id = "dvdd";
> *gpio_flags = GPIO_ACTIVE_HIGH;
> - /* Setups using a handshake pin need 25 ms enable delay */
> - *enable_time_us = 25 * USEC_PER_MSEC;
> + /* Powering up the sensor through the handshake pin takes up to 200 ms */
> + *enable_time_us = 200 * USEC_PER_MSEC;
> break;
> default:
> *con_id = "unknown";
prev parent reply other threads:[~2026-08-18 12:22 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-08-18 12:14 [PATCH] platform/x86: int3472: Increase handshake GPIO delay to 200 ms Hans de Goede
2026-08-18 12:22 ` Hans de Goede [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=fabcdf9e-e825-4bcf-876f-0aeea9524b00@oss.qualcomm.com \
--to=johannes.goede@oss.qualcomm.com \
--cc=dan.scally@ideasonboard.com \
--cc=ilpo.jarvinen@linux.intel.com \
--cc=linux-media@vger.kernel.org \
--cc=opensource@inspiredexperts.com \
--cc=platform-driver-x86@vger.kernel.org \
--cc=sakari.ailus@linux.intel.com \
--cc=stable@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox