Bug 24025

Summary: drm-next 698443d9ec1a33eff65b27b9514e06998bf57eb3 results in no display.
Product: xorg Reporter: Andy Furniss <adf.lists>
Component: Driver/RadeonAssignee: xf86-video-ati maintainers <xorg-driver-ati>
Status: RESOLVED FIXED QA Contact: Xorg Project Team <xorg-team>
Severity: normal    
Priority: medium    
Version: git   
Hardware: x86 (IA32)   
OS: Linux (All)   
Whiteboard:
i915 platform: i915 features:
Attachments:
Description Flags
dmesg with no display.
none
rv670 is not dce3 none

Description Andy Furniss 2009-09-18 11:32:39 UTC
Created attachment 29672 [details]
dmesg with no display.

It seems that 698443d9ec1a33eff65b27b9514e06998bf57eb3 results in no display for me. 

Rv670 AGP card CRT monitor loading radeon module from default VGA mode.

Previously sometimes I would get no display, but everything seemed to work. More rarely would get a lockup upon loading the modules, so I guess I've seen the problem the commit was supposed to fix. but now I never get a display.

Reverting gets me back to where I was - usually working.

I already have an issue with gart, so follow the "don't fail if we fail to init GPU acceleration" path.
Comment 1 Alex Deucher 2009-09-18 11:38:49 UTC
Created attachment 29673 [details] [review]
rv670 is not dce3

