mirror of https://github.com/torvalds/linux.git
The burst length is configured in VIU_OSD1_FIFO_CTRL_STAT[31] and
VIU_OSD1_FIFO_CTRL_STAT[11:10]. The public S905D3 datasheet describes
this as:
- 0x0 = up to 24 per burst
- 0x1 = up to 32 per burst
- 0x2 = up to 48 per burst
- 0x3 = up to 64 per burst
- 0x4 = up to 96 per burst
- 0x5 = up to 128 per burst
The lower two bits map to VIU_OSD1_FIFO_CTRL_STAT[11:10] while the upper
bit maps to VIU_OSD1_FIFO_CTRL_STAT[31].
Replace meson_viu_osd_burst_length_reg() with pre-defined macros which
set these values. meson_viu_osd_burst_length_reg() always returned 0
(for the two used values: 32 and 64 at least) and thus incorrectly set
the burst size to 24.
Fixes:
|
||
|---|---|---|
| .. | ||
| Kconfig | ||
| Makefile | ||
| meson_crtc.c | ||
| meson_crtc.h | ||
| meson_drv.c | ||
| meson_drv.h | ||
| meson_dw_hdmi.c | ||
| meson_dw_hdmi.h | ||
| meson_osd_afbcd.c | ||
| meson_osd_afbcd.h | ||
| meson_overlay.c | ||
| meson_overlay.h | ||
| meson_plane.c | ||
| meson_plane.h | ||
| meson_rdma.c | ||
| meson_rdma.h | ||
| meson_registers.h | ||
| meson_vclk.c | ||
| meson_vclk.h | ||
| meson_venc.c | ||
| meson_venc.h | ||
| meson_venc_cvbs.c | ||
| meson_venc_cvbs.h | ||
| meson_viu.c | ||
| meson_viu.h | ||
| meson_vpp.c | ||
| meson_vpp.h | ||