[RFC PATCH] Re: KMS:RV635:Radeon 3650HD graphics driver broken on a laptop when connected to a docking station and external display

Pasi Kärkkäinen pasik at iki.fi
Thu Jul 1 07:04:55 PDT 2010


On Mon, Jun 21, 2010 at 09:17:14PM +0300, Pasi Kärkkäinen wrote:
> > >
> > > I am not sure your patch is right, my guess is that devices field of
> > > radeon connector structure btw the HDMI & DVI connector are different
> > > and thus that drm_detect_hdmi_monitor is not call. I expect it's normal
> > > for the device field to be different (my understanding being that HDMI
> > > will have one more bit set than the DVI connector). Bottom line is
> > > i think we want to discard non hdmi connector just in case we face
> > > shared connector.
> > >
> > > Alex would have to comment on the device field test, maybe your atombios
> > > is broken. Does it works if instead of removing
> > > if (connector == list_connector)
> > >        continue;
> > > You remove :
> > > if (radeon_connector->devices == list_radeon_connector->devices)
> > >
> > > Also can you print the radeon_connector->devices of all your connector
> > > so we can compare them.
> > 
> > The code was for systems with shared ddc lines and shared encoders,
> > but it looks like your system may have a shared ddc line and (sort of)
> > non-shared encoders.  I suspect the DVI port is using UNIPHY A or A+B
> > (for dual link) and HDMI is using UNIPHY link B.  It's probably
> > actually using router objects (gpio toggle to switch gpio routing
> > between physical ports), however support for that is not implemented
> > yet which is why we have the current code.  Can you send me a copy of
> > your vbios so I can verify?
> > 
> > To access your vbios (as root):
> > cd /sys/bus/pci/device/<pci bus id>
> > echo 1 > rom
> > cat rom > /tmp/vbios.rom
> > echo 0 > rom
> > 
> 
> 
> Here you are:
> http://pasik.reaktio.net/fedora/bz593429/vbios-hp-elitebook-8530p-ati-radeon-hd3650.rom
> 

Did you have a chance to take a look at that rom? 

dmesg says this btw:
ATOM BIOS: HP_Wistron_Vox_M86M

-- Pasi

