mx6 hdmi resolution behaviour

Daniel Vetter daniel at ffwll.ch
Tue Jun 23 14:26:40 PDT 2015


On Tue, Jun 23, 2015 at 09:58:37PM +0100, Russell King - ARM Linux wrote:
> On Tue, Jun 23, 2015 at 05:48:51PM -0300, Fabio Estevam wrote:
> > On Tue, Jun 23, 2015 at 5:41 PM, Russell King - ARM Linux
> > <linux at arm.linux.org.uk> wrote:
> > 
> > > I've just tried this (the HBi1 was booted previously with the HDMI socket
> > > disconnected).  Just now, I turned the TV on, and then connected it to
> > > the HDMI.
> > 
> > Thanks for testing it.
> > 
> > > The TV reported a resolution of 1024x768, and the kernel log was silent.
> > 
> > That's the point that makes me confused: shouldn't it report a higher
> > resolution like 1080p?
> 
> No - it won't go higher than the initial mode that was set.  See
> drm_fb_helper_hotplug_event():
> 
>         max_width = fb_helper->fb->width;
>         max_height = fb_helper->fb->height;
> 
>         drm_fb_helper_probe_connector_modes(fb_helper, max_width, max_height);
> 
> This calls connector->funcs->fill_modes with the max width/height,
> which calls down into drm_helper_probe_single_connector_modes_merge_bits()
> and there's limitations in there which means that we won't try to
> increase the size of the framebuffer.
> 
> You do get that behaviour if you have the X server running, and that's
> all down to the X server itself doing that (reacting to the hotplug
> event which DRM generates.)

The initial fb allocated for fbdev emulation does indeed restrict what
fbdev/con will show. But it should in now way affect the mode list (that's
only the fbdev code doing the filtering there) or X. You should be able to
list/set 1080p. Might be useful to figure out with drm.debug whether the
mode was kicked out for some driver/hw restriction reason, that should get
logged.
-Daniel
-- 
Daniel Vetter
Software Engineer, Intel Corporation
http://blog.ffwll.ch



More information about the linux-arm-kernel mailing list