Re: [PATCH v2] iio: hid-sensor-prox: Split difference from multiple channels

Philipp Jungkamp
2025-01-22T13:55:20Z

Hello,

that LISS sensor was from a patch that I had introduced. It's not
connected officially to Lenovo.

It's a HPD HID sensor on the Lenovo Yoga 9 14IAP7 that exports binary
values on the human presence HID usage that is monitored by
hid-sensor-prox.

I had tried to get it working with iio-sensor-proxy to expose it over
dbus and use it in e.g. a GNOME shell extension to lock the screen when
there is no human presence detected. But my MRs were never merged and
due to private struggles I lost interest in pushing them further.

https://gitlab.freedesktop.org/hadess/iio-sensor-proxy/-/merge_requests/364
https://gitlab.freedesktop.org/hadess/iio-sensor-proxy/-/merge_requests/364

Regards,
Philipp Jungkamp

On Mon, 2025-01-13 at 20:03 +0000, Pandruvada, Srinivas wrote:
> On Mon, 2025-01-13 at 14:49 -0500, Mark Pearson wrote:
> > Note - switched to my open-source friendly email account (avoid the
> > Lenovo address, especially for mailing lists, it's Outlook based
> > and
> > can't cope).
> >
> > On Mon, Jan 13, 2025, at 2:19 PM, Mark Pearson wrote:
> > > Subject: [External] Re: [PATCH v2] iio: hid-sensor-prox: Split
> > > difference from multiple channels
> > >
> > > On Sat, 2025-01-11 at 10:17 +0100, Ricardo Ribalda wrote:
> > > > Hi Jonathan
> > > >
> > > > Happy new year!
> > > >
> > > > Friendly ping about this patch so we can change the ABI before
> > > > the
> > > > kernel release happens
> > > >
> > > > On Thu, 19 Dec 2024 at 18:17, Jonathan Cameron
> > > > <jic23@kernel.org>
> > > > wrote:
> > > > >
> > > > > On Mon, 16 Dec 2024 10:05:53 +0000
> > > > > Ricardo Ribalda <ribalda@chromium.org> wrote:
> > > > >
> > > > > > When the driver was originally created, it was decided that
> > > > > > sampling_frequency and hysteresis would be shared_per_type
> > > > > > instead
> > > > > > of shared_by_all (even though it is internally shared by
> > > > > > all).
> > > > > > Eg:
> > > > > > in_proximity_raw
> > > > > > in_proximity_sampling_frequency
> > > > > >
> > > > > > When we introduced support for more channels, we continued
> > > > > > with
> > > > > > shared_by_type which. Eg:
> > > > > > in_proximity0_raw
> > > > > > in_proximity1_raw
> > > > > > in_proximity_sampling_frequency
> > > > > > in_attention_raw
> > > > > > in_attention_sampling_frequency
> > > > > >
> > > > > > Ideally we should change to shared_by_all, but it is not an
> > > > > > option,
> > > > > > because the current naming has been a stablished ABI by
> > > > > > now.
> > > > > > Luckily we
> > > > > > can use separate instead. That will be more consistent:
> > > > > > in_proximity0_raw
> > > > > > in_proximity0_sampling_frequency
> > > > > > in_proximity1_raw
> > > > > > in_proximity1_sampling_frequency
> > > > > > in_attention_raw
> > > > > > in_attention_sampling_frequency
> > > > > >
> > > > > > Fixes: 596ef5cf654b ("iio: hid-sensor-prox: Add support for
> > > > > > more
> > > > > > channels")
> > > > > > Signed-off-by: Ricardo Ribalda <ribalda@chromium.org>
> > > > >
> > > > > I got lost somewhere in the discussion.  This is still an ABI
> > > > > change compared
> > > > > to original interface at the top (which is the one that has
> > > > > been
> > > > > there
> > > > > quite some time).
> > > > >
> > > > > However we already had to make one of those to add the index
> > > > > that
> > > > > wasn't there
> > > > > for _raw. (I'd missed that in earlier discussion - thanks for
> > > > > laying out the
> > > > > steps here!)
> > >
> > > Didn't realize this. I don't see proximity sensor use in the
> > > mainline
> > > Linux distro user space, so it will affect only some private user
> > > space
> > > programs.
> > > Adding Mark to see if it affects Lenovo Sensing solution as there
> > > was
> > > specific custom sensor added to this driver for Lenovo.
> > >
> >
> > Can I get some pointers to what sensor that is please?
> > We've been asking for the HID support drivers, but it isn't
> > available
> > yet to my knowledge. Would the MIPI camera work tie into this?
> No.
>
> >
> > If I can get details on what the sensor is I'll go and check what
> > is
> > impacted.
> >
> This is a custom sensor exported via Intel ISH
>
>  /*
>          * Lenovo Intelligent Sensing Solution (LISS)
>          */
>
>
>        {       /* human presence */
>                 .tag = "LISS",
>                 .luid = "0226000171AC0081",
>                 .model = "VL53L1_HOD Sensor",
>                 .manufacturer = "ST_MICRO",
>                 .check_dmi = true,
>                 .dmi.matches = {
>                         DMI_MATCH(DMI_SYS_VENDOR, "LENOVO"),
>                 }
>         },
>
> Question is what Lenovo user space is using this sensor?
>
> Thanks,
> Srinivas
>
> > Thanks
> > Mark
>