> 
> # lspci -vv
> 
> 01:00.0 VGA compatible controller: ATI Technologies Inc Mobility Radeon HD 3650 (prog-if 00 [VGA controller])
>         Subsystem: Hewlett-Packard Company Device 30e7
>         Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx+
>         Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
>         Latency: 0, Cache Line Size: 64 bytes
>         Interrupt: pin A routed to IRQ 33
>         Region 0: Memory at c0000000 (32-bit, prefetchable) [size=256M]
>         Region 1: I/O ports at 7000 [size=256]
>         Region 2: Memory at d8300000 (32-bit, non-prefetchable) [size=64K]
>         Expansion ROM at d8320000 [disabled] [size=128K]
>         Capabilities: [50] Power Management version 3
>                 Flags: PMEClk- DSI- D1+ D2+ AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot-,D3cold-)
>                 Status: D0 NoSoftRst- PME-Enable- DSel=0 DScale=0 PME-
>         Capabilities: [58] Express (v2) Legacy Endpoint, MSI 00
>                 DevCap: MaxPayload 128 bytes, PhantFunc 0, Latency L0s <4us, L1 unlimited
>                         ExtTag+ AttnBtn- AttnInd- PwrInd- RBE+ FLReset-
>                 DevCtl: Report errors: Correctable- Non-Fatal- Fatal- Unsupported-
>                         RlxdOrd+ ExtTag- PhantFunc- AuxPwr- NoSnoop+
>                         MaxPayload 128 bytes, MaxReadReq 128 bytes
>                 DevSta: CorrErr- UncorrErr- FatalErr- UnsuppReq- AuxPwr- TransPend-
>                 LnkCap: Port #0, Speed 2.5GT/s, Width x16, ASPM L0s L1, Latency L0 <64ns, L1 <1us
>                         ClockPM- Surprise- LLActRep- BwNot-
>                 LnkCtl: ASPM L0s L1 Enabled; RCB 64 bytes Disabled- Retrain- CommClk+
>                         ExtSynch- ClockPM- AutWidDis- BWInt- AutBWInt-
>                 LnkSta: Speed 2.5GT/s, Width x16, TrErr- Train- SlotClk+ DLActive- BWMgmt- ABWMgmt-
>                 DevCap2: Completion Timeout: Not Supported, TimeoutDis-
>                 DevCtl2: Completion Timeout: 50us to 50ms, TimeoutDis-
>               LnkCtl2: Target Link Speed: 2.5GT/s, EnterCompliance- SpeedDis-, Selectable De-emphasis: -6dB
>                          Transmit Margin: Normal Operating Range, EnterModifiedCompliance- ComplianceSOS-
>                          Compliance De-emphasis: -6dB
>                 LnkSta2: Current De-emphasis Level: -3.5dB
>         Capabilities: [a0] MSI: Enable+ Count=1/1 Maskable- 64bit+
>                 Address: 00000000fee0200c  Data: 41d1
>         Capabilities: [100 v1] Vendor Specific Information: ID=0001 Rev=1 Len=010 <?>
>         Kernel driver in use: radeon
>         Kernel modules: radeon
> 
> 01:00.1 Audio device: ATI Technologies Inc RV635 Audio device [Radeon HD 3600 Series]
>         Subsystem: ATI Technologies Inc RV635 Audio device [Radeon HD 3600 Series]
>         Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx+
>         Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
>         Latency: 0, Cache Line Size: 64 bytes
>         Interrupt: pin B routed to IRQ 37
>         Region 0: Memory at d8310000 (32-bit, non-prefetchable) [size=16K]
>         Capabilities: [50] Power Management version 3
>                 Flags: PMEClk- DSI- D1+ D2+ AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot-,D3cold-)
>                 Status: D0 NoSoftRst- PME-Enable- DSel=0 DScale=0 PME-
>         Capabilities: [58] Express (v2) Legacy Endpoint, MSI 00
>                 DevCap: MaxPayload 128 bytes, PhantFunc 0, Latency L0s <4us, L1 unlimited
>                         ExtTag+ AttnBtn- AttnInd- PwrInd- RBE+ FLReset-
>                 DevCtl: Report errors: Correctable- Non-Fatal- Fatal- Unsupported-
>                         RlxdOrd+ ExtTag- PhantFunc- AuxPwr- NoSnoop+
>                         MaxPayload 128 bytes, MaxReadReq 128 bytes
>                 DevSta: CorrErr- UncorrErr- FatalErr- UnsuppReq- AuxPwr- TransPend-
>                 LnkCap: Port #0, Speed 2.5GT/s, Width x16, ASPM L0s L1, Latency L0 <64ns, L1 <1us
>                         ClockPM- Surprise- LLActRep- BwNot-
>                 LnkCtl: ASPM L0s L1 Enabled; RCB 64 bytes Disabled- Retrain- CommClk+
>                         ExtSynch- ClockPM- AutWidDis- BWInt- AutBWInt-
>                 LnkSta: Speed 2.5GT/s, Width x16, TrErr- Train- SlotClk+ DLActive- BWMgmt- ABWMgmt-
>                 DevCap2: Completion Timeout: Not Supported, TimeoutDis-
>                 DevCtl2: Completion Timeout: 50us to 50ms, TimeoutDis-
>                 LnkCtl2: Target Link Speed: 2.5GT/s, EnterCompliance- SpeedDis-, Selectable De-emphasis: -6dB
>                          Transmit Margin: Normal Operating Range, EnterModifiedCompliance- ComplianceSOS-
>                          Compliance De-emphasis: -6dB
>                 LnkSta2: Current De-emphasis Level: -3.5dB
>         Capabilities: [a0] MSI: Enable+ Count=1/1 Maskable- 64bit+
>                 Address: 00000000fee0100c  Data: 4142
>         Capabilities: [100 v1] Vendor Specific Information: ID=0001 Rev=1 Len=010 <?>
>         Kernel driver in use: HDA Intel
>         Kernel modules: snd-hda-intel
> 
> 
> 
> -- Pasi
> 
> 


More information about the dri-devel mailing list