Re: [PATCH] media: i2c: cvs: Leave the privacy LED to firmware on Synaptics SVP7xxx
From: Praveen Puglia
Date: Mon Oct 26 2026 - 07:03:03 EST
Hi Sakari,
Gentle ping on this one. It has Tested-by tags from Marco and Antti,
and no review comments so far.
Anything you'd like me to change?
On Fri, 9 Oct 2026 at 16:12, Antti Laakso <antti.laakso@xxxxxxxxxxxxxxx> wrote:
>
> On Thu, Oct 08, 2026 at 08:39:37PM +0530, Praveen Puglia via B4 Relay wrote:
> > From: Praveen Puglia <praveenpuglia@xxxxxxxxx>
> >
> > The Synaptics SVP7xxx (06cb:0701) quirk sets ICVS_HOST_PRIV_CTRL, so
> > SET_DEV_HOST_ID tells the CVS firmware that the host owns the privacy
> > LED. Nothing in the driver drives it, though: V4L2_CID_PRIVACY is a
> > read-only placeholder. The firmware then never turns the LED on and the
> > camera streams with the LED off.
> >
> > The host has no way to drive it on these machines either. On the Dell
> > Pro Max 16 Premium (MA16250) the only camera LED that INT3472 exposes
> > is the IR flood LED. The out-of-tree Intel vision driver sends
> > privacy_led_host = 0 for this bridge, and the LED works there.
> >
> > Drop ICVS_HOST_PRIV_CTRL from the quirk (quirks 0x7a -> 0x3a). The LED
> > now turns on while streaming and the stream is unaffected.
> >
> > Tested on a Dell Pro Max 16 Premium (MA16250) with v7.2.8.
> >
> > Fixes: 8e2b43d2c10b ("media: i2c: cvs: Add driver of Intel Computer Vision Sensing Controller(CVS)")
> > Cc: stable@xxxxxxxxxxxxxxx
> > Link: https://github.com/intel/ipu6-drivers/issues/417
> > Assisted-by: Claude:claude-opus-5-5
> > Signed-off-by: Praveen Puglia <praveenpuglia@xxxxxxxxx>
> > ---
> > This is my first kernel patch. I found and debugged this with an AI
> > assistant (Claude), then verified it myself on the laptop: quirks read
> > 0x3a, the LED turns on and off with streaming, and the stream is
> > unchanged. Tested as a rebuilt module on Fedora's v7.2.8, not on
> > v7.3-rc.
> >
> > Marco Nenciarini reproduced this on the same laptop with Debian and
> > v7.2.6, and found no host-controlled privacy LED pin in the DSDT/SSDTs:
> > https://github.com/intel/ipu6-drivers/issues/417#issuecomment-5996738346
> > ---
> > drivers/media/i2c/cvs/core.c | 1 -
> > 1 file changed, 1 deletion(-)
> >
> > diff --git a/drivers/media/i2c/cvs/core.c b/drivers/media/i2c/cvs/core.c
> > index d4a3b9c3ba..3520325717 100644
> > --- a/drivers/media/i2c/cvs/core.c
> > +++ b/drivers/media/i2c/cvs/core.c
> > @@ -72,7 +72,6 @@ static const struct icvs_device_quirk cvs_quirk_table[] = {
> > }, /* Lattice NX33 */
> > { 0x06CB, 0x0701, ICVS_SKIP_FW_RESET |
> > ICVS_HOST_SENSOR_PWR_CTRL |
> > - ICVS_HOST_PRIV_CTRL |
> > ICVS_FW_BUF_SIZE_256 |
> > ICVS_FW_HEADER_SIZE_256
> > }, /* Synaptics SVP7xxx */
> >
> > ---
> > base-commit: 47324d3a5b3abd781295044d01d92d09f184e872
> > change-id: 20261008-cvs-privacy-led-7d0f2327c31f
> >
> > Best regards,
> > --
> > Praveen Puglia <praveenpuglia@xxxxxxxxx>
> >
>
> Tested-by: Antti Laakso <antti.laakso@xxxxxxxxxxxxxxx>
--
Cheers!
Praveen ◉ praveenpuglia.com ◉ @praveenpuglia