aboutsummaryrefslogtreecommitdiff
path: root/rules
diff options
context:
space:
mode:
authorBastien Nocera <hadess@hadess.net>2016-12-06 17:16:43 +0100
committerAnthony G. Basile <blueness@gentoo.org>2016-12-11 10:55:12 -0500
commitc61e6c912bc6f1e5b11223c705ac4f309434a555 (patch)
tree269487b0c16956c96cf2da0c92cb85fc38f3951b /rules
parenthwdb, rules: update (diff)
downloadeudev-c61e6c912bc6f1e5b11223c705ac4f309434a555.tar.gz
eudev-c61e6c912bc6f1e5b11223c705ac4f309434a555.tar.bz2
eudev-c61e6c912bc6f1e5b11223c705ac4f309434a555.zip
udev: Add rules for accelerometer orientation quirks
This commit adds a rules file to extract the properties from hwdb to set on i2c IIO devices. This is used to set the ACCEL_MOUNT_MATRIX property on IIO devices, to be consumed by iio-sensor-proxy or equivalent daemon. The hwdb file contains documentation on how to write quirks. Note however that mount information is usually exported in: - the device-tree for ARM devices - the ACPI DSDT for Intel-compatible devices but currently not extracted by the kernel. Also note that some devices have the framebuffer rotation that changes between the bootloader and the main system, which might mean that the accelerometer is then wrongly oriented. This is a missing feature in the i915 kernel driver: https://bugs.freedesktop.org/show_bug.cgi?id=94894 which needs to be fixed, and won't require quirks. Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
Diffstat (limited to 'rules')
-rw-r--r--rules/60-sensor.rules10
-rw-r--r--rules/Makefile.am1
2 files changed, 11 insertions, 0 deletions
diff --git a/rules/60-sensor.rules b/rules/60-sensor.rules
new file mode 100644
index 000000000..82e44f884
--- /dev/null
+++ b/rules/60-sensor.rules
@@ -0,0 +1,10 @@
+# do not edit this file, it will be overwritten on update
+
+ACTION=="remove", GOTO="sensor_end"
+
+# device matching the sensor's name and the machine's DMI data for IIO devices
+SUBSYSTEM=="iio", KERNEL=="iio*", SUBSYSTEMS=="usb|i2c", \
+ IMPORT{builtin}="hwdb 'sensor:modalias:$attr{modalias}:$attr{[dmi/id]modalias}'", \
+ GOTO="sensor_end"
+
+LABEL="sensor_end"
diff --git a/rules/Makefile.am b/rules/Makefile.am
index f99322b13..a403710ed 100644
--- a/rules/Makefile.am
+++ b/rules/Makefile.am
@@ -10,6 +10,7 @@ dist_udevrules_DATA = \
60-persistent-input.rules \
60-persistent-storage-tape.rules \
60-persistent-v4l.rules \
+ 60-sensor.rules \
60-serial.rules \
64-btrfs.rules \
70-mouse.rules \