osd: fix osd rdma recovery reg

PD#160942: osd: fix osd rdma recovery reg
           1. modify VIU_OSD1_BLK0_CFG_W0 init value in update_color_mode
           2. add DOLBY_CORE2A_SWAP_CTRL1&CTRL2 in recovery table

Change-Id: I04c569bc4919e8adc5bd17d376ee65d084e49082
Signed-off-by: pengcheng chen <pengcheng.chen@amlogic.com>
This commit is contained in:
pengcheng chen
2018-04-18 09:44:17 +08:00
parent acf01d7d60
commit b7d5caed45
2 changed files with 9 additions and 3 deletions

View File

@@ -700,6 +700,8 @@ static struct reg_item misc_recovery_table_g12a[] = {
{VIU_OSD2_BLK1_CFG_W4, 0x0, 0xffffffff, 1},
{VIU_OSD2_BLK2_CFG_W4, 0x0, 0xffffffff, 1},
{VIU_OSD2_MALI_UNPACK_CTRL, 0x0, 0x9f01ffff, 1},
{DOLBY_CORE2A_SWAP_CTRL1, 0x0, 0x0fffffff, 1},
{DOLBY_CORE2A_SWAP_CTRL2, 0x0, 0xffffffff, 1},
};
static void recovery_regs_init_old(void)
@@ -1288,7 +1290,9 @@ static int update_recovery_item_g12a(u32 addr, u32 value)
(addr == VIU_OSD2_BLK0_CFG_W4) ||
(addr == VIU_OSD2_BLK1_CFG_W4) ||
(addr == VIU_OSD2_BLK2_CFG_W4) ||
(addr == VIU_OSD2_MALI_UNPACK_CTRL)) {
(addr == VIU_OSD2_MALI_UNPACK_CTRL) ||
(addr == DOLBY_CORE2A_SWAP_CTRL1) ||
(addr == DOLBY_CORE2A_SWAP_CTRL2)) {
table = gRecovery[10].table;
for (i = 0; i < gRecovery[10].size; i++) {
if (addr == table[i].addr) {
@@ -1487,7 +1491,9 @@ static s32 get_recovery_item_g12a(u32 addr, u32 *value, u32 *mask)
(addr == VIU_OSD2_BLK0_CFG_W4) ||
(addr == VIU_OSD2_BLK1_CFG_W4) ||
(addr == VIU_OSD2_BLK2_CFG_W4) ||
(addr == VIU_OSD2_MALI_UNPACK_CTRL)) {
(addr == VIU_OSD2_MALI_UNPACK_CTRL) ||
(addr == DOLBY_CORE2A_SWAP_CTRL1) ||
(addr == DOLBY_CORE2A_SWAP_CTRL2)) {
table = gRecovery[10].table;
for (i = 0; i < gRecovery[10].size; i++) {
if (addr == table[i].addr) {

View File

@@ -3848,7 +3848,7 @@ static void osd_update_color_mode(u32 index)
SCAN_MODE_INTERLACE) ? 2 : 0;
data32 |= VSYNCOSD_RD_MPEG_REG(
osd_reg->osd_blk0_cfg_w0)
& 0x30007040;
& 0x70007040;
data32 |= osd_hw.fb_gem[index].canvas_idx << 16;
if ((osd_hw.osd_afbcd[index].enable) &&
(osd_hw.osd_meson_dev.afbc_type == MALI_AFBC))