I am using udev to manage setting up monitors on my ThinkPad T400. I use a docking station, and the desired behavior is that when I dock the laptop, the LVDS output is turned off, and the DVI-0 output is enabled. Likewise, when I remove the laptop from the dock, DVI-0 is turned off and LVDS is turned back on. This all works fine, as long as the laptop is not suspended.
However, the way I normally work is to use the laptop during my commute, suspend it, dock it and then switch it on. If I do things in this order, udev never observes changes to the drm subsystem. Which is weird, because a call to
xrandr does indeed show that DVI-0 now exists.
Does anyone have any ideas on why this might be occuring, and what I can to debug/solve this problem?