All of lore.kernel.org
 help / color / mirror / Atom feed
* Regression 2.6.34->2.6.35-rc4: radeaon KMS an RS690 broken
@ 2010-07-11 19:56 Torsten Kaiser
  2010-07-12 15:23 ` Alex Deucher
  0 siblings, 1 reply; 17+ messages in thread
From: Torsten Kaiser @ 2010-07-11 19:56 UTC (permalink / raw)
  To: DRI mailing list, linux-kernel

I just tried 2.6.35-rc4 to see, if a different bug is fixed, but noted
that this kernel will only boot with radeon.modeset=0.

If KMS is active the display turns off and the system is completely
dead, not even SysRq+B is working.

I build a new kernel with the radeon driver as a module and inserted
it by hand via ssh.
The ssh session, I was using has this output:
ariolc drm # insmod ./drm_kms_helper.ko
ariolc drm # insmod ttm/ttm.ko
ariolc drm # insmod radeon/radeon.ko
Segmentation fault
ariolc drm #

The final insmod segfaulted, the shell was displaying a new prompt,
but not new input was possible.
The system still reacted to ping and trying to create a new ssh
connection resulted in a password prompt, but after entering the
password no shell was provided.
I tried SysRq+S, SysRq+U and SysRq+B, but not visible result. After a
reboot I did not find any additional information in /var/log/messages.
The effect was like the boot time failures with a builtin radeon
driver: The display (attached to the VGA output) just turns off.

But I had a second ssh connection open, doing tail -f /var/log/messages:
Jul 11 21:30:23 ariolc kernel: [  131.720470] [drm] radeon defaulting
to kernel modesetting.
Jul 11 21:30:23 ariolc kernel: [  131.720477] [drm] radeon kernel
modesetting enabled.
Jul 11 21:30:23 ariolc kernel: [  131.720623] radeon 0000:01:05.0: PCI
INT A -> GSI 18 (level, low) -> IRQ 18
Jul 11 21:30:23 ariolc kernel: [  131.726859] [drm] initializing
kernel modesetting (RS690 0x1002:0x791E).
Jul 11 21:30:23 ariolc kernel: [  131.728607] [drm] register mmio
base: 0xFE9F0000
Jul 11 21:30:23 ariolc kernel: [  131.728613] [drm] register mmio
size: 65536
Jul 11 21:30:23 ariolc kernel: [  131.729591] ATOM BIOS: ATI
Jul 11 21:30:23 ariolc kernel: [  131.729625] radeon 0000:01:05.0:
VRAM: 32M 0xDE000000 - 0xDFFFFFFF (32M used)
Jul 11 21:30:23 ariolc kernel: [  131.729632] radeon 0000:01:05.0:
GTT: 512M 0xBE000000 - 0xDDFFFFFF
Jul 11 21:30:23 ariolc kernel: [  131.729675] [drm] radeon: irq initialized.
Jul 11 21:30:23 ariolc kernel: [  131.729690] mtrr: type mismatch for
fc000000,2000000 old: write-back new: write-combining
Jul 11 21:30:23 ariolc kernel: [  131.729696] [drm] Detected VRAM
RAM=32M, BAR=32M
Jul 11 21:30:23 ariolc kernel: [  131.729701] [drm] RAM width 128bits DDR
Jul 11 21:30:23 ariolc kernel: [  131.729796] [TTM] Zone  kernel:
Available graphics memory: 2010998 kiB.
Jul 11 21:30:23 ariolc kernel: [  131.729802] [TTM] Initializing pool allocator.
Jul 11 21:30:23 ariolc kernel: [  131.729841] [drm] radeon: 32M of
VRAM memory ready
Jul 11 21:30:23 ariolc kernel: [  131.729846] [drm] radeon: 512M of
GTT memory ready.
Jul 11 21:30:23 ariolc kernel: [  131.729857] [drm] GART: num cpu
pages 131072, num gpu pages 131072
Jul 11 21:30:23 ariolc kernel: [  131.736223] [drm] radeon: 1 quad
pipes, 1 z pipes initialized.
Jul 11 21:30:23 ariolc kernel: [  131.752553] [drm] Loading
RS690/RS740 Microcode
Jul 11 21:30:23 ariolc kernel: [  131.911461] [drm] radeon: ring at
0x00000000BE000000
Jul 11 21:30:23 ariolc kernel: [  132.055912] [drm:r100_ring_test]
*ERROR* radeon: ring test failed (sracth(0x15E4)=0xCAFEDEAD)
Jul 11 21:30:23 ariolc kernel: [  132.055918] [drm:r100_cp_init]
*ERROR* radeon: cp isn't working (-22).
Jul 11 21:30:23 ariolc kernel: [  132.055925] radeon 0000:01:05.0:
failled initializing CP (-22).
Jul 11 21:30:23 ariolc kernel: [  132.055929] radeon 0000:01:05.0:
Disabling GPU acceleration
Jul 11 21:30:23 ariolc kernel: [  132.056174] [drm] radeon: cp finalized
Jul 11 21:30:23 ariolc kernel: [  132.057378] [drm] Default TV standard: NTSC
Jul 11 21:30:23 ariolc kernel: [  132.058671] [drm] Default TV standard: NTSC
Jul 11 21:30:23 ariolc kernel: [  132.059748] [drm] Radeon Display Connectors
Jul 11 21:30:23 ariolc kernel: [  132.059753] [drm] Connector 0:
Jul 11 21:30:23 ariolc kernel: [  132.059756] [drm]   VGA
Jul 11 21:30:23 ariolc kernel: [  132.059763] [drm]   DDC: 0x7e50
0x7e40 0x7e54 0x7e44 0x7e58 0x7e48 0x7e5c 0x7e4c
Jul 11 21:30:23 ariolc kernel: [  132.059766] [drm]   Encoders:
Jul 11 21:30:23 ariolc kernel: [  132.059770] [drm]     CRT1:
INTERNAL_KLDSCP_DAC1
Jul 11 21:30:23 ariolc kernel: [  132.059773] [drm] Connector 1:
Jul 11 21:30:23 ariolc kernel: [  132.059776] [drm]   S-video
Jul 11 21:30:23 ariolc kernel: [  132.059778] [drm]   Encoders:
Jul 11 21:30:23 ariolc kernel: [  132.059781] [drm]     TV1:
INTERNAL_KLDSCP_DAC1
Jul 11 21:30:23 ariolc kernel: [  132.059784] [drm] Connector 2:
Jul 11 21:30:23 ariolc kernel: [  132.059787] [drm]   HDMI-A
Jul 11 21:30:23 ariolc kernel: [  132.059792] [drm]   DDC: 0x7e40
0x7e50 0x7e44 0x7e54 0x7e48 0x7e58 0x7e4c 0x7e5c
Jul 11 21:30:23 ariolc kernel: [  132.059795] [drm]   Encoders:
Jul 11 21:30:23 ariolc kernel: [  132.059798] [drm]     DFP3: INTERNAL_LVTM1
Jul 11 21:30:23 ariolc kernel: [  132.253484] [drm] fb mappable at 0xFC040000
Jul 11 21:30:23 ariolc kernel: [  132.253488] [drm] vram apper at 0xFC000000
Jul 11 21:30:23 ariolc kernel: [  132.253489] [drm] size 786432
Jul 11 21:30:23 ariolc kernel: [  132.253491] [drm] fb depth is 8
Jul 11 21:30:23 ariolc kernel: [  132.253492] [drm]    pitch is 1024
Jul 11 21:30:23 ariolc kernel: [  132.253880] fbcon: radeondrmfb (fb0)
is primary device

Hardware info: (lspci -vv from 2.6.33)
00:00.0 Host bridge: ATI Technologies Inc RS690 Host Bridge
        Subsystem: ATI Technologies Inc RS690 Host Bridge
        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: 0

00:01.0 PCI bridge: ATI Technologies Inc RS690 PCI to PCI Bridge
(Internal gfx) (prog-if 00 [Normal decode])
        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
        Bus: primary=00, secondary=01, subordinate=01, sec-latency=64
        I/O behind bridge: 0000c000-0000cfff
        Memory behind bridge: fe800000-fe9fffff
        Prefetchable memory behind bridge: 00000000fc000000-00000000fdffffff
        Secondary status: 66MHz+ FastB2B- ParErr- DEVSEL=medium
>TAbort- <TAbort- <MAbort- <SERR- <PERR-
        BridgeCtl: Parity- SERR+ NoISA- VGA+ MAbort- >Reset- FastB2B-
                PriDiscTmr- SecDiscTmr- DiscTmrStat- DiscTmrSERREn-
        Capabilities: [44] HyperTransport: MSI Mapping Enable+ Fixed+
        Capabilities: [b0] Subsystem: ATI Technologies Inc RS690 PCI
to PCI Bridge (Internal gfx)

00:07.0 PCI bridge: ATI Technologies Inc RS690 PCI to PCI Bridge (PCI
Express Port 3) (
prog-if 00 [Normal decode])
        Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop-
ParErr- Stepping- S
ERR+ FastB2B- DisINTx+
        Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort-
<TAbort- <MAbort
- >SERR- <PERR- INTx-
        Latency: 0, Cache Line Size: 64 bytes
        Bus: primary=00, secondary=02, subordinate=02, sec-latency=0
        I/O behind bridge: 0000d000-0000dfff
        Memory behind bridge: fea00000-feafffff
        Secondary status: 66MHz- FastB2B- ParErr- DEVSEL=fast >TAbort-
<TAbort- <MAbort
- <SERR- <PERR-
        BridgeCtl: Parity+ SERR+ NoISA- VGA- MAbort- >Reset- FastB2B-
                PriDiscTmr- SecDiscTmr- DiscTmrStat- DiscTmrSERREn-
        Capabilities: [50] Power Management version 3
                Flags: PMEClk- DSI- D1- D2- AuxCurrent=0mA
PME(D0+,D1-,D2-,D3hot+,D3col
d+)
                Status: D0 NoSoftRst- PME-Enable- DSel=0 DScale=0 PME-
        Capabilities: [58] Express (v1) Root Port (Slot+), MSI 00
                DevCap: MaxPayload 128 bytes, PhantFunc 0, Latency L0s
<64ns, L1 <1us
                        ExtTag+ 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 #4, Speed 2.5GT/s, Width x1, ASPM L0s L1,
Latency L0 <64ns, L1 <1us
                        ClockPM- Surprise- LLActRep+ BwNot-
                LnkCtl: ASPM Disabled; RCB 64 bytes Disabled- Retrain- CommClk+
                        ExtSynch- ClockPM- AutWidDis- BWInt- AutBWInt-
                LnkSta: Speed 2.5GT/s, Width x1, TrErr- Train-
SlotClk+ DLActive+ BWMgmt- ABWMgmt-
                SltCap: AttnBtn- PwrCtrl- MRL- AttnInd- PwrInd-
HotPlug- Surpise-
                        Slot #  6, PowerLimit 25.000000; Interlock- NoCompl-
                SltCtl: Enable: AttnBtn- PwrFlt- MRL- PresDet-
CmdCplt- HPIrq- LinkChg-
                        Control: AttnInd Off, PwrInd Off, Power- Interlock-
                SltSta: Status: AttnBtn- PowerFlt- MRL- CmdCplt-
PresDet+ Interlock-
                        Changed: MRL- PresDet+ LinkState-
                RootCtl: ErrCorrectable- ErrNon-Fatal- ErrFatal-
PMEIntEna- CRSVisible-
                RootCap: CRSVisible-
                RootSta: PME ReqID 0000, PMEStatus- PMEPending-
        Capabilities: [80] MSI: Enable+ Count=1/1 Maskable- 64bit-
                Address: fee0300c  Data: 4149
        Capabilities: [b0] Subsystem: ATI Technologies Inc RS690 PCI
to PCI Bridge
        Capabilities: [b8] HyperTransport: MSI Mapping Enable+ Fixed+
        Capabilities: [100] Virtual Channel <?>
        Kernel driver in use: pcieport

KMS was working stable on 2.6.33 and seems to work on 2.6.34 (Not
really tested, because 2.6.34 is not working for me, but I'm not sure
if that is KMS related)

Output from working KMS in 2.6.33:
[    0.385804] [drm] Initialized drm 1.1.0 20060810
[    0.385896] [drm] radeon defaulting to kernel modesetting.
[    0.385955] [drm] radeon kernel modesetting enabled.
[    0.386066] radeon 0000:01:05.0: PCI INT A -> GSI 18 (level, low) -> IRQ 18
[    0.388388] [drm] radeon: Initializing kernel modesetting.
[    0.388534] [drm] register mmio base: 0xFE9F0000
[    0.388593] [drm] register mmio size: 65536
[    0.389106] ATOM BIOS: ATI
[    0.389374] [drm] GPU reset succeed (RBBM_STATUS=0x10000140)
[    0.389436] [drm] radeon: VRAM 32M
[    0.389495] [drm] radeon: VRAM from 0xDE000000 to 0xDFFFFFFF
[    0.389554] [drm] radeon: GTT 512M
[    0.389612] [drm] radeon: GTT from 0x00000000 to 0x1FFFFFFF
[    0.389688] radeon 0000:01:05.0: irq 25 for MSI/MSI-X
[    0.389692] [drm] radeon: using MSI.
[    0.389766] [drm] radeon: irq initialized.
[    0.389828] mtrr: type mismatch for fc000000,2000000 old:
write-back new: write-combining
[    0.389902] [drm] Detected VRAM RAM=32M, BAR=32M
[    0.389960] [drm] RAM width 128bits DDR
[    0.390238] [TTM] Zone  kernel: Available graphics memory: 2010380 kiB.
[    0.390313] [drm] radeon: 32M of VRAM memory ready
[    0.390372] [drm] radeon: 512M of GTT memory ready.
[    0.390431] [drm] GART: num cpu pages 131072, num gpu pages 131072
[    0.393504] [drm] radeon: 1 quad pipes, 1 z pipes initialized.
[    0.393568] [drm] radeon: cp idle (0x10000C03)
[    0.393691] [drm] Loading RS690/RS740 Microcode
[    0.393751] platform radeon_cp.0: firmware: using built-in firmware
radeon/RS690_cp.bin
[    0.393964] [drm] radeon: ring at 0x0000000000000000
[    0.394039] [drm] ring test succeeded in 1 usecs
[    0.394180] [drm] radeon: ib pool ready.
[    0.394249] [drm] ib test succeeded in 0 usecs
[    0.394454] [drm] Default TV standard: NTSC
[    0.394690] [drm] Radeon Display Connectors
[    0.394749] [drm] Connector 0:
[    0.394807] [drm]   VGA
[    0.394865] [drm]   DDC: 0x7e50 0x7e40 0x7e54 0x7e44 0x7e58 0x7e48
0x7e5c 0x7e4c
[    0.394938] [drm]   Encoders:
[    0.394996] [drm]     CRT1: INTERNAL_KLDSCP_DAC1
[    0.395055] [drm] Connector 1:
[    0.395112] [drm]   S-video
[    0.395169] [drm]   Encoders:
[    0.395227] [drm]     TV1: INTERNAL_KLDSCP_DAC1
[    0.395285] [drm] Connector 2:
[    0.395343] [drm]   HDMI-A
[    0.395401] [drm]   DDC: 0x7e40 0x7e50 0x7e44 0x7e54 0x7e48 0x7e58
0x7e4c 0x7e5c
[    0.395474] [drm]   Encoders:
[    0.395532] [drm]     DFP3: INTERNAL_LVTM1
[    0.593345] [drm] fb mappable at 0xFC040000
[    0.593404] [drm] vram apper at 0xFC000000
[    0.593462] [drm] size 786432
[    0.593519] [drm] fb depth is 8
[    0.593576] [drm]    pitch is 1024
[    0.615713] Console: switching to colour frame buffer device 128x48
[    0.617300] fb0: radeondrmfb frame buffer device
[    0.617319] registered panic notifier
[    0.617337] [drm] Initialized radeon 2.0.0 20080528 for
0000:01:05.0 on minor 0

Please ask, if I should provide more information or test something.

Thanks,
             Torsten

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: Regression 2.6.34->2.6.35-rc4: radeaon KMS an RS690 broken
  2010-07-11 19:56 Regression 2.6.34->2.6.35-rc4: radeaon KMS an RS690 broken Torsten Kaiser
@ 2010-07-12 15:23 ` Alex Deucher
  2010-07-12 19:54   ` Torsten Kaiser
  0 siblings, 1 reply; 17+ messages in thread
From: Alex Deucher @ 2010-07-12 15:23 UTC (permalink / raw)
  To: Torsten Kaiser; +Cc: DRI mailing list, linux-kernel

On Sun, Jul 11, 2010 at 3:56 PM, Torsten Kaiser
<just.for.lkml@googlemail.com> wrote:
> I just tried 2.6.35-rc4 to see, if a different bug is fixed, but noted
> that this kernel will only boot with radeon.modeset=0.
>
> If KMS is active the display turns off and the system is completely
> dead, not even SysRq+B is working.
>
> I build a new kernel with the radeon driver as a module and inserted
> it by hand via ssh.
> The ssh session, I was using has this output:
> ariolc drm # insmod ./drm_kms_helper.ko
> ariolc drm # insmod ttm/ttm.ko
> ariolc drm # insmod radeon/radeon.ko
> Segmentation fault
> ariolc drm #
>
> The final insmod segfaulted, the shell was displaying a new prompt,
> but not new input was possible.
> The system still reacted to ping and trying to create a new ssh
> connection resulted in a password prompt, but after entering the
> password no shell was provided.
> I tried SysRq+S, SysRq+U and SysRq+B, but not visible result. After a
> reboot I did not find any additional information in /var/log/messages.
> The effect was like the boot time failures with a builtin radeon
> driver: The display (attached to the VGA output) just turns off.
>
> But I had a second ssh connection open, doing tail -f /var/log/messages:
> Jul 11 21:30:23 ariolc kernel: [  131.720470] [drm] radeon defaulting
> to kernel modesetting.
> Jul 11 21:30:23 ariolc kernel: [  131.720477] [drm] radeon kernel
> modesetting enabled.
> Jul 11 21:30:23 ariolc kernel: [  131.720623] radeon 0000:01:05.0: PCI
> INT A -> GSI 18 (level, low) -> IRQ 18
> Jul 11 21:30:23 ariolc kernel: [  131.726859] [drm] initializing
> kernel modesetting (RS690 0x1002:0x791E).
> Jul 11 21:30:23 ariolc kernel: [  131.728607] [drm] register mmio
> base: 0xFE9F0000
> Jul 11 21:30:23 ariolc kernel: [  131.728613] [drm] register mmio
> size: 65536
> Jul 11 21:30:23 ariolc kernel: [  131.729591] ATOM BIOS: ATI
> Jul 11 21:30:23 ariolc kernel: [  131.729625] radeon 0000:01:05.0:
> VRAM: 32M 0xDE000000 - 0xDFFFFFFF (32M used)
> Jul 11 21:30:23 ariolc kernel: [  131.729632] radeon 0000:01:05.0:
> GTT: 512M 0xBE000000 - 0xDDFFFFFF
> Jul 11 21:30:23 ariolc kernel: [  131.729675] [drm] radeon: irq initialized.
> Jul 11 21:30:23 ariolc kernel: [  131.729690] mtrr: type mismatch for
> fc000000,2000000 old: write-back new: write-combining
> Jul 11 21:30:23 ariolc kernel: [  131.729696] [drm] Detected VRAM
> RAM=32M, BAR=32M
> Jul 11 21:30:23 ariolc kernel: [  131.729701] [drm] RAM width 128bits DDR
> Jul 11 21:30:23 ariolc kernel: [  131.729796] [TTM] Zone  kernel:
> Available graphics memory: 2010998 kiB.
> Jul 11 21:30:23 ariolc kernel: [  131.729802] [TTM] Initializing pool allocator.
> Jul 11 21:30:23 ariolc kernel: [  131.729841] [drm] radeon: 32M of
> VRAM memory ready
> Jul 11 21:30:23 ariolc kernel: [  131.729846] [drm] radeon: 512M of
> GTT memory ready.
> Jul 11 21:30:23 ariolc kernel: [  131.729857] [drm] GART: num cpu
> pages 131072, num gpu pages 131072
> Jul 11 21:30:23 ariolc kernel: [  131.736223] [drm] radeon: 1 quad
> pipes, 1 z pipes initialized.
> Jul 11 21:30:23 ariolc kernel: [  131.752553] [drm] Loading
> RS690/RS740 Microcode
> Jul 11 21:30:23 ariolc kernel: [  131.911461] [drm] radeon: ring at
> 0x00000000BE000000
> Jul 11 21:30:23 ariolc kernel: [  132.055912] [drm:r100_ring_test]
> *ERROR* radeon: ring test failed (sracth(0x15E4)=0xCAFEDEAD)
> Jul 11 21:30:23 ariolc kernel: [  132.055918] [drm:r100_cp_init]
> *ERROR* radeon: cp isn't working (-22).
> Jul 11 21:30:23 ariolc kernel: [  132.055925] radeon 0000:01:05.0:
> failled initializing CP (-22).
> Jul 11 21:30:23 ariolc kernel: [  132.055929] radeon 0000:01:05.0:
> Disabling GPU acceleration
> Jul 11 21:30:23 ariolc kernel: [  132.056174] [drm] radeon: cp finalized
> Jul 11 21:30:23 ariolc kernel: [  132.057378] [drm] Default TV standard: NTSC
> Jul 11 21:30:23 ariolc kernel: [  132.058671] [drm] Default TV standard: NTSC
> Jul 11 21:30:23 ariolc kernel: [  132.059748] [drm] Radeon Display Connectors
> Jul 11 21:30:23 ariolc kernel: [  132.059753] [drm] Connector 0:
> Jul 11 21:30:23 ariolc kernel: [  132.059756] [drm]   VGA
> Jul 11 21:30:23 ariolc kernel: [  132.059763] [drm]   DDC: 0x7e50
> 0x7e40 0x7e54 0x7e44 0x7e58 0x7e48 0x7e5c 0x7e4c
> Jul 11 21:30:23 ariolc kernel: [  132.059766] [drm]   Encoders:
> Jul 11 21:30:23 ariolc kernel: [  132.059770] [drm]     CRT1:
> INTERNAL_KLDSCP_DAC1
> Jul 11 21:30:23 ariolc kernel: [  132.059773] [drm] Connector 1:
> Jul 11 21:30:23 ariolc kernel: [  132.059776] [drm]   S-video
> Jul 11 21:30:23 ariolc kernel: [  132.059778] [drm]   Encoders:
> Jul 11 21:30:23 ariolc kernel: [  132.059781] [drm]     TV1:
> INTERNAL_KLDSCP_DAC1
> Jul 11 21:30:23 ariolc kernel: [  132.059784] [drm] Connector 2:
> Jul 11 21:30:23 ariolc kernel: [  132.059787] [drm]   HDMI-A
> Jul 11 21:30:23 ariolc kernel: [  132.059792] [drm]   DDC: 0x7e40
> 0x7e50 0x7e44 0x7e54 0x7e48 0x7e58 0x7e4c 0x7e5c
> Jul 11 21:30:23 ariolc kernel: [  132.059795] [drm]   Encoders:
> Jul 11 21:30:23 ariolc kernel: [  132.059798] [drm]     DFP3: INTERNAL_LVTM1
> Jul 11 21:30:23 ariolc kernel: [  132.253484] [drm] fb mappable at 0xFC040000
> Jul 11 21:30:23 ariolc kernel: [  132.253488] [drm] vram apper at 0xFC000000
> Jul 11 21:30:23 ariolc kernel: [  132.253489] [drm] size 786432
> Jul 11 21:30:23 ariolc kernel: [  132.253491] [drm] fb depth is 8
> Jul 11 21:30:23 ariolc kernel: [  132.253492] [drm]    pitch is 1024
> Jul 11 21:30:23 ariolc kernel: [  132.253880] fbcon: radeondrmfb (fb0)
> is primary device
>
> Hardware info: (lspci -vv from 2.6.33)
> 00:00.0 Host bridge: ATI Technologies Inc RS690 Host Bridge
>        Subsystem: ATI Technologies Inc RS690 Host Bridge
>        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: 0
>
> 00:01.0 PCI bridge: ATI Technologies Inc RS690 PCI to PCI Bridge
> (Internal gfx) (prog-if 00 [Normal decode])
>        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
>        Bus: primary=00, secondary=01, subordinate=01, sec-latency=64
>        I/O behind bridge: 0000c000-0000cfff
>        Memory behind bridge: fe800000-fe9fffff
>        Prefetchable memory behind bridge: 00000000fc000000-00000000fdffffff
>        Secondary status: 66MHz+ FastB2B- ParErr- DEVSEL=medium
>>TAbort- <TAbort- <MAbort- <SERR- <PERR-
>        BridgeCtl: Parity- SERR+ NoISA- VGA+ MAbort- >Reset- FastB2B-
>                PriDiscTmr- SecDiscTmr- DiscTmrStat- DiscTmrSERREn-
>        Capabilities: [44] HyperTransport: MSI Mapping Enable+ Fixed+
>        Capabilities: [b0] Subsystem: ATI Technologies Inc RS690 PCI
> to PCI Bridge (Internal gfx)
>
> 00:07.0 PCI bridge: ATI Technologies Inc RS690 PCI to PCI Bridge (PCI
> Express Port 3) (
> prog-if 00 [Normal decode])
>        Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop-
> ParErr- Stepping- S
> ERR+ FastB2B- DisINTx+
>        Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort-
> <TAbort- <MAbort
> - >SERR- <PERR- INTx-
>        Latency: 0, Cache Line Size: 64 bytes
>        Bus: primary=00, secondary=02, subordinate=02, sec-latency=0
>        I/O behind bridge: 0000d000-0000dfff
>        Memory behind bridge: fea00000-feafffff
>        Secondary status: 66MHz- FastB2B- ParErr- DEVSEL=fast >TAbort-
> <TAbort- <MAbort
> - <SERR- <PERR-
>        BridgeCtl: Parity+ SERR+ NoISA- VGA- MAbort- >Reset- FastB2B-
>                PriDiscTmr- SecDiscTmr- DiscTmrStat- DiscTmrSERREn-
>        Capabilities: [50] Power Management version 3
>                Flags: PMEClk- DSI- D1- D2- AuxCurrent=0mA
> PME(D0+,D1-,D2-,D3hot+,D3col
> d+)
>                Status: D0 NoSoftRst- PME-Enable- DSel=0 DScale=0 PME-
>        Capabilities: [58] Express (v1) Root Port (Slot+), MSI 00
>                DevCap: MaxPayload 128 bytes, PhantFunc 0, Latency L0s
> <64ns, L1 <1us
>                        ExtTag+ 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 #4, Speed 2.5GT/s, Width x1, ASPM L0s L1,
> Latency L0 <64ns, L1 <1us
>                        ClockPM- Surprise- LLActRep+ BwNot-
>                LnkCtl: ASPM Disabled; RCB 64 bytes Disabled- Retrain- CommClk+
>                        ExtSynch- ClockPM- AutWidDis- BWInt- AutBWInt-
>                LnkSta: Speed 2.5GT/s, Width x1, TrErr- Train-
> SlotClk+ DLActive+ BWMgmt- ABWMgmt-
>                SltCap: AttnBtn- PwrCtrl- MRL- AttnInd- PwrInd-
> HotPlug- Surpise-
>                        Slot #  6, PowerLimit 25.000000; Interlock- NoCompl-
>                SltCtl: Enable: AttnBtn- PwrFlt- MRL- PresDet-
> CmdCplt- HPIrq- LinkChg-
>                        Control: AttnInd Off, PwrInd Off, Power- Interlock-
>                SltSta: Status: AttnBtn- PowerFlt- MRL- CmdCplt-
> PresDet+ Interlock-
>                        Changed: MRL- PresDet+ LinkState-
>                RootCtl: ErrCorrectable- ErrNon-Fatal- ErrFatal-
> PMEIntEna- CRSVisible-
>                RootCap: CRSVisible-
>                RootSta: PME ReqID 0000, PMEStatus- PMEPending-
>        Capabilities: [80] MSI: Enable+ Count=1/1 Maskable- 64bit-
>                Address: fee0300c  Data: 4149
>        Capabilities: [b0] Subsystem: ATI Technologies Inc RS690 PCI
> to PCI Bridge
>        Capabilities: [b8] HyperTransport: MSI Mapping Enable+ Fixed+
>        Capabilities: [100] Virtual Channel <?>
>        Kernel driver in use: pcieport
>
> KMS was working stable on 2.6.33 and seems to work on 2.6.34 (Not
> really tested, because 2.6.34 is not working for me, but I'm not sure
> if that is KMS related)
>
> Output from working KMS in 2.6.33:
> [    0.385804] [drm] Initialized drm 1.1.0 20060810
> [    0.385896] [drm] radeon defaulting to kernel modesetting.
> [    0.385955] [drm] radeon kernel modesetting enabled.
> [    0.386066] radeon 0000:01:05.0: PCI INT A -> GSI 18 (level, low) -> IRQ 18
> [    0.388388] [drm] radeon: Initializing kernel modesetting.
> [    0.388534] [drm] register mmio base: 0xFE9F0000
> [    0.388593] [drm] register mmio size: 65536
> [    0.389106] ATOM BIOS: ATI
> [    0.389374] [drm] GPU reset succeed (RBBM_STATUS=0x10000140)
> [    0.389436] [drm] radeon: VRAM 32M
> [    0.389495] [drm] radeon: VRAM from 0xDE000000 to 0xDFFFFFFF
> [    0.389554] [drm] radeon: GTT 512M
> [    0.389612] [drm] radeon: GTT from 0x00000000 to 0x1FFFFFFF
> [    0.389688] radeon 0000:01:05.0: irq 25 for MSI/MSI-X
> [    0.389692] [drm] radeon: using MSI.
> [    0.389766] [drm] radeon: irq initialized.
> [    0.389828] mtrr: type mismatch for fc000000,2000000 old:
> write-back new: write-combining
> [    0.389902] [drm] Detected VRAM RAM=32M, BAR=32M
> [    0.389960] [drm] RAM width 128bits DDR
> [    0.390238] [TTM] Zone  kernel: Available graphics memory: 2010380 kiB.
> [    0.390313] [drm] radeon: 32M of VRAM memory ready
> [    0.390372] [drm] radeon: 512M of GTT memory ready.
> [    0.390431] [drm] GART: num cpu pages 131072, num gpu pages 131072
> [    0.393504] [drm] radeon: 1 quad pipes, 1 z pipes initialized.
> [    0.393568] [drm] radeon: cp idle (0x10000C03)
> [    0.393691] [drm] Loading RS690/RS740 Microcode
> [    0.393751] platform radeon_cp.0: firmware: using built-in firmware
> radeon/RS690_cp.bin
> [    0.393964] [drm] radeon: ring at 0x0000000000000000
> [    0.394039] [drm] ring test succeeded in 1 usecs
> [    0.394180] [drm] radeon: ib pool ready.
> [    0.394249] [drm] ib test succeeded in 0 usecs
> [    0.394454] [drm] Default TV standard: NTSC
> [    0.394690] [drm] Radeon Display Connectors
> [    0.394749] [drm] Connector 0:
> [    0.394807] [drm]   VGA
> [    0.394865] [drm]   DDC: 0x7e50 0x7e40 0x7e54 0x7e44 0x7e58 0x7e48
> 0x7e5c 0x7e4c
> [    0.394938] [drm]   Encoders:
> [    0.394996] [drm]     CRT1: INTERNAL_KLDSCP_DAC1
> [    0.395055] [drm] Connector 1:
> [    0.395112] [drm]   S-video
> [    0.395169] [drm]   Encoders:
> [    0.395227] [drm]     TV1: INTERNAL_KLDSCP_DAC1
> [    0.395285] [drm] Connector 2:
> [    0.395343] [drm]   HDMI-A
> [    0.395401] [drm]   DDC: 0x7e40 0x7e50 0x7e44 0x7e54 0x7e48 0x7e58
> 0x7e4c 0x7e5c
> [    0.395474] [drm]   Encoders:
> [    0.395532] [drm]     DFP3: INTERNAL_LVTM1
> [    0.593345] [drm] fb mappable at 0xFC040000
> [    0.593404] [drm] vram apper at 0xFC000000
> [    0.593462] [drm] size 786432
> [    0.593519] [drm] fb depth is 8
> [    0.593576] [drm]    pitch is 1024
> [    0.615713] Console: switching to colour frame buffer device 128x48
> [    0.617300] fb0: radeondrmfb frame buffer device
> [    0.617319] registered panic notifier
> [    0.617337] [drm] Initialized radeon 2.0.0 20080528 for
> 0000:01:05.0 on minor 0
>
> Please ask, if I should provide more information or test something.

Can you bisect to see what commit broke it?

Alex

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: Regression 2.6.34->2.6.35-rc4: radeaon KMS an RS690 broken
  2010-07-12 15:23 ` Alex Deucher
