This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

omap dss splashscreen in u-boot

Hello, 

  I am trying to put in place in u-boot a splashscreen by using the omap dss. I read that there are 3 pipelines (graphics, video1, video2) and I have some questions.

  Here are the questions:

  1/ Which pipeline to use knowing that I have in the input frame buffer 24bpp pixels and I don't specially want to do any processing or conversion?

  2/ For me, I think that the graphics pipeline can do the job but can we disable the use of palette or gamma processing knowing that I just want the display controller to fetch pixel from frame buffer without processing and sent them to the LCD output?

I ask these questions because I tried to configure the DSS registers but without success. When I just set the display controller to send a background color to the LCD output, it works. But when I tried to set the graphics pipeline, I don't have any good result at the output.

Any helps are welcome. Thanks!

Here is my code:

// Configure of the DSS clocks and soft reset

...

// Graphics pipeline registers

writel(0x80200000, (u32)DISPC_GFX_BA0);   // Arbitary address

writel(0x0 << 1 | 0x9 << 10, (u32)DISPC_GFX_ATTRIBUTES);

writel(0x1DF | 0x10F << 16 , (u32)DISPC_GFX_SIZE);

writel(0 | 0 << 16 , (u32)DISPC_GFX_POSITION);  

writel(0x1 , (u32)DISPC_GFX_PIXEL_INC); // go to next pixel

writel(0x1 , (u32)DISPC_GFX_ROW_INC); // go to next pixel

/// LCD-specific control registers

writel(0x1DF | 0x10F << 16, (u32)DISPC_SIZE_LCD);    

// TFT | TFTLines | Bypass mode | LCDENABLEPOL High

u32 controlConfig = 0x1 << 3 | 0x3 << 8 | 0x3 << 15 | 0x1 << 29;

writel(controlConfig, (u32)OMAP3_DISPC_BASE);

writel(0x3 << 1, (u32)DISPC_CONFIG);

writel(0x00EE00EE, (u32)DISPC_DEFAULT_COLOR_0);

writel(0x29 | 0x2 << 8 | 0x2 << 20, (u32)DISPC_TIMING_H);

writel(0x0A | 0x2 << 8 | 0x2 << 20, (u32)DISPC_TIMING_V);

...

// After I enable LCD, GOLCD...