Re: Display got wrong rotation after hid_sensor_accel_3d is loaded

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

 



Hi Bastien,

Thanks for your suggestion.
I just tried to add the following line into
/lib/udev/hwdb.d/60-sensor.hwdb and got the correct screen rotation.
But the cursor is still un-rotated, the cursor is drawn upside down,
and its coordinates are inverted.

#########################################
# STMicro
#########################################
sensor:modalias:platform:platform:HID-SENSOR-200073
 ACCEL_MOUNT_MATRIX=-1, 0, 0; 0, -1, 0; 0, 0, 1

It looks like we should introduce a quirk into hid_sensor_accel_3d driver.
There are 3 different scale variables in hid_sensor_accel_3d, but I
don't see any of them would work the way I want.
Do you mean to introduce new scale variables?

   drivers/iio/accel/hid-sensor-accel-3d.c:34:     int scale_pre_decml;
   drivers/iio/accel/hid-sensor-accel-3d.c:35:     int scale_post_decml;
   drivers/iio/accel/hid-sensor-accel-3d.c:36:     int scale_precision;

Bastien Nocera <hadess@xxxxxxxxxx> 於 2019年12月26日 週四 下午11:03寫道:
>
> On Thu, 2019-12-26 at 17:22 +0800, AceLan Kao wrote:
> > Hi all,
> >
> > I'm working on a new platform which comes with an accelerator meter.
> > It's a STMicroelectronics LSM6DS3US accelerator meter, it doesn't use
> > st_sensors driver, but hid_sensor_accel_3d.
> > After hid_sensor_accel_3d is loaded, the display becomes upside down,
> > so I tried to add some code to make it become normal.(ACCEL_X should
> > have the same modification)
> >
> > I don't know how to fix this in a correct way, please give me some
> > hints.
>
> This needs to be done as a quirk, either by applying a quirk for the
> HID descriptors (which should have a definition of the scale, which
> would be negative for this device), or in user-space in systemd's hwdb
> database, which your user-space consumers need to take care of:
> https://github.com/systemd/systemd/blob/master/hwdb.d/60-sensor.hwdb
>
> Cheers
>



[Index of Archives]     [Linux Media Devel]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Linux Wireless Networking]     [Linux Omap]

  Powered by Linux