Re: [PATCH] drm: Add DRM_MODE_TYPE_USERDEF flag to probed modes matching a video= argument

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mon, Nov 11, 2019 at 10:50:42AM +0100, Hans de Goede wrote:
> Hi,
> 
> On 11-11-2019 10:25, Daniel Vetter wrote:
> > On Sun, Nov 10, 2019 at 7:41 PM Hans de Goede <hdegoede@xxxxxxxxxx> wrote:
> >>
> >> drm_helper_probe_add_cmdline_mode() prefers using a probed mode matching
> >> a video= argument over calculating our own timings for the user specified
> >> mode using CVT or GTF.
> >>
> >> But userspace code which is auto-configuring the mode may want to know that
> >> the user has specified that mode on the kernel commandline so that it can
> >> pick that mode over the mode which is marked as DRM_MODE_TYPE_PREFERRED.
> >>
> >> This commit sets the DRM_MODE_TYPE_USERDEF flag on the matching mode, just
> >> as we would do on the user-specified mode when no matching probed mode is
> >> found.
> >>
> >> Signed-off-by: Hans de Goede <hdegoede@xxxxxxxxxx>
> > 
> > Will existing userspace dtrt here with this? Some links to popular
> > ones would be good (since essentially this is uapi fine tuning we need
> > that anyway). With that will get my ack.
> 
> A valid question, I've gone over what I consider the major userspace kms users:
> -Xorg xserver modesetting driver does not check for this:
>   [hans@shalem xserver]$ ack DRM_MODE_TYPE_ hw/xfree86/drivers/modesetting/
>   hw/xfree86/drivers/modesetting/drmmode_display.c
>   1321:    if (kmode->type & DRM_MODE_TYPE_DRIVER)
>   1323:    if (kmode->type & DRM_MODE_TYPE_PREFERRED)
> -Other Xorg drivers:
>   [hans@shalem driver]$ ls -d xf86-video-*
>   xf86-video-amdgpu  xf86-video-intel        xf86-video-qxl
>   xf86-video-armsoc  xf86-video-modesetting  xf86-video-sisusb
>   xf86-video-ati     xf86-video-nouveau      xf86-video-vmware
>   xf86-video-dummy   xf86-video-omap         xf86-video-voodoo
>   xf86-video-geode   xf86-video-opentegra
>   These all only do the same checks as the Xorg modesetting driver
> -mutter:
>   [hans@shalem mutter]$ ack DRM_MODE_TYPE_
>   src/backends/native/meta-output-kms.c
>   261:      if (drm_mode->type & DRM_MODE_TYPE_PREFERRED)
> 
> So it seems nothing (that I can quickly find) in userspace is using this atm.
> 
> The reason I wrote this patch is because about a year ago plymouth used to
> fully rely on the kernel to setup the modes on monitors and would simply
> inherit the modes setup by the kernel. Basically plymouth was relying on
> fbcon to load first and setup modes.
> 
> Deferred fbcon takeover (for flickerfree) means that this is no longer
> happening. So now plymouth picks a mode itself. When I submitted the
> plymouth change for plymouth to pick a mode itself the plymouth maintainer
> (Ray Strode) was afraid that would break plymouth honoring video= arguments.
> So currently plymouth still relies on the kernel to do the mode setup if
> a video= argument is present on the kernel commandline.

Why can't plymouth just keep using the current mode if the crtc is
already active and otherwise pick a mode itself?

-- 
Ville Syrjälä
Intel
_______________________________________________
dri-devel mailing list
dri-devel@xxxxxxxxxxxxxxxxxxxxx
https://lists.freedesktop.org/mailman/listinfo/dri-devel




[Index of Archives]     [Linux DRI Users]     [Linux Intel Graphics]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]
  Powered by Linux