Created attachment 64390 [details] vbios dump DVI output does not see monitor attached to it: xorg.log: Output DVI-0 disconnected as soon as KMS sets graphic mode. kernel is vanilla 3.4.4. lspci output is: 01:05.0 VGA compatible controller: Advanced Micro Devices [AMD] nee ATI RS400 [Radeon Xpress 200] (prog-if 00 [VGA controller]) Subsystem: ASUSTeK Computer Inc. Device 81c8 Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx- Status: Cap+ 66MHz+ UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx- Latency: 64 (2000ns min), Cache Line Size: 32 bytes Interrupt: pin A routed to IRQ 17 Region 0: Memory at d0000000 (32-bit, prefetchable) [size=256M] Region 1: I/O ports at ee00 [size=256] Region 2: Memory at fddf0000 (32-bit, non-prefetchable) [size=64K] [virtual] Expansion ROM at fdd00000 [disabled] [size=128K] Capabilities: [50] Power Management version 2 Flags: PMEClk- DSI- D1+ D2+ AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot-,D3cold-) Status: D0 NoSoftRst- PME-Enable- DSel=0 DScale=0 PME- Capabilities: [80] MSI: Enable- Count=1/1 Maskable- 64bit- Address: 00000000 Data: 0000 Kernel driver in use: radeon
Created attachment 64391 [details] dmesg output
Created attachment 64392 [details] Xorg.0 log
Created attachment 64395 [details] [review] possible fix The attached patch should fix the issue.
Created attachment 64407 [details] kern.log after patch applied no luck. i've let myself to change subsystem device condition to match data shown in log (RS400 0x1002:0x5A41 0x1043:0x81C8 ). then - first if is taken twice, but ddc_i2c->valid is true in both cases. after planting DRM_ERROR call on top of combios_setup_i2c_bus(), like this: DRM_ERROR("setup bus: %d %d %d \n", (int)ddc, clk_mask, data_mask); , i got whats in attachment.
and when forced custom combios_setup_i2c_bus call by commenting out "ddc_i2c->valid == false" (was it wise?) got this connectors info, but still DVI output is dead. 9.906711] [drm] Radeon Display Connectors 9.906714] [drm] Connector 0: 9.906717] [drm] VGA 9.906720] [drm] DDC: 0x68 0x68 0x68 0x68 0x68 0x68 0x68 0x68 9.906722] [drm] Encoders: 9.906725] [drm] CRT1: INTERNAL_DAC2 9.906727] [drm] Connector 1: 9.906729] [drm] DVI-D 9.906731] [drm] HPD2 9.906734] [drm] DDC: 0x198 0x198 0x19c 0x19c 0x1a0 0x1a0 0x1a4 0x1a4 9.906737] [drm] Encoders: 9.906739] [drm] DFP2: INTERNAL_DVO1 9.906741] [drm] Connector 2: 9.906743] [drm] S-video 9.906745] [drm] Encoders: 9.906747] [drm] TV1: INTERNAL_DAC2 9.955393] [drm] fb mappable at 0xD0040000 9.955399] [drm] vram apper at 0xD0000000 9.955403] [drm] size 9216000 9.955406] [drm] fb depth is 24 9.955410] [drm] pitch is 7680 9.955553] fbcon: radeondrmfb (fb0) is primary device
Created attachment 64408 [details] [review] possible fix Try this patch instead. I misread the bios tables.
still no luck. DVI output goes blank, xrandr claims it;s disconnected. kern.log: [drm] Initialized radeon 2.16.0 20080528 for 0000:01:05.0 on minor 0 [drm] Initialized drm 1.1.0 20060810 [drm] radeon defaulting to kernel modesetting. [drm] radeon kernel modesetting enabled. [drm] initializing kernel modesetting (RS400 0x1002:0x5A41 0x1043:0x81C8). [drm] register mmio base: 0xFDDF0000 [drm] register mmio size: 65536 [drm] Generation 2 PCI interface, using max accessible memory [drm] Supports vblank timestamp caching Rev 1 (10.10.2010). [drm] Driver supports precise vblank timestamp query. [drm] radeon: irq initialized. [drm] Detected VRAM RAM=256M, BAR=256M [drm] RAM width 128bits DDR [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: ib pool ready. [drm] radeon: 4 quad pipes, 1 z pipes initialized. [drm] PCIE GART of 512M enabled (table at 0x0000000031680000). [drm] fence driver on ring 0 use gpu addr 0x80000000 and cpu addr 0xffb40000 [drm] Loading R300 Microcode [drm] radeon: ring at 0x0000000080001000 [drm] ring test succeeded in 2 usecs [drm] ib test succeeded in 0 usecs [drm] Radeon Display Connectors [drm] Connector 0: [drm] VGA [drm] DDC: 0x68 0x68 0x68 0x68 0x68 0x68 0x68 0x68 [drm] Encoders: [drm] CRT1: INTERNAL_DAC2 [drm] Connector 1: [drm] DVI-D [drm] HPD2 [drm] DDC: 0x198 0x198 0x19c 0x19c 0x1a0 0x1a0 0x1a4 0x1a4 [drm] Encoders: [drm] DFP2: INTERNAL_DVO1 [drm] Connector 2: [drm] S-video [drm] Encoders: [drm] TV1: INTERNAL_DAC2 [drm] fb mappable at 0xD0040000 [drm] vram apper at 0xD0000000 [drm] size 9216000 [drm] fb depth is 24 [drm] pitch is 7680 fbcon: radeondrmfb (fb0) is primary device fb0: radeondrmfb frame buffer device drm: registered panic notifier [drm] Initialized radeon 2.16.0 20080528 for 0000:01:05.0 on minor 0 Xorg.0.log says: [ 19.440] (II) RADEON(0): EDID for output DVI-0 [ 19.441] (II) RADEON(0): EDID for output S-video [ 19.441] (II) RADEON(0): Output VGA-0 connected [ 19.441] (II) RADEON(0): Output DVI-0 disconnected [ 19.441] (II) RADEON(0): Output S-video disconnected
Created attachment 64449 [details] [review] possible fix How about this one? If it doesn't work, try commenting out the first *ddc_i2c line and uncommenting the second: + *ddc_i2c = combios_setup_i2c_bus(rdev, DDC_DVI, 0, 0); + //*ddc_i2c = combios_setup_i2c_bus(rdev, DDC_VGA, 0, 0); Let me know if either of those work.
neither of those worked. kern.log output is now the same as in first attachement: [drm:radeon_add_legacy_connector] *ERROR* DVI: Failed to assign ddc bus! Check dmesg for i2c errors. and then [drm] Connector 1: [drm] DVI-D [drm] HPD2 [drm] DDC: no ddc bus - possible BIOS bug - please report to xorg-driver-ati@lists.x.org [drm] Encoders: [drm] DFP2: INTERNAL_DVO1
-- GitLab Migration Automatic Message -- This bug has been migrated to freedesktop.org's GitLab instance and has been closed from further activity. You can subscribe and participate further through the new bug through this link to our GitLab instance: https://gitlab.freedesktop.org/drm/amd/issues/282.
Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.