[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20180328142512.14f8c502@bbrezillon>
Date: Wed, 28 Mar 2018 14:25:12 +0200
From: Boris Brezillon <boris.brezillon@...tlin.com>
To: Daniel Vetter <daniel@...ll.ch>
Cc: Peter Rosin <peda@...ntia.se>, Egbert Eich <eich@...e.de>,
Boris Brezillon <boris.brezillon@...e-electrons.com>,
Alexandre Belloni <alexandre.belloni@...tlin.com>,
David Airlie <airlied@...ux.ie>,
Nicolas Ferre <nicolas.ferre@...rochip.com>,
Takashi Iwai <tiwai@...e.com>, dri-devel@...ts.freedesktop.org,
linux-kernel@...r.kernel.org, linux-arm-kernel@...ts.infradead.org
Subject: Re: [PATCH] drm/atmel-hlcdc: add command line option to specify
preferred depth
On Wed, 28 Mar 2018 14:22:36 +0200
Daniel Vetter <daniel@...ll.ch> wrote:
> On Wed, Mar 28, 2018 at 09:34:54AM +0200, Boris Brezillon wrote:
> > Hi Peter,
> >
> > On Mon, 26 Mar 2018 09:35:02 +0200
> > Peter Rosin <peda@...ntia.se> wrote:
> >
> > > I have an sama5d31-based system with 64MB of memory and a 1920x1080
> > > LVDS display wired for 16-bpp. When I enable legacy fbdev support,
> > > the contiguous memory allocator invariably fails with the order-11
> > > allocation for a 1920x1080@...bpp buffer (~6MB). But this HW can never
> > > make any good use of RGB888, so that is a wasted attempt anyway that
> > > would also waste precious memory should it succeed.
> > >
> > > Sure, I could rewrite user-space to go directly to KMS etc, and that
> > > makes the (attempted) order-11 allocation go away, replacing it with
> > > one order-10 allocation per application restart for a 1920x1080@...bpp
> > > buffer (<4MB). But after a few restarts, order-10 allocations start to
> > > fail as well, which is only to be expected AFAIU.
> > >
> > > So, I'd rather not change user-space (which was originally written
> > > to target a smaller display) so that I at the same time get the
> > > benefit of an early pre-allocated fbdev frame-buffer that can be
> > > reused over and over. But to do that I need to tell the driver that
> > > 16-bpp is the preferred depth. Add a module parameter to do just that.
> > >
> > > Signed-off-by: Peter Rosin <peda@...ntia.se>
> > > ---
> > > drivers/gpu/drm/atmel-hlcdc/atmel_hlcdc_dc.c | 18 +++++++++++++++++-
> > > 1 file changed, 17 insertions(+), 1 deletion(-)
> > >
> > > I found some inspiration regarding naming and implementation here:
> > > https://patchwork.kernel.org/patch/9848631/
> > >
> > > I have found no feedback on that patch though, which makes me wonder if
> > > I'm perhaps barking up the wronig tree?
> >
> > Hm, isn't that something you can already overload with the video=
> > parameter?
> >
> > video=<output>:<resolution>[-<bpp>]
> >
> > AFAIR, <bpp> encodes the color depth, so what is the benefit of adding
> > this new property to overload the default depth?
> >
> > Maybe I'm wrong and the default depth param is actually useful, but in
> > this case we should probably make it generic since other drivers seems
> > to need it too, and we might want to attach it to a specific display
> > engine instance.
>
> I think for the drm's fbdev emulation we ignore the bpp ...
Nope, it's already parsed [1].
[1]https://elixir.bootlin.com/linux/v4.16-rc3/source/drivers/gpu/drm/drm_fb_helper.c#L1812
--
Boris Brezillon, Bootlin (formerly Free Electrons)
Embedded Linux and Kernel engineering
https://bootlin.com
Powered by blists - more mailing lists