osd: bringup for g12b
authorpengcheng chen <pengcheng.chen@amlogic.com>
Fri, 25 May 2018 12:48:40 +0000 (20:48 +0800)
committerYixun Lan <yixun.lan@amlogic.com>
Fri, 29 Jun 2018 07:02:57 +0000 (00:02 -0700)
PD#165090: osd: bringup for g12b

1. add g12b version type
2. init VPP_OFIFO_SIZE

Change-Id: Ia72964ceefd28fb9a536d8362b2fc53ecbb91207
Signed-off-by: pengcheng chen <pengcheng.chen@amlogic.com>
drivers/amlogic/media/osd/osd_fb.c
drivers/amlogic/media/osd/osd_hw.c

index 1f60542759e0440cc824a38a6d4ae12901ac7ff9..68d0e060c9e31c8c80376ef63482ce503ffcb53e 100644 (file)
@@ -1488,7 +1488,7 @@ static int osd_open(struct fb_info *info, int arg)
        /* clear osd buffer if not logo layer */
        if (((logo_index < 0) || (logo_index != fb_index)) ||
                (osd_meson_dev.cpu_id == __MESON_CPU_MAJOR_ID_AXG) ||
-               (osd_meson_dev.cpu_id == __MESON_CPU_MAJOR_ID_G12A)) {
+               (osd_meson_dev.cpu_id >= __MESON_CPU_MAJOR_ID_G12A)) {
                osd_log_info("set logo loaded\n");
                set_logo_loaded();
        }
index 1c34ba385fa1018b69cd0f537d9ad417607796a2..edbeaaeb7f03c3a3c6fbad23ff3bd71ae28dc966 100644 (file)
@@ -1635,7 +1635,7 @@ u32 osd_get_afbc(u32 index)
                if (osd_hw.osd_meson_dev.cpu_id ==
                        __MESON_CPU_MAJOR_ID_GXM)
                        afbc_type = 1;
-               else if (osd_hw.osd_meson_dev.cpu_id ==
+               else if (osd_hw.osd_meson_dev.cpu_id >=
                        __MESON_CPU_MAJOR_ID_G12A)
                        afbc_type = 2;
                else
@@ -7000,6 +7000,7 @@ void osd_init_hw(u32 logo_loaded, u32 osd_probe,
                /* init vpu fifo control register */
                data32 = osd_reg_read(VPP_OFIFO_SIZE);
                if (osd_hw.osd_meson_dev.osd_ver >= OSD_HIGH_ONE) {
+                       data32 = 0; /* reset value 0xfff0fff */
                        data32 |= (osd_hw.osd_meson_dev.vpp_fifo_len) << 20;
                        data32 |= osd_hw.osd_meson_dev.vpp_fifo_len + 1;
                } else