@ 2010-07-12 19:54   ` Torsten Kaiser
  2010-07-12 21:03     ` Alex Deucher
  2010-07-12 21:38     ` Alex Deucher
  0 siblings, 2 replies; 17+ messages in thread
From: Torsten Kaiser @ 2010-07-12 19:54 UTC (permalink / raw)
  To: Alex Deucher; +Cc: DRI mailing list, linux-kernel

On Mon, Jul 12, 2010 at 5:23 PM, Alex Deucher <alexdeucher@gmail.com> wrote:
> On Sun, Jul 11, 2010 at 3:56 PM, Torsten Kaiser
> <just.for.lkml@googlemail.com> wrote:
>> I just tried 2.6.35-rc4 to see, if a different bug is fixed, but noted
>> that this kernel will only boot with radeon.modeset=0.
>>
>> If KMS is active the display turns off and the system is completely
>> dead, not even SysRq+B is working.
>>
>> I build a new kernel with the radeon driver as a module and inserted
>> it by hand via ssh.
>> The ssh session, I was using has this output:
>> ariolc drm # insmod ./drm_kms_helper.ko
>> ariolc drm # insmod ttm/ttm.ko
>> ariolc drm # insmod radeon/radeon.ko
>> Segmentation fault
>> ariolc drm #
>>
>> The final insmod segfaulted, the shell was displaying a new prompt,
>> but not new input was possible.
>> The system still reacted to ping and trying to create a new ssh
>> connection resulted in a password prompt, but after entering the
>> password no shell was provided.
>> I tried SysRq+S, SysRq+U and SysRq+B, but not visible result. After a
>> reboot I did not find any additional information in /var/log/messages.
>> The effect was like the boot time failures with a builtin radeon
>> driver: The display (attached to the VGA output) just turns off.
>>
>> But I had a second ssh connection open, doing tail -f /var/log/messages:
>> Jul 11 21:30:23 ariolc kernel: [  131.720470] [drm] radeon defaulting
>> to kernel modesetting.
>> Jul 11 21:30:23 ariolc kernel: [  131.720477] [drm] radeon kernel
>> modesetting enabled.
>> Jul 11 21:30:23 ariolc kernel: [  131.720623] radeon 0000:01:05.0: PCI
>> INT A -> GSI 18 (level, low) -> IRQ 18
>> Jul 11 21:30:23 ariolc kernel: [  131.726859] [drm] initializing
>> kernel modesetting (RS690 0x1002:0x791E).
>> Jul 11 21:30:23 ariolc kernel: [  131.728607] [drm] register mmio
>> base: 0xFE9F0000
>> Jul 11 21:30:23 ariolc kernel: [  131.728613] [drm] register mmio
>> size: 65536
>> Jul 11 21:30:23 ariolc kernel: [  131.729591] ATOM BIOS: ATI
>> Jul 11 21:30:23 ariolc kernel: [  131.729625] radeon 0000:01:05.0:
>> VRAM: 32M 0xDE000000 - 0xDFFFFFFF (32M used)
>> Jul 11 21:30:23 ariolc kernel: [  131.729632] radeon 0000:01:05.0:
>> GTT: 512M 0xBE000000 - 0xDDFFFFFF
>> Jul 11 21:30:23 ariolc kernel: [  131.729675] [drm] radeon: irq initialized.
>> Jul 11 21:30:23 ariolc kernel: [  131.729690] mtrr: type mismatch for
>> fc000000,2000000 old: write-back new: write-combining
>> Jul 11 21:30:23 ariolc kernel: [  131.729696] [drm] Detected VRAM
>> RAM=32M, BAR=32M
>> Jul 11 21:30:23 ariolc kernel: [  131.729701] [drm] RAM width 128bits DDR
>> Jul 11 21:30:23 ariolc kernel: [  131.729796] [TTM] Zone  kernel:
>> Available graphics memory: 2010998 kiB.
>> Jul 11 21:30:23 ariolc kernel: [  131.729802] [TTM] Initializing pool allocator.
>> Jul 11 21:30:23 ariolc kernel: [  131.729841] [drm] radeon: 32M of
>> VRAM memory ready
>> Jul 11 21:30:23 ariolc kernel: [  131.729846] [drm] radeon: 512M of
>> GTT memory ready.
>> Jul 11 21:30:23 ariolc kernel: [  131.729857] [drm] GART: num cpu
>> pages 131072, num gpu pages 131072
>> Jul 11 21:30:23 ariolc kernel: [  131.736223] [drm] radeon: 1 quad
>> pipes, 1 z pipes initialized.
>> Jul 11 21:30:23 ariolc kernel: [  131.752553] [drm] Loading
>> RS690/RS740 Microcode
>> Jul 11 21:30:23 ariolc kernel: [  131.911461] [drm] radeon: ring at
>> 0x00000000BE000000
>> Jul 11 21:30:23 ariolc kernel: [  132.055912] [drm:r100_ring_test]
>> *ERROR* radeon: ring test failed (sracth(0x15E4)=0xCAFEDEAD)
>> Jul 11 21:30:23 ariolc kernel: [  132.055918] [drm:r100_cp_init]
>> *ERROR* radeon: cp isn't working (-22).
>> Jul 11 21:30:23 ariolc kernel: [  132.055925] radeon 0000:01:05.0:
>> failled initializing CP (-22).
>> Jul 11 21:30:23 ariolc kernel: [  132.055929] radeon 0000:01:05.0:
>> Disabling GPU acceleration
>> Jul 11 21:30:23 ariolc kernel: [  132.056174] [drm] radeon: cp finalized
>> Jul 11 21:30:23 ariolc kernel: [  132.057378] [drm] Default TV standard: NTSC
>> Jul 11 21:30:23 ariolc kernel: [  132.058671] [drm] Default TV standard: NTSC
>> Jul 11 21:30:23 ariolc kernel: [  132.059748] [drm] Radeon Display Connectors
>> Jul 11 21:30:23 ariolc kernel: [  132.059753] [drm] Connector 0:
>> Jul 11 21:30:23 ariolc kernel: [  132.059756] [drm]   VGA
>> Jul 11 21:30:23 ariolc kernel: [  132.059763] [drm]   DDC: 0x7e50
>> 0x7e40 0x7e54 0x7e44 0x7e58 0x7e48 0x7e5c 0x7e4c
>> Jul 11 21:30:23 ariolc kernel: [  132.059766] [drm]   Encoders:
>> Jul 11 21:30:23 ariolc kernel: [  132.059770] [drm]     CRT1:
>> INTERNAL_KLDSCP_DAC1
>> Jul 11 21:30:23 ariolc kernel: [  132.059773] [drm] Connector 1:
>> Jul 11 21:30:23 ariolc kernel: [  132.059776] [drm]   S-video
>> Jul 11 21:30:23 ariolc kernel: [  132.059778] [drm]   Encoders:
>> Jul 11 21:30:23 ariolc kernel: [  132.059781] [drm]     TV1:
>> INTERNAL_KLDSCP_DAC1
>> Jul 11 21:30:23 ariolc kernel: [  132.059784] [drm] Connector 2:
>> Jul 11 21:30:23 ariolc kernel: [  132.059787] [drm]   HDMI-A
>> Jul 11 21:30:23 ariolc kernel: [  132.059792] [drm]   DDC: 0x7e40
>> 0x7e50 0x7e44 0x7e54 0x7e48 0x7e58 0x7e4c 0x7e5c
>> Jul 11 21:30:23 ariolc kernel: [  132.059795] [drm]   Encoders:
>> Jul 11 21:30:23 ariolc kernel: [  132.059798] [drm]     DFP3: INTERNAL_LVTM1
>> Jul 11 21:30:23 ariolc kernel: [  132.253484] [drm] fb mappable at 0xFC040000
>> Jul 11 21:30:23 ariolc kernel: [  132.253488] [drm] vram apper at 0xFC000000
>> Jul 11 21:30:23 ariolc kernel: [  132.253489] [drm] size 786432
>> Jul 11 21:30:23 ariolc kernel: [  132.253491] [drm] fb depth is 8
>> Jul 11 21:30:23 ariolc kernel: [  132.253492] [drm]    pitch is 1024
>> Jul 11 21:30:23 ariolc kernel: [  132.253880] fbcon: radeondrmfb (fb0)
>> is primary device
>>
>> Hardware info: (lspci -vv from 2.6.33)
>> 00:00.0 Host bridge: ATI Technologies Inc RS690 Host Bridge
>>        Subsystem: ATI Technologies Inc RS690 Host Bridge
>>        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: 0
>>
>> 00:01.0 PCI bridge: ATI Technologies Inc RS690 PCI to PCI Bridge
>> (Internal gfx) (prog-if 00 [Normal decode])
>>        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
>>        Bus: primary=00, secondary=01, subordinate=01, sec-latency=64
>>        I/O behind bridge: 0000c000-0000cfff
>>        Memory behind bridge: fe800000-fe9fffff
>>        Prefetchable memory behind bridge: 00000000fc000000-00000000fdffffff
>>        Secondary status: 66MHz+ FastB2B- ParErr- DEVSEL=medium
>>>TAbort- <TAbort- <MAbort- <SERR- <PERR-
>>        BridgeCtl: Parity- SERR+ NoISA- VGA+ MAbort- >Reset- FastB2B-
>>                PriDiscTmr- SecDiscTmr- DiscTmrStat- DiscTmrSERREn-
>>        Capabilities: [44] HyperTransport: MSI Mapping Enable+ Fixed+
>>        Capabilities: [b0] Subsystem: ATI Technologies Inc RS690 PCI
>> to PCI Bridge (Internal gfx)
>>
>> 00:07.0 PCI bridge: ATI Technologies Inc RS690 PCI to PCI Bridge (PCI
>> Express Port 3) (
>> prog-if 00 [Normal decode])
>>        Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop-
>> ParErr- Stepping- S
>> ERR+ FastB2B- DisINTx+
>>        Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort-
>> <TAbort- <MAbort
>> - >SERR- <PERR- INTx-
>>        Latency: 0, Cache Line Size: 64 bytes
>>        Bus: primary=00, secondary=02, subordinate=02, sec-latency=0
>>        I/O behind bridge: 0000d000-0000dfff
>>        Memory behind bridge: fea00000-feafffff
>>        Secondary status: 66MHz- FastB2B- ParErr- DEVSEL=fast >TAbort-
>> <TAbort- <MAbort
>> - <SERR- <PERR-
>>        BridgeCtl: Parity+ SERR+ NoISA- VGA- MAbort- >Reset- FastB2B-
>>                PriDiscTmr- SecDiscTmr- DiscTmrStat- DiscTmrSERREn-
>>        Capabilities: [50] Power Management version 3
>>                Flags: PMEClk- DSI- D1- D2- AuxCurrent=0mA
>> PME(D0+,D1-,D2-,D3hot+,D3col
>> d+)
>>                Status: D0 NoSoftRst- PME-Enable- DSel=0 DScale=0 PME-
>>        Capabilities: [58] Express (v1) Root Port (Slot+), MSI 00
>>                DevCap: MaxPayload 128 bytes, PhantFunc 0, Latency L0s
>> <64ns, L1 <1us
>>                        ExtTag+ 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 #4, Speed 2.5GT/s, Width x1, ASPM L0s L1,
>> Latency L0 <64ns, L1 <1us
>>                        ClockPM- Surprise- LLActRep+ BwNot-
>>                LnkCtl: ASPM Disabled; RCB 64 bytes Disabled- Retrain- CommClk+
>>                        ExtSynch- ClockPM- AutWidDis- BWInt- AutBWInt-
>>                LnkSta: Speed 2.5GT/s, Width x1, TrErr- Train-
>> SlotClk+ DLActive+ BWMgmt- ABWMgmt-
>>                SltCap: AttnBtn- PwrCtrl- MRL- AttnInd- PwrInd-
>> HotPlug- Surpise-
>>                        Slot #  6, PowerLimit 25.000000; Interlock- NoCompl-
>>                SltCtl: Enable: AttnBtn- PwrFlt- MRL- PresDet-
>> CmdCplt- HPIrq- LinkChg-
>>                        Control: AttnInd Off, PwrInd Off, Power- Interlock-
>>                SltSta: Status: AttnBtn- PowerFlt- MRL- CmdCplt-
>> PresDet+ Interlock-
>>                        Changed: MRL- PresDet+ LinkState-
>>                RootCtl: ErrCorrectable- ErrNon-Fatal- ErrFatal-
>> PMEIntEna- CRSVisible-
>>                RootCap: CRSVisible-
>>                RootSta: PME ReqID 0000, PMEStatus- PMEPending-
>>        Capabilities: [80] MSI: Enable+ Count=1/1 Maskable- 64bit-
>>                Address: fee0300c  Data: 4149
>>        Capabilities: [b0] Subsystem: ATI Technologies Inc RS690 PCI
>> to PCI Bridge
>>        Capabilities: [b8] HyperTransport: MSI Mapping Enable+ Fixed+
>>        Capabilities: [100] Virtual Channel <?>
>>        Kernel driver in use: pcieport
>>
>> KMS was working stable on 2.6.33 and seems to work on 2.6.34 (Not
>> really tested, because 2.6.34 is not working for me, but I'm not sure
>> if that is KMS related)
>>
>> Output from working KMS in 2.6.33:
>> [    0.385804] [drm] Initialized drm 1.1.0 20060810
>> [    0.385896] [drm] radeon defaulting to kernel modesetting.
>> [    0.385955] [drm] radeon kernel modesetting enabled.
>> [    0.386066] radeon 0000:01:05.0: PCI INT A -> GSI 18 (level, low) -> IRQ 18
>> [    0.388388] [drm] radeon: Initializing kernel modesetting.
>> [    0.388534] [drm] register mmio base: 0xFE9F0000
>> [    0.388593] [drm] register mmio size: 65536
>> [    0.389106] ATOM BIOS: ATI
>> [    0.389374] [drm] GPU reset succeed (RBBM_STATUS=0x10000140)
>> [    0.389436] [drm] radeon: VRAM 32M
>> [    0.389495] [drm] radeon: VRAM from 0xDE000000 to 0xDFFFFFFF
>> [    0.389554] [drm] radeon: GTT 512M
>> [    0.389612] [drm] radeon: GTT from 0x00000000 to 0x1FFFFFFF
>> [    0.389688] radeon 0000:01:05.0: irq 25 for MSI/MSI-X
>> [    0.389692] [drm] radeon: using MSI.
>> [    0.389766] [drm] radeon: irq initialized.
>> [    0.389828] mtrr: type mismatch for fc000000,2000000 old:
>> write-back new: write-combining
>> [    0.389902] [drm] Detected VRAM RAM=32M, BAR=32M
>> [    0.389960] [drm] RAM width 128bits DDR
>> [    0.390238] [TTM] Zone  kernel: Available graphics memory: 2010380 kiB.
>> [    0.390313] [drm] radeon: 32M of VRAM memory ready
>> [    0.390372] [drm] radeon: 512M of GTT memory ready.
>> [    0.390431] [drm] GART: num cpu pages 131072, num gpu pages 131072
>> [    0.393504] [drm] radeon: 1 quad pipes, 1 z pipes initialized.
>> [    0.393568] [drm] radeon: cp idle (0x10000C03)
>> [    0.393691] [drm] Loading RS690/RS740 Microcode
>> [    0.393751] platform radeon_cp.0: firmware: using built-in firmware
>> radeon/RS690_cp.bin
>> [    0.393964] [drm] radeon: ring at 0x0000000000000000
>> [    0.394039] [drm] ring test succeeded in 1 usecs
>> [    0.394180] [drm] radeon: ib pool ready.
>> [    0.394249] [drm] ib test succeeded in 0 usecs
>> [    0.394454] [drm] Default TV standard: NTSC
>> [    0.394690] [drm] Radeon Display Connectors
>> [    0.394749] [drm] Connector 0:
>> [    0.394807] [drm]   VGA
>> [    0.394865] [drm]   DDC: 0x7e50 0x7e40 0x7e54 0x7e44 0x7e58 0x7e48
>> 0x7e5c 0x7e4c
>> [    0.394938] [drm]   Encoders:
>> [    0.394996] [drm]     CRT1: INTERNAL_KLDSCP_DAC1
>> [    0.395055] [drm] Connector 1:
>> [    0.395112] [drm]   S-video
>> [    0.395169] [drm]   Encoders:
>> [    0.395227] [drm]     TV1: INTERNAL_KLDSCP_DAC1
>> [    0.395285] [drm] Connector 2:
>> [    0.395343] [drm]   HDMI-A
>> [    0.395401] [drm]   DDC: 0x7e40 0x7e50 0x7e44 0x7e54 0x7e48 0x7e58
>> 0x7e4c 0x7e5c
>> [    0.395474] [drm]   Encoders:
>> [    0.395532] [drm]     DFP3: INTERNAL_LVTM1
>> [    0.593345] [drm] fb mappable at 0xFC040000
>> [    0.593404] [drm] vram apper at 0xFC000000
>> [    0.593462] [drm] size 786432
>> [    0.593519] [drm] fb depth is 8
>> [    0.593576] [drm]    pitch is 1024
>> [    0.615713] Console: switching to colour frame buffer device 128x48
>> [    0.617300] fb0: radeondrmfb frame buffer device
>> [    0.617319] registered panic notifier
>> [    0.617337] [drm] Initialized radeon 2.0.0 20080528 for
>> 0000:01:05.0 on minor 0
>>
>> Please ask, if I should provide more information or test something.
>
> Can you bisect to see what commit broke it?
>
> Alex

Its you fault. ;-P

0888e883ea5ff8fac27e813256d6c1eaede5a234 is the first bad commit
commit 0888e883ea5ff8fac27e813256d6c1eaede5a234
Author: Alex Deucher <alexdeucher@gmail.com>
Date:   Sat Jun 12 11:50:13 2010 -0400

    drm/radeon/kms: fix bandwidth calculation when sideport is present

    Fixes fdo bug 27529:
    https://bugs.freedesktop.org/show_bug.cgi?id=27529

    Reported-by: steckdenis@yahoo.fr
    Signed-off-by: Alex Deucher <alexdeucher@gmail.com>
    Signed-off-by: Dave Airlie <airlied@redhat.com>

:040000 040000 2ff9114469e4569e1bebd659c9632c5b59bfc238
b0eb9a29c698da1eeb8289ba1180b8135a94ecd7 M     drivers

My system does not have any sideport memory.
The other revisions before this did boot into the correct KMS mode,
but I did not test X, because I'm using that system as a remote
desktop server and only sometimes the fb text console to debug
something that went wrong.

Torsten

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: Regression 2.6.34->2.6.35-rc4: radeaon KMS an RS690 broken
  2010-07-12 19:54   ` Torsten Kaiser
