Bug 25824 - KMS, Dualhead: Strange bigger console
Summary: KMS, Dualhead: Strange bigger console
Status: CLOSED NOTABUG
Alias: None
Product: xorg
Classification: Unclassified
Component: Driver/nouveau (show other bugs)
Version: unspecified
Hardware: x86 (IA32) Linux (All)
: medium normal
Assignee: Nouveau Project
QA Contact: Xorg Project Team
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2009-12-29 14:39 UTC by Achim Schaefer
Modified: 2010-01-08 14:07 UTC (History)
1 user (show)

See Also:
i915 platform:
i915 features:


Attachments

Description Achim Schaefer 2009-12-29 14:39:24 UTC
I'm using kernel 2.6.33-rc2 on a 5200 with two scenns attached.
This gets detected very well:
[    0.901764] [drm] nouveau 0000:01:00.0: failed to evaluate _DSM: 5
[    0.902107] [drm] nouveau 0000:01:00.0: Detected an NV30 generation card (0x034200a2)
[    0.902191] [drm] nouveau 0000:01:00.0: Attempting to load BIOS image from PROM
[    1.026027] [drm] nouveau 0000:01:00.0: ... appears to be valid
[    1.026294] [drm] nouveau 0000:01:00.0: BMP BIOS found
[    1.026297] [drm] nouveau 0000:01:00.0: BMP version 5.38
[    1.026301] [drm] nouveau 0000:01:00.0: Bios version 04.34.20.18

and 
[    1.352207] [drm] nouveau 0000:01:00.0: allocated 1280x1024 fb: 0x9000, bo f6f50e00
[    1.355869] [drm] DAC-7: set mode 1280x1024 3f
[    1.366246] [drm] nouveau 0000:01:00.0: Setting dpms mode 0 on vga encoder (output 0)
[    1.366251] [drm] nouveau 0000:01:00.0: Output VGA-1 is running on CRTC 0 using output A
[    1.366269] [drm] DAC-8: set mode 1024x768 40
[    1.376641] [drm] nouveau 0000:01:00.0: Setting dpms mode 0 on vga encoder (output 1)
[    1.376646] [drm] nouveau 0000:01:00.0: Output DVI-I-1 is running on CRTC 1 using output B

Now I get 
[    1.379072] Console: switching to colour frame buffer device 128x48 
which fits exacly on the smaller screen. 

But on the bigger screen this uses only a part of the console and looks quite strange. 
The last line is somewhere below the middle of the screen and as well the last character on the right is not a the right side.
So I assume it uses only the resolution 1024x768 on a 1280x1024 screen.
Comment 1 Ben Skeggs 2009-12-29 18:20:21 UTC
This is the expected behaviour.  fbcon was never designed for multiple displays, so this is the best that can be done at this time.
Comment 2 Achim Schaefer 2009-12-30 00:09:10 UTC
I know handling of this situation is not very easy. 
But the current situation is 
Would it be possible to use in both screens the lower resolution, so in my case in both 1024x768? (In general the highest res all active screens support)
At least this would avoid some trouble.
Switching to X would than cause a mode change on the bigger screen, but I think that is less problematic compared to the usage of a small part of a bigger screen.
Comment 3 Pekka Paalanen 2009-12-30 02:17:05 UTC
Achim, this is more of a user preference to choose one over the other:
1. use the best mode on each output
2. use the largest common mode on all outputs

Case 1 is what X does, and one goal of KMS is flickerless boot, so it fits and is the default policy in general.

Case 2 you should be able to achieve with the "video" kernel command line parameter, forcing the small mode on the big monitor. I hope it is documented in the kernel Documentation, since I do not recall the correct syntax.
Comment 4 Achim Schaefer 2009-12-30 02:26:29 UTC
(In reply to comment #3)
> Case 2 you should be able to achieve with the "video" kernel command line
> parameter, forcing the small mode on the big monitor. I hope it is documented
> in the kernel Documentation, since I do not recall the correct syntax.
That depends if nouveau driver uses modedb or not.

from Documentation/fb/modedb.txt
  Drivers that support modedb boot options
123     Boot Name     Cards Supported
124
125     amifb       - Amiga chipset frame buffer
126     aty128fb    - ATI Rage128 / Pro frame buffer
127     atyfb       - ATI Mach64 frame buffer
128     pm2fb       - Permedia 2/2V frame buffer
129     pm3fb       - Permedia 3 frame buffer
130     sstfb       - Voodoo 1/2 (SST1) chipset frame buffer
131     tdfxfb      - 3D Fx frame buffer
132     tridentfb   - Trident (Cyber)blade chipset frame buffer
133     vt8623fb    - VIA 8623 frame buffer

But here you can not find nouveau.

So either a new doc gets created with the options to handle this, or this doc gets updated  including nouveau.
I hope with staging drivers you are allowed to change the existing docs-)

=> I assume I'll close this bug, and open a documentation bug?

Comment 5 Pekka Paalanen 2009-12-30 04:15:52 UTC
(In reply to comment #4)
> (In reply to comment #3)
> > Case 2 you should be able to achieve with the "video" kernel command line
> > parameter, forcing the small mode on the big monitor. I hope it is documented
> > in the kernel Documentation, since I do not recall the correct syntax.
> That depends if nouveau driver uses modedb or not.
> 
> from Documentation/fb/modedb.txt

That is the legacy fb option "video". I was talking about the drmfb "video" variant, but I cannot find the documentation. The only doc I know of is:
http://cgit.freedesktop.org/nouveau/linux-2.6/tree/drivers/gpu/drm/drm_fb_helper.c#n68

The syntax is something like:
video=<output>:<mode>

Where output is as reported by the kernel DRM/KMS.

A made-up example: video=DVI-I-1:1024x768

This option is for all DRM/KMS fb drivers AFAIK: intel, radeon and nouveau. It's a bit odd that it isn't properly documented yet.
Comment 6 Achim Schaefer 2010-01-08 14:07:20 UTC
the specified parameters work as expected.

Thanks


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.