I've compared this issue using 2 kernels: 1) Not-affected 2.6.36-rc3 built from drm-radeon-testing commit 5c752a91c4dbb57c88d34ab48e600ab087aaddb2 2) Affected 2.6.37 built from wireless-testing commit ae266db027ff4e3d985ac43c3afc1aed261554e5 Trees could be rebased since my checkouting :( Test #1 (after cold boot): xrandr --output LVDS --off sleep 5s xrandr --output LVDS --auto Result: LVDS comes back Test #2 (after cold boot): xrandr --output HDMI-0 --auto xrandr --output LVDS --off sleep 5s xrandr --output LVDS --auto Result: LVDS stays black. When I type "init 0" my X closes and... both screens display console!
Created attachment 46502 [details] dump after enabling HDMI xrandr --output HDMI-0 --auto
Created attachment 46512 [details] dump after enabling HDMI, disabling LVDS, enabling LVDS xrandr --output HDMI-0 --auto xrandr --output LVDS --off sleep 5s xrandr --output LVDS --auto
Created attachment 46522 [details] diff of dumps
That radeontool is crappy. It really need options of dumping all regs! There is what I need to perform after "xrandr --output LVDS --auto": rhd_dump -w 0x7F80 0x0300001D 1:00.0 rhd_dump -w 0x6078 0x3FCFF3FC 1:00.0 rhd_dump -w 0x6080 0x00410311 1:00.0 rhd_dump -w 0x6084 0x00000000 1:00.0 rhd_dump -w 0x609C 0x00020002 1:00.0 The first one commands enabled my LVDS, but picture is totally meshy, blurry, etc. After executing all next 4 commands it becomes itself again. I suspect not all of these 4 commands are needed, but didn't bother to figure out which can be dropped. Does this give you any hint?
Created attachment 46532 [details] dmesg from 2.6.36-rc3 I had to: grep -v "drm:r600_irq_set" messages | grep -v "drm:drm_ioctl" | grep -v "drm:r600_irq_process"
Created attachment 46542 [details] dmesg from 2.6.37 I had to: grep -v "drm:r600_irq_set" messages | grep -v "drm:drm_ioctl" | grep -v "drm:r600_irq_process"
Can you attach your vbios and dmesg when the driver loads? Any chance you could bisect this? to dump your vbios: (as root) (use lspci to get the bus id) cd /sys/bus/pci/devices/<pci bus id> echo 1 > rom cat rom > /tmp/vbios.rom echo 0 > rom
Also, radeontool only dumps r1xx-r4xx display regs. For newer asics, use avivotool (included in the radeontool package http://cgit.freedesktop.org/~airlied/radeontool/). E.g., 'avivotool regs all' or 'avivotool regmatch <reg offset>' or 'avivotool regset <reg offset> <value>'.
Created attachment 46782 [details] vbios
Thanks for clarifying radeontool vs. avivotool. My access to HDMI display is limited, won't have it for next ~10 days :( If you won't see something obvious, then wait, I'll try bisecting then.
You can try forcing the hdmi on with xrandr for testing even if you don't have an hdmi monitor handy: xrandr --addmode HDMI-0 1024x768 xrandr --output HDMI-0 --mode 1024x768 Also, FYI, I added a new radeonreg utility to radeontool/avivotool that will dump the appropriate display regs for your asic: http://cgit.freedesktop.org/~airlied/radeontool/ 'radeonreg regs all'
This does not happen in 2.6.38-rc4. I am not sure about final version of 2.6.37 yet.
I've tried 2.6.37.2, it's free of this bug as well. I had to be some quickly fixed regression I met in wireless-testing.