Code: Select all
udevadm --log-priority="info"
udev version 225-r1 (stable) and openrc (no systemd).
Many thanks!
Code: Select all
udevadm --log-priority="info"
Code: Select all
udevadm monitorCode: Select all
monitor will print the received events for:
UDEV - the event which udev sends out after rule processing
KERNEL - the kernel uevent
KERNEL[27864.579513] change /devices/pci0000:00/0000:00:02.0/drm/card0 (drm)
ACTION=change
DEVNAME=/dev/dri/card0
DEVPATH=/devices/pci0000:00/0000:00:02.0/drm/card0
DEVTYPE=drm_minor
HOTPLUG=1
MAJOR=226
MINOR=0
SEQNUM=2973
SUBSYSTEM=drm
UDEV [27864.584369] change /devices/pci0000:00/0000:00:02.0/drm/card0 (drm)
ACTION=change
DEVNAME=/dev/dri/card0
DEVPATH=/devices/pci0000:00/0000:00:02.0/drm/card0
DEVTYPE=drm_minor
HOTPLUG=1
ID_PATH=pci-0000:00:02.0
ID_PATH_TAG=pci-0000_00_02_0
MAJOR=226
MINOR=0
SEQNUM=2973
SUBSYSTEM=drm
TAGS=:udev-acl:
USEC_INITIALIZED=13393469
Code: Select all
ACTION=="change", SUBSYSTEM=="drm", HOTPLUG=="1", RUN+="/usr/local/bin/hotplug.sh"
Code: Select all
#!/bin/bash
# Script to automatically setup HDMI monitor with xrandr on hotplug
# From: https://kdecherf.com/blog/2015/01/16/xrandrudev-hotplug-an-external-screen-no-matter-which-output-it-is/
set -o pipefail
export DISPLAY=:0.0
export XAUTHORITY=/home/paul/.Xauthority
function connect(){
logger -t udev "HDMI Connected"
xrandr --output HDMI1 --auto --right-of LVDS1
}
function disconnect(){
logger -t udev "HDMI Disconnected"
xrandr --output HDMI1 --off
}
xrandr | grep "HDMI connected" &> /dev/null && connect || disconnect
Code: Select all
-rwxr-xr-x 1 root root 942 May 6 18:18 /usr/local/bin/hotplug.sh
Code: Select all
# /etc/conf.d/udev: config file for udev
# Add extra command line options to udevd, use with care
# udevd --help for possible values
#udev_opts=""
# Run udevd --debug and write output to /run/udevdebug.log
# Should not be kept on as it fills diskspace slowly
udev_debug="YES"
Code: Select all
# see udev.conf(5) for details
udev_log="debug"
Code: Select all
Reading rules file: /lib64/udev/rules.d/95-cd-devices.rules
Reading rules file: /lib64/udev/rules.d/95-dm-notify.rules
Reading rules file: /lib64/udev/rules.d/95-upower-csr.rules
Reading rules file: /lib64/udev/rules.d/95-upower-hid.rules
Reading rules file: /lib64/udev/rules.d/95-upower-wup.rules
Reading rules file: /lib64/udev/rules.d/97-hid2hci.rules
Reading rules file: /lib64/udev/rules.d/99-fuse.rules
Reading rules file: /etc/udev/rules.d/99-monitor.rules
unknown key 'HOTPLUG' in /etc/udev/rules.d/99-monitor.rules:1
invalid rule '/etc/udev/rules.d/99-monitor.rules:1'
Code: Select all
seq 2154 queued, 'change' 'drm'
Validate module index
Check if link configuration needs reloading.
seq 2154 forked new worker [3845]
seq 2154 running
IMPORT builtin 'path_id' /lib64/udev/rules.d/60-drm.rules:3
RUN 'udev-acl --action=$env{ACTION} --device=$env{DEVNAME}' /lib64/udev/rules.d/70-udev-acl.rules:74
handling device node '/dev/dri/card0', devnum=c226:0, mode=0600, uid=0, gid=0
preserve already existing symlink '/dev/char/226:0' to '../dri/card0'
created db file '/run/udev/data/c226:0' for '/devices/pci0000:00/0000:00:02.0/drm/card0'
starting 'udev-acl --action=change --device=/dev/dri/card0'
Process 'udev-acl --action=change --device=/dev/dri/card0' succeeded.
passed device to netlink monitor 0x55fe2bc3b1f0
seq 2154 processed