REG_UPDATE(DCHUBP_CNTL, HUBP_VTG_SEL, otg_inst);
 }
 
+void hubp1_init(struct hubp *hubp)
+{
+       //do nothing
+}
 static const struct hubp_funcs dcn10_hubp_funcs = {
        .hubp_program_surface_flip_and_addr =
                        hubp1_program_surface_flip_and_addr,
        .hubp_clear_underflow = hubp1_clear_underflow,
        .hubp_disable_control =  hubp1_disable_control,
        .hubp_get_underflow_status = hubp1_get_underflow_status,
-
+       .hubp_init = hubp1_init,
 };
 
 /*****************************************/
 
 #define HUBP_REG_LIST_DCN(id)\
        SRI(DCHUBP_CNTL, HUBP, id),\
        SRI(HUBPREQ_DEBUG_DB, HUBP, id),\
+       SRI(HUBPREQ_DEBUG, HUBP, id),\
        SRI(DCSURF_ADDR_CONFIG, HUBP, id),\
        SRI(DCSURF_TILING_CONFIG, HUBP, id),\
        SRI(DCSURF_SURFACE_PITCH, HUBPREQ, id),\
 #define HUBP_COMMON_REG_VARIABLE_LIST \
        uint32_t DCHUBP_CNTL; \
        uint32_t HUBPREQ_DEBUG_DB; \
+       uint32_t HUBPREQ_DEBUG; \
        uint32_t DCSURF_ADDR_CONFIG; \
        uint32_t DCSURF_TILING_CONFIG; \
        uint32_t DCSURF_SURFACE_PITCH; \
 void hubp1_vready_workaround(struct hubp *hubp,
                struct _vcs_dpi_display_pipe_dest_params_st *pipe_dest);
 
+void hubp1_init(struct hubp *hubp);
+
 #endif
 
                        struct hubp *hubp = dc->res_pool->hubps[i];
                        struct dpp *dpp = dc->res_pool->dpps[i];
 
+                       hubp->funcs->hubp_init(hubp);
                        dc->res_pool->opps[i]->mpc_tree_params.opp_id = dc->res_pool->opps[i]->inst;
                        plane_atomic_power_down(dc, dpp, hubp);
                }
 
        void (*hubp_clear_underflow)(struct hubp *hubp);
        void (*hubp_disable_control)(struct hubp *hubp, bool disable_hubp);
        unsigned int (*hubp_get_underflow_status)(struct hubp *hubp);
+       void (*hubp_init)(struct hubp *hubp);
 
 };