Bug 24041

Summary: [KMS] KMS fails to initalize, in a rs690
Product: DRI Reporter: Manuel Braga <mul.braga>
Component: DRM/RadeonAssignee: Default DRI bug account <dri-devel>
Status: RESOLVED FIXED QA Contact:
Severity: normal    
Priority: medium    
Version: unspecified   
Hardware: Other   
OS: All   
Whiteboard:
i915 platform: i915 features:
Attachments:
Description Flags
syslog, kms fails
none
syslog, kms succefull inits none

Description Manuel Braga 2009-09-20 02:40:52 UTC
Created attachment 29707 [details]
syslog, kms fails

With a vanilla 2.6.31 kernel, and a rs690.

KMS fails to initalize with "Bad things might happen." messages, ending with ring test failed.

By trying to find the cause, i arrived at r420_pipes_init, and put DRM_INFO that printed the value of RADEON_RBBM_STATUS between each register access.

This resulted that KMS sucessfull started, in this run.
[drm] rs690_gpu_init1 (RBBM_STATUS=0x10000140)
[drm] rs690_gpu_init2 (RBBM_STATUS=0x10000140)
[drm] rs690_gpu_init3 (RBBM_STATUS=0x10000140)  (before r420_pipes_init call)
[drm] r420_pipes_init1 (RBBM_STATUS=0x10000140) (top of r420_pipes_init)
[drm] r420_pipes_init2 (RBBM_STATUS=0x94000140) (after WREG32(0x4274, ... )
[drm] r420_pipes_init pipes 1
[drm] r420_pipes_init3 (RBBM_STATUS=0x10000140)
[drm] r420_pipes_init4 (RBBM_STATUS=0x94000140)
[drm] radeon: 1 quad pipes, 1 z pipes initialized.
[drm] rs690_gpu_init4 (RBBM_STATUS=0x10000140)

The value of RBBM_STATUS after GA_ENHANCE register write was 0x94000140

Only by putting a DRM_INFO print showed that fixes the problem, likely the cause is a timing related.
Comment 1 Manuel Braga 2009-09-20 02:46:04 UTC
By putting a r100_gui_wait_for_idle right after GA_ENHANCE write, KMS sucessfull starts.

(Ignore invalid EDID, is likely the motherboard fault)
Comment 2 Manuel Braga 2009-09-20 02:47:02 UTC
Created attachment 29708 [details]
syslog, kms succefull inits
Comment 3 Jerome Glisse 2010-04-13 02:42:41 UTC
So only 2.6.31 is affected ? Does it works with recent kernel (2.6.33 or 2.6.34) ?
Comment 4 Manuel Braga 2010-07-28 12:08:46 UTC
Just now tried 2.6.35-rc6 without any problem.

The fix were added at 2.6.32, commit 18a4cd2e9147dd41234dade56edb62c6222832eb
and is working fine.

Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.