Re: KMS question
From: Ilia Mirkin
Date: Thu Apr 13 2017 - 11:37:52 EST
On Thu, Apr 13, 2017 at 11:36 AM, Alex Deucher <alexdeucher@xxxxxxxxx> wrote:
> On Thu, Apr 13, 2017 at 11:03 AM, Boszormenyi Zoltan <zboszor@xxxxx> wrote:
>> 2017-04-13 16:05 keltezÃssel, Alex Deucher Ãrta:
>>>
>>> On Thu, Apr 13, 2017 at 9:03 AM, Boszormenyi Zoltan <zboszor@xxxxx> wrote:
>>>>
>>>> Hi,
>>>>
>>>> how can I disable the behaviour in the KMS drivers
>>>> that enables all outputs at once?
>>>>
>>>> It is very annoying that on a POS machine with an
>>>> 1024x768 LVDS and a 800x480 secondary monitor (both built-in)
>>>> the KMS driver wakes up both. Then the framebuffer console
>>>> and plymouth use both screens, making the primary output
>>>> very odd with only the top-left part used by the boot splash.
>>>>
>>>> I would like the boot splash to be shown only on the primary
>>>> output at its full resolution instead of on all outputs using
>>>> the smallest common rectangle.
>>>>
>>>> Is there a kernel command line configuration that achieves this?
>>>>
>>>> The device in question uses the gma500 kernel driver but the same
>>>> behaviour is observed with the i915 and radeon drivers.
>>>>
>>>
>>> The problem is fbdev is not multi-head aware. The fbdev emulation in
>>> the KMS drivers attempts to light up all monitors so that something
>>> shows up on all heads. If you really want different per head
>>> configurations, you need to use the KMS API directly. As a
>>> workaround, you can use the kernel command line to disable the output
>>> you don't want to be lit up. See:
>>> https://wiki.archlinux.org/index.php/kernel_mode_setting
>>> for more info. basically add video=TV-1:d to disable the output in
>>> question. Replace TV-1 with whatever connector you want to disable.
>>
>>
>> I tried adding video=DVI-D-1:d to the kernel command line.
>>
>> The effect is while the second output is indeed disabled, the
>> framebuffer console still takes the second output's resolution
>> into account and the boot splash is still using only the top-left
>> 800x480 part of the 1024x768 primary screen.
>>
>> Also, the secondary screen got disabled also in X which is not desired.
>> Can I wake it up under X somehow? This device is using the modesetting
>> DDX driver.
>
> Can you enable it via randr?
I think the video= based disable forces the connector to be disabled
irrevocably.
-ilia