Re: Reporting screen/laptop orientation data to userspace

From: Bastien Nocera
Date: Fri Jun 03 2011 - 12:02:52 EST


On Sun, 2011-05-29 at 10:49 +0300, Alberto Mardegan wrote:
> Hi all,
> the WMI interfaces in some Lenovo Ideapad laptops provide notification
> callbacks when the laptop orientation changes, reporting 4 different
> values defining the new orientation.
>
> I'd like to extend the ideapad-laptop driver with this information; but
> how should it be reported to userspace? I initially thought of the input
> subsystem, but I cannot find any suitable event codes; then I would
> probably export it as a device under /sys, or are there better options?
>
> Are there other devices which provide coarse orientation data to
> userspace, which I might want to use as a reference?
> I guess that at least some display screens have this feature.

Do you also have a discrete accelerometer with that? Or you only ever
get notification through there?

If there is a discrete accelerometer, I'd drop the extra metadata, and
send an event through udev, and expect user-space to read from the
accelerometer instead.

If there isn't a discrete accelerometer, create a fake one, with some
hardcoded data based on the actual orientation of the device.

The accelerometer (whether real or fake) should show 3 axis (X/Y/Z).

As soon as it's seen some testing, I'll be showing the work I did for
GNOME support for automatic rotation based on orientation.

Cheers

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/