@ 2010-07-12 21:03     ` Alex Deucher
  2010-07-12 21:38     ` Alex Deucher
  1 sibling, 0 replies; 17+ messages in thread
From: Alex Deucher @ 2010-07-12 21:03 UTC (permalink / raw)
  To: Torsten Kaiser; +Cc: DRI mailing list, linux-kernel

On Mon, Jul 12, 2010 at 3:54 PM, Torsten Kaiser
<just.for.lkml@googlemail.com> wrote:
> On Mon, Jul 12, 2010 at 5:23 PM, Alex Deucher <alexdeucher@gmail.com> wrote:
>> On Sun, Jul 11, 2010 at 3:56 PM, Torsten Kaiser
>> <just.for.lkml@googlemail.com> wrote:
>>> I just tried 2.6.35-rc4 to see, if a different bug is fixed, but noted
>>> that this kernel will only boot with radeon.modeset=0.
>>>
>>> If KMS is active the display turns off and the system is completely
>>> dead, not even SysRq+B is working.
>>>
>>> I build a new kernel with the radeon driver as a module and inserted
>>> it by hand via ssh.
>>> The ssh session, I was using has this output:
>>> ariolc drm # insmod ./drm_kms_helper.ko
>>> ariolc drm # insmod ttm/ttm.ko
>>> ariolc drm # insmod radeon/radeon.ko
>>> Segmentation fault
>>> ariolc drm #
>>>
>>> The final insmod segfaulted, the shell was displaying a new prompt,
>>> but not new input was possible.
>>> The system still reacted to ping and trying to create a new ssh
>>> connection resulted in a password prompt, but after entering the
>>> password no shell was provided.
>>> I tried SysRq+S, SysRq+U and SysRq+B, but not visible result. After a
>>> reboot I did not find any additional information in /var/log/messages.
>>> The effect was like the boot time failures with a builtin radeon
>>> driver: The display (attached to the VGA output) just turns off.
>>>
>>> But I had a second ssh connection open, doing tail -f /var/log/messages:
>>> Jul 11 21:30:23 ariolc kernel: [  131.720470] [drm] radeon defaulting
>>> to kernel modesetting.
>>> Jul 11 21:30:23 ariolc kernel: [  131.720477] [drm] radeon kernel
>>> modesetting enabled.
>>> Jul 11 21:30:23 ariolc kernel: [  131.720623] radeon 0000:01:05.0: PCI
>>> INT A -> GSI 18 (level, low) -> IRQ 18
>>> Jul 11 21:30:23 ariolc kernel: [  131.726859] [drm] initializing
>>> kernel modesetting (RS690 0x1002:0x791E).
>>> Jul 11 21:30:23 ariolc kernel: [  131.728607] [drm] register mmio
>>> base: 0xFE9F0000
>>> Jul 11 21:30:23 ariolc kernel: [  131.728613] [drm] register mmio
>>> size: 65536
>>> Jul 11 21:30:23 ariolc kernel: [  131.729591] ATOM BIOS: ATI
>>> Jul 11 21:30:23 ariolc kernel: [  131.729625] radeon 0000:01:05.0:
>>> VRAM: 32M 0xDE000000 - 0xDFFFFFFF (32M used)
>>> Jul 11 21:30:23 ariolc kernel: [  131.729632] radeon 0000:01:05.0:
>>> GTT: 512M 0xBE000000 - 0xDDFFFFFF
>>> Jul 11 21:30:23 ariolc kernel: [  131.729675] [drm] radeon: irq initialized.
>>> Jul 11 21:30:23 ariolc kernel: [  131.729690] mtrr: type mismatch for
>>> fc000000,2000000 old: write-back new: write-combining
>>> Jul 11 21:30:23 ariolc kernel: [  131.729696] [drm] Detected VRAM
>>> RAM=32M, BAR=32M
>>> Jul 11 21:30:23 ariolc kernel: [  131.729701] [drm] RAM width 128bits DDR
>>> Jul 11 21:30:23 ariolc kernel: [  131.729796] [TTM] Zone  kernel:
>>> Available graphics memory: 2010998 kiB.
>>> Jul 11 21:30:23 ariolc kernel: [  131.729802] [TTM] Initializing pool allocator.
>>> Jul 11 21:30:23 ariolc kernel: [  131.729841] [drm] radeon: 32M of
>>> VRAM memory ready
>>> Jul 11 21:30:23 ariolc kernel: [  131.729846] [drm] radeon: 512M of
>>> GTT memory ready.
>>> Jul 11 21:30:23 ariolc kernel: [  131.729857] [drm] GART: num cpu
>>> pages 131072, num gpu pages 131072
>>> Jul 11 21:30:23 ariolc kernel: [  131.736223] [drm] radeon: 1 quad
>>> pipes, 1 z pipes initialized.
>>> Jul 11 21:30:23 ariolc kernel: [  131.752553] [drm] Loading
>>> RS690/RS740 Microcode
>>> Jul 11 21:30:23 ariolc kernel: [  131.911461] [drm] radeon: ring at
>>> 0x00000000BE000000
>>> Jul 11 21:30:23 ariolc kernel: [  132.055912] [drm:r100_ring_test]
>>> *ERROR* radeon: ring test failed (sracth(0x15E4)=0xCAFEDEAD)
>>> Jul 11 21:30:23 ariolc kernel: [  132.055918] [drm:r100_cp_init]
>>> *ERROR* radeon: cp isn't working (-22).
>>> Jul 11 21:30:23 ariolc kernel: [  132.055925] radeon 0000:01:05.0:
>>> failled initializing CP (-22).
>>> Jul 11 21:30:23 ariolc kernel: [  132.055929] radeon 0000:01:05.0:
>>> Disabling GPU acceleration
>>> Jul 11 21:30:23 ariolc kernel: [  132.056174] [drm] radeon: cp finalized
>>> Jul 11 21:30:23 ariolc kernel: [  132.057378] [drm] Default TV standard: NTSC
>>> Jul 11 21:30:23 ariolc kernel: [  132.058671] [drm] Default TV standard: NTSC
>>> Jul 11 21:30:23 ariolc kernel: [  132.059748] [drm] Radeon Display Connectors
>>> Jul 11 21:30:23 ariolc kernel: [  132.059753] [drm] Connector 0:
>>> Jul 11 21:30:23 ariolc kernel: [  132.059756] [drm]   VGA
>>> Jul 11 21:30:23 ariolc kernel: [  132.059763] [drm]   DDC: 0x7e50
>>> 0x7e40 0x7e54 0x7e44 0x7e58 0x7e48 0x7e5c 0x7e4c
>>> Jul 11 21:30:23 ariolc kernel: [  132.059766] [drm]   Encoders:
>>> Jul 11 21:30:23 ariolc kernel: [  132.059770] [drm]     CRT1:
>>> INTERNAL_KLDSCP_DAC1
>>> Jul 11 21:30:23 ariolc kernel: [  132.059773] [drm] Connector 1:
>>> Jul 11 21:30:23 ariolc kernel: [  132.059776] [drm]   S-video
>>> Jul 11 21:30:23 ariolc kernel: [  132.059778] [drm]   Encoders:
>>> Jul 11 21:30:23 ariolc kernel: [  132.059781] [drm]     TV1:
>>> INTERNAL_KLDSCP_DAC1
>>> Jul 11 21:30:23 ariolc kernel: [  132.059784] [drm] Connector 2:
>>> Jul 11 21:30:23 ariolc kernel: [  132.059787] [drm]   HDMI-A
>>> Jul 11 21:30:23 ariolc kernel: [  132.059792] [drm]   DDC: 0x7e40
>>> 0x7e50 0x7e44 0x7e54 0x7e48 0x7e58 0x7e4c 0x7e5c
>>> Jul 11 21:30:23 ariolc kernel: [  132.059795] [drm]   Encoders:
>>> Jul 11 21:30:23 ariolc kernel: [  132.059798] [drm]     DFP3: INTERNAL_LVTM1
>>> Jul 11 21:30:23 ariolc kernel: [  132.253484] [drm] fb mappable at 0xFC040000
>>> Jul 11 21:30:23 ariolc kernel: [  132.253488] [drm] vram apper at 0xFC000000
>>> Jul 11 21:30:23 ariolc kernel: [  132.253489] [drm] size 786432
>>> Jul 11 21:30:23 ariolc kernel: [  132.253491] [drm] fb depth is 8
>>> Jul 11 21:30:23 ariolc kernel: [  132.253492] [drm]    pitch is 1024
>>> Jul 11 21:30:23 ariolc kernel: [  132.253880] fbcon: radeondrmfb (fb0)
>>> is primary device
>>>
>>> Hardware info: (lspci -vv from 2.6.33)
>>> 00:00.0 Host bridge: ATI Technologies Inc RS690 Host Bridge
>>>        Subsystem: ATI Technologies Inc RS690 Host Bridge
>>>        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: 0
>>>
>>> 00:01.0 PCI bridge: ATI Technologies Inc RS690 PCI to PCI Bridge
>>> (Internal gfx) (prog-if 00 [Normal decode])
>>>        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
>>>        Bus: primary=00, secondary=01, subordinate=01, sec-latency=64
>>>        I/O behind bridge: 0000c000-0000cfff
>>>        Memory behind bridge: fe800000-fe9fffff
>>>        Prefetchable memory behind bridge: 00000000fc000000-00000000fdffffff
>>>        Secondary status: 66MHz+ FastB2B- ParErr- DEVSEL=medium
>>>>TAbort- <TAbort- <MAbort- <SERR- <PERR-
>>>        BridgeCtl: Parity- SERR+ NoISA- VGA+ MAbort- >Reset- FastB2B-
>>>                PriDiscTmr- SecDiscTmr- DiscTmrStat- DiscTmrSERREn-
>>>        Capabilities: [44] HyperTransport: MSI Mapping Enable+ Fixed+
>>>        Capabilities: [b0] Subsystem: ATI Technologies Inc RS690 PCI
>>> to PCI Bridge (Internal gfx)
>>>
>>> 00:07.0 PCI bridge: ATI Technologies Inc RS690 PCI to PCI Bridge (PCI
>>> Express Port 3) (
>>> prog-if 00 [Normal decode])
>>>        Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop-
>>> ParErr- Stepping- S
>>> ERR+ FastB2B- DisINTx+
>>>        Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort-
>>> <TAbort- <MAbort
>>> - >SERR- <PERR- INTx-
>>>        Latency: 0, Cache Line Size: 64 bytes
>>>        Bus: primary=00, secondary=02, subordinate=02, sec-latency=0
>>>        I/O behind bridge: 0000d000-0000dfff
>>>        Memory behind bridge: fea00000-feafffff
>>>        Secondary status: 66MHz- FastB2B- ParErr- DEVSEL=fast >TAbort-
>>> <TAbort- <MAbort
>>> - <SERR- <PERR-
>>>        BridgeCtl: Parity+ SERR+ NoISA- VGA- MAbort- >Reset- FastB2B-
>>>                PriDiscTmr- SecDiscTmr- DiscTmrStat- DiscTmrSERREn-
>>>        Capabilities: [50] Power Management version 3
>>>                Flags: PMEClk- DSI- D1- D2- AuxCurrent=0mA
>>> PME(D0+,D1-,D2-,D3hot+,D3col
>>> d+)
>>>                Status: D0 NoSoftRst- PME-Enable- DSel=0 DScale=0 PME-
>>>        Capabilities: [58] Express (v1) Root Port (Slot+), MSI 00
>>>                DevCap: MaxPayload 128 bytes, PhantFunc 0, Latency L0s
>>> <64ns, L1 <1us
>>>                        ExtTag+ 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 #4, Speed 2.5GT/s, Width x1, ASPM L0s L1,
>>> Latency L0 <64ns, L1 <1us
>>>                        ClockPM- Surprise- LLActRep+ BwNot-
>>>                LnkCtl: ASPM Disabled; RCB 64 bytes Disabled- Retrain- CommClk+
>>>                        ExtSynch- ClockPM- AutWidDis- BWInt- AutBWInt-
>>>                LnkSta: Speed 2.5GT/s, Width x1, TrErr- Train-
>>> SlotClk+ DLActive+ BWMgmt- ABWMgmt-
>>>                SltCap: AttnBtn- PwrCtrl- MRL- AttnInd- PwrInd-
>>> HotPlug- Surpise-
>>>                        Slot #  6, PowerLimit 25.000000; Interlock- NoCompl-
>>>                SltCtl: Enable: AttnBtn- PwrFlt- MRL- PresDet-
>>> CmdCplt- HPIrq- LinkChg-
>>>                        Control: AttnInd Off, PwrInd Off, Power- Interlock-
>>>                SltSta: Status: AttnBtn- PowerFlt- MRL- CmdCplt-
>>> PresDet+ Interlock-
>>>                        Changed: MRL- PresDet+ LinkState-
>>>                RootCtl: ErrCorrectable- ErrNon-Fatal- ErrFatal-
>>> PMEIntEna- CRSVisible-
>>>                RootCap: CRSVisible-
>>>                RootSta: PME ReqID 0000, PMEStatus- PMEPending-
>>>        Capabilities: [80] MSI: Enable+ Count=1/1 Maskable- 64bit-
>>>                Address: fee0300c  Data: 4149
>>>        Capabilities: [b0] Subsystem: ATI Technologies Inc RS690 PCI
>>> to PCI Bridge
>>>        Capabilities: [b8] HyperTransport: MSI Mapping Enable+ Fixed+
>>>        Capabilities: [100] Virtual Channel <?>
>>>        Kernel driver in use: pcieport
>>>
>>> KMS was working stable on 2.6.33 and seems to work on 2.6.34 (Not
>>> really tested, because 2.6.34 is not working for me, but I'm not sure
>>> if that is KMS related)
>>>
>>> Output from working KMS in 2.6.33:
>>> [    0.385804] [drm] Initialized drm 1.1.0 20060810
>>> [    0.385896] [drm] radeon defaulting to kernel modesetting.
>>> [    0.385955] [drm] radeon kernel modesetting enabled.
>>> [    0.386066] radeon 0000:01:05.0: PCI INT A -> GSI 18 (level, low) -> IRQ 18
>>> [    0.388388] [drm] radeon: Initializing kernel modesetting.
>>> [    0.388534] [drm] register mmio base: 0xFE9F0000
>>> [    0.388593] [drm] register mmio size: 65536
>>> [    0.389106] ATOM BIOS: ATI
>>> [    0.389374] [drm] GPU reset succeed (RBBM_STATUS=0x10000140)
>>> [    0.389436] [drm] radeon: VRAM 32M
>>> [    0.389495] [drm] radeon: VRAM from 0xDE000000 to 0xDFFFFFFF
>>> [    0.389554] [drm] radeon: GTT 512M
>>> [    0.389612] [drm] radeon: GTT from 0x00000000 to 0x1FFFFFFF
>>> [    0.389688] radeon 0000:01:05.0: irq 25 for MSI/MSI-X
>>> [    0.389692] [drm] radeon: using MSI.
>>> [    0.389766] [drm] radeon: irq initialized.
>>> [    0.389828] mtrr: type mismatch for fc000000,2000000 old:
>>> write-back new: write-combining
>>> [    0.389902] [drm] Detected VRAM RAM=32M, BAR=32M
>>> [    0.389960] [drm] RAM width 128bits DDR
>>> [    0.390238] [TTM] Zone  kernel: Available graphics memory: 2010380 kiB.
>>> [    0.390313] [drm] radeon: 32M of VRAM memory ready
>>> [    0.390372] [drm] radeon: 512M of GTT memory ready.
>>> [    0.390431] [drm] GART: num cpu pages 131072, num gpu pages 131072
>>> [    0.393504] [drm] radeon: 1 quad pipes, 1 z pipes initialized.
>>> [    0.393568] [drm] radeon: cp idle (0x10000C03)
>>> [    0.393691] [drm] Loading RS690/RS740 Microcode
>>> [    0.393751] platform radeon_cp.0: firmware: using built-in firmware
>>> radeon/RS690_cp.bin
>>> [    0.393964] [drm] radeon: ring at 0x0000000000000000
>>> [    0.394039] [drm] ring test succeeded in 1 usecs
>>> [    0.394180] [drm] radeon: ib pool ready.
>>> [    0.394249] [drm] ib test succeeded in 0 usecs
>>> [    0.394454] [drm] Default TV standard: NTSC
>>> [    0.394690] [drm] Radeon Display Connectors
>>> [    0.394749] [drm] Connector 0:
>>> [    0.394807] [drm]   VGA
>>> [    0.394865] [drm]   DDC: 0x7e50 0x7e40 0x7e54 0x7e44 0x7e58 0x7e48
>>> 0x7e5c 0x7e4c
>>> [    0.394938] [drm]   Encoders:
>>> [    0.394996] [drm]     CRT1: INTERNAL_KLDSCP_DAC1
>>> [    0.395055] [drm] Connector 1:
>>> [    0.395112] [drm]   S-video
>>> [    0.395169] [drm]   Encoders:
>>> [    0.395227] [drm]     TV1: INTERNAL_KLDSCP_DAC1
>>> [    0.395285] [drm] Connector 2:
>>> [    0.395343] [drm]   HDMI-A
>>> [    0.395401] [drm]   DDC: 0x7e40 0x7e50 0x7e44 0x7e54 0x7e48 0x7e58
>>> 0x7e4c 0x7e5c
>>> [    0.395474] [drm]   Encoders:
>>> [    0.395532] [drm]     DFP3: INTERNAL_LVTM1
>>> [    0.593345] [drm] fb mappable at 0xFC040000
>>> [    0.593404] [drm] vram apper at 0xFC000000
>>> [    0.593462] [drm] size 786432
>>> [    0.593519] [drm] fb depth is 8
>>> [    0.593576] [drm]    pitch is 1024
>>> [    0.615713] Console: switching to colour frame buffer device 128x48
>>> [    0.617300] fb0: radeondrmfb frame buffer device
>>> [    0.617319] registered panic notifier
>>> [    0.617337] [drm] Initialized radeon 2.0.0 20080528 for
>>> 0000:01:05.0 on minor 0
>>>
>>> Please ask, if I should provide more information or test something.
>>
>> Can you bisect to see what commit broke it?
>>
>> Alex
>
> Its you fault. ;-P
>
> 0888e883ea5ff8fac27e813256d6c1eaede5a234 is the first bad commit
> commit 0888e883ea5ff8fac27e813256d6c1eaede5a234
> Author: Alex Deucher <alexdeucher@gmail.com>
> Date:   Sat Jun 12 11:50:13 2010 -0400
>
>    drm/radeon/kms: fix bandwidth calculation when sideport is present
>
>    Fixes fdo bug 27529:
>    https://bugs.freedesktop.org/show_bug.cgi?id=27529
>
>    Reported-by: steckdenis@yahoo.fr
>    Signed-off-by: Alex Deucher <alexdeucher@gmail.com>
>    Signed-off-by: Dave Airlie <airlied@redhat.com>
>
> :040000 040000 2ff9114469e4569e1bebd659c9632c5b59bfc238
> b0eb9a29c698da1eeb8289ba1180b8135a94ecd7 M     drivers
>
> My system does not have any sideport memory.
> The other revisions before this did boot into the correct KMS mode,
> but I did not test X, because I'm using that system as a remote
> desktop server and only sometimes the fb text console to debug
> something that went wrong.
>

Make sure your kernel has this patch:
http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commitdiff;h=f892034a8ce80ed7098f667aae2eb6300e570603

If it's still a problem even with that patch, send me a copy of your
vbios (as root):
cd /sys/bus/pci/devices/<pci bus id>
echo 1 > rom
cat rom > /tmp/rs690.rom
echo 0 > rom

Alex

> Torsten
>

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: Regression 2.6.34->2.6.35-rc4: radeaon KMS an RS690 broken
  2010-07-12 19:54   ` Torsten Kaiser
  2010-07-12 21:03     ` Alex Deucher
@ 2010-07-12 21:38     ` Alex Deucher
  2010-07-13 18:29         ` Torsten Kaiser
  1 sibling, 1 reply; 17+ messages in thread
From: Alex Deucher @ 2010-07-12 21:38 UTC (permalink / raw)
  To: Torsten Kaiser; +Cc: DRI mailing list, linux-kernel