The driver was using the wrong modesetting paths for rv670.  I just sent a patch to dri-devel to fix it.  I'm attaching it here as well.
Comment 2 Andy Furniss 2009-09-18 13:29:30 UTC
(In reply to comment #1)
> Created an attachment (id=29673) [details]
> rv670 is not dce3
> 
> The driver was using the wrong modesetting paths for rv670.  I just sent a
> patch to dri-devel to fix it.  I'm attaching it here as well.
> 

Patch doesn't help - if I diff the dmesgs I see it's loading wrong firmware now.

< Linux version 2.6.31-rc9-27087-g4153e58 (andy@amd) (gcc version 4.2.3) #14 PREEMPT Fri Sep 18 11:21:21 BST 2009
---
> Linux version 2.6.31-rc9-27087-g4153e58-dirty (andy@amd) (gcc version 4.2.3) #19 PREEMPT Fri Sep 18 21:07:01 BST 2009

< [drm] RAM width 256bits DDR
---
> [drm] RAM width 128bits DDR
2808,2809c2811,2812
< [drm] Loading RV670 CP Microcode
< platform radeon_cp.0: firmware: requesting radeon/RV670_pfp.bin
---
> [drm] Loading RV635 CP Microcode
> platform radeon_cp.0: firmware: requesting radeon/RV635_pfp.bin
2814c2817
< platform radeon_cp.0: firmware: requesting radeon/RV670_me.bin
---
> platform radeon_cp.0: firmware: requesting radeon/RV635_me.bin
Comment 3 Andy Furniss 2009-09-23 03:53:31 UTC
(In reply to comment #2)

> Patch doesn't help - if I diff the dmesgs I see it's loading wrong firmware
> now.

Running todays drm-next and the correct firmware loads.

I still don't have a display after modprobing radeon, but if I startx I do now get the display back.

Previously after modprobe it would blank and then I would get back the same default 40 char VGA mode that I started with. I don't use any options or have any other fbs loaded or AFAIK built in. The monitor remains on.
  
Comment 4 Pauli 2009-09-23 05:45:17 UTC
(In reply to comment #3)
> (In reply to comment #2)
> 
> > Patch doesn't help - if I diff the dmesgs I see it's loading wrong firmware
> > now.
> 
> Running todays drm-next and the correct firmware loads.
> 
> I still don't have a display after modprobing radeon, but if I startx I do now
> get the display back.
> 
> Previously after modprobe it would blank and then I would get back the same
> default 40 char VGA mode that I started with. I don't use any options or have
> any other fbs loaded or AFAIK built in. The monitor remains on.
> 
> 


Do you load fbcon module too? 
Comment 5 Andy Furniss 2009-09-23 06:53:46 UTC
(In reply to comment #4)

> Do you load fbcon module too? 

Here's what I have in config if I -

bash-3.2$ grep -i fb /boot/config-2.6.31-rc9-27093-g5b31aee | grep =
CONFIG_FB=m
CONFIG_FB_DDC=m
CONFIG_FB_CFB_FILLRECT=m
CONFIG_FB_CFB_COPYAREA=m
CONFIG_FB_CFB_IMAGEBLIT=m
CONFIG_FB_BACKLIGHT=y
CONFIG_FB_MODE_HELPERS=y
CONFIG_FB_RADEON=m
CONFIG_FB_RADEON_I2C=y
CONFIG_FB_RADEON_BACKLIGHT=y
CONFIG_FB_RADEON_DEBUG=y

lsmod before modprobe radeon.

ehci_hcd               33612  0 
nvidia_agp              6232  1 
agpgart                29548  1 nvidia_agp
ohci_hcd               22604  0 
usbhid                 18424  0 
usbcore               135888  4 ehci_hcd,ohci_hcd,usbhid
snd_intel8x0           29304  0 
snd_ac97_codec         97116  1 snd_intel8x0
ac97_bus                1500  1 snd_ac97_codec
forcedeth              54984  0

and after -

radeon                526848  0 
ttm                    37436  1 radeon
drm_kms_helper         21916  1 radeon
drm                   148096  3 radeon,ttm,drm_kms_helper
fb                     44804  2 radeon,drm_kms_helper
i2c_algo_bit            5504  1 radeon
cfbcopyarea             3516  1 radeon
i2c_core               19948  3 radeon,drm,i2c_algo_bit
cfbimgblt               2684  1 radeon
cfbfillrect             3612  1 radeon
ehci_hcd               33612  0 
nvidia_agp              6232  1 
agpgart                29548  3 ttm,drm,nvidia_agp
ohci_hcd               22604  0 
usbhid                 18424  0 
usbcore               135888  4 ehci_hcd,ohci_hcd,usbhid
snd_intel8x0           29304  0 
snd_ac97_codec         97116  1 snd_intel8x0
ac97_bus                1500  1 snd_ac97_codec
forcedeth              54984  0

Comment 6 Pauli 2009-09-23 06:56:37 UTC
On Wed, Sep 23, 2009 at 4:53 PM, <bugzilla-daemon@freedesktop.org> wrote:

> http://bugs.freedesktop.org/show_bug.cgi?id=24025
>
>
>
>
>
> --- Comment #5 from Andy Furniss <lists@andyfurniss.entadsl.com>
>  2009-09-23 06:53:46 PST ---
> (In reply to comment #4)
>
> > Do you load fbcon module too?
>
> Here's what I have in config if I -
>
> bash-3.2$ grep -i fb /boot/config-2.6.31-rc9-27093-g5b31aee | grep =
> CONFIG_FB=m
> CONFIG_FB_DDC=m
> CONFIG_FB_CFB_FILLRECT=m
> CONFIG_FB_CFB_COPYAREA=m
> CONFIG_FB_CFB_IMAGEBLIT=m
> CONFIG_FB_BACKLIGHT=y
> CONFIG_FB_MODE_HELPERS=y
> CONFIG_FB_RADEON=m
> CONFIG_FB_RADEON_I2C=y
> CONFIG_FB_RADEON_BACKLIGHT=y
> CONFIG_FB_RADEON_DEBUG=y
>
> lsmod before modprobe radeon.
>
> ehci_hcd               33612  0
> nvidia_agp              6232  1
> agpgart                29548  1 nvidia_agp
> ohci_hcd               22604  0
> usbhid                 18424  0
> usbcore               135888  4 ehci_hcd,ohci_hcd,usbhid
> snd_intel8x0           29304  0
> snd_ac97_codec         97116  1 snd_intel8x0
> ac97_bus                1500  1 snd_ac97_codec
> forcedeth              54984  0
>
> and after -
>
> radeon                526848  0
> ttm                    37436  1 radeon
> drm_kms_helper         21916  1 radeon
> drm                   148096  3 radeon,ttm,drm_kms_helper
> fb                     44804  2 radeon,drm_kms_helper
> i2c_algo_bit            5504  1 radeon
> cfbcopyarea             3516  1 radeon
> i2c_core               19948  3 radeon,drm,i2c_algo_bit
> cfbimgblt               2684  1 radeon
> cfbfillrect             3612  1 radeon
> ehci_hcd               33612  0
> nvidia_agp              6232  1
> agpgart                29548  3 ttm,drm,nvidia_agp
> ohci_hcd               22604  0
> usbhid                 18424  0
> usbcore               135888  4 ehci_hcd,ohci_hcd,usbhid
> snd_intel8x0           29304  0
> snd_ac97_codec         97116  1 snd_intel8x0
> ac97_bus                1500  1 snd_ac97_codec
> forcedeth              54984  0
>
>
> You need fbcon module to render the console. (frame buffer console in
kernel config) and yo uhave to load fbcon manually unless your distro
supports KMS and has loading added to normal boot.
Comment 7 Andy Furniss 2009-09-23 07:37:17 UTC
(In reply to comment #6)

> You need fbcon module to render the console. (frame buffer console in
> kernel config) and yo uhave to load fbcon manually unless your distro
> supports KMS and has loading added to normal boot.

Ahh, many thanks - all I needed was modprobe fbcon first.

So all along I was just going back to VGA thinking it was OK and using the same mode because of the messages like - 

device: 'fb0': device_add
PM: Adding info for No Bus:fb0
fb0: radeondrmfb frame buffer device


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.