Re: [PATCH] iio: accel: add missing sensor for some 2-in-1 based ultrabooks

From: LuÃs Ferreira
Date: Thu May 30 2019 - 07:57:21 EST


Hi,

@poettering just merged the pull request. Is it ready to go now?

Sincerely,
LuÃs Ferreira
E2AB 2BF8 F3EC ABE2 E149 F2FD BC43 0831 9CE4 0B64

On Wed, 29 May 2019 at 10:57, Hans de Goede <hdegoede@xxxxxxxxxx> wrote:
>
> Hi,
>
> On 5/23/19 2:03 PM, LuÃs Ferreira wrote:
> > Hi Hams,
> >
> > https://github.com/systemd/systemd/pull/12322
> > https://github.com/hadess/iio-sensor-proxy/pull/262
> >
> > As all the pull requests to systemd and iio-sensor-proxy has already
> > been merged, I just need your review on this:
> > https://github.com/systemd/systemd/pull/12449
> >
> > Then, I guess this patch is ready to go. Please let me know if theres any issue.
>
> Thank you for your work on this. I've given a favorable review to the
>
> last systemd pull-req.
>
> Regards,
>
> Hans
>
>
> > On Wed, 17 Apr 2019 at 16:08, Hans de Goede <hdegoede@xxxxxxxxxx> wrote:
> >>
> >> Hi,
> >>
> >> On 15-04-19 17:40, luis@xxxxxxxxxxxxxx wrote:
> >>> April 6, 2019 10:36 AM, "Hans de Goede" <hdegoede@xxxxxxxxxx> wrote:
> >>>
> >>> Hi,
> >>>
> >>>> Yes that seems the best way forward with this.
> >>>>
> >>>> Note I think "base" is better then "keyboard" for the sensor which
> >>>> is in the base/keyboard. But neither is perfect, so go which whatever
> >>>> you prefer.
> >>>
> >>> Reference to:
> >>> - https://github.com/hadess/iio-sensor-proxy/pull/262 > - https://github.com/systemd/systemd/pull/12322
> >>
> >> Thank you for your work on this, I see that Bastien has
> >> already reviewed the iio-sensor-proxy changes.
> >>
> >> I've just added one small remark to the systemd changes,
> >> except for that small remark the systemd changes look good to me.
> >>
> >> Regards,
> >>
> >> Hams
> >>
> >>
> >>
> >>
> >>>> On 06-04-19 01:01, LuÃs Ferreira wrote:
> >>>>
> >>>>> Hi,
> >>>>> Basically we need to come up with a convention to (optionally) indicate
> >>>>
> >>>> the sensors location with a udev attribute set by:
> >>>> /lib/udev/hwdb.d/60-sensor.hwdb
> >>>>> So should we start adding `ACCEL_LOCATION=display` and
> >>>>> `ACCEL_LOCATION=keyboard` attributes to that file and patch
> >>>>> iio-sensor-proxy to ignore the keyboard ones as a first step ?
> >>>>
> >>>> Yes that seems the best way forward with this.
> >>>>
> >>>> Note I think "base" is better then "keyboard" for the sensor which
> >>>> is in the base/keyboard. But neither is perfect, so go which whatever
> >>>> you prefer.
> >>>>
> >>>> Thanks & Regards,
> >>>>
> >>>> Hans
> >>>>
> >>>>> On Wed, 3 Apr 2019 at 10:10, Hans de Goede <hdegoede@xxxxxxxxxx> wrote:
> >>>>
> >>>> Hi,
> >>>>
> >>>> On 02-04-19 18:04, LuÃs Ferreira wrote:
> >>>>> Some ultrabooks, like Teclast F6 Pro, use KIOX010A sensor on display
> >>>>> and KIOX020A sensor on keyboard base, to detect tablet mode or screen
> >>>>> orientation.
> >>>>
> >>>> I deliberately left out the KIOX020A id for now, because currently
> >>>> userspace cannot really deal with having 2 sensors.
> >>>>
> >>>> See:
> >>>> https://github.com/systemd/systemd/issues/6557
> >>>> https://github.com/hadess/iio-sensor-proxy/issues/166
> >>>>
> >>>> Basically we need to come up with a convention to (optionally) indicate
> >>>> the sensors location with a udev attribute set by:
> >>>> /lib/udev/hwdb.d/60-sensor.hwdb
> >>>>
> >>>> And then patch iio-sensor-proxy to consume that attribute and ignore
> >>>> the one which has e.g. ACCEL_LOCATION=keyboard in its udev properties
> >>>>
> >>>> Ignoring would be a first step, maybe later it can do something useful
> >>>> with it, see e.g. : https://github.com/alesguzik/linux_detect_tablet_mode
> >>>>
> >>>> IMHO we really should minimally get code in place for iio-sensor-proxy
> >>>> to ignore the keyboard accelerometer before merging this patch.
> >>>>
> >>>> I realize that having the code in place will not magically get it on
> >>>> all users machines, but I believe this is the minimum which needs to
> >>>> happen before we push this out and potentially breaks people screen
> >>>> rotation.
> >>>>
> >>>> I've had working on this on my TODO list for a long long time now,
> >>>> but -ENOTIME. If you have some time to work on this then that would
> >>>> be great.
> >>>>
> >>>> Regards,
> >>>>
> >>>> Hans
> >>>>> Signed-off-by: LuÃs Ferreira <luis@xxxxxxxxxxxxxx>
> >>>>> ---
> >>>>> drivers/iio/accel/kxcjk-1013.c | 1 +
> >>>>> 1 file changed, 1 insertion(+)
> >>>>>
> >>>>> diff --git a/drivers/iio/accel/kxcjk-1013.c b/drivers/iio/accel/kxcjk-1013.c
> >>>>> index 7096e577b23f..9a5e445facc1 100644
> >>>>> --- a/drivers/iio/accel/kxcjk-1013.c
> >>>>> +++ b/drivers/iio/accel/kxcjk-1013.c
> >>>>> @@ -1492,6 +1492,7 @@ static const struct acpi_device_id kx_acpi_match[] = {
> >>>>> {"KIOX0009", KXTJ21009},
> >>>>> {"KIOX000A", KXCJ91008},
> >>>>> {"KIOX010A", KXCJ91008}, /* KXCJ91008 inside the display of a 2-in-1 */
> >>>>> + {"KIOX020A", KXCJ91008},
> >>>>> {"KXTJ1009", KXTJ21009},
> >>>>> {"KXJ2109", KXTJ21009},
> >>>>> {"SMO8500", KXCJ91008},