[-- Attachment #1: Type: text/plain, Size: 15274 bytes --]

On Mon, Jul 12, 2010 at 3:54 PM, Torsten Kaiser
<just.for.lkml@googlemail.com> wrote:
> On Mon, Jul 12, 2010 at 5:23 PM, Alex Deucher <alexdeucher@gmail.com> wrote:
>> On Sun, Jul 11, 2010 at 3:56 PM, Torsten Kaiser
>> <just.for.lkml@googlemail.com> wrote:
>>> I just tried 2.6.35-rc4 to see, if a different bug is fixed, but noted
>>> that this kernel will only boot with radeon.modeset=0.
>>>
>>> If KMS is active the display turns off and the system is completely
>>> dead, not even SysRq+B is working.
>>>
>>> I build a new kernel with the radeon driver as a module and inserted
>>> it by hand via ssh.
>>> The ssh session, I was using has this output:
>>> ariolc drm # insmod ./drm_kms_helper.ko
>>> ariolc drm # insmod ttm/ttm.ko
>>> ariolc drm # insmod radeon/radeon.ko
>>> Segmentation fault
>>> ariolc drm #
>>>
>>> The final insmod segfaulted, the shell was displaying a new prompt,
>>> but not new input was possible.
>>> The system still reacted to ping and trying to create a new ssh
>>> connection resulted in a password prompt, but after entering the
>>> password no shell was provided.
>>> I tried SysRq+S, SysRq+U and SysRq+B, but not visible result. After a
>>> reboot I did not find any additional information in /var/log/messages.
>>> The effect was like the boot time failures with a builtin radeon
>>> driver: The display (attached to the VGA output) just turns off.
>>>
>>> But I had a second ssh connection open, doing tail -f /var/log/messages:
>>> Jul 11 21:30:23 ariolc kernel: [  131.720470] [drm] radeon defaulting
>>> to kernel modesetting.
>>> Jul 11 21:30:23 ariolc kernel: [  131.720477] [drm] radeon kernel
>>> modesetting enabled.
>>> Jul 11 21:30:23 ariolc kernel: [  131.720623] radeon 0000:01:05.0: PCI
>>> INT A -> GSI 18 (level, low) -> IRQ 18
>>> Jul 11 21:30:23 ariolc kernel: [  131.726859] [drm] initializing
>>> kernel modesetting (RS690 0x1002:0x791E).
>>> Jul 11 21:30:23 ariolc kernel: [  131.728607] [drm] register mmio
>>> base: 0xFE9F0000
>>> Jul 11 21:30:23 ariolc kernel: [  131.728613] [drm] register mmio
>>> size: 65536
>>> Jul 11 21:30:23 ariolc kernel: [  131.729591] ATOM BIOS: ATI
>>> Jul 11 21:30:23 ariolc kernel: [  131.729625] radeon 0000:01:05.0:
>>> VRAM: 32M 0xDE000000 - 0xDFFFFFFF (32M used)
>>> Jul 11 21:30:23 ariolc kernel: [  131.729632] radeon 0000:01:05.0:
>>> GTT: 512M 0xBE000000 - 0xDDFFFFFF
>>> Jul 11 21:30:23 ariolc kernel: [  131.729675] [drm] radeon: irq initialized.
>>> Jul 11 21:30:23 ariolc kernel: [  131.729690] mtrr: type mismatch for
>>> fc000000,2000000 old: write-back new: write-combining
>>> Jul 11 21:30:23 ariolc kernel: [  131.729696] [drm] Detected VRAM
>>> RAM=32M, BAR=32M
>>> Jul 11 21:30:23 ariolc kernel: [  131.729701] [drm] RAM width 128bits DDR
>>> Jul 11 21:30:23 ariolc kernel: [  131.729796] [TTM] Zone  kernel:
>>> Available graphics memory: 2010998 kiB.
>>> Jul 11 21:30:23 ariolc kernel: [  131.729802] [TTM] Initializing pool allocator.
>>> Jul 11 21:30:23 ariolc kernel: [  131.729841] [drm] radeon: 32M of
>>> VRAM memory ready
>>> Jul 11 21:30:23 ariolc kernel: [  131.729846] [drm] radeon: 512M of
>>> GTT memory ready.
>>> Jul 11 21:30:23 ariolc kernel: [  131.729857] [drm] GART: num cpu
>>> pages 131072, num gpu pages 131072
>>> Jul 11 21:30:23 ariolc kernel: [  131.736223] [drm] radeon: 1 quad
>>> pipes, 1 z pipes initialized.
>>> Jul 11 21:30:23 ariolc kernel: [  131.752553] [drm] Loading
>>> RS690/RS740 Microcode
>>> Jul 11 21:30:23 ariolc kernel: [  131.911461] [drm] radeon: ring at
>>> 0x00000000BE000000
>>> Jul 11 21:30:23 ariolc kernel: [  132.055912] [drm:r100_ring_test]
>>> *ERROR* radeon: ring test failed (sracth(0x15E4)=0xCAFEDEAD)
>>> Jul 11 21:30:23 ariolc kernel: [  132.055918] [drm:r100_cp_init]
>>> *ERROR* radeon: cp isn't working (-22).
>>> Jul 11 21:30:23 ariolc kernel: [  132.055925] radeon 0000:01:05.0:
>>> failled initializing CP (-22).
>>> Jul 11 21:30:23 ariolc kernel: [  132.055929] radeon 0000:01:05.0:
>>> Disabling GPU acceleration
>>> Jul 11 21:30:23 ariolc kernel: [  132.056174] [drm] radeon: cp finalized
>>> Jul 11 21:30:23 ariolc kernel: [  132.057378] [drm] Default TV standard: NTSC
>>> Jul 11 21:30:23 ariolc kernel: [  132.058671] [drm] Default TV standard: NTSC
>>> Jul 11 21:30:23 ariolc kernel: [  132.059748] [drm] Radeon Display Connectors
>>> Jul 11 21:30:23 ariolc kernel: [  132.059753] [drm] Connector 0:
>>> Jul 11 21:30:23 ariolc kernel: [  132.059756] [drm]   VGA
>>> Jul 11 21:30:23 ariolc kernel: [  132.059763] [drm]   DDC: 0x7e50
>>> 0x7e40 0x7e54 0x7e44 0x7e58 0x7e48 0x7e5c 0x7e4c
>>> Jul 11 21:30:23 ariolc kernel: [  132.059766] [drm]   Encoders:
>>> Jul 11 21:30:23 ariolc kernel: [  132.059770] [drm]     CRT1:
>>> INTERNAL_KLDSCP_DAC1
>>> Jul 11 21:30:23 ariolc kernel: [  132.059773] [drm] Connector 1:
>>> Jul 11 21:30:23 ariolc kernel: [  132.059776] [drm]   S-video
>>> Jul 11 21:30:23 ariolc kernel: [  132.059778] [drm]   Encoders:
>>> Jul 11 21:30:23 ariolc kernel: [  132.059781] [drm]     TV1:
>>> INTERNAL_KLDSCP_DAC1
>>> Jul 11 21:30:23 ariolc kernel: [  132.059784] [drm] Connector 2:
>>> Jul 11 21:30:23 ariolc kernel: [  132.059787] [drm]   HDMI-A
>>> Jul 11 21:30:23 ariolc kernel: [  132.059792] [drm]   DDC: 0x7e40
>>> 0x7e50 0x7e44 0x7e54 0x7e48 0x7e58 0x7e4c 0x7e5c
>>> Jul 11 21:30:23 ariolc kernel: [  132.059795] [drm]   Encoders:
>>> Jul 11 21:30:23 ariolc kernel: [  132.059798] [drm]     DFP3: INTERNAL_LVTM1
>>> Jul 11 21:30:23 ariolc kernel: [  132.253484] [drm] fb mappable at 0xFC040000
>>> Jul 11 21:30:23 ariolc kernel: [  132.253488] [drm] vram apper at 0xFC000000
>>> Jul 11 21:30:23 ariolc kernel: [  132.253489] [drm] size 786432
>>> Jul 11 21:30:23 ariolc kernel: [  132.253491] [drm] fb depth is 8
>>> Jul 11 21:30:23 ariolc kernel: [  132.253492] [drm]    pitch is 1024
>>> Jul 11 21:30:23 ariolc kernel: [  132.253880] fbcon: radeondrmfb (fb0)
>>> is primary device
>>>
>>> Hardware info: (lspci -vv from 2.6.33)
>>> 00:00.0 Host bridge: ATI Technologies Inc RS690 Host Bridge
>>>        Subsystem: ATI Technologies Inc RS690 Host Bridge
>>>        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: 0
>>>
>>> 00:01.0 PCI bridge: ATI Technologies Inc RS690 PCI to PCI Bridge
>>> (Internal gfx) (prog-if 00 [Normal decode])
>>>        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
>>>        Bus: primary=00, secondary=01, subordinate=01, sec-latency=64
>>>        I/O behind bridge: 0000c000-0000cfff
>>>        Memory behind bridge: fe800000-fe9fffff
>>>        Prefetchable memory behind bridge: 00000000fc000000-00000000fdffffff
>>>        Secondary status: 66MHz+ FastB2B- ParErr- DEVSEL=medium
>>>>TAbort- <TAbort- <MAbort- <SERR- <PERR-
>>>        BridgeCtl: Parity- SERR+ NoISA- VGA+ MAbort- >Reset- FastB2B-
>>>                PriDiscTmr- SecDiscTmr- DiscTmrStat- DiscTmrSERREn-
>>>        Capabilities: [44] HyperTransport: MSI Mapping Enable+ Fixed+
>>>        Capabilities: [b0] Subsystem: ATI Technologies Inc RS690 PCI
>>> to PCI Bridge (Internal gfx)
>>>
>>> 00:07.0 PCI bridge: ATI Technologies Inc RS690 PCI to PCI Bridge (PCI
>>> Express Port 3) (
>>> prog-if 00 [Normal decode])
>>>        Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop-
>>> ParErr- Stepping- S
>>> ERR+ FastB2B- DisINTx+
>>>        Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort-
>>> <TAbort- <MAbort
>>> - >SERR- <PERR- INTx-
>>>        Latency: 0, Cache Line Size: 64 bytes
>>>        Bus: primary=00, secondary=02, subordinate=02, sec-latency=0
>>>        I/O behind bridge: 0000d000-0000dfff
>>>        Memory behind bridge: fea00000-feafffff
>>>        Secondary status: 66MHz- FastB2B- ParErr- DEVSEL=fast >TAbort-
>>> <TAbort- <MAbort
>>> - <SERR- <PERR-
>>>        BridgeCtl: Parity+ SERR+ NoISA- VGA- MAbort- >Reset- FastB2B-
>>>                PriDiscTmr- SecDiscTmr- DiscTmrStat- DiscTmrSERREn-
>>>        Capabilities: [50] Power Management version 3
>>>                Flags: PMEClk- DSI- D1- D2- AuxCurrent=0mA
>>> PME(D0+,D1-,D2-,D3hot+,D3col
>>> d+)
>>>                Status: D0 NoSoftRst- PME-Enable- DSel=0 DScale=0 PME-
>>>        Capabilities: [58] Express (v1) Root Port (Slot+), MSI 00
>>>                DevCap: MaxPayload 128 bytes, PhantFunc 0, Latency L0s
>>> <64ns, L1 <1us
>>>                        ExtTag+ 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 #4, Speed 2.5GT/s, Width x1, ASPM L0s L1,
>>> Latency L0 <64ns, L1 <1us
>>>                        ClockPM- Surprise- LLActRep+ BwNot-
>>>                LnkCtl: ASPM Disabled; RCB 64 bytes Disabled- Retrain- CommClk+
>>>                        ExtSynch- ClockPM- AutWidDis- BWInt- AutBWInt-
>>>                LnkSta: Speed 2.5GT/s, Width x1, TrErr- Train-
>>> SlotClk+ DLActive+ BWMgmt- ABWMgmt-
>>>                SltCap: AttnBtn- PwrCtrl- MRL- AttnInd- PwrInd-
>>> HotPlug- Surpise-
>>>                        Slot #  6, PowerLimit 25.000000; Interlock- NoCompl-
>>>                SltCtl: Enable: AttnBtn- PwrFlt- MRL- PresDet-
>>> CmdCplt- HPIrq- LinkChg-
>>>                        Control: AttnInd Off, PwrInd Off, Power- Interlock-
>>>                SltSta: Status: AttnBtn- PowerFlt- MRL- CmdCplt-
>>> PresDet+ Interlock-
>>>                        Changed: MRL- PresDet+ LinkState-
>>>                RootCtl: ErrCorrectable- ErrNon-Fatal- ErrFatal-
>>> PMEIntEna- CRSVisible-
>>>                RootCap: CRSVisible-
>>>                RootSta: PME ReqID 0000, PMEStatus- PMEPending-
>>>        Capabilities: [80] MSI: Enable+ Count=1/1 Maskable- 64bit-
>>>                Address: fee0300c  Data: 4149
>>>        Capabilities: [b0] Subsystem: ATI Technologies Inc RS690 PCI
>>> to PCI Bridge
>>>        Capabilities: [b8] HyperTransport: MSI Mapping Enable+ Fixed+
>>>        Capabilities: [100] Virtual Channel <?>
>>>        Kernel driver in use: pcieport
>>>
>>> KMS was working stable on 2.6.33 and seems to work on 2.6.34 (Not
>>> really tested, because 2.6.34 is not working for me, but I'm not sure
>>> if that is KMS related)
>>>
>>> Output from working KMS in 2.6.33:
>>> [    0.385804] [drm] Initialized drm 1.1.0 20060810
>>> [    0.385896] [drm] radeon defaulting to kernel modesetting.
>>> [    0.385955] [drm] radeon kernel modesetting enabled.
>>> [    0.386066] radeon 0000:01:05.0: PCI INT A -> GSI 18 (level, low) -> IRQ 18
>>> [    0.388388] [drm] radeon: Initializing kernel modesetting.
>>> [    0.388534] [drm] register mmio base: 0xFE9F0000
>>> [    0.388593] [drm] register mmio size: 65536
>>> [    0.389106] ATOM BIOS: ATI
>>> [    0.389374] [drm] GPU reset succeed (RBBM_STATUS=0x10000140)
>>> [    0.389436] [drm] radeon: VRAM 32M
>>> [    0.389495] [drm] radeon: VRAM from 0xDE000000 to 0xDFFFFFFF
>>> [    0.389554] [drm] radeon: GTT 512M
>>> [    0.389612] [drm] radeon: GTT from 0x00000000 to 0x1FFFFFFF
>>> [    0.389688] radeon 0000:01:05.0: irq 25 for MSI/MSI-X
>>> [    0.389692] [drm] radeon: using MSI.
>>> [    0.389766] [drm] radeon: irq initialized.
>>> [    0.389828] mtrr: type mismatch for fc000000,2000000 old:
>>> write-back new: write-combining
>>> [    0.389902] [drm] Detected VRAM RAM=32M, BAR=32M
>>> [    0.389960] [drm] RAM width 128bits DDR
>>> [    0.390238] [TTM] Zone  kernel: Available graphics memory: 2010380 kiB.
>>> [    0.390313] [drm] radeon: 32M of VRAM memory ready
>>> [    0.390372] [drm] radeon: 512M of GTT memory ready.
>>> [    0.390431] [drm] GART: num cpu pages 131072, num gpu pages 131072
>>> [    0.393504] [drm] radeon: 1 quad pipes, 1 z pipes initialized.
>>> [    0.393568] [drm] radeon: cp idle (0x10000C03)
>>> [    0.393691] [drm] Loading RS690/RS740 Microcode
>>> [    0.393751] platform radeon_cp.0: firmware: using built-in firmware
>>> radeon/RS690_cp.bin
>>> [    0.393964] [drm] radeon: ring at 0x0000000000000000
>>> [    0.394039] [drm] ring test succeeded in 1 usecs
>>> [    0.394180] [drm] radeon: ib pool ready.
>>> [    0.394249] [drm] ib test succeeded in 0 usecs
>>> [    0.394454] [drm] Default TV standard: NTSC
>>> [    0.394690] [drm] Radeon Display Connectors
>>> [    0.394749] [drm] Connector 0:
>>> [    0.394807] [drm]   VGA
>>> [    0.394865] [drm]   DDC: 0x7e50 0x7e40 0x7e54 0x7e44 0x7e58 0x7e48
>>> 0x7e5c 0x7e4c
>>> [    0.394938] [drm]   Encoders:
>>> [    0.394996] [drm]     CRT1: INTERNAL_KLDSCP_DAC1
>>> [    0.395055] [drm] Connector 1:
>>> [    0.395112] [drm]   S-video
>>> [    0.395169] [drm]   Encoders:
>>> [    0.395227] [drm]     TV1: INTERNAL_KLDSCP_DAC1
>>> [    0.395285] [drm] Connector 2:
>>> [    0.395343] [drm]   HDMI-A
>>> [    0.395401] [drm]   DDC: 0x7e40 0x7e50 0x7e44 0x7e54 0x7e48 0x7e58
>>> 0x7e4c 0x7e5c
>>> [    0.395474] [drm]   Encoders:
>>> [    0.395532] [drm]     DFP3: INTERNAL_LVTM1
>>> [    0.593345] [drm] fb mappable at 0xFC040000
>>> [    0.593404] [drm] vram apper at 0xFC000000
>>> [    0.593462] [drm] size 786432
>>> [    0.593519] [drm] fb depth is 8
>>> [    0.593576] [drm]    pitch is 1024
>>> [    0.615713] Console: switching to colour frame buffer device 128x48
>>> [    0.617300] fb0: radeondrmfb frame buffer device
>>> [    0.617319] registered panic notifier
>>> [    0.617337] [drm] Initialized radeon 2.0.0 20080528 for
>>> 0000:01:05.0 on minor 0
>>>
>>> Please ask, if I should provide more information or test something.
>>
>> Can you bisect to see what commit broke it?
>>
>> Alex
>
> Its you fault. ;-P
>
> 0888e883ea5ff8fac27e813256d6c1eaede5a234 is the first bad commit
> commit 0888e883ea5ff8fac27e813256d6c1eaede5a234
> Author: Alex Deucher <alexdeucher@gmail.com>
> Date:   Sat Jun 12 11:50:13 2010 -0400
>
>    drm/radeon/kms: fix bandwidth calculation when sideport is present
>
>    Fixes fdo bug 27529:
>    https://bugs.freedesktop.org/show_bug.cgi?id=27529
>
>    Reported-by: steckdenis@yahoo.fr
>    Signed-off-by: Alex Deucher <alexdeucher@gmail.com>
>    Signed-off-by: Dave Airlie <airlied@redhat.com>
>
> :040000 040000 2ff9114469e4569e1bebd659c9632c5b59bfc238
> b0eb9a29c698da1eeb8289ba1180b8135a94ecd7 M     drivers
>
> My system does not have any sideport memory.
> The other revisions before this did boot into the correct KMS mode,
> but I did not test X, because I'm using that system as a remote
> desktop server and only sometimes the fb text console to debug
> something that went wrong.

Does this patch help?

Alex

[-- Attachment #2: 0001-drm-radeon-kms-fix-possible-mis-detection-of-sidepor.patch --]
[-- Type: text/x-patch, Size: 1297 bytes --]

From 81d6abb7e9f70e91fd74ab8e5c0c5c8a9a237bc9 Mon Sep 17 00:00:00 2001
From: Alex Deucher <alexdeucher@gmail.com>
Date: Mon, 12 Jul 2010 17:33:50 -0400
Subject: [PATCH] drm/radeon/kms: fix possible mis-detection of sideport on rs690/rs740

Check ulBootUpMemoryClock on AMD IGPs.

Fix regression noticed by Torsten Kaiser <just.for.lkml@googlemail.com>

Signed-off-by: Alex Deucher <alexdeucher@gmail.com>
Cc: stable@kernel.org
---
 drivers/gpu/drm/radeon/radeon_atombios.c |   11 +++++++++--
 1 files changed, 9 insertions(+), 2 deletions(-)

diff --git a/drivers/gpu/drm/radeon/radeon_atombios.c b/drivers/gpu/drm/radeon/radeon_atombios.c
index 5dd86b9..3f89c9b 100644
--- a/drivers/gpu/drm/radeon/radeon_atombios.c
+++ b/drivers/gpu/drm/radeon/radeon_atombios.c
@@ -1029,8 +1029,15 @@ bool radeon_atombios_sideport_present(struct radeon_device *rdev)
 				      data_offset);
 		switch (crev) {
 		case 1:
-			if (igp_info->info.ucMemoryType & 0xf0)
-				return true;
+			/* AMD IGPS */
+			if ((rdev->family == CHIP_RS690) ||
+			    (rdev->family == CHIP_RS740)) {
+				if (igp_info->info.ulBootUpMemoryClock)
+					return true;
+			} else {
+				if (igp_info->info.ucMemoryType & 0xf0)
+					return true;
+			}
 			break;
 		case 2:
 			if (igp_info->info_2.ucMemoryType & 0x0f)
-- 
1.7.0.1


^ permalink raw reply related	[flat|nested] 17+ messages in thread

* Re: Regression 2.6.34->2.6.35-rc4: radeaon KMS an RS690 broken
  2010-07-12 21:38     ` Alex Deucher
@ 2010-07-13 18:29         ` Torsten Kaiser
  0 siblings, 0 replies; 17+ messages in thread
From: Torsten Kaiser @ 2010-07-13 18:29 UTC (permalink / raw)
  To: Alex Deucher; +Cc: DRI mailing list, linux-kernel

On Mon, Jul 12, 2010 at 11:38 PM, Alex Deucher <alexdeucher@gmail.com> wrote:
> On Mon, Jul 12, 2010 at 3:54 PM, Torsten Kaiser
> <just.for.lkml@googlemail.com> wrote:
>> 0888e883ea5ff8fac27e813256d6c1eaede5a234 is the first bad commit
>> commit 0888e883ea5ff8fac27e813256d6c1eaede5a234
>> Author: Alex Deucher <alexdeucher@gmail.com>
>> Date:   Sat Jun 12 11:50:13 2010 -0400
>>
>>    drm/radeon/kms: fix bandwidth calculation when sideport is present
>>
>>    Fixes fdo bug 27529:
>>    https://bugs.freedesktop.org/show_bug.cgi?id=27529
>>
>>    Reported-by: steckdenis@yahoo.fr
>>    Signed-off-by: Alex Deucher <alexdeucher@gmail.com>
>>    Signed-off-by: Dave Airlie <airlied@redhat.com>
>>
>> :040000 040000 2ff9114469e4569e1bebd659c9632c5b59bfc238
>> b0eb9a29c698da1eeb8289ba1180b8135a94ecd7 M     drivers
>>
>> My system does not have any sideport memory.
>> The other revisions before this did boot into the correct KMS mode,
>> but I did not test X, because I'm using that system as a remote
>> desktop server and only sometimes the fb text console to debug
>> something that went wrong.

>From the other mail:
http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commitdiff;h=f892034a8ce80ed7098f667aae2eb6300e570603
is part of vanilla 2.6.35-rc4 and -rc5, but neither kernel works for
me.

> Does this patch help?
(0001-drm-radeon-kms-fix-possible-mis-detection-of-sidepor.patch)

After adding this to 2.6.35-rc5 the system boots and works so far.

But the CP is still broken:
[    0.426931] Linux agpgart interface v0.103
[    0.427092] [drm] Initialized drm 1.1.0 20060810
[    0.427196] [drm] radeon defaulting to kernel modesetting.
[    0.427255] [drm] radeon kernel modesetting enabled.
[    0.427372] radeon 0000:01:05.0: PCI INT A -> GSI 18 (level, low) -> IRQ 18
[    0.429659] [drm] initializing kernel modesetting (RS690 0x1002:0x791E).
[    0.429817] [drm] register mmio base: 0xFE9F0000
[    0.429876] [drm] register mmio size: 65536
[    0.430457] ATOM BIOS: ATI
[    0.430532] radeon 0000:01:05.0: VRAM: 32M 0xDE000000 - 0xDFFFFFFF (32M used)
[    0.430592] radeon 0000:01:05.0: GTT: 512M 0xBE000000 - 0xDDFFFFFF
[    0.430675] [drm] radeon: irq initialized.
[    0.430737] mtrr: type mismatch for fc000000,2000000 old:
write-back new: write-comb
ining
[    0.430811] [drm] Detected VRAM RAM=32M, BAR=32M
[    0.430868] [drm] RAM width 128bits DDR
[    0.431011] [TTM] Zone  kernel: Available graphics memory: 2010234 kiB.
[    0.431070] [TTM] Initializing pool allocator.
[    0.431147] [drm] radeon: 32M of VRAM memory ready
[    0.431205] [drm] radeon: 512M of GTT memory ready.
[    0.431266] [drm] GART: num cpu pages 131072, num gpu pages 131072
[    0.434654] [drm] radeon: 1 quad pipes, 1 z pipes initialized.
[    0.441719] [drm] Loading RS690/RS740 Microcode
[    0.441926] [drm] radeon: ring at 0x00000000BE000000
[    0.577118] [drm:r100_ring_test] *ERROR* radeon: ring test failed
(sracth(0x15E4)=0x
CAFEDEAD)
[    0.577192] [drm:r100_cp_init] *ERROR* radeon: cp isn't working (-22).
[    0.577252] radeon 0000:01:05.0: failled initializing CP (-22).
[    0.577310] radeon 0000:01:05.0: Disabling GPU acceleration
[    0.577440] [drm] radeon: cp finalized
[    0.578078] [drm] Default TV standard: NTSC
[    0.578314] [drm] Default TV standard: NTSC
[    0.578590] [drm] Radeon Display Connectors
[    0.578648] [drm] Connector 0:
[    0.578706] [drm]   VGA
[    0.578764] [drm]   DDC: 0x7e50 0x7e40 0x7e54 0x7e44 0x7e58 0x7e48
0x7e5c 0x7e4c
[    0.578837] [drm]   Encoders:
[    0.578894] [drm]     CRT1: INTERNAL_KLDSCP_DAC1
[    0.578952] [drm] Connector 1:
[    0.579010] [drm]   S-video
[    0.579067] [drm]   Encoders:
[    0.579124] [drm]     TV1: INTERNAL_KLDSCP_DAC1
[    0.579182] [drm] Connector 2:
[    0.579239] [drm]   HDMI-A
[    0.579297] [drm]   DDC: 0x7e40 0x7e50 0x7e44 0x7e54 0x7e48 0x7e58
0x7e4c 0x7e5c
[    0.579369] [drm]   Encoders:
[    0.579427] [drm]     DFP3: INTERNAL_LVTM1
[    0.773375] [drm] fb mappable at 0xFC040000
[    0.773434] [drm] vram apper at 0xFC000000
[    0.773491] [drm] size 786432
[    0.773549] [drm] fb depth is 8
[    0.773606] [drm]    pitch is 1024
[    0.773737] fbcon: radeondrmfb (fb0) is primary device
[    0.793240] Console: switching to colour frame buffer device 128x48
[    0.794833] fb0: radeondrmfb frame buffer device
[    0.794852] drm: registered panic notifier
[    0.794871] Slow work thread pool: Starting up
[    0.794932] Slow work thread pool: Ready
[    0.794953] [drm] Initialized radeon 2.5.0 20080528 for
0000:01:05.0 on minor 0


Torsten

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: Regression 2.6.34->2.6.35-rc4: radeaon KMS an RS690 broken
@ 2010-07-13 18:29         ` Torsten Kaiser
  0 siblings, 0 replies; 17+ messages in thread
From: Torsten Kaiser @ 2010-07-13 18:29 UTC (permalink / raw)
  To: Alex Deucher; +Cc: DRI mailing list, linux-kernel

On Mon, Jul 12, 2010 at 11:38 PM, Alex Deucher <alexdeucher@gmail.com> wrote:
> On Mon, Jul 12, 2010 at 3:54 PM, Torsten Kaiser
> <just.for.lkml@googlemail.com> wrote:
>> 0888e883ea5ff8fac27e813256d6c1eaede5a234 is the first bad commit
>> commit 0888e883ea5ff8fac27e813256d6c1eaede5a234
>> Author: Alex Deucher <alexdeucher@gmail.com>
>> Date:   Sat Jun 12 11:50:13 2010 -0400
>>
>>    drm/radeon/kms: fix bandwidth calculation when sideport is present
>>
>>    Fixes fdo bug 27529:
>>    https://bugs.freedesktop.org/show_bug.cgi?id=27529
>>
>>    Reported-by: steckdenis@yahoo.fr
>>    Signed-off-by: Alex Deucher <alexdeucher@gmail.com>
>>    Signed-off-by: Dave Airlie <airlied@redhat.com>
>>
>> :040000 040000 2ff9114469e4569e1bebd659c9632c5b59bfc238
>> b0eb9a29c698da1eeb8289ba1180b8135a94ecd7 M     drivers
>>
>> My system does not have any sideport memory.
>> The other revisions before this did boot into the correct KMS mode,
>> but I did not test X, because I'm using that system as a remote
>> desktop server and only sometimes the fb text console to debug
>> something that went wrong.

From the other mail:
http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commitdiff;h=f892034a8ce80ed7098f667aae2eb6300e570603
is part of vanilla 2.6.35-rc4 and -rc5, but neither kernel works for
me.

> Does this patch help?
(0001-drm-radeon-kms-fix-possible-mis-detection-of-sidepor.patch)

After adding this to 2.6.35-rc5 the system boots and works so far.

But the CP is still broken:
[    0.426931] Linux agpgart interface v0.103
[    0.427092] [drm] Initialized drm 1.1.0 20060810
[    0.427196] [drm] radeon defaulting to kernel modesetting.
[    0.427255] [drm] radeon kernel modesetting enabled.
[    0.427372] radeon 0000:01:05.0: PCI INT A -> GSI 18 (level, low) -> IRQ 18
[    0.429659] [drm] initializing kernel modesetting (RS690 0x1002:0x791E).
[    0.429817] [drm] register mmio base: 0xFE9F0000
[    0.429876] [drm] register mmio size: 65536
[    0.430457] ATOM BIOS: ATI
[    0.430532] radeon 0000:01:05.0: VRAM: 32M 0xDE000000 - 0xDFFFFFFF (32M used)
[    0.430592] radeon 0000:01:05.0: GTT: 512M 0xBE000000 - 0xDDFFFFFF
[    0.430675] [drm] radeon: irq initialized.
[    0.430737] mtrr: type mismatch for fc000000,2000000 old:
write-back new: write-comb
ining
[    0.430811] [drm] Detected VRAM RAM=32M, BAR=32M
[    0.430868] [drm] RAM width 128bits DDR
[    0.431011] [TTM] Zone  kernel: Available graphics memory: 2010234 kiB.
[    0.431070] [TTM] Initializing pool allocator.
[    0.431147] [drm] radeon: 32M of VRAM memory ready
[    0.431205] [drm] radeon: 512M of GTT memory ready.
[    0.431266] [drm] GART: num cpu pages 131072, num gpu pages 131072
[    0.434654] [drm] radeon: 1 quad pipes, 1 z pipes initialized.
[    0.441719] [drm] Loading RS690/RS740 Microcode
[    0.441926] [drm] radeon: ring at 0x00000000BE000000
[    0.577118] [drm:r100_ring_test] *ERROR* radeon: ring test failed
(sracth(0x15E4)=0x
CAFEDEAD)
[    0.577192] [drm:r100_cp_init] *ERROR* radeon: cp isn't working (-22).
[    0.577252] radeon 0000:01:05.0: failled initializing CP (-22).
[    0.577310] radeon 0000:01:05.0: Disabling GPU acceleration
[    0.577440] [drm] radeon: cp finalized
[    0.578078] [drm] Default TV standard: NTSC
[    0.578314] [drm] Default TV standard: NTSC
[    0.578590] [drm] Radeon Display Connectors
[    0.578648] [drm] Connector 0:
[    0.578706] [drm]   VGA
[    0.578764] [drm]   DDC: 0x7e50 0x7e40 0x7e54 0x7e44 0x7e58 0x7e48
0x7e5c 0x7e4c
[    0.578837] [drm]   Encoders:
[    0.578894] [drm]     CRT1: INTERNAL_KLDSCP_DAC1
[    0.578952] [drm] Connector 1:
[    0.579010] [drm]   S-video
[    0.579067] [drm]   Encoders:
[    0.579124] [drm]     TV1: INTERNAL_KLDSCP_DAC1
[    0.579182] [drm] Connector 2:
[    0.579239] [drm]   HDMI-A
[    0.579297] [drm]   DDC: 0x7e40 0x7e50 0x7e44 0x7e54 0x7e48 0x7e58
0x7e4c 0x7e5c
[    0.579369] [drm]   Encoders:
[    0.579427] [drm]     DFP3: INTERNAL_LVTM1
[    0.773375] [drm] fb mappable at 0xFC040000
[    0.773434] [drm] vram apper at 0xFC000000
[    0.773491] [drm] size 786432
[    0.773549] [drm] fb depth is 8
[    0.773606] [drm]    pitch is 1024
[    0.773737] fbcon: radeondrmfb (fb0) is primary device
[    0.793240] Console: switching to colour frame buffer device 128x48
[    0.794833] fb0: radeondrmfb frame buffer device
[    0.794852] drm: registered panic notifier
[    0.794871] Slow work thread pool: Starting up
[    0.794932] Slow work thread pool: Ready
[    0.794953] [drm] Initialized radeon 2.5.0 20080528 for
0000:01:05.0 on minor 0


Torsten

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: Regression 2.6.34->2.6.35-rc4: radeaon KMS an RS690 broken
  2010-07-13 18:29         ` Torsten Kaiser
  (?)
@ 2010-07-13 19:10         ` Alex Deucher
  2010-07-13 20:12           ` Torsten Kaiser
  2010-07-14 18:51           ` Torsten Kaiser
  -1 siblings, 2 replies; 17+ messages in thread
From: Alex Deucher @ 2010-07-13 19:10 UTC (permalink / raw)
  To: Torsten Kaiser; +Cc: DRI mailing list, linux-kernel

On Tue, Jul 13, 2010 at 2:29 PM, Torsten Kaiser
<just.for.lkml@googlemail.com> wrote:
> On Mon, Jul 12, 2010 at 11:38 PM, Alex Deucher <alexdeucher@gmail.com> wrote:
>> On Mon, Jul 12, 2010 at 3:54 PM, Torsten Kaiser
>> <just.for.lkml@googlemail.com> wrote:
>>> 0888e883ea5ff8fac27e813256d6c1eaede5a234 is the first bad commit
>>> commit 0888e883ea5ff8fac27e813256d6c1eaede5a234
>>> Author: Alex Deucher <alexdeucher@gmail.com>
>>> Date:   Sat Jun 12 11:50:13 2010 -0400
>>>
>>>    drm/radeon/kms: fix bandwidth calculation when sideport is present
>>>
>>>    Fixes fdo bug 27529:
>>>    https://bugs.freedesktop.org/show_bug.cgi?id=27529
>>>
>>>    Reported-by: steckdenis@yahoo.fr
>>>    Signed-off-by: Alex Deucher <alexdeucher@gmail.com>
>>>    Signed-off-by: Dave Airlie <airlied@redhat.com>
>>>
>>> :040000 040000 2ff9114469e4569e1bebd659c9632c5b59bfc238
>>> b0eb9a29c698da1eeb8289ba1180b8135a94ecd7 M     drivers
>>>
>>> My system does not have any sideport memory.
>>> The other revisions before this did boot into the correct KMS mode,
>>> but I did not test X, because I'm using that system as a remote
>>> desktop server and only sometimes the fb text console to debug
>>> something that went wrong.
>
> From the other mail:
> http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commitdiff;h=f892034a8ce80ed7098f667aae2eb6300e570603
> is part of vanilla 2.6.35-rc4 and -rc5, but neither kernel works for
> me.
>
>> Does this patch help?
> (0001-drm-radeon-kms-fix-possible-mis-detection-of-sidepor.patch)
>
> After adding this to 2.6.35-rc5 the system boots and works so far.

I've sent the patch to Dave.

>
> But the CP is still broken:

Is this a regression?  If so, can you bisect it?

Alex

> [    0.426931] Linux agpgart interface v0.103
> [    0.427092] [drm] Initialized drm 1.1.0 20060810
> [    0.427196] [drm] radeon defaulting to kernel modesetting.
> [    0.427255] [drm] radeon kernel modesetting enabled.
> [    0.427372] radeon 0000:01:05.0: PCI INT A -> GSI 18 (level, low) -> IRQ 18
> [    0.429659] [drm] initializing kernel modesetting (RS690 0x1002:0x791E).
> [    0.429817] [drm] register mmio base: 0xFE9F0000
> [    0.429876] [drm] register mmio size: 65536
> [    0.430457] ATOM BIOS: ATI
> [    0.430532] radeon 0000:01:05.0: VRAM: 32M 0xDE000000 - 0xDFFFFFFF (32M used)
> [    0.430592] radeon 0000:01:05.0: GTT: 512M 0xBE000000 - 0xDDFFFFFF
> [    0.430675] [drm] radeon: irq initialized.
> [    0.430737] mtrr: type mismatch for fc000000,2000000 old:
> write-back new: write-comb
> ining
> [    0.430811] [drm] Detected VRAM RAM=32M, BAR=32M
> [    0.430868] [drm] RAM width 128bits DDR
> [    0.431011] [TTM] Zone  kernel: Available graphics memory: 2010234 kiB.
> [    0.431070] [TTM] Initializing pool allocator.
> [    0.431147] [drm] radeon: 32M of VRAM memory ready
> [    0.431205] [drm] radeon: 512M of GTT memory ready.
> [    0.431266] [drm] GART: num cpu pages 131072, num gpu pages 131072
> [    0.434654] [drm] radeon: 1 quad pipes, 1 z pipes initialized.
> [    0.441719] [drm] Loading RS690/RS740 Microcode
> [    0.441926] [drm] radeon: ring at 0x00000000BE000000
> [    0.577118] [drm:r100_ring_test] *ERROR* radeon: ring test failed
> (sracth(0x15E4)=0x
> CAFEDEAD)
> [    0.577192] [drm:r100_cp_init] *ERROR* radeon: cp isn't working (-22).
> [    0.577252] radeon 0000:01:05.0: failled initializing CP (-22).
> [    0.577310] radeon 0000:01:05.0: Disabling GPU acceleration
> [    0.577440] [drm] radeon: cp finalized
> [    0.578078] [drm] Default TV standard: NTSC
> [    0.578314] [drm] Default TV standard: NTSC
> [    0.578590] [drm] Radeon Display Connectors
> [    0.578648] [drm] Connector 0:
> [    0.578706] [drm]   VGA
> [    0.578764] [drm]   DDC: 0x7e50 0x7e40 0x7e54 0x7e44 0x7e58 0x7e48
> 0x7e5c 0x7e4c
> [    0.578837] [drm]   Encoders:
> [    0.578894] [drm]     CRT1: INTERNAL_KLDSCP_DAC1
> [    0.578952] [drm] Connector 1:
> [    0.579010] [drm]   S-video
> [    0.579067] [drm]   Encoders:
> [    0.579124] [drm]     TV1: INTERNAL_KLDSCP_DAC1
> [    0.579182] [drm] Connector 2:
> [    0.579239] [drm]   HDMI-A
> [    0.579297] [drm]   DDC: 0x7e40 0x7e50 0x7e44 0x7e54 0x7e48 0x7e58
> 0x7e4c 0x7e5c
> [    0.579369] [drm]   Encoders:
> [    0.579427] [drm]     DFP3: INTERNAL_LVTM1
> [    0.773375] [drm] fb mappable at 0xFC040000
> [    0.773434] [drm] vram apper at 0xFC000000
> [    0.773491] [drm] size 786432
> [    0.773549] [drm] fb depth is 8
> [    0.773606] [drm]    pitch is 1024
> [    0.773737] fbcon: radeondrmfb (fb0) is primary device
> [    0.793240] Console: switching to colour frame buffer device 128x48
> [    0.794833] fb0: radeondrmfb frame buffer device
> [    0.794852] drm: registered panic notifier
> [    0.794871] Slow work thread pool: Starting up
> [    0.794932] Slow work thread pool: Ready
> [    0.794953] [drm] Initialized radeon 2.5.0 20080528 for
> 0000:01:05.0 on minor 0
>
>
> Torsten
>

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: Regression 2.6.34->2.6.35-rc4: radeaon KMS an RS690 broken
  2010-07-13 19:10         ` Alex Deucher
@ 2010-07-13 20:12           ` Torsten Kaiser
  2010-07-14 18:51           ` Torsten Kaiser
  1 sibling, 0 replies; 17+ messages in thread
From: Torsten Kaiser @ 2010-07-13 20:12 UTC (permalink / raw)
  To: Alex Deucher; +Cc: DRI mailing list, linux-kernel

On Tue, Jul 13, 2010 at 9:10 PM, Alex Deucher <alexdeucher@gmail.com> wrote:
> On Tue, Jul 13, 2010 at 2:29 PM, Torsten Kaiser
> <just.for.lkml@googlemail.com> wrote:
>> On Mon, Jul 12, 2010 at 11:38 PM, Alex Deucher <alexdeucher@gmail.com> wrote:
>>> On Mon, Jul 12, 2010 at 3:54 PM, Torsten Kaiser
>>> <just.for.lkml@googlemail.com> wrote:
>>>> 0888e883ea5ff8fac27e813256d6c1eaede5a234 is the first bad commit
>>>> commit 0888e883ea5ff8fac27e813256d6c1eaede5a234
>>>> Author: Alex Deucher <alexdeucher@gmail.com>
>>>> Date:   Sat Jun 12 11:50:13 2010 -0400
>>>>
>>>>    drm/radeon/kms: fix bandwidth calculation when sideport is present
>>>>
>>>>    Fixes fdo bug 27529:
>>>>    https://bugs.freedesktop.org/show_bug.cgi?id=27529
>>>>
>>>>    Reported-by: steckdenis@yahoo.fr
>>>>    Signed-off-by: Alex Deucher <alexdeucher@gmail.com>
>>>>    Signed-off-by: Dave Airlie <airlied@redhat.com>
>>>>
>>>> :040000 040000 2ff9114469e4569e1bebd659c9632c5b59bfc238
>>>> b0eb9a29c698da1eeb8289ba1180b8135a94ecd7 M     drivers
>>>>
>>>> My system does not have any sideport memory.
>>>> The other revisions before this did boot into the correct KMS mode,
>>>> but I did not test X, because I'm using that system as a remote
>>>> desktop server and only sometimes the fb text console to debug
>>>> something that went wrong.
>>
>> From the other mail:
>> http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commitdiff;h=f892034a8ce80ed7098f667aae2eb6300e570603
>> is part of vanilla 2.6.35-rc4 and -rc5, but neither kernel works for
>> me.
>>
>>> Does this patch help?
>> (0001-drm-radeon-kms-fix-possible-mis-detection-of-sidepor.patch)
>>
>> After adding this to 2.6.35-rc5 the system boots and works so far.
>
> I've sent the patch to Dave.

OK, thanks.

>> But the CP is still broken:
>
> Is this a regression?  If so, can you bisect it?

Yes. But looking at my logs the regression did not happen from
2.6.34->2.6.35 but from 2.6.33 to 2.6.34.
The first failed ring test was with the Gentoo 2.6.34 kernel, but all
the working bisect steps between 2.6.34 and 2.6.35-rc4 also failed.

I will try to bisect this tomorrow, but I'm not sure if this will
work, because 2.6.34 is not really working for me.
( https://bugzilla.kernel.org/show_bug.cgi?id=16371 )

Torsten

>> [    0.426931] Linux agpgart interface v0.103
>> [    0.427092] [drm] Initialized drm 1.1.0 20060810
>> [    0.427196] [drm] radeon defaulting to kernel modesetting.
>> [    0.427255] [drm] radeon kernel modesetting enabled.
>> [    0.427372] radeon 0000:01:05.0: PCI INT A -> GSI 18 (level, low) -> IRQ 18
>> [    0.429659] [drm] initializing kernel modesetting (RS690 0x1002:0x791E).
>> [    0.429817] [drm] register mmio base: 0xFE9F0000
>> [    0.429876] [drm] register mmio size: 65536
>> [    0.430457] ATOM BIOS: ATI
>> [    0.430532] radeon 0000:01:05.0: VRAM: 32M 0xDE000000 - 0xDFFFFFFF (32M used)
>> [    0.430592] radeon 0000:01:05.0: GTT: 512M 0xBE000000 - 0xDDFFFFFF
>> [    0.430675] [drm] radeon: irq initialized.
>> [    0.430737] mtrr: type mismatch for fc000000,2000000 old:
>> write-back new: write-comb
>> ining
>> [    0.430811] [drm] Detected VRAM RAM=32M, BAR=32M
>> [    0.430868] [drm] RAM width 128bits DDR
>> [    0.431011] [TTM] Zone  kernel: Available graphics memory: 2010234 kiB.
>> [    0.431070] [TTM] Initializing pool allocator.
>> [    0.431147] [drm] radeon: 32M of VRAM memory ready
>> [    0.431205] [drm] radeon: 512M of GTT memory ready.
>> [    0.431266] [drm] GART: num cpu pages 131072, num gpu pages 131072
>> [    0.434654] [drm] radeon: 1 quad pipes, 1 z pipes initialized.
>> [    0.441719] [drm] Loading RS690/RS740 Microcode
>> [    0.441926] [drm] radeon: ring at 0x00000000BE000000
>> [    0.577118] [drm:r100_ring_test] *ERROR* radeon: ring test failed
>> (sracth(0x15E4)=0x
>> CAFEDEAD)
>> [    0.577192] [drm:r100_cp_init] *ERROR* radeon: cp isn't working (-22).
>> [    0.577252] radeon 0000:01:05.0: failled initializing CP (-22).
>> [    0.577310] radeon 0000:01:05.0: Disabling GPU acceleration
>> [    0.577440] [drm] radeon: cp finalized
>> [    0.578078] [drm] Default TV standard: NTSC
>> [    0.578314] [drm] Default TV standard: NTSC
>> [    0.578590] [drm] Radeon Display Connectors
>> [    0.578648] [drm] Connector 0:
>> [    0.578706] [drm]   VGA
>> [    0.578764] [drm]   DDC: 0x7e50 0x7e40 0x7e54 0x7e44 0x7e58 0x7e48
>> 0x7e5c 0x7e4c
>> [    0.578837] [drm]   Encoders:
>> [    0.578894] [drm]     CRT1: INTERNAL_KLDSCP_DAC1
>> [    0.578952] [drm] Connector 1:
>> [    0.579010] [drm]   S-video
>> [    0.579067] [drm]   Encoders:
>> [    0.579124] [drm]     TV1: INTERNAL_KLDSCP_DAC1
>> [    0.579182] [drm] Connector 2:
>> [    0.579239] [drm]   HDMI-A
>> [    0.579297] [drm]   DDC: 0x7e40 0x7e50 0x7e44 0x7e54 0x7e48 0x7e58
>> 0x7e4c 0x7e5c
>> [    0.579369] [drm]   Encoders:
>> [    0.579427] [drm]     DFP3: INTERNAL_LVTM1
>> [    0.773375] [drm] fb mappable at 0xFC040000
>> [    0.773434] [drm] vram apper at 0xFC000000
>> [    0.773491] [drm] size 786432
>> [    0.773549] [drm] fb depth is 8
>> [    0.773606] [drm]    pitch is 1024
>> [    0.773737] fbcon: radeondrmfb (fb0) is primary device
>> [    0.793240] Console: switching to colour frame buffer device 128x48
>> [    0.794833] fb0: radeondrmfb frame buffer device
>> [    0.794852] drm: registered panic notifier
>> [    0.794871] Slow work thread pool: Starting up
>> [    0.794932] Slow work thread pool: Ready
>> [    0.794953] [drm] Initialized radeon 2.5.0 20080528 for
>> 0000:01:05.0 on minor 0
>>
>>
>> Torsten
>>
>

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: Regression 2.6.34->2.6.35-rc4: radeaon KMS an RS690 broken
  2010-07-13 19:10         ` Alex Deucher
  2010-07-13 20:12           ` Torsten Kaiser
@ 2010-07-14 18:51           ` Torsten Kaiser
  2010-07-14 19:30             ` Jerome Glisse
  2010-07-14 19:31             ` Alex Deucher
  1 sibling, 2 replies; 17+ messages in thread
From: Torsten Kaiser @ 2010-07-14 18:51 UTC (permalink / raw)
  To: Alex Deucher; +Cc: DRI mailing list, linux-kernel

On Tue, Jul 13, 2010 at 9:10 PM, Alex Deucher <alexdeucher@gmail.com> wrote:
> On Tue, Jul 13, 2010 at 2:29 PM, Torsten Kaiser
> <just.for.lkml@googlemail.com> wrote:
>> But the CP is still broken:
>
> Is this a regression?  If so, can you bisect it?
>
> Alex

I bisected it to this commit:

d594e46ace22afa1621254f6f669e65430048153 is the first bad commit
commit d594e46ace22afa1621254f6f669e65430048153
Author: Jerome Glisse <jglisse@redhat.com>
Date:   Wed Feb 17 21:54:29 2010 +0000

    drm/radeon/kms: simplify memory controller setup V2

    Get rid of _location and use _start/_end also simplify the
    computation of vram_start|end & gtt_start|end. For R1XX-R2XX
    we place VRAM at the same address of PCI aperture, those GPU
    shouldn't have much memory and seems to behave better when
    setup that way. For R3XX and newer we place VRAM at 0. For
    R6XX-R7XX AGP we place VRAM before or after AGP aperture this
    might limit to limit the VRAM size but it's very unlikely.
    For IGP we don't change the VRAM placement.

    Tested on (compiz,quake3,suspend/resume):
    PCI/PCIE:RV280,R420,RV515,RV570,RV610,RV710
    AGP:RV100,RV280,R420,RV350,RV620(RPB*),RV730
    IGP:RS480(RPB*),RS690,RS780(RPB*),RS880

    RPB: resume previously broken

    V2 correct commit message to reflect more accurately the bug
    and move VRAM placement to 0 for most of the GPU to avoid
    limiting VRAM.

    Signed-off-by: Jerome Glisse <jglisse@redhat.com>
    Signed-off-by: Dave Airlie <airlied@redhat.com>

:040000 040000 05c1e456fcf6565aa8711e4933807956d0055cca
792c6be2bd161a52500c5e8d685ee651cd5af07e M     drivers

HTH, Torsten

>> [    0.426931] Linux agpgart interface v0.103
>> [    0.427092] [drm] Initialized drm 1.1.0 20060810
>> [    0.427196] [drm] radeon defaulting to kernel modesetting.
>> [    0.427255] [drm] radeon kernel modesetting enabled.
>> [    0.427372] radeon 0000:01:05.0: PCI INT A -> GSI 18 (level, low) -> IRQ 18
>> [    0.429659] [drm] initializing kernel modesetting (RS690 0x1002:0x791E).
>> [    0.429817] [drm] register mmio base: 0xFE9F0000
>> [    0.429876] [drm] register mmio size: 65536
>> [    0.430457] ATOM BIOS: ATI
>> [    0.430532] radeon 0000:01:05.0: VRAM: 32M 0xDE000000 - 0xDFFFFFFF (32M used)
>> [    0.430592] radeon 0000:01:05.0: GTT: 512M 0xBE000000 - 0xDDFFFFFF
>> [    0.430675] [drm] radeon: irq initialized.
>> [    0.430737] mtrr: type mismatch for fc000000,2000000 old:
>> write-back new: write-comb
>> ining
>> [    0.430811] [drm] Detected VRAM RAM=32M, BAR=32M
>> [    0.430868] [drm] RAM width 128bits DDR
>> [    0.431011] [TTM] Zone  kernel: Available graphics memory: 2010234 kiB.
>> [    0.431070] [TTM] Initializing pool allocator.
>> [    0.431147] [drm] radeon: 32M of VRAM memory ready
>> [    0.431205] [drm] radeon: 512M of GTT memory ready.
>> [    0.431266] [drm] GART: num cpu pages 131072, num gpu pages 131072
>> [    0.434654] [drm] radeon: 1 quad pipes, 1 z pipes initialized.
>> [    0.441719] [drm] Loading RS690/RS740 Microcode
>> [    0.441926] [drm] radeon: ring at 0x00000000BE000000
>> [    0.577118] [drm:r100_ring_test] *ERROR* radeon: ring test failed
>> (sracth(0x15E4)=0x
>> CAFEDEAD)
>> [    0.577192] [drm:r100_cp_init] *ERROR* radeon: cp isn't working (-22).
>> [    0.577252] radeon 0000:01:05.0: failled initializing CP (-22).
>> [    0.577310] radeon 0000:01:05.0: Disabling GPU acceleration
>> [    0.577440] [drm] radeon: cp finalized
>> [    0.578078] [drm] Default TV standard: NTSC
>> [    0.578314] [drm] Default TV standard: NTSC
>> [    0.578590] [drm] Radeon Display Connectors
>> [    0.578648] [drm] Connector 0:
>> [    0.578706] [drm]   VGA
>> [    0.578764] [drm]   DDC: 0x7e50 0x7e40 0x7e54 0x7e44 0x7e58 0x7e48
>> 0x7e5c 0x7e4c
>> [    0.578837] [drm]   Encoders:
>> [    0.578894] [drm]     CRT1: INTERNAL_KLDSCP_DAC1
>> [    0.578952] [drm] Connector 1:
>> [    0.579010] [drm]   S-video
>> [    0.579067] [drm]   Encoders:
>> [    0.579124] [drm]     TV1: INTERNAL_KLDSCP_DAC1
>> [    0.579182] [drm] Connector 2:
>> [    0.579239] [drm]   HDMI-A
>> [    0.579297] [drm]   DDC: 0x7e40 0x7e50 0x7e44 0x7e54 0x7e48 0x7e58
>> 0x7e4c 0x7e5c
>> [    0.579369] [drm]   Encoders:
>> [    0.579427] [drm]     DFP3: INTERNAL_LVTM1
>> [    0.773375] [drm] fb mappable at 0xFC040000
>> [    0.773434] [drm] vram apper at 0xFC000000
>> [    0.773491] [drm] size 786432
>> [    0.773549] [drm] fb depth is 8
>> [    0.773606] [drm]    pitch is 1024
>> [    0.773737] fbcon: radeondrmfb (fb0) is primary device
>> [    0.793240] Console: switching to colour frame buffer device 128x48
>> [    0.794833] fb0: radeondrmfb frame buffer device
>> [    0.794852] drm: registered panic notifier
>> [    0.794871] Slow work thread pool: Starting up
>> [    0.794932] Slow work thread pool: Ready
>> [    0.794953] [drm] Initialized radeon 2.5.0 20080528 for
>> 0000:01:05.0 on minor 0
>>
>>
>> Torsten
>>
>

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: Regression 2.6.34->2.6.35-rc4: radeaon KMS an RS690 broken
  2010-07-14 18:51           ` Torsten Kaiser
@ 2010-07-14 19:30             ` Jerome Glisse
  2010-07-14 20:05               ` Torsten Kaiser
  2010-07-14 19:31             ` Alex Deucher
  1 sibling, 1 reply; 17+ messages in thread
From: Jerome Glisse @ 2010-07-14 19:30 UTC (permalink / raw)
  To: Torsten Kaiser; +Cc: Alex Deucher, linux-kernel, DRI mailing list

[-- Attachment #1: Type: text/plain, Size: 5209 bytes --]

On 07/14/2010 02:51 PM, Torsten Kaiser wrote:
> On Tue, Jul 13, 2010 at 9:10 PM, Alex Deucher<alexdeucher@gmail.com>  wrote:
>> On Tue, Jul 13, 2010 at 2:29 PM, Torsten Kaiser
>> <just.for.lkml@googlemail.com>  wrote:
>>> But the CP is still broken:
>>
>> Is this a regression?  If so, can you bisect it?
>>
>> Alex
>
> I bisected it to this commit:
>
> d594e46ace22afa1621254f6f669e65430048153 is the first bad commit
> commit d594e46ace22afa1621254f6f669e65430048153
> Author: Jerome Glisse<jglisse@redhat.com>
> Date:   Wed Feb 17 21:54:29 2010 +0000
>
>      drm/radeon/kms: simplify memory controller setup V2
>
>      Get rid of _location and use _start/_end also simplify the
>      computation of vram_start|end&  gtt_start|end. For R1XX-R2XX
>      we place VRAM at the same address of PCI aperture, those GPU
>      shouldn't have much memory and seems to behave better when
>      setup that way. For R3XX and newer we place VRAM at 0. For
>      R6XX-R7XX AGP we place VRAM before or after AGP aperture this
>      might limit to limit the VRAM size but it's very unlikely.
>      For IGP we don't change the VRAM placement.
>
>      Tested on (compiz,quake3,suspend/resume):
>      PCI/PCIE:RV280,R420,RV515,RV570,RV610,RV710
>      AGP:RV100,RV280,R420,RV350,RV620(RPB*),RV730
>      IGP:RS480(RPB*),RS690,RS780(RPB*),RS880
>
>      RPB: resume previously broken
>
>      V2 correct commit message to reflect more accurately the bug
>      and move VRAM placement to 0 for most of the GPU to avoid
>      limiting VRAM.
>
>      Signed-off-by: Jerome Glisse<jglisse@redhat.com>
>      Signed-off-by: Dave Airlie<airlied@redhat.com>
>
> :040000 040000 05c1e456fcf6565aa8711e4933807956d0055cca
> 792c6be2bd161a52500c5e8d685ee651cd5af07e M     drivers
>
> HTH, Torsten
>
>>> [    0.426931] Linux agpgart interface v0.103
>>> [    0.427092] [drm] Initialized drm 1.1.0 20060810
>>> [    0.427196] [drm] radeon defaulting to kernel modesetting.
>>> [    0.427255] [drm] radeon kernel modesetting enabled.
>>> [    0.427372] radeon 0000:01:05.0: PCI INT A ->  GSI 18 (level, low) ->  IRQ 18
>>> [    0.429659] [drm] initializing kernel modesetting (RS690 0x1002:0x791E).
>>> [    0.429817] [drm] register mmio base: 0xFE9F0000
>>> [    0.429876] [drm] register mmio size: 65536
>>> [    0.430457] ATOM BIOS: ATI
>>> [    0.430532] radeon 0000:01:05.0: VRAM: 32M 0xDE000000 - 0xDFFFFFFF (32M used)
>>> [    0.430592] radeon 0000:01:05.0: GTT: 512M 0xBE000000 - 0xDDFFFFFF
>>> [    0.430675] [drm] radeon: irq initialized.
>>> [    0.430737] mtrr: type mismatch for fc000000,2000000 old:
>>> write-back new: write-comb
>>> ining
>>> [    0.430811] [drm] Detected VRAM RAM=32M, BAR=32M
>>> [    0.430868] [drm] RAM width 128bits DDR
>>> [    0.431011] [TTM] Zone  kernel: Available graphics memory: 2010234 kiB.
>>> [    0.431070] [TTM] Initializing pool allocator.
>>> [    0.431147] [drm] radeon: 32M of VRAM memory ready
>>> [    0.431205] [drm] radeon: 512M of GTT memory ready.
>>> [    0.431266] [drm] GART: num cpu pages 131072, num gpu pages 131072
>>> [    0.434654] [drm] radeon: 1 quad pipes, 1 z pipes initialized.
>>> [    0.441719] [drm] Loading RS690/RS740 Microcode
>>> [    0.441926] [drm] radeon: ring at 0x00000000BE000000
>>> [    0.577118] [drm:r100_ring_test] *ERROR* radeon: ring test failed
>>> (sracth(0x15E4)=0x
>>> CAFEDEAD)
>>> [    0.577192] [drm:r100_cp_init] *ERROR* radeon: cp isn't working (-22).
>>> [    0.577252] radeon 0000:01:05.0: failled initializing CP (-22).
>>> [    0.577310] radeon 0000:01:05.0: Disabling GPU acceleration
>>> [    0.577440] [drm] radeon: cp finalized
>>> [    0.578078] [drm] Default TV standard: NTSC
>>> [    0.578314] [drm] Default TV standard: NTSC
>>> [    0.578590] [drm] Radeon Display Connectors
>>> [    0.578648] [drm] Connector 0:
>>> [    0.578706] [drm]   VGA
>>> [    0.578764] [drm]   DDC: 0x7e50 0x7e40 0x7e54 0x7e44 0x7e58 0x7e48
>>> 0x7e5c 0x7e4c
>>> [    0.578837] [drm]   Encoders:
>>> [    0.578894] [drm]     CRT1: INTERNAL_KLDSCP_DAC1
>>> [    0.578952] [drm] Connector 1:
>>> [    0.579010] [drm]   S-video
>>> [    0.579067] [drm]   Encoders:
>>> [    0.579124] [drm]     TV1: INTERNAL_KLDSCP_DAC1
>>> [    0.579182] [drm] Connector 2:
>>> [    0.579239] [drm]   HDMI-A
>>> [    0.579297] [drm]   DDC: 0x7e40 0x7e50 0x7e44 0x7e54 0x7e48 0x7e58
>>> 0x7e4c 0x7e5c
>>> [    0.579369] [drm]   Encoders:
>>> [    0.579427] [drm]     DFP3: INTERNAL_LVTM1
>>> [    0.773375] [drm] fb mappable at 0xFC040000
>>> [    0.773434] [drm] vram apper at 0xFC000000
>>> [    0.773491] [drm] size 786432
>>> [    0.773549] [drm] fb depth is 8
>>> [    0.773606] [drm]    pitch is 1024
>>> [    0.773737] fbcon: radeondrmfb (fb0) is primary device
>>> [    0.793240] Console: switching to colour frame buffer device 128x48
>>> [    0.794833] fb0: radeondrmfb frame buffer device
>>> [    0.794852] drm: registered panic notifier
>>> [    0.794871] Slow work thread pool: Starting up
>>> [    0.794932] Slow work thread pool: Ready
>>> [    0.794953] [drm] Initialized radeon 2.5.0 20080528 for
>>> 0000:01:05.0 on minor 0
>>>
>>>
>>> Torsten
>>>
>>

Does the attached patch works ? (try to change the if 0 to if 1 too

Cheers,
Jerome

[-- Attachment #2: 0001-HACK-RS690.patch --]
[-- Type: text/plain, Size: 1048 bytes --]

>From c699536948731a37372dbc12062559265fcc2f3c Mon Sep 17 00:00:00 2001
From: Jerome Glisse <jglisse@redhat.com>
Date: Wed, 14 Jul 2010 15:28:53 -0400
Subject: [PATCH] HACK RS690

---
 drivers/gpu/drm/radeon/rs690.c |   10 +++++++++-
 1 files changed, 9 insertions(+), 1 deletions(-)

diff --git a/drivers/gpu/drm/radeon/rs690.c b/drivers/gpu/drm/radeon/rs690.c
index 23676b6..9dd9c6d 100644
--- a/drivers/gpu/drm/radeon/rs690.c
+++ b/drivers/gpu/drm/radeon/rs690.c
@@ -162,7 +162,15 @@ void rs690_mc_init(struct radeon_device *rdev)
 	rs690_pm_info(rdev);
 	rdev->mc.igp_sideport_enabled = radeon_atombios_sideport_present(rdev);
 	radeon_vram_location(rdev, &rdev->mc, base);
-	radeon_gtt_location(rdev, &rdev->mc);
+//	radeon_gtt_location(rdev, &rdev->mc);
+#if 0
+	mc->gtt_start = 0;
+#else
+	mc->gtt_start = 0xB0000000;
+#endif
+	mc->gtt_end = mc->gtt_start + mc->gtt_size - 1;
+	dev_info(rdev->dev, "GTT: %lluM 0x%08llX - 0x%08llX\n",
+			mc->gtt_size >> 20, mc->gtt_start, mc->gtt_end);
 	radeon_update_bandwidth_info(rdev);
 }
 
-- 
1.7.1


^ permalink raw reply related	[flat|nested] 17+ messages in thread

* Re: Regression 2.6.34->2.6.35-rc4: radeaon KMS an RS690 broken
  2010-07-14 18:51           ` Torsten Kaiser
  2010-07-14 19:30             ` Jerome Glisse
@ 2010-07-14 19:31             ` Alex Deucher
  1 sibling, 0 replies; 17+ messages in thread
From: Alex Deucher @ 2010-07-14 19:31 UTC (permalink / raw)
  To: Torsten Kaiser; +Cc: DRI mailing list, linux-kernel, Jerome Glisse

On Wed, Jul 14, 2010 at 2:51 PM, Torsten Kaiser
<just.for.lkml@googlemail.com> wrote:
> On Tue, Jul 13, 2010 at 9:10 PM, Alex Deucher <alexdeucher@gmail.com> wrote:
>> On Tue, Jul 13, 2010 at 2:29 PM, Torsten Kaiser
>> <just.for.lkml@googlemail.com> wrote:
>>> But the CP is still broken:
>>
>> Is this a regression?  If so, can you bisect it?
>>
>> Alex
>
> I bisected it to this commit:

Jerome, Any thoughts?  I got another report of the CP being broken an
an rs690 on IRC as well.
Looks like the checks that clipped vram based on the aperture size got
removed on rs600 and rs690.  Also, I think ideally we want always want
mc_vram_size and the internal MC vram map to always be the actual vram
size while the part we expose to the memory manager should be clipped
to the aperture size.  I think that was the root cause of the old
brightness lockup bug since there is a bios scratch area usually at
the end of vram which causes problems if we've limited the MC's vram
map.

Alex

>
> d594e46ace22afa1621254f6f669e65430048153 is the first bad commit
> commit d594e46ace22afa1621254f6f669e65430048153
> Author: Jerome Glisse <jglisse@redhat.com>
> Date:   Wed Feb 17 21:54:29 2010 +0000
>
>    drm/radeon/kms: simplify memory controller setup V2
>
>    Get rid of _location and use _start/_end also simplify the
>    computation of vram_start|end & gtt_start|end. For R1XX-R2XX
>    we place VRAM at the same address of PCI aperture, those GPU
>    shouldn't have much memory and seems to behave better when
>    setup that way. For R3XX and newer we place VRAM at 0. For
>    R6XX-R7XX AGP we place VRAM before or after AGP aperture this
>    might limit to limit the VRAM size but it's very unlikely.
>    For IGP we don't change the VRAM placement.
>
>    Tested on (compiz,quake3,suspend/resume):
>    PCI/PCIE:RV280,R420,RV515,RV570,RV610,RV710
>    AGP:RV100,RV280,R420,RV350,RV620(RPB*),RV730
>    IGP:RS480(RPB*),RS690,RS780(RPB*),RS880
>
>    RPB: resume previously broken
>
>    V2 correct commit message to reflect more accurately the bug
>    and move VRAM placement to 0 for most of the GPU to avoid
>    limiting VRAM.
>
>    Signed-off-by: Jerome Glisse <jglisse@redhat.com>
>    Signed-off-by: Dave Airlie <airlied@redhat.com>
>
> :040000 040000 05c1e456fcf6565aa8711e4933807956d0055cca
> 792c6be2bd161a52500c5e8d685ee651cd5af07e M     drivers
>
> HTH, Torsten
>
>>> [    0.426931] Linux agpgart interface v0.103
>>> [    0.427092] [drm] Initialized drm 1.1.0 20060810
>>> [    0.427196] [drm] radeon defaulting to kernel modesetting.
>>> [    0.427255] [drm] radeon kernel modesetting enabled.
>>> [    0.427372] radeon 0000:01:05.0: PCI INT A -> GSI 18 (level, low) -> IRQ 18
>>> [    0.429659] [drm] initializing kernel modesetting (RS690 0x1002:0x791E).
>>> [    0.429817] [drm] register mmio base: 0xFE9F0000
>>> [    0.429876] [drm] register mmio size: 65536
>>> [    0.430457] ATOM BIOS: ATI
>>> [    0.430532] radeon 0000:01:05.0: VRAM: 32M 0xDE000000 - 0xDFFFFFFF (32M used)
>>> [    0.430592] radeon 0000:01:05.0: GTT: 512M 0xBE000000 - 0xDDFFFFFF
>>> [    0.430675] [drm] radeon: irq initialized.
>>> [    0.430737] mtrr: type mismatch for fc000000,2000000 old:
>>> write-back new: write-comb
>>> ining
>>> [    0.430811] [drm] Detected VRAM RAM=32M, BAR=32M
>>> [    0.430868] [drm] RAM width 128bits DDR
>>> [    0.431011] [TTM] Zone  kernel: Available graphics memory: 2010234 kiB.
>>> [    0.431070] [TTM] Initializing pool allocator.
>>> [    0.431147] [drm] radeon: 32M of VRAM memory ready
>>> [    0.431205] [drm] radeon: 512M of GTT memory ready.
>>> [    0.431266] [drm] GART: num cpu pages 131072, num gpu pages 131072
>>> [    0.434654] [drm] radeon: 1 quad pipes, 1 z pipes initialized.
>>> [    0.441719] [drm] Loading RS690/RS740 Microcode
>>> [    0.441926] [drm] radeon: ring at 0x00000000BE000000
>>> [    0.577118] [drm:r100_ring_test] *ERROR* radeon: ring test failed
>>> (sracth(0x15E4)=0x
>>> CAFEDEAD)
>>> [    0.577192] [drm:r100_cp_init] *ERROR* radeon: cp isn't working (-22).
>>> [    0.577252] radeon 0000:01:05.0: failled initializing CP (-22).
>>> [    0.577310] radeon 0000:01:05.0: Disabling GPU acceleration
>>> [    0.577440] [drm] radeon: cp finalized
>>> [    0.578078] [drm] Default TV standard: NTSC
>>> [    0.578314] [drm] Default TV standard: NTSC
>>> [    0.578590] [drm] Radeon Display Connectors
>>> [    0.578648] [drm] Connector 0:
>>> [    0.578706] [drm]   VGA
>>> [    0.578764] [drm]   DDC: 0x7e50 0x7e40 0x7e54 0x7e44 0x7e58 0x7e48
>>> 0x7e5c 0x7e4c
>>> [    0.578837] [drm]   Encoders:
>>> [    0.578894] [drm]     CRT1: INTERNAL_KLDSCP_DAC1
>>> [    0.578952] [drm] Connector 1:
>>> [    0.579010] [drm]   S-video
>>> [    0.579067] [drm]   Encoders:
>>> [    0.579124] [drm]     TV1: INTERNAL_KLDSCP_DAC1
>>> [    0.579182] [drm] Connector 2:
>>> [    0.579239] [drm]   HDMI-A
>>> [    0.579297] [drm]   DDC: 0x7e40 0x7e50 0x7e44 0x7e54 0x7e48 0x7e58
>>> 0x7e4c 0x7e5c
>>> [    0.579369] [drm]   Encoders:
>>> [    0.579427] [drm]     DFP3: INTERNAL_LVTM1
>>> [    0.773375] [drm] fb mappable at 0xFC040000
>>> [    0.773434] [drm] vram apper at 0xFC000000
>>> [    0.773491] [drm] size 786432
>>> [    0.773549] [drm] fb depth is 8
>>> [    0.773606] [drm]    pitch is 1024
>>> [    0.773737] fbcon: radeondrmfb (fb0) is primary device
>>> [    0.793240] Console: switching to colour frame buffer device 128x48
>>> [    0.794833] fb0: radeondrmfb frame buffer device
>>> [    0.794852] drm: registered panic notifier
>>> [    0.794871] Slow work thread pool: Starting up
>>> [    0.794932] Slow work thread pool: Ready
>>> [    0.794953] [drm] Initialized radeon 2.5.0 20080528 for
>>> 0000:01:05.0 on minor 0
>>>
>>>
>>> Torsten
>>>
>>
>

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: Regression 2.6.34->2.6.35-rc4: radeaon KMS an RS690 broken
  2010-07-14 19:30             ` Jerome Glisse
@ 2010-07-14 20:05               ` Torsten Kaiser
  2010-07-14 20:51                 ` Jerome Glisse
  2010-07-14 22:16                 ` Alex Deucher
  0 siblings, 2 replies; 17+ messages in thread
From: Torsten Kaiser @ 2010-07-14 20:05 UTC (permalink / raw)
  To: Jerome Glisse; +Cc: Alex Deucher, linux-kernel, DRI mailing list

On Wed, Jul 14, 2010 at 9:30 PM, Jerome Glisse <glisse@freedesktop.org> wrote:
> On 07/14/2010 02:51 PM, Torsten Kaiser wrote:
>>
>> On Tue, Jul 13, 2010 at 9:10 PM, Alex Deucher<alexdeucher@gmail.com>
>>  wrote:
>>>
>>> On Tue, Jul 13, 2010 at 2:29 PM, Torsten Kaiser
>>> <just.for.lkml@googlemail.com>  wrote:
>>>>
>>>> But the CP is still broken:
>>>
>>> Is this a regression?  If so, can you bisect it?
>>>
>>> Alex
>>
>> I bisected it to this commit:
>>
>> d594e46ace22afa1621254f6f669e65430048153 is the first bad commit
>> commit d594e46ace22afa1621254f6f669e65430048153
>> Author: Jerome Glisse<jglisse@redhat.com>
>> Date:   Wed Feb 17 21:54:29 2010 +0000
>>
>>     drm/radeon/kms: simplify memory controller setup V2
>>
>>     Get rid of _location and use _start/_end also simplify the
>>     computation of vram_start|end&  gtt_start|end. For R1XX-R2XX
>>     we place VRAM at the same address of PCI aperture, those GPU
>>     shouldn't have much memory and seems to behave better when
>>     setup that way. For R3XX and newer we place VRAM at 0. For
>>     R6XX-R7XX AGP we place VRAM before or after AGP aperture this
>>     might limit to limit the VRAM size but it's very unlikely.
>>     For IGP we don't change the VRAM placement.
>>
>>     Tested on (compiz,quake3,suspend/resume):
>>     PCI/PCIE:RV280,R420,RV515,RV570,RV610,RV710
>>     AGP:RV100,RV280,R420,RV350,RV620(RPB*),RV730
>>     IGP:RS480(RPB*),RS690,RS780(RPB*),RS880
>>
>>     RPB: resume previously broken
>>
>>     V2 correct commit message to reflect more accurately the bug
>>     and move VRAM placement to 0 for most of the GPU to avoid
>>     limiting VRAM.
>>
>>     Signed-off-by: Jerome Glisse<jglisse@redhat.com>
>>     Signed-off-by: Dave Airlie<airlied@redhat.com>
>>
>> :040000 040000 05c1e456fcf6565aa8711e4933807956d0055cca
>> 792c6be2bd161a52500c5e8d685ee651cd5af07e M     drivers
>>
>> HTH, Torsten
>>
>>>> [    0.426931] Linux agpgart interface v0.103
>>>> [    0.427092] [drm] Initialized drm 1.1.0 20060810
>>>> [    0.427196] [drm] radeon defaulting to kernel modesetting.
>>>> [    0.427255] [drm] radeon kernel modesetting enabled.
>>>> [    0.427372] radeon 0000:01:05.0: PCI INT A ->  GSI 18 (level, low) ->
>>>>  IRQ 18
>>>> [    0.429659] [drm] initializing kernel modesetting (RS690
>>>> 0x1002:0x791E).
>>>> [    0.429817] [drm] register mmio base: 0xFE9F0000
>>>> [    0.429876] [drm] register mmio size: 65536
>>>> [    0.430457] ATOM BIOS: ATI
>>>> [    0.430532] radeon 0000:01:05.0: VRAM: 32M 0xDE000000 - 0xDFFFFFFF
>>>> (32M used)
>>>> [    0.430592] radeon 0000:01:05.0: GTT: 512M 0xBE000000 - 0xDDFFFFFF
>>>> [    0.430675] [drm] radeon: irq initialized.
>>>> [    0.430737] mtrr: type mismatch for fc000000,2000000 old:
>>>> write-back new: write-comb
>>>> ining
>>>> [    0.430811] [drm] Detected VRAM RAM=32M, BAR=32M
>>>> [    0.430868] [drm] RAM width 128bits DDR
>>>> [    0.431011] [TTM] Zone  kernel: Available graphics memory: 2010234
>>>> kiB.
>>>> [    0.431070] [TTM] Initializing pool allocator.
>>>> [    0.431147] [drm] radeon: 32M of VRAM memory ready
>>>> [    0.431205] [drm] radeon: 512M of GTT memory ready.
>>>> [    0.431266] [drm] GART: num cpu pages 131072, num gpu pages 131072
>>>> [    0.434654] [drm] radeon: 1 quad pipes, 1 z pipes initialized.
>>>> [    0.441719] [drm] Loading RS690/RS740 Microcode
>>>> [    0.441926] [drm] radeon: ring at 0x00000000BE000000
>>>> [    0.577118] [drm:r100_ring_test] *ERROR* radeon: ring test failed
>>>> (sracth(0x15E4)=0x
>>>> CAFEDEAD)
>>>> [    0.577192] [drm:r100_cp_init] *ERROR* radeon: cp isn't working
>>>> (-22).
>>>> [    0.577252] radeon 0000:01:05.0: failled initializing CP (-22).
>>>> [    0.577310] radeon 0000:01:05.0: Disabling GPU acceleration
>>>> [    0.577440] [drm] radeon: cp finalized
>>>> [    0.578078] [drm] Default TV standard: NTSC
>>>> [    0.578314] [drm] Default TV standard: NTSC
>>>> [    0.578590] [drm] Radeon Display Connectors
>>>> [    0.578648] [drm] Connector 0:
>>>> [    0.578706] [drm]   VGA
>>>> [    0.578764] [drm]   DDC: 0x7e50 0x7e40 0x7e54 0x7e44 0x7e58 0x7e48
>>>> 0x7e5c 0x7e4c
>>>> [    0.578837] [drm]   Encoders:
>>>> [    0.578894] [drm]     CRT1: INTERNAL_KLDSCP_DAC1
>>>> [    0.578952] [drm] Connector 1:
>>>> [    0.579010] [drm]   S-video
>>>> [    0.579067] [drm]   Encoders:
>>>> [    0.579124] [drm]     TV1: INTERNAL_KLDSCP_DAC1
>>>> [    0.579182] [drm] Connector 2:
>>>> [    0.579239] [drm]   HDMI-A
>>>> [    0.579297] [drm]   DDC: 0x7e40 0x7e50 0x7e44 0x7e54 0x7e48 0x7e58
>>>> 0x7e4c 0x7e5c
>>>> [    0.579369] [drm]   Encoders:
>>>> [    0.579427] [drm]     DFP3: INTERNAL_LVTM1
>>>> [    0.773375] [drm] fb mappable at 0xFC040000
>>>> [    0.773434] [drm] vram apper at 0xFC000000
>>>> [    0.773491] [drm] size 786432
>>>> [    0.773549] [drm] fb depth is 8
>>>> [    0.773606] [drm]    pitch is 1024
>>>> [    0.773737] fbcon: radeondrmfb (fb0) is primary device
>>>> [    0.793240] Console: switching to colour frame buffer device 128x48
>>>> [    0.794833] fb0: radeondrmfb frame buffer device
>>>> [    0.794852] drm: registered panic notifier
>>>> [    0.794871] Slow work thread pool: Starting up
>>>> [    0.794932] Slow work thread pool: Ready
>>>> [    0.794953] [drm] Initialized radeon 2.5.0 20080528 for
>>>> 0000:01:05.0 on minor 0
>>>>
>>>>
>>>> Torsten
>>>>
>>>
>
> Does the attached patch works ? (try to change the if 0 to if 1 too

The patch doesn't compile, but after changing mc->foo to rdev->mc.foo it built.

Result from the original patch ("if 0"):
[    0.429603] [drm] initializing kernel modesetting (RS690 0x1002:0x791E).
[    0.429751] [drm] register mmio base: 0xFE9F0000
[    0.429809] [drm] register mmio size: 65536
[    0.430385] ATOM BIOS: ATI
[    0.430460] radeon 0000:01:05.0: VRAM: 32M 0xDE000000 - 0xDFFFFFFF (32M used)
[    0.430520] radeon 0000:01:05.0: GTT: 512M 0xB0000000 - 0xCFFFFFFF
[    0.430603] [drm] radeon: irq initialized.
[    0.430666] mtrr: type mismatch for fc000000,2000000 old:
write-back new: write-combining
[    0.430739] [drm] Detected VRAM RAM=32M, BAR=32M
[    0.430797] [drm] RAM width 128bits DDR
[    0.430940] [TTM] Zone  kernel: Available graphics memory: 2010234 kiB.
[    0.430999] [TTM] Initializing pool allocator.
[    0.431075] [drm] radeon: 32M of VRAM memory ready
[    0.431133] [drm] radeon: 512M of GTT memory ready.
[    0.431194] [drm] GART: num cpu pages 131072, num gpu pages 131072
[    0.434577] [drm] radeon: 1 quad pipes, 1 z pipes initialized.
[    0.441645] [drm] Loading RS690/RS740 Microcode
[    0.441853] [drm] radeon: ring at 0x00000000B0000000
[    0.576773] [drm:r100_ring_test] *ERROR* radeon: ring test failed
(sracth(0x15E4)=0xCAFEDEAD)
[    0.576847] [drm:r100_cp_init] *ERROR* radeon: cp isn't working (-22).
[    0.576907] radeon 0000:01:05.0: failled initializing CP (-22).
[    0.576965] radeon 0000:01:05.0: Disabling GPU acceleration

Result from patch after changing it to "if 1":
[    0.400348] [drm] initializing kernel modesetting (RS690 0x1002:0x791E).
[    0.400497] [drm] register mmio base: 0xFE9F0000
[    0.400556] [drm] register mmio size: 65536
[    0.401097] ATOM BIOS: ATI
[    0.401171] radeon 0000:01:05.0: VRAM: 32M 0xDE000000 - 0xDFFFFFFF (32M used)
[    0.401231] radeon 0000:01:05.0: GTT: 512M 0x00000000 - 0x1FFFFFFF
[    0.401314] [drm] radeon: irq initialized.
[    0.401377] mtrr: type mismatch for fc000000,2000000 old:
write-back new: write-combining
[    0.401451] [drm] Detected VRAM RAM=32M, BAR=32M
[    0.401509] [drm] RAM width 128bits DDR
[    0.401597] [TTM] Zone  kernel: Available graphics memory: 2010234 kiB.
[    0.401656] [TTM] Initializing pool allocator.
[    0.401732] [drm] radeon: 32M of VRAM memory ready
[    0.401791] [drm] radeon: 512M of GTT memory ready.
[    0.401852] [drm] GART: num cpu pages 131072, num gpu pages 131072
[    0.405242] [drm] radeon: 1 quad pipes, 1 z pipes initialized.
[    0.412298] [drm] Loading RS690/RS740 Microcode
[    0.412507] [drm] radeon: ring at 0x0000000000000000
[    0.412582] [drm] ring test succeeded in 1 usecs
[    0.412726] [drm] radeon: ib pool ready.
[    0.412792] [drm] ib test succeeded in 0 usecs

Torsten

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: Regression 2.6.34->2.6.35-rc4: radeaon KMS an RS690 broken
  2010-07-14 20:05               ` Torsten Kaiser
@ 2010-07-14 20:51                 ` Jerome Glisse
  2010-07-14 22:16                 ` Alex Deucher
  1 sibling, 0 replies; 17+ messages in thread
From: Jerome Glisse @ 2010-07-14 20:51 UTC (permalink / raw)
  To: Torsten Kaiser; +Cc: Alex Deucher, linux-kernel, DRI mailing list

On 07/14/2010 04:05 PM, Torsten Kaiser wrote:
> On Wed, Jul 14, 2010 at 9:30 PM, Jerome Glisse<glisse@freedesktop.org>  wrote:
>> On 07/14/2010 02:51 PM, Torsten Kaiser wrote:
>>>
>>> On Tue, Jul 13, 2010 at 9:10 PM, Alex Deucher<alexdeucher@gmail.com>
>>>   wrote:
>>>>
>>>> On Tue, Jul 13, 2010 at 2:29 PM, Torsten Kaiser
>>>> <just.for.lkml@googlemail.com>    wrote:
>>>>>
>>>>> But the CP is still broken:
>>>>
>>>> Is this a regression?  If so, can you bisect it?
>>>>
>>>> Alex
>>>
>>> I bisected it to this commit:
>>>
>>> d594e46ace22afa1621254f6f669e65430048153 is the first bad commit
>>> commit d594e46ace22afa1621254f6f669e65430048153
>>> Author: Jerome Glisse<jglisse@redhat.com>
>>> Date:   Wed Feb 17 21:54:29 2010 +0000
>>>
>>>      drm/radeon/kms: simplify memory controller setup V2
>>>
>>>      Get rid of _location and use _start/_end also simplify the
>>>      computation of vram_start|end&    gtt_start|end. For R1XX-R2XX
>>>      we place VRAM at the same address of PCI aperture, those GPU
>>>      shouldn't have much memory and seems to behave better when
>>>      setup that way. For R3XX and newer we place VRAM at 0. For
>>>      R6XX-R7XX AGP we place VRAM before or after AGP aperture this
>>>      might limit to limit the VRAM size but it's very unlikely.
>>>      For IGP we don't change the VRAM placement.
>>>
>>>      Tested on (compiz,quake3,suspend/resume):
>>>      PCI/PCIE:RV280,R420,RV515,RV570,RV610,RV710
>>>      AGP:RV100,RV280,R420,RV350,RV620(RPB*),RV730
>>>      IGP:RS480(RPB*),RS690,RS780(RPB*),RS880
>>>
>>>      RPB: resume previously broken
>>>
>>>      V2 correct commit message to reflect more accurately the bug
>>>      and move VRAM placement to 0 for most of the GPU to avoid
>>>      limiting VRAM.
>>>
>>>      Signed-off-by: Jerome Glisse<jglisse@redhat.com>
>>>      Signed-off-by: Dave Airlie<airlied@redhat.com>
>>>
>>> :040000 040000 05c1e456fcf6565aa8711e4933807956d0055cca
>>> 792c6be2bd161a52500c5e8d685ee651cd5af07e M     drivers
>>>
>>> HTH, Torsten
>>>
>>>>> [    0.426931] Linux agpgart interface v0.103
>>>>> [    0.427092] [drm] Initialized drm 1.1.0 20060810
>>>>> [    0.427196] [drm] radeon defaulting to kernel modesetting.
>>>>> [    0.427255] [drm] radeon kernel modesetting enabled.
>>>>> [    0.427372] radeon 0000:01:05.0: PCI INT A ->    GSI 18 (level, low) ->
>>>>>   IRQ 18
>>>>> [    0.429659] [drm] initializing kernel modesetting (RS690
>>>>> 0x1002:0x791E).
>>>>> [    0.429817] [drm] register mmio base: 0xFE9F0000
>>>>> [    0.429876] [drm] register mmio size: 65536
>>>>> [    0.430457] ATOM BIOS: ATI
>>>>> [    0.430532] radeon 0000:01:05.0: VRAM: 32M 0xDE000000 - 0xDFFFFFFF
>>>>> (32M used)
>>>>> [    0.430592] radeon 0000:01:05.0: GTT: 512M 0xBE000000 - 0xDDFFFFFF
>>>>> [    0.430675] [drm] radeon: irq initialized.
>>>>> [    0.430737] mtrr: type mismatch for fc000000,2000000 old:
>>>>> write-back new: write-comb
>>>>> ining
>>>>> [    0.430811] [drm] Detected VRAM RAM=32M, BAR=32M
>>>>> [    0.430868] [drm] RAM width 128bits DDR
>>>>> [    0.431011] [TTM] Zone  kernel: Available graphics memory: 2010234
>>>>> kiB.
>>>>> [    0.431070] [TTM] Initializing pool allocator.
>>>>> [    0.431147] [drm] radeon: 32M of VRAM memory ready
>>>>> [    0.431205] [drm] radeon: 512M of GTT memory ready.
>>>>> [    0.431266] [drm] GART: num cpu pages 131072, num gpu pages 131072
>>>>> [    0.434654] [drm] radeon: 1 quad pipes, 1 z pipes initialized.
>>>>> [    0.441719] [drm] Loading RS690/RS740 Microcode
>>>>> [    0.441926] [drm] radeon: ring at 0x00000000BE000000
>>>>> [    0.577118] [drm:r100_ring_test] *ERROR* radeon: ring test failed
>>>>> (sracth(0x15E4)=0x
>>>>> CAFEDEAD)
>>>>> [    0.577192] [drm:r100_cp_init] *ERROR* radeon: cp isn't working
>>>>> (-22).
>>>>> [    0.577252] radeon 0000:01:05.0: failled initializing CP (-22).
>>>>> [    0.577310] radeon 0000:01:05.0: Disabling GPU acceleration
>>>>> [    0.577440] [drm] radeon: cp finalized
>>>>> [    0.578078] [drm] Default TV standard: NTSC
>>>>> [    0.578314] [drm] Default TV standard: NTSC
>>>>> [    0.578590] [drm] Radeon Display Connectors
>>>>> [    0.578648] [drm] Connector 0:
>>>>> [    0.578706] [drm]   VGA
>>>>> [    0.578764] [drm]   DDC: 0x7e50 0x7e40 0x7e54 0x7e44 0x7e58 0x7e48
>>>>> 0x7e5c 0x7e4c
>>>>> [    0.578837] [drm]   Encoders:
>>>>> [    0.578894] [drm]     CRT1: INTERNAL_KLDSCP_DAC1
>>>>> [    0.578952] [drm] Connector 1:
>>>>> [    0.579010] [drm]   S-video
>>>>> [    0.579067] [drm]   Encoders:
>>>>> [    0.579124] [drm]     TV1: INTERNAL_KLDSCP_DAC1
>>>>> [    0.579182] [drm] Connector 2:
>>>>> [    0.579239] [drm]   HDMI-A
>>>>> [    0.579297] [drm]   DDC: 0x7e40 0x7e50 0x7e44 0x7e54 0x7e48 0x7e58
>>>>> 0x7e4c 0x7e5c
>>>>> [    0.579369] [drm]   Encoders:
>>>>> [    0.579427] [drm]     DFP3: INTERNAL_LVTM1
>>>>> [    0.773375] [drm] fb mappable at 0xFC040000
>>>>> [    0.773434] [drm] vram apper at 0xFC000000
>>>>> [    0.773491] [drm] size 786432
>>>>> [    0.773549] [drm] fb depth is 8
>>>>> [    0.773606] [drm]    pitch is 1024
>>>>> [    0.773737] fbcon: radeondrmfb (fb0) is primary device
>>>>> [    0.793240] Console: switching to colour frame buffer device 128x48
>>>>> [    0.794833] fb0: radeondrmfb frame buffer device
>>>>> [    0.794852] drm: registered panic notifier
>>>>> [    0.794871] Slow work thread pool: Starting up
>>>>> [    0.794932] Slow work thread pool: Ready
>>>>> [    0.794953] [drm] Initialized radeon 2.5.0 20080528 for
>>>>> 0000:01:05.0 on minor 0
>>>>>
>>>>>
>>>>> Torsten
>>>>>
>>>>
>>
>> Does the attached patch works ? (try to change the if 0 to if 1 too
>
> The patch doesn't compile, but after changing mc->foo to rdev->mc.foo it built.
>
> Result from the original patch ("if 0"):
> [    0.429603] [drm] initializing kernel modesetting (RS690 0x1002:0x791E).
> [    0.429751] [drm] register mmio base: 0xFE9F0000
> [    0.429809] [drm] register mmio size: 65536
> [    0.430385] ATOM BIOS: ATI
> [    0.430460] radeon 0000:01:05.0: VRAM: 32M 0xDE000000 - 0xDFFFFFFF (32M used)
> [    0.430520] radeon 0000:01:05.0: GTT: 512M 0xB0000000 - 0xCFFFFFFF
> [    0.430603] [drm] radeon: irq initialized.
> [    0.430666] mtrr: type mismatch for fc000000,2000000 old:
> write-back new: write-combining
> [    0.430739] [drm] Detected VRAM RAM=32M, BAR=32M
> [    0.430797] [drm] RAM width 128bits DDR
> [    0.430940] [TTM] Zone  kernel: Available graphics memory: 2010234 kiB.
> [    0.430999] [TTM] Initializing pool allocator.
> [    0.431075] [drm] radeon: 32M of VRAM memory ready
> [    0.431133] [drm] radeon: 512M of GTT memory ready.
> [    0.431194] [drm] GART: num cpu pages 131072, num gpu pages 131072
> [    0.434577] [drm] radeon: 1 quad pipes, 1 z pipes initialized.
> [    0.441645] [drm] Loading RS690/RS740 Microcode
> [    0.441853] [drm] radeon: ring at 0x00000000B0000000
> [    0.576773] [drm:r100_ring_test] *ERROR* radeon: ring test failed
> (sracth(0x15E4)=0xCAFEDEAD)
> [    0.576847] [drm:r100_cp_init] *ERROR* radeon: cp isn't working (-22).
> [    0.576907] radeon 0000:01:05.0: failled initializing CP (-22).
> [    0.576965] radeon 0000:01:05.0: Disabling GPU acceleration
>
> Result from patch after changing it to "if 1":
> [    0.400348] [drm] initializing kernel modesetting (RS690 0x1002:0x791E).
> [    0.400497] [drm] register mmio base: 0xFE9F0000
> [    0.400556] [drm] register mmio size: 65536
> [    0.401097] ATOM BIOS: ATI
> [    0.401171] radeon 0000:01:05.0: VRAM: 32M 0xDE000000 - 0xDFFFFFFF (32M used)
> [    0.401231] radeon 0000:01:05.0: GTT: 512M 0x00000000 - 0x1FFFFFFF
> [    0.401314] [drm] radeon: irq initialized.
> [    0.401377] mtrr: type mismatch for fc000000,2000000 old:
> write-back new: write-combining
> [    0.401451] [drm] Detected VRAM RAM=32M, BAR=32M
> [    0.401509] [drm] RAM width 128bits DDR
> [    0.401597] [TTM] Zone  kernel: Available graphics memory: 2010234 kiB.
> [    0.401656] [TTM] Initializing pool allocator.
> [    0.401732] [drm] radeon: 32M of VRAM memory ready
> [    0.401791] [drm] radeon: 512M of GTT memory ready.
> [    0.401852] [drm] GART: num cpu pages 131072, num gpu pages 131072
> [    0.405242] [drm] radeon: 1 quad pipes, 1 z pipes initialized.
> [    0.412298] [drm] Loading RS690/RS740 Microcode
> [    0.412507] [drm] radeon: ring at 0x0000000000000000
> [    0.412582] [drm] ring test succeeded in 1 usecs
> [    0.412726] [drm] radeon: ib pool ready.
> [    0.412792] [drm] ib test succeeded in 0 usecs
>
> Torsten

Does it works if you change the if 0 to if 1 in the patch ?

Cheers,
Jerome

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: Regression 2.6.34->2.6.35-rc4: radeaon KMS an RS690 broken
  2010-07-14 20:05               ` Torsten Kaiser
  2010-07-14 20:51                 ` Jerome Glisse
@ 2010-07-14 22:16                 ` Alex Deucher
  2010-07-15  5:49                   ` Torsten Kaiser
  1 sibling, 1 reply; 17+ messages in thread
From: Alex Deucher @ 2010-07-14 22:16 UTC (permalink / raw)
  To: Torsten Kaiser; +Cc: Jerome Glisse, linux-kernel, DRI mailing list

[-- Attachment #1: Type: text/plain, Size: 8784 bytes --]

On Wed, Jul 14, 2010 at 4:05 PM, Torsten Kaiser
<just.for.lkml@googlemail.com> wrote:
> On Wed, Jul 14, 2010 at 9:30 PM, Jerome Glisse <glisse@freedesktop.org> wrote:
>> On 07/14/2010 02:51 PM, Torsten Kaiser wrote:
>>>
>>> On Tue, Jul 13, 2010 at 9:10 PM, Alex Deucher<alexdeucher@gmail.com>
>>>  wrote:
>>>>
>>>> On Tue, Jul 13, 2010 at 2:29 PM, Torsten Kaiser
>>>> <just.for.lkml@googlemail.com>  wrote:
>>>>>
>>>>> But the CP is still broken:
>>>>
>>>> Is this a regression?  If so, can you bisect it?
>>>>
>>>> Alex
>>>
>>> I bisected it to this commit:
>>>
>>> d594e46ace22afa1621254f6f669e65430048153 is the first bad commit
>>> commit d594e46ace22afa1621254f6f669e65430048153
>>> Author: Jerome Glisse<jglisse@redhat.com>
>>> Date:   Wed Feb 17 21:54:29 2010 +0000
>>>
>>>     drm/radeon/kms: simplify memory controller setup V2
>>>
>>>     Get rid of _location and use _start/_end also simplify the
>>>     computation of vram_start|end&  gtt_start|end. For R1XX-R2XX
>>>     we place VRAM at the same address of PCI aperture, those GPU
>>>     shouldn't have much memory and seems to behave better when
>>>     setup that way. For R3XX and newer we place VRAM at 0. For
>>>     R6XX-R7XX AGP we place VRAM before or after AGP aperture this
>>>     might limit to limit the VRAM size but it's very unlikely.
>>>     For IGP we don't change the VRAM placement.
>>>
>>>     Tested on (compiz,quake3,suspend/resume):
>>>     PCI/PCIE:RV280,R420,RV515,RV570,RV610,RV710
>>>     AGP:RV100,RV280,R420,RV350,RV620(RPB*),RV730
>>>     IGP:RS480(RPB*),RS690,RS780(RPB*),RS880
>>>
>>>     RPB: resume previously broken
>>>
>>>     V2 correct commit message to reflect more accurately the bug
>>>     and move VRAM placement to 0 for most of the GPU to avoid
>>>     limiting VRAM.
>>>
>>>     Signed-off-by: Jerome Glisse<jglisse@redhat.com>
>>>     Signed-off-by: Dave Airlie<airlied@redhat.com>
>>>
>>> :040000 040000 05c1e456fcf6565aa8711e4933807956d0055cca
>>> 792c6be2bd161a52500c5e8d685ee651cd5af07e M     drivers
>>>
>>> HTH, Torsten
>>>
>>>>> [    0.426931] Linux agpgart interface v0.103
>>>>> [    0.427092] [drm] Initialized drm 1.1.0 20060810
>>>>> [    0.427196] [drm] radeon defaulting to kernel modesetting.
>>>>> [    0.427255] [drm] radeon kernel modesetting enabled.
>>>>> [    0.427372] radeon 0000:01:05.0: PCI INT A ->  GSI 18 (level, low) ->
>>>>>  IRQ 18
>>>>> [    0.429659] [drm] initializing kernel modesetting (RS690
>>>>> 0x1002:0x791E).
>>>>> [    0.429817] [drm] register mmio base: 0xFE9F0000
>>>>> [    0.429876] [drm] register mmio size: 65536
>>>>> [    0.430457] ATOM BIOS: ATI
>>>>> [    0.430532] radeon 0000:01:05.0: VRAM: 32M 0xDE000000 - 0xDFFFFFFF
>>>>> (32M used)
>>>>> [    0.430592] radeon 0000:01:05.0: GTT: 512M 0xBE000000 - 0xDDFFFFFF
>>>>> [    0.430675] [drm] radeon: irq initialized.
>>>>> [    0.430737] mtrr: type mismatch for fc000000,2000000 old:
>>>>> write-back new: write-comb
>>>>> ining
>>>>> [    0.430811] [drm] Detected VRAM RAM=32M, BAR=32M
>>>>> [    0.430868] [drm] RAM width 128bits DDR
>>>>> [    0.431011] [TTM] Zone  kernel: Available graphics memory: 2010234
>>>>> kiB.
>>>>> [    0.431070] [TTM] Initializing pool allocator.
>>>>> [    0.431147] [drm] radeon: 32M of VRAM memory ready
>>>>> [    0.431205] [drm] radeon: 512M of GTT memory ready.
>>>>> [    0.431266] [drm] GART: num cpu pages 131072, num gpu pages 131072
>>>>> [    0.434654] [drm] radeon: 1 quad pipes, 1 z pipes initialized.
>>>>> [    0.441719] [drm] Loading RS690/RS740 Microcode
>>>>> [    0.441926] [drm] radeon: ring at 0x00000000BE000000
>>>>> [    0.577118] [drm:r100_ring_test] *ERROR* radeon: ring test failed
>>>>> (sracth(0x15E4)=0x
>>>>> CAFEDEAD)
>>>>> [    0.577192] [drm:r100_cp_init] *ERROR* radeon: cp isn't working
>>>>> (-22).
>>>>> [    0.577252] radeon 0000:01:05.0: failled initializing CP (-22).
>>>>> [    0.577310] radeon 0000:01:05.0: Disabling GPU acceleration
>>>>> [    0.577440] [drm] radeon: cp finalized
>>>>> [    0.578078] [drm] Default TV standard: NTSC
>>>>> [    0.578314] [drm] Default TV standard: NTSC
>>>>> [    0.578590] [drm] Radeon Display Connectors
>>>>> [    0.578648] [drm] Connector 0:
>>>>> [    0.578706] [drm]   VGA
>>>>> [    0.578764] [drm]   DDC: 0x7e50 0x7e40 0x7e54 0x7e44 0x7e58 0x7e48
>>>>> 0x7e5c 0x7e4c
>>>>> [    0.578837] [drm]   Encoders:
>>>>> [    0.578894] [drm]     CRT1: INTERNAL_KLDSCP_DAC1
>>>>> [    0.578952] [drm] Connector 1:
>>>>> [    0.579010] [drm]   S-video
>>>>> [    0.579067] [drm]   Encoders:
>>>>> [    0.579124] [drm]     TV1: INTERNAL_KLDSCP_DAC1
>>>>> [    0.579182] [drm] Connector 2:
>>>>> [    0.579239] [drm]   HDMI-A
>>>>> [    0.579297] [drm]   DDC: 0x7e40 0x7e50 0x7e44 0x7e54 0x7e48 0x7e58
>>>>> 0x7e4c 0x7e5c
>>>>> [    0.579369] [drm]   Encoders:
>>>>> [    0.579427] [drm]     DFP3: INTERNAL_LVTM1
>>>>> [    0.773375] [drm] fb mappable at 0xFC040000
>>>>> [    0.773434] [drm] vram apper at 0xFC000000
>>>>> [    0.773491] [drm] size 786432
>>>>> [    0.773549] [drm] fb depth is 8
>>>>> [    0.773606] [drm]    pitch is 1024
>>>>> [    0.773737] fbcon: radeondrmfb (fb0) is primary device
>>>>> [    0.793240] Console: switching to colour frame buffer device 128x48
>>>>> [    0.794833] fb0: radeondrmfb frame buffer device
>>>>> [    0.794852] drm: registered panic notifier
>>>>> [    0.794871] Slow work thread pool: Starting up
>>>>> [    0.794932] Slow work thread pool: Ready
>>>>> [    0.794953] [drm] Initialized radeon 2.5.0 20080528 for
>>>>> 0000:01:05.0 on minor 0
>>>>>
>>>>>
>>>>> Torsten
>>>>>
>>>>
>>
>> Does the attached patch works ? (try to change the if 0 to if 1 too
>
> The patch doesn't compile, but after changing mc->foo to rdev->mc.foo it built.
>

I discussed this with Jerome and I think we found the root cause.
Does this patch help?

Alex


> Result from the original patch ("if 0"):
> [    0.429603] [drm] initializing kernel modesetting (RS690 0x1002:0x791E).
> [    0.429751] [drm] register mmio base: 0xFE9F0000
> [    0.429809] [drm] register mmio size: 65536
> [    0.430385] ATOM BIOS: ATI
> [    0.430460] radeon 0000:01:05.0: VRAM: 32M 0xDE000000 - 0xDFFFFFFF (32M used)
> [    0.430520] radeon 0000:01:05.0: GTT: 512M 0xB0000000 - 0xCFFFFFFF
> [    0.430603] [drm] radeon: irq initialized.
> [    0.430666] mtrr: type mismatch for fc000000,2000000 old:
> write-back new: write-combining
> [    0.430739] [drm] Detected VRAM RAM=32M, BAR=32M
> [    0.430797] [drm] RAM width 128bits DDR
> [    0.430940] [TTM] Zone  kernel: Available graphics memory: 2010234 kiB.
> [    0.430999] [TTM] Initializing pool allocator.
> [    0.431075] [drm] radeon: 32M of VRAM memory ready
> [    0.431133] [drm] radeon: 512M of GTT memory ready.
> [    0.431194] [drm] GART: num cpu pages 131072, num gpu pages 131072
> [    0.434577] [drm] radeon: 1 quad pipes, 1 z pipes initialized.
> [    0.441645] [drm] Loading RS690/RS740 Microcode
> [    0.441853] [drm] radeon: ring at 0x00000000B0000000
> [    0.576773] [drm:r100_ring_test] *ERROR* radeon: ring test failed
> (sracth(0x15E4)=0xCAFEDEAD)
> [    0.576847] [drm:r100_cp_init] *ERROR* radeon: cp isn't working (-22).
> [    0.576907] radeon 0000:01:05.0: failled initializing CP (-22).
> [    0.576965] radeon 0000:01:05.0: Disabling GPU acceleration
>
> Result from patch after changing it to "if 1":
> [    0.400348] [drm] initializing kernel modesetting (RS690 0x1002:0x791E).
> [    0.400497] [drm] register mmio base: 0xFE9F0000
> [    0.400556] [drm] register mmio size: 65536
> [    0.401097] ATOM BIOS: ATI
> [    0.401171] radeon 0000:01:05.0: VRAM: 32M 0xDE000000 - 0xDFFFFFFF (32M used)
> [    0.401231] radeon 0000:01:05.0: GTT: 512M 0x00000000 - 0x1FFFFFFF
> [    0.401314] [drm] radeon: irq initialized.
> [    0.401377] mtrr: type mismatch for fc000000,2000000 old:
> write-back new: write-combining
> [    0.401451] [drm] Detected VRAM RAM=32M, BAR=32M
> [    0.401509] [drm] RAM width 128bits DDR
> [    0.401597] [TTM] Zone  kernel: Available graphics memory: 2010234 kiB.
> [    0.401656] [TTM] Initializing pool allocator.
> [    0.401732] [drm] radeon: 32M of VRAM memory ready
> [    0.401791] [drm] radeon: 512M of GTT memory ready.
> [    0.401852] [drm] GART: num cpu pages 131072, num gpu pages 131072
> [    0.405242] [drm] radeon: 1 quad pipes, 1 z pipes initialized.
> [    0.412298] [drm] Loading RS690/RS740 Microcode
> [    0.412507] [drm] radeon: ring at 0x0000000000000000
> [    0.412582] [drm] ring test succeeded in 1 usecs
> [    0.412726] [drm] radeon: ib pool ready.
> [    0.412792] [drm] ib test succeeded in 0 usecs
>
> Torsten
>

[-- Attachment #2: 0001-drm-radeon-kms-fix-gtt-MC-base-alignment-on-rs4xx-rs.patch --]
[-- Type: text/x-patch, Size: 7693 bytes --]

From d9a401e87e770949ebebf1e741cd74acc9fbabaf Mon Sep 17 00:00:00 2001
From: Alex Deucher <alexdeucher@gmail.com>
Date: Wed, 14 Jul 2010 17:58:15 -0400
Subject: [PATCH] drm/radeon/kms: fix gtt MC base alignment on rs4xx/rs690/rs740 asics

The asics in question have the following requirements with regard to
their gart setups:

1. The GART aperture size has to be in the form of 2^X bytes, where X is from 25 to 31
2. The GART aperture MC base has to be aligned to a boundary equal to the size of the
aperture.
3. The GART page table has to be aligned to the boundary equal to the size of the table.
4. The GART page table size is: table_entry_size * (aperture_size / page_size)
5. The GART page table has to be allocated in non-paged, non-cached, contiguous system
memory.

This patch takes care 2.  The rest should already be handled properly.

This should fix a regression noticed by: Torsten Kaiser <just.for.lkml@googlemail.com>

Signed-off-by: Alex Deucher <alexdeucher@gmail.com>
---
 drivers/gpu/drm/radeon/r100.c          |    1 +
 drivers/gpu/drm/radeon/r300.c          |    1 +
 drivers/gpu/drm/radeon/r520.c          |    1 +
 drivers/gpu/drm/radeon/r600.c          |    1 +
 drivers/gpu/drm/radeon/radeon.h        |    1 +
 drivers/gpu/drm/radeon/radeon_device.c |    8 ++++----
 drivers/gpu/drm/radeon/rs400.c         |    5 ++++-
 drivers/gpu/drm/radeon/rs600.c         |    1 +
 drivers/gpu/drm/radeon/rs690.c         |    1 +
 drivers/gpu/drm/radeon/rv515.c         |    1 +
 10 files changed, 16 insertions(+), 5 deletions(-)

diff --git a/drivers/gpu/drm/radeon/r100.c b/drivers/gpu/drm/radeon/r100.c
index 366bcd8..a7726f1 100644
--- a/drivers/gpu/drm/radeon/r100.c
+++ b/drivers/gpu/drm/radeon/r100.c
@@ -2354,6 +2354,7 @@ void r100_mc_init(struct radeon_device *rdev)
 	if (rdev->flags & RADEON_IS_IGP)
 		base = (RREG32(RADEON_NB_TOM) & 0xffff) << 16;
 	radeon_vram_location(rdev, &rdev->mc, base);
+	rdev->mc.gtt_base_align = 0;
 	if (!(rdev->flags & RADEON_IS_AGP))
 		radeon_gtt_location(rdev, &rdev->mc);
 	radeon_update_bandwidth_info(rdev);
diff --git a/drivers/gpu/drm/radeon/r300.c b/drivers/gpu/drm/radeon/r300.c
index 7e81db5..0a1638c 100644
--- a/drivers/gpu/drm/radeon/r300.c
+++ b/drivers/gpu/drm/radeon/r300.c
@@ -481,6 +481,7 @@ void r300_mc_init(struct radeon_device *rdev)
 	if (rdev->flags & RADEON_IS_IGP)
 		base = (RREG32(RADEON_NB_TOM) & 0xffff) << 16;
 	radeon_vram_location(rdev, &rdev->mc, base);
+	rdev->mc.gtt_base_align = 0;
 	if (!(rdev->flags & RADEON_IS_AGP))
 		radeon_gtt_location(rdev, &rdev->mc);
 	radeon_update_bandwidth_info(rdev);
diff --git a/drivers/gpu/drm/radeon/r520.c b/drivers/gpu/drm/radeon/r520.c
index 34330df..694af7c 100644
--- a/drivers/gpu/drm/radeon/r520.c
+++ b/drivers/gpu/drm/radeon/r520.c
@@ -125,6 +125,7 @@ void r520_mc_init(struct radeon_device *rdev)
 	r520_vram_get_type(rdev);
 	r100_vram_init_sizes(rdev);
 	radeon_vram_location(rdev, &rdev->mc, 0);
+	rdev->mc.gtt_base_align = 0;
 	if (!(rdev->flags & RADEON_IS_AGP))
 		radeon_gtt_location(rdev, &rdev->mc);
 	radeon_update_bandwidth_info(rdev);
diff --git a/drivers/gpu/drm/radeon/r600.c b/drivers/gpu/drm/radeon/r600.c
index f2f509c..ad38ca8 100644
--- a/drivers/gpu/drm/radeon/r600.c
+++ b/drivers/gpu/drm/radeon/r600.c
@@ -1194,6 +1194,7 @@ void r600_vram_gtt_location(struct radeon_device *rdev, struct radeon_mc *mc)
 		if (rdev->flags & RADEON_IS_IGP)
 			base = (RREG32(MC_VM_FB_LOCATION) & 0xFFFF) << 24;
 		radeon_vram_location(rdev, &rdev->mc, base);
+		rdev->mc.gtt_base_align = 0;
 		radeon_gtt_location(rdev, mc);
 	}
 }
diff --git a/drivers/gpu/drm/radeon/radeon.h b/drivers/gpu/drm/radeon/radeon.h
index 5f4a2c0..e7b6e89 100644
--- a/drivers/gpu/drm/radeon/radeon.h
+++ b/drivers/gpu/drm/radeon/radeon.h
@@ -354,6 +354,7 @@ struct radeon_mc {
 	int			vram_mtrr;
 	bool			vram_is_ddr;
 	bool			igp_sideport_enabled;
+	u64                     gtt_base_align;
 };
 
 bool radeon_combios_sideport_present(struct radeon_device *rdev);
diff --git a/drivers/gpu/drm/radeon/radeon_device.c b/drivers/gpu/drm/radeon/radeon_device.c
index 9b092b6..3fca920 100644
--- a/drivers/gpu/drm/radeon/radeon_device.c
+++ b/drivers/gpu/drm/radeon/radeon_device.c
@@ -226,20 +226,20 @@ void radeon_gtt_location(struct radeon_device *rdev, struct radeon_mc *mc)
 {
 	u64 size_af, size_bf;
 
-	size_af = 0xFFFFFFFF - mc->vram_end;
-	size_bf = mc->vram_start;
+	size_af = ((0xFFFFFFFF - mc->vram_end) + mc->gtt_base_align) & ~mc->gtt_base_align;
+	size_bf = mc->vram_start & ~mc->gtt_base_align;
 	if (size_bf > size_af) {
 		if (mc->gtt_size > size_bf) {
 			dev_warn(rdev->dev, "limiting GTT\n");
 			mc->gtt_size = size_bf;
 		}
-		mc->gtt_start = mc->vram_start - mc->gtt_size;
+		mc->gtt_start = (mc->vram_start & ~mc->gtt_base_align) - mc->gtt_size;
 	} else {
 		if (mc->gtt_size > size_af) {
 			dev_warn(rdev->dev, "limiting GTT\n");
 			mc->gtt_size = size_af;
 		}
-		mc->gtt_start = mc->vram_end + 1;
+		mc->gtt_start = (mc->vram_end + 1 + mc->gtt_base_align) & ~mc->gtt_base_align;
 	}
 	mc->gtt_end = mc->gtt_start + mc->gtt_size - 1;
 	dev_info(rdev->dev, "GTT: %lluM 0x%08llX - 0x%08llX\n",
diff --git a/drivers/gpu/drm/radeon/rs400.c b/drivers/gpu/drm/radeon/rs400.c
index 9e4240b..f454c9a 100644
--- a/drivers/gpu/drm/radeon/rs400.c
+++ b/drivers/gpu/drm/radeon/rs400.c
@@ -57,7 +57,9 @@ void rs400_gart_adjust_size(struct radeon_device *rdev)
 	}
 	if (rdev->family == CHIP_RS400 || rdev->family == CHIP_RS480) {
 		/* FIXME: RS400 & RS480 seems to have issue with GART size
-		 * if 4G of system memory (needs more testing) */
+		 * if 4G of system memory (needs more testing)
+		 */
+		/* XXX is this still an issue with proper alignment? */
 		rdev->mc.gtt_size = 32 * 1024 * 1024;
 		DRM_ERROR("Forcing to 32M GART size (because of ASIC bug ?)\n");
 	}
@@ -263,6 +265,7 @@ void rs400_mc_init(struct radeon_device *rdev)
 	r100_vram_init_sizes(rdev);
 	base = (RREG32(RADEON_NB_TOM) & 0xffff) << 16;
 	radeon_vram_location(rdev, &rdev->mc, base);
+	rdev->mc.gtt_base_align = rdev->mc.gtt_size - 1;
 	radeon_gtt_location(rdev, &rdev->mc);
 	radeon_update_bandwidth_info(rdev);
 }
diff --git a/drivers/gpu/drm/radeon/rs600.c b/drivers/gpu/drm/radeon/rs600.c
index 7bb4c3e..6dc15ea 100644
--- a/drivers/gpu/drm/radeon/rs600.c
+++ b/drivers/gpu/drm/radeon/rs600.c
@@ -698,6 +698,7 @@ void rs600_mc_init(struct radeon_device *rdev)
 	base = G_000004_MC_FB_START(base) << 16;
 	rdev->mc.igp_sideport_enabled = radeon_atombios_sideport_present(rdev);
 	radeon_vram_location(rdev, &rdev->mc, base);
+	rdev->mc.gtt_base_align = 0;
 	radeon_gtt_location(rdev, &rdev->mc);
 	radeon_update_bandwidth_info(rdev);
 }
diff --git a/drivers/gpu/drm/radeon/rs690.c b/drivers/gpu/drm/radeon/rs690.c
index f4f0a61..ce4ecbe 100644
--- a/drivers/gpu/drm/radeon/rs690.c
+++ b/drivers/gpu/drm/radeon/rs690.c
@@ -162,6 +162,7 @@ void rs690_mc_init(struct radeon_device *rdev)
 	rs690_pm_info(rdev);
 	rdev->mc.igp_sideport_enabled = radeon_atombios_sideport_present(rdev);
 	radeon_vram_location(rdev, &rdev->mc, base);
+	rdev->mc.gtt_base_align = rdev->mc.gtt_size - 1;
 	radeon_gtt_location(rdev, &rdev->mc);
 	radeon_update_bandwidth_info(rdev);
 }
diff --git a/drivers/gpu/drm/radeon/rv515.c b/drivers/gpu/drm/radeon/rv515.c
index 7d9a7b0..0c9c169 100644
--- a/drivers/gpu/drm/radeon/rv515.c
+++ b/drivers/gpu/drm/radeon/rv515.c
@@ -195,6 +195,7 @@ void rv515_mc_init(struct radeon_device *rdev)
 	rv515_vram_get_type(rdev);
 	r100_vram_init_sizes(rdev);
 	radeon_vram_location(rdev, &rdev->mc, 0);
+	rdev->mc.gtt_base_align = 0;
 	if (!(rdev->flags & RADEON_IS_AGP))
 		radeon_gtt_location(rdev, &rdev->mc);
 	radeon_update_bandwidth_info(rdev);
-- 
1.7.1.1


^ permalink raw reply related	[flat|nested] 17+ messages in thread

* Re: Regression 2.6.34->2.6.35-rc4: radeaon KMS an RS690 broken
  2010-07-14 22:16                 ` Alex Deucher
@ 2010-07-15  5:49                   ` Torsten Kaiser
  2010-07-15 14:51                     ` Alex Deucher
  0 siblings, 1 reply; 17+ messages in thread
From: Torsten Kaiser @ 2010-07-15  5:49 UTC (permalink / raw)
  To: Alex Deucher; +Cc: Jerome Glisse, linux-kernel, DRI mailing list

On Thu, Jul 15, 2010 at 12:16 AM, Alex Deucher <alexdeucher@gmail.com> wrote:
> I discussed this with Jerome and I think we found the root cause.
> Does this patch help?
(patch 0001-drm-radeon-kms-fix-gtt-MC-base-alignment-on-rs4xx-rs.patch)

Yes:
[    0.426978] Linux agpgart interface v0.103
[    0.427141] [drm] Initialized drm 1.1.0 20060810
[    0.427242] [drm] radeon defaulting to kernel modesetting.
[    0.427300] [drm] radeon kernel modesetting enabled.
[    0.427417] radeon 0000:01:05.0: PCI INT A -> GSI 18 (level, low) -> IRQ 18
[    0.429732] [drm] initializing kernel modesetting (RS690 0x1002:0x791E).
[    0.429890] [drm] register mmio base: 0xFE9F0000
[    0.429948] [drm] register mmio size: 65536
[    0.430537] ATOM BIOS: ATI
[    0.430612] radeon 0000:01:05.0: VRAM: 32M 0xDE000000 - 0xDFFFFFFF (32M used)
[    0.430672] radeon 0000:01:05.0: GTT: 512M 0xA0000000 - 0xBFFFFFFF
[    0.430754] [drm] radeon: irq initialized.
[    0.430817] mtrr: type mismatch for fc000000,2000000 old:
write-back new: write-combining
[    0.430890] [drm] Detected VRAM RAM=32M, BAR=32M
[    0.430947] [drm] RAM width 128bits DDR
[    0.431090] [TTM] Zone  kernel: Available graphics memory: 2010234 kiB.
[    0.431149] [TTM] Initializing pool allocator.
[    0.431224] [drm] radeon: 32M of VRAM memory ready
[    0.431283] [drm] radeon: 512M of GTT memory ready.
[    0.431343] [drm] GART: num cpu pages 131072, num gpu pages 131072
[    0.434732] [drm] radeon: 1 quad pipes, 1 z pipes initialized.
[    0.441796] [drm] Loading RS690/RS740 Microcode
[    0.442006] [drm] radeon: ring at 0x00000000A0000000
[    0.442080] [drm] ring test succeeded in 1 usecs
[    0.442223] [drm] radeon: ib pool ready.
[    0.442289] [drm] ib test succeeded in 0 usecs
[    0.442370] [drm] Default TV standard: NTSC
[    0.442587] [drm] Default TV standard: NTSC
[    0.442866] [drm] Radeon Display Connectors
[    0.442924] [drm] Connector 0:
[    0.442981] [drm]   VGA
[    0.443039] [drm]   DDC: 0x7e50 0x7e40 0x7e54 0x7e44 0x7e58 0x7e48
0x7e5c 0x7e4c
[    0.443111] [drm]   Encoders:
[    0.443169] [drm]     CRT1: INTERNAL_KLDSCP_DAC1
[    0.443227] [drm] Connector 1:
[    0.443284] [drm]   S-video
[    0.443340] [drm]   Encoders:
[    0.443398] [drm]     TV1: INTERNAL_KLDSCP_DAC1
[    0.443455] [drm] Connector 2:
[    0.443512] [drm]   HDMI-A
[    0.443570] [drm]   DDC: 0x7e40 0x7e50 0x7e44 0x7e54 0x7e48 0x7e58
0x7e4c 0x7e5c
[    0.443642] [drm]   Encoders:
[    0.443700] [drm]     DFP3: INTERNAL_LVTM1
[    0.643372] [drm] fb mappable at 0xFC040000
[    0.643432] [drm] vram apper at 0xFC000000
[    0.643489] [drm] size 786432
[    0.643546] [drm] fb depth is 8
[    0.643603] [drm]    pitch is 1024
[    0.643742] fbcon: radeondrmfb (fb0) is primary device
[    0.663232] Console: switching to colour frame buffer device 128x48
[    0.664818] fb0: radeondrmfb frame buffer device
[    0.664837] drm: registered panic notifier
[    0.664856] Slow work thread pool: Starting up
[    0.664919] Slow work thread pool: Ready
[    0.664940] [drm] Initialized radeon 2.5.0 20080528 for
0000:01:05.0 on minor 0

Please note, that I'm only looking for "ring test succeeded" / "ring
test failed", as I'm only using the KMS fb console on that system.

Thanks for the fix,
                            Torsten

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: Regression 2.6.34->2.6.35-rc4: radeaon KMS an RS690 broken
  2010-07-15  5:49                   ` Torsten Kaiser
@ 2010-07-15 14:51                     ` Alex Deucher
  0 siblings, 0 replies; 17+ messages in thread
From: Alex Deucher @ 2010-07-15 14:51 UTC (permalink / raw)
  To: Torsten Kaiser; +Cc: Jerome Glisse, linux-kernel, DRI mailing list

On Thu, Jul 15, 2010 at 1:49 AM, Torsten Kaiser
<just.for.lkml@googlemail.com> wrote:
> On Thu, Jul 15, 2010 at 12:16 AM, Alex Deucher <alexdeucher@gmail.com> wrote:
>> I discussed this with Jerome and I think we found the root cause.
>> Does this patch help?
> (patch 0001-drm-radeon-kms-fix-gtt-MC-base-alignment-on-rs4xx-rs.patch)
>
> Yes:
> [    0.426978] Linux agpgart interface v0.103
> [    0.427141] [drm] Initialized drm 1.1.0 20060810
> [    0.427242] [drm] radeon defaulting to kernel modesetting.
> [    0.427300] [drm] radeon kernel modesetting enabled.
> [    0.427417] radeon 0000:01:05.0: PCI INT A -> GSI 18 (level, low) -> IRQ 18
> [    0.429732] [drm] initializing kernel modesetting (RS690 0x1002:0x791E).
> [    0.429890] [drm] register mmio base: 0xFE9F0000
> [    0.429948] [drm] register mmio size: 65536
> [    0.430537] ATOM BIOS: ATI
> [    0.430612] radeon 0000:01:05.0: VRAM: 32M 0xDE000000 - 0xDFFFFFFF (32M used)
> [    0.430672] radeon 0000:01:05.0: GTT: 512M 0xA0000000 - 0xBFFFFFFF
> [    0.430754] [drm] radeon: irq initialized.
> [    0.430817] mtrr: type mismatch for fc000000,2000000 old:
> write-back new: write-combining
> [    0.430890] [drm] Detected VRAM RAM=32M, BAR=32M
> [    0.430947] [drm] RAM width 128bits DDR
> [    0.431090] [TTM] Zone  kernel: Available graphics memory: 2010234 kiB.
> [    0.431149] [TTM] Initializing pool allocator.
> [    0.431224] [drm] radeon: 32M of VRAM memory ready
> [    0.431283] [drm] radeon: 512M of GTT memory ready.
> [    0.431343] [drm] GART: num cpu pages 131072, num gpu pages 131072
> [    0.434732] [drm] radeon: 1 quad pipes, 1 z pipes initialized.
> [    0.441796] [drm] Loading RS690/RS740 Microcode
> [    0.442006] [drm] radeon: ring at 0x00000000A0000000
> [    0.442080] [drm] ring test succeeded in 1 usecs
> [    0.442223] [drm] radeon: ib pool ready.
> [    0.442289] [drm] ib test succeeded in 0 usecs
> [    0.442370] [drm] Default TV standard: NTSC
> [    0.442587] [drm] Default TV standard: NTSC
> [    0.442866] [drm] Radeon Display Connectors
> [    0.442924] [drm] Connector 0:
> [    0.442981] [drm]   VGA
> [    0.443039] [drm]   DDC: 0x7e50 0x7e40 0x7e54 0x7e44 0x7e58 0x7e48
> 0x7e5c 0x7e4c
> [    0.443111] [drm]   Encoders:
> [    0.443169] [drm]     CRT1: INTERNAL_KLDSCP_DAC1
> [    0.443227] [drm] Connector 1:
> [    0.443284] [drm]   S-video
> [    0.443340] [drm]   Encoders:
> [    0.443398] [drm]     TV1: INTERNAL_KLDSCP_DAC1
> [    0.443455] [drm] Connector 2:
> [    0.443512] [drm]   HDMI-A
> [    0.443570] [drm]   DDC: 0x7e40 0x7e50 0x7e44 0x7e54 0x7e48 0x7e58
> 0x7e4c 0x7e5c
> [    0.443642] [drm]   Encoders:
> [    0.443700] [drm]     DFP3: INTERNAL_LVTM1
> [    0.643372] [drm] fb mappable at 0xFC040000
> [    0.643432] [drm] vram apper at 0xFC000000
> [    0.643489] [drm] size 786432
> [    0.643546] [drm] fb depth is 8
> [    0.643603] [drm]    pitch is 1024
> [    0.643742] fbcon: radeondrmfb (fb0) is primary device
> [    0.663232] Console: switching to colour frame buffer device 128x48
> [    0.664818] fb0: radeondrmfb frame buffer device
> [    0.664837] drm: registered panic notifier
> [    0.664856] Slow work thread pool: Starting up
> [    0.664919] Slow work thread pool: Ready
> [    0.664940] [drm] Initialized radeon 2.5.0 20080528 for
> 0000:01:05.0 on minor 0
>
> Please note, that I'm only looking for "ring test succeeded" / "ring
> test failed", as I'm only using the KMS fb console on that system.
>
> Thanks for the fix,

Thanks for testing.  I've sent the patch to Dave.

Alex

>                            Torsten
>

^ permalink raw reply	[flat|nested] 17+ messages in thread

end of thread, other threads:[~2010-07-15 14:51 UTC | newest]

Thread overview: 17+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2010-07-11 19:56 Regression 2.6.34->2.6.35-rc4: radeaon KMS an RS690 broken Torsten Kaiser
2010-07-12 15:23 ` Alex Deucher
2010-07-12 19:54   ` Torsten Kaiser
2010-07-12 21:03     ` Alex Deucher
2010-07-12 21:38     ` Alex Deucher
2010-07-13 18:29       ` Torsten Kaiser
2010-07-13 18:29         ` Torsten Kaiser
2010-07-13 19:10         ` Alex Deucher
2010-07-13 20:12           ` Torsten Kaiser
2010-07-14 18:51           ` Torsten Kaiser
2010-07-14 19:30             ` Jerome Glisse
2010-07-14 20:05               ` Torsten Kaiser
2010-07-14 20:51                 ` Jerome Glisse
2010-07-14 22:16                 ` Alex Deucher
2010-07-15  5:49                   ` Torsten Kaiser
2010-07-15 14:51                     ` Alex Deucher
2010-07-14 19:31             ` Alex Deucher

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.