[PATCH 01/11] imx: Separate framebuffer platformdata and the videomode

Juergen Beisert jbe at pengutronix.de
Sat Oct 23 06:31:40 EDT 2010


Sascha Hauer wrote:
> On Fri, Oct 22, 2010 at 06:53:15PM +0200, Juergen Beisert wrote:
> > This patch separates the imx platformdata and its videomode in two
> > structures, in order to support more than one defined videomode in the
> > boardfile. This is intended to support runtime videomode selection later
> > on. It also uses now the same videomode setup style than the imx-fpu
> > based systems (like the i.MX35).
> >
> >     Signed-off-by: Juergen Beisert <jbe at pengutronix.de>
> > ---
> >  arch/arm/boards/eukrea_cpuimx25/eukrea_cpuimx25.c |   28
> > +++++++++-------- arch/arm/boards/eukrea_cpuimx27/eukrea_cpuimx27.c |  
> > 28 +++++++++-------- arch/arm/boards/guf-neso/board.c                  | 
> >  28 +++++++++-------- arch/arm/boards/imx21ads/imx21ads.c               |
> >   34 +++++++++++---------- arch/arm/boards/pcm038/pcm038.c               
> >    |   28 +++++++++-------- arch/arm/mach-imx/include/mach/imxfb.h       
> >     |    2 +-
> >  drivers/video/imx.c                               |    6 ++--
> >  7 files changed, 82 insertions(+), 72 deletions(-)
> >
> > diff --git a/arch/arm/boards/eukrea_cpuimx25/eukrea_cpuimx25.c
> > b/arch/arm/boards/eukrea_cpuimx25/eukrea_cpuimx25.c index
> > 805ffe2..032897a 100644
> > --- a/arch/arm/boards/eukrea_cpuimx25/eukrea_cpuimx25.c
> > +++ b/arch/arm/boards/eukrea_cpuimx25/eukrea_cpuimx25.c
> > @@ -120,20 +120,22 @@ static struct device_d nand_dev = {
> >  	.platform_data	= &nand_info,
> >  };
> >
> > +static struct fb_videomode cmo_display = {
> > +	.name		= "CMO-QVGA",
> > +	.refresh	= 60,
> > +	.xres		= 320,
> > +	.yres		= 240,
> > +	.pixclock	= KHZ2PICOS(6500),
> > +	.hsync_len	= 30,
> > +	.left_margin	= 38,
> > +	.right_margin	= 20,
> > +	.vsync_len	= 3,
> > +	.upper_margin	= 15,
> > +	.lower_margin	= 4,
> > +};
> > +
> >  static struct imx_fb_videomode imxfb_mode = {
> > -	.mode = {
> > -		.name		= "CMO-QVGA",
> > -		.refresh	= 60,
> > -		.xres		= 320,
> > -		.yres		= 240,
> > -		.pixclock	= KHZ2PICOS(6500),
> > -		.hsync_len	= 30,
> > -		.left_margin	= 38,
> > -		.right_margin	= 20,
> > -		.vsync_len	= 3,
> > -		.upper_margin	= 15,
> > -		.lower_margin	= 4,
> > -	},
> > +	.mode		= &cmo_display,
> >  	.pcr		= 0xCAD08B80,
> >  	.bpp		= 16,
> >  };
>
> What are we going to do about the .pcr value? It is display specific.
> Look for example in pcm970-baseboard.c in the kernel. It has two
> different possible displays with two different pcr values.

I will take a closer look what the meaning of this pcr value is. Maybe we can 
create it at runtime from other flags given in the imx_fb_videomode.

Otherwise we could add a private pointer to the imx_fb_videomode structure, 
which can point to platform and videomode specific data in a generic way.

jbe

-- 
Pengutronix e.K.                              | Juergen Beisert             |
Linux Solutions for Science and Industry      | Phone: +49-8766-939 228     |
Vertretung Sued/Muenchen, Germany             | Fax:   +49-5121-206917-5555 |
Amtsgericht Hildesheim, HRA 2686              | http://www.pengutronix.de/  |



More information about the barebox mailing list