Systemd/rules
Carlos Garnacho b9e616cc22 udev: Add builtin/rule to export evdev information as udev properties
This rule is only run on tablet/touchscreen devices, and extracts their size
in millimeters, as it can be found out through their struct input_absinfo.

The first usecase is exporting device size from tablets/touchscreens. This
may be useful to separate policy and application at the time of mapping
these devices to the available outputs in windowing environments that don't
offer that information as readily (eg. Wayland). This way the compositor can
stay deterministic, and the mix-and-match heuristics are performed outside.

Conceivably, size/resolution information can be changed through EVIOCSABS
anywhere else, but we're only interested in values prior to any calibration,
this rule is thus only run on "add", and no tracking of changes is performed.
This should only remain a problem if calibration were automatically applied
by an earlier udev rule (read: don't).

  v2: Folded rationale into commit log, made a builtin, set properties
      on device nodes themselves
  v3: Use inline function instead of macro for mm. size calculation,
      use DECIMAL_STR_MAX, other code style issues
  v4: Made rule more selective
  v5: Minor style issues, renamed to a more generic builtin, refined
      rule further.
2015-01-11 23:41:42 -05:00
..
.gitignore move imported udev into place 2012-04-04 05:05:07 +02:00
42-usb-hid-pm.rules rules: don't enable usb pm for Avocent devices 2014-06-27 20:02:15 +02:00
50-udev-default.rules rules: add loop-control and btrfs-control to "disk" group 2014-06-18 03:37:32 +02:00
60-cdrom_id.rules udev: move all unconditionally installed rules to rules/ 2012-04-14 20:10:03 +02:00
60-drm.rules rules: simply 60-drm.rules 2013-11-03 16:17:14 +01:00
60-evdev_id.rules udev: Add builtin/rule to export evdev information as udev properties 2015-01-11 23:41:42 -05:00
60-keyboard.rules udev: keyboard - also hook into "change" events 2014-05-26 09:30:21 +08:00
60-persistent-alsa.rules move imported udev into place 2012-04-04 05:05:07 +02:00
60-persistent-input.rules rules: Fix persistent input symlinks for interface 00 2012-10-11 08:21:17 +02:00
60-persistent-serial.rules move imported udev into place 2012-04-04 05:05:07 +02:00
60-persistent-storage-tape.rules move imported udev into place 2012-04-04 05:05:07 +02:00
60-persistent-storage.rules gpt-auto-generator: rename root device node symlink to /dev/gpt-auto-root 2014-03-11 17:43:41 +01:00
60-persistent-v4l.rules udev: move all unconditionally installed rules to rules/ 2012-04-14 20:10:03 +02:00
61-accelerometer.rules udev: move all unconditionally installed rules to rules/ 2012-04-14 20:10:03 +02:00
64-btrfs.rules udev: add btrfs support 2012-09-17 13:54:03 +02:00
70-mouse.rules hwdb: add rule and first entry for PS/2 mice 2014-12-24 08:08:23 +10:00
75-net-description.rules rules: net, tty description - ask hwdb explicitly for pci data 2013-07-21 16:33:27 +02:00
75-probe_mtd.rules build-sys: make loadable module support optional 2012-11-20 19:35:27 +01:00
75-tty-description.rules rules: net, tty description - ask hwdb explicitly for pci data 2013-07-21 16:33:27 +02:00
78-sound-card.rules udev: add hardware database support 2012-10-23 16:43:32 +02:00
80-drivers.rules rules: drivers - do not reset RUN list 2014-01-03 01:32:03 +01:00
80-net-setup-link.rules udev: import the full db on MOVE events for devices without dev_t 2014-09-09 15:03:49 +02:00
95-udev-late.rules move imported udev into place 2012-04-04 05:05:07 +02:00
99-systemd.rules.in units: make sure rfkill service is bount to the actual hardware 2014-11-21 01:20:57 +01:00
Makefile backlight: add minimal tool to save/restore screen brightness across reboots 2013-08-14 01:57:02 +02:00