• hersen wu's avatar
    drm/amd/display: init res_pool dccg_ref, dchub_ref with xtalin_freq · 41a5a2a8
    hersen wu authored
    [WHY] dc sw clock implementation of navi10 and raven are not exact the
    same. dcccg, dchub reference clock initialization is done after dc calls
    vbios dispcontroller_init table. for raven family, before
    dispcontroller_init is called by dc, the ref clk values are referred
    by sw clock implementation and program asic register using wrong
    values. this causes dchub pstate error. This need provide valid ref
    clk values. for navi10, since dispcontroller_init is not called,
    dchubbub_global_timer_enable = 0, hubbub2_get_dchub_ref_freq will
    hit aeert. this need remove hubbub2_get_dchub_ref_freq from this
    location and move to dcn20_init_hw.
    
    [HOW] for all asic, initialize dccg, dchub ref clk with data from
    vbios firmware table by default. for raven asic family, use these data
    from vbios, for asic which support sw dccg component, like navi10,
    read ref clk by sw dccg functions and update the ref clk.
    Signed-off-by: default avatarhersen wu <hersenxs.wu@amd.com>
    Reviewed-by: default avatarJun Lei <Jun.Lei@amd.com>
    Acked-by: default avatarLeo Li <sunpeng.li@amd.com>
    Signed-off-by: default avatarAlex Deucher <alexander.deucher@amd.com>
    41a5a2a8
dcn20_hwseq.c 58.5 KB