Hi Hannes,

On 04/27/2016 08:43 AM, Hannes Schmelzer wrote:
On 04/27/2016 01:21 AM, Martin Pietryka wrote:
The DMA was outputting the palette on the screen because the base
for the DMA was not after the palette. In addition to that, the ceiling was
also too high, this led that the output on the screen was shifted.

NOTE: According to the TRM, even in 16/24bit mode a palette is required
in the first 32 bytes of the framebuffer.

See also:
https://e2e.ti.com/support/arm/sitara_arm/f/791/p/234967/834483#834483

"In this mode, the LCDC will assume all information is data and thus you
need to ensure that the DMA points to the first pixel of data and not the
first entry in the frame buffer which is the beginning of the 512 byte
palette."
Hi Martin,
many thanks for working on this.

I'm just reviewing the stuff, you're right it shouldn't work right now.
But it does ?! Perhaps it does because there is another issue.

DMA today fetches palette also, but the Bit 21..20 in RASTER_CTRL aren't set correctly.

We do:
    lcdhw->raster_ctrl =    LCD_TFT_24BPP_MODE |
                LCD_TFT_24BPP_UNPACK |
                LCD_PALMODE_RAWDATA |
                LCD_TFT_MODE |
                LCD_RASTER_ENABLE;

with

#define LCD_PALMODE_RAWDATA            (0x10 << 20)

this doesn't set palmode as excepted to raw data, instead this sets 'stn565, bit24'.

I will investigate a bit on this now, testing your patches and fixup my mistakes.

best regards,
Hannes



regarding the bits in the palmode in RASTER_CTRL, I already made a patch yesterday which fixes this:

ac5c61b drivers/video/am335x-fb: Fix bits for LCD_PALMODE_RAWDATA definition

That might explain why no one saw DMA issues before because setting it to stn565 mode might have not show any issues with the DMA (but that's just a guess).

But I'm sure it was the wrong setting, I also crosschecked the RASTER_CTRL register value with a running kernel (4.4) and the stn565
bit is also not set for 16bpp mode.

I tested it only on a 16bpp screen, it would be nice if someone could confirm that it works on a 24/32bpp screen.

Martin

_______________________________________________
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot

Reply via email to