linux_old1/drivers/video/omap2/dss
Tomi Valkeinen 5ed8cf5b8e OMAP: DSS2: Fix FIFO threshold and burst size for OMAP4
The DMA FIFO threshold registers and burst size registers have changed
for OMAP4.  The current code only handles OMAP2/3 case, and so the
values are a bit off for OMAP4.  A summary of the differences between
OMAP2/3 and OMAP4:

Burst size:
OMAP2/3: 4 x 32 bits / 8 x 32 bits / 16 x 32 bits
OMAP4: 2 x 128 bits / 4 x 128 bits / 8 x 128 bits

Threshold size:
OMAP2/3: in bytes (8 bit units)
OMAP4: in 128bit units

This patch fixes the issue by creating two new helper functions in
dss_features: dss_feat_get_buffer_size_unit() and
dss_feat_get_burst_size_unit(). These return (in bytes) the unit size
for threshold registers and unit size for burst size register,
respectively, and are used to calculate correct values.

For the threshold size the usage is straightforward. However, the burst
size register has different multipliers for OMAP2/3 and OMAP4. This
patch solves the problem by defining the multipliers for the burst size
as 2x, 4x and 8x, which fit fine for the OMAP4 burst size definition
(i.e. burst size unit for OMAP4 is 128bits), but requires a slight twist
on OMAP2/3 by defining the burst size unit as 64bit.

As the driver in practice always uses the maximum burst size, and no use
case currently exists where we would want to use a smaller burst size,
this patch changes the driver to hardcode the burst size when
initializing DISPC. This makes the threshold configuration code somewhat
simpler.

Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
2011-07-01 12:07:14 +03:00
..
Kconfig OMAP: DSS2: DSI: enable interface for omap4 2011-05-11 14:20:50 +03:00
Makefile OMAP4: DSS2: HDMI: Add makefile and kconfig changes to enable HDMI in OMAP4 2011-03-16 11:45:50 +05:30
core.c OMAP4: DSS2: DSI: Changes for DSI2 on OMAP4 2011-05-12 19:30:27 +03:00
dispc.c OMAP: DSS2: Fix FIFO threshold and burst size for OMAP4 2011-07-01 12:07:14 +03:00
dispc.h OMAP: DSS2: Add new registers for NV12 support 2011-05-23 08:29:47 +03:00
display.c OMAP: DSS2: Fix FIFO threshold and burst size for OMAP4 2011-07-01 12:07:14 +03:00
dpi.c OMAP4: DSS2: DSI: Changes for DSI2 on OMAP4 2011-05-12 19:30:27 +03:00
dsi.c OMAP: DSS2: Fix FIFO threshold and burst size for OMAP4 2011-07-01 12:07:14 +03:00
dss.c OMAP: DSS2: remove extra includes from include/video/omapdss.h 2011-07-01 12:01:12 +03:00
dss.h OMAP: DSS2: Fix FIFO threshold and burst size for OMAP4 2011-07-01 12:07:14 +03:00
dss_features.c OMAP: DSS2: Fix FIFO threshold and burst size for OMAP4 2011-07-01 12:07:14 +03:00
dss_features.h OMAP: DSS2: Fix FIFO threshold and burst size for OMAP4 2011-07-01 12:07:14 +03:00
hdmi.c OMAP: DSS2: remove extra includes from include/video/omapdss.h 2011-07-01 12:01:12 +03:00
hdmi.h OMAP4: DSS2: HDMI: Add enums and structures for audio 2011-05-19 15:18:00 +03:00
hdmi_omap4_panel.c OMAP: DSS2: Move display.h to include/video/ 2011-05-11 14:05:07 +03:00
manager.c OMAP: DSS2: Fix FIFO threshold and burst size for OMAP4 2011-07-01 12:07:14 +03:00
overlay.c OMAP: DSS2: Add new FEAT definitions for features missing from OMAP2 2011-07-01 12:06:49 +03:00
rfbi.c OMAP: DSS2: remove extra includes from include/video/omapdss.h 2011-07-01 12:01:12 +03:00
sdi.c OMAP: DSS2: Move display.h to include/video/ 2011-05-11 14:05:07 +03:00
venc.c OMAP: DSS2: Add FEAT_VENC_REQUIRES_TV_DAC_CLK 2011-07-01 12:06:43 +03:00