Re: [PATCH] HID: hid-sensor-custom: Allow more than one hinge angle sensor

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Sun, 6 Nov 2022 21:58:04 +0200
Yauhen Kharuzhy <jekhor@xxxxxxxxx> wrote:

> On Sun, Nov 06, 2022 at 05:36:43PM +0000, Jonathan Cameron wrote:
> > On Sun,  6 Nov 2022 00:34:22 +0200
> > Yauhen Kharuzhy <jekhor@xxxxxxxxx> wrote:
> >   
> > > Some devices has two sets of accelerometers and the sensor hub exports
> > > two hinge angle 'sensors' based on accelerometer values. To allow more
> > > than one sensor of the same type, use PLATFORM_DEVID_AUTO instead of
> > > PLATFORM_DEVID_NONE when registering platform device for it.
> > > 
> > > Checked on the Lenovo Yoga Book YB1-X91L tablet.
> > > 
> > > Signed-off-by: Yauhen Kharuzhy <jekhor@xxxxxxxxx>  
> > 
> > Purely for curiosity sake, but where are the two sets of sensors?
> > Doesn't look like it has two hinges at first glance!  
> 
> It sounds crazy, yes :)
> 
> The Lenovo Yoga Book YB1-X91L looks to be strange device in many ways.
> 
> There are two accelerometers at display side and two at keyboard side (for
> detecting the rotation movement as I understand). For
> some reasons ISH exposed two virtual hinge angle sensors (I guess that
> one for each pair of accelerometers):
> 
> ...
> [    6.230627] Registering platform device 'HID-SENSOR-INT-020b.35.auto'. Parent at 001F:8087:0AC2.0005
> [    6.230658] device: 'HID-SENSOR-INT-020b.35.auto': device_add
> [    6.230705] bus: 'platform': add device HID-SENSOR-INT-020b.35.auto
> [    6.230737] PM: Adding info for platform:HID-SENSOR-INT-020b.35.auto
> ...
> [    6.249248] Registering platform device 'HID-SENSOR-INT-020b.36.auto'. Parent at 001F:8087:8AC2.0006
> [    6.249266] device: 'HID-SENSOR-INT-020b.36.auto': device_add
> [    6.249295] bus: 'platform': add device HID-SENSOR-INT-020b.36.auto
> [    6.249394] PM: Adding info for platform:HID-SENSOR-INT-020b.36.auto
> 
> This is senseless but it is what it is. Moreover, this 'sensor' is always
> returns 360 degrees angle, although display and keyboard 'absolute' angles are
> reported correctly.
> 
> In any way, this patch is generic and will be useful for other custom HID
> sensors if they will be added in the future.

Thanks for the explanation.

Far as I'm concerned patch seems sensible.

Reviewed-by: Jonathan Cameron <Jonathan.Cameron@xxxxxxxxxx>

> 
> > 
> > Jonathan
> >   
> > > ---
> > >  drivers/hid/hid-sensor-custom.c | 2 +-
> > >  1 file changed, 1 insertion(+), 1 deletion(-)
> > > 
> > > diff --git a/drivers/hid/hid-sensor-custom.c b/drivers/hid/hid-sensor-custom.c
> > > index 32c2306e240d6..a6fc89ee1287c 100644
> > > --- a/drivers/hid/hid-sensor-custom.c
> > > +++ b/drivers/hid/hid-sensor-custom.c
> > > @@ -862,7 +862,7 @@ hid_sensor_register_platform_device(struct platform_device *pdev,
> > >  		return ERR_PTR(-ENOMEM);
> > >  
> > >  	custom_pdev = platform_device_register_data(pdev->dev.parent, dev_name,
> > > -						    PLATFORM_DEVID_NONE, hsdev,
> > > +						    PLATFORM_DEVID_AUTO, hsdev,
> > >  						    sizeof(*hsdev));
> > >  	kfree(dev_name);
> > >  	return custom_pdev;  
> >   
> 




[Index of Archives]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Input]     [Linux Kernel]     [Linux SCSI]     [X.org]

  Powered by Linux