KMS start up configuration customization

Alex Deucher alexdeucher at gmail.com
Mon Jul 11 06:54:21 PDT 2011


On Fri, Jul 8, 2011 at 6:34 PM, Yeh, Sinclair <sinclair.yeh at intel.com> wrote:
> From reading the code it is not immediately obvious to me how KMS allows for
> the following boot up behavior and configurations:
>
>
>
> 1.       Start up with a 2048x768 surface and set each of the two CRTCs (at
> 1024x768 timings) to display left/right half of the screen,

You'll need to use the KMS modesetting ioctls directly rather than
using the fbdev emulation since fbdev doesn't really have the concept
of multi-head.

>
> 2.       Allow for “seamless” mode set, i.e. let the vendor’s DRM to report
> that the current mode (set by the VBIOS for example) is the same as the
> switch-to mode, and therefore don’t turn off the connectors and CRTCs.  This
> avoids unnecessary flashes on the screen at boot time.

Depends on the specific implementation, but generally most drivers do
a single modeset at driver load time based on what displays are
connected.  The driver is free to do what it wants however (e.g., skip
the modeset if the requested mode is already programmed).

>
> 3.       Start up in clone without specifying “video=”, and not going into
> 1024x768.  We would like to start up in a user-specified mode in clone
> configuration.
>

By default fbdev sets up the largest supported mode on all attached
heads in clone mode.  See the "Forcing Modes" section of this page for
command line options:
http://nouveau.freedesktop.org/wiki/KernelModeSetting

>
>
> We have a highly configurable driver, and we need to be able to control
> exactly how the display(s) come up.  I’m trying to figure out if there is a
> way to do this and still play nice with KMS’s initialization sequence.
>
>
>
> Are any of those possible under KMS at this time?
>

It depends whether you are using the KMS modesetting ioctls directly
(like what X on KMS does) or using the fbdev emulation.

Alex


More information about the dri-devel mailing list