diff options
author | Alper Nebi Yasak <alpernebiyasak@gmail.com> | 2022-08-18 16:27:22 +0200 |
---|---|---|
committer | Alper Nebi Yasak <alpernebiyasak@gmail.com> | 2022-08-18 20:17:19 +0200 |
commit | e2f25ae64889ea7fe8a7556ee5fba91bc2a0eab8 (patch) | |
tree | 65fd3c6e34793f193f841d93475e4ce96fa5247b /rules.d | |
parent | Merge pull request #24054 from keszybz/initrd-no-reload (diff) | |
download | systemd-e2f25ae64889ea7fe8a7556ee5fba91bc2a0eab8.tar.xz systemd-e2f25ae64889ea7fe8a7556ee5fba91bc2a0eab8.zip |
udev: hwdb: Match iio sensors based on their label
The IIO subsystem exposes a 'label' sysfs file to help userspace better
identify its devices [1]. Standardized labels include the sensor type
along with its location, including 'accel-base' and 'accel-display'.
Most Chrome OS boards have two accelerometers that are indistinguishable
except for this label (or a 'location' sysfs file before Linux v6.0),
and need different mounting matrix corrections based on their location.
Add a udev rule that matches hwdb entries using this label, so we can
correct both accelerometers on these devices with hwdb entries. The
existing rules and hwdb entries are not modified to keep potential
out-of-tree entries working, but new entries in this form will override
existing ones. Also add currently standardized labels to parse-hwdb.py.
[1] https://www.kernel.org/doc/Documentation/ABI/testing/sysfs-bus-iio
Diffstat (limited to 'rules.d')
-rw-r--r-- | rules.d/60-sensor.rules | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/rules.d/60-sensor.rules b/rules.d/60-sensor.rules index 7b9b7d2887..99b8f5fc7a 100644 --- a/rules.d/60-sensor.rules +++ b/rules.d/60-sensor.rules @@ -2,6 +2,11 @@ ACTION=="remove", GOTO="sensor_end" +# device matching the sensor's label, name and the machine's DMI data for IIO devices +SUBSYSTEM=="iio", KERNEL=="iio*", SUBSYSTEMS=="usb|i2c|platform", ATTR{label}!="", \ + IMPORT{builtin}="hwdb 'sensor:$attr{label}:modalias:$attr{modalias}:$attr{[dmi/id]modalias}'", \ + 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|platform", \ IMPORT{builtin}="hwdb 'sensor:modalias:$attr{modalias}:$attr{[dmi/id]modalias}'", \ |