Il giorno gio, 15/04/2010 alle 13.41 -0400, Alex Deucher ha scritto:
From 837feb147c531219c7315857a6f17e145af8f750 Mon Sep 17 00:00:00 2001
From: Alex Deucher alexdeucher@gmail.com Date: Thu, 15 Apr 2010 13:31:12 -0400 Subject: [PATCH] drm/radeon/kms: fix tv dac conflict resolver
On systems with the tv dac shared between DVI and TV, we can only use the dac for one of the connectors. However, when using a digital monitor on the DVI port, you can use the dac for the TV connector just fine. Check the use_digital status when resolving the conflict.
Fixes fdo bug 27649, possibly others.
Signed-off-by: Alex Deucher alexdeucher@gmail.com Cc: stable stable@kernel.org
[resending because I suspect something went wrong the first time, sorry if it's a duplicate]
Hi,
a few days ago I upgraded to the last 2.6.34 rc kernel and found that with KMS both the console and X were using a 800x600 resolution instead of my LCD display's native resolution of 1440x900 who was selected by default with 2.6.33 and previous kernels.
1440x900 also disappeared from the available resolution listed by GNOME display utility, and I could enable it again only with the xrandr command line tool.
I tracked the problem to this patch, which causes the same issues also when manually applied to 2.6.33: apparently the kms radeon driver wrongly detects a TV connected to my card (I don't have one, only a LCD display connected to the DVI port) and forces the TV default resolution for all the outputs.
Attached to the email the xrandr output I get with 2.6.33 and 2.6.34 and pasted after the actual text are the relevant portions of the dmesg output of 2.6.34. I'm using a Radeon RV370 card. Please tell me if you need other information.
Best regards,
Giacomo
dmesg:
[drm] Initialized drm 1.1.0 20060810 [drm] radeon kernel modesetting enabled. [drm] initializing kernel modesetting (RV380 0x1002:0x5B63). [drm] register mmio base: 0xFD7F0000 [drm] register mmio size: 65536 [drm] GPU reset succeed (RBBM_STATUS=0x00000140) [drm] 1 Power State(s) [drm] State 0 Default (default) [drm] 16 PCIE Lanes [drm] 1 Clock Mode(s) [drm] 0 engine/memory: 400000/250000 [drm] radeon: power management initialized [drm] Generation 2 PCI interface, using max accessible memory [drm] radeon: using MSI. [drm] radeon: irq initialized. [drm] Detected VRAM RAM=256M, BAR=256M [drm] RAM width 128bits DDR [TTM] Zone kernel: Available graphics memory: 1030236 kiB. [drm] radeon: 256M of VRAM memory ready [drm] radeon: 512M of GTT memory ready. [drm] GART: num cpu pages 131072, num gpu pages 131072 [drm] radeon: 1 quad pipes, 1 Z pipes initialized. [drm] PCIE GART of 512M enabled (table at 0xD0040000). [drm] radeon: cp idle (0x10000C03) [drm] Loading R300 Microcode platform radeon_cp.0: firmware: requesting radeon/R300_cp.bin [drm] radeon: ring at 0x00000000B0000000 [drm] ring test succeeded in 1 usecs [drm] radeon: ib pool ready. [drm] ib test succeeded in 0 usecs [drm] Default TV standard: NTSC [drm] 27.000000000 MHz TV ref clk [drm] DFP table revision: 4 [drm] Default TV standard: NTSC [drm] 27.000000000 MHz TV ref clk [drm] Radeon Display Connectors [drm] Connector 0: [drm] VGA [drm] DDC: 0x60 0x60 0x60 0x60 0x60 0x60 0x60 0x60 [drm] Encoders: [drm] CRT1: INTERNAL_DAC1 [drm] Connector 1: [drm] DVI-I [drm] HPD1 [drm] DDC: 0x64 0x64 0x64 0x64 0x64 0x64 0x64 0x64 [drm] Encoders: [drm] CRT2: INTERNAL_DAC2 [drm] DFP1: INTERNAL_TMDS1 [drm] Connector 2: [drm] S-video [drm] Encoders: [drm] TV1: INTERNAL_DAC2 [drm] fb mappable at 0xD00C0000 [drm] vram apper at 0xD0000000 [drm] size 5184000 [drm] fb depth is 24 [drm] pitch is 5760 [drm] crtc 1 is connected to a TV Console: switching to colour frame buffer device 100x37 fb0: radeondrmfb frame buffer device registered panic notifier [drm] Initialized radeon 2.3.0 20080528 for 0000:05:00.0 on minor 0