/*
         * ubwc config is part of the "mdss" region which is not accessible
         * from the rest of the driver. hardcode known configurations here
 +++++   *
 +++++   * Decoder version can be read from the UBWC_DEC_HW_VERSION reg,
 +++++   * UBWC_n and the rest of params comes from hw_catalog.
 +++++   * Unforunately this driver can not access hw catalog, so we have to
 +++++   * hardcode them here.
         */
 -----  switch (readl_relaxed(msm_mdss->mmio + HW_REV)) {
 +++++  switch (hw_rev) {
        case DPU_HW_VER_500:
        case DPU_HW_VER_501:
 -----          writel_relaxed(0x420, msm_mdss->mmio + UBWC_STATIC);
 +++++          msm_mdss_setup_ubwc_dec_30(msm_mdss, UBWC_3_0, 0, 2, 0);
                break;
        case DPU_HW_VER_600:
 -----          /* TODO: 0x102e for LP_DDR4 */
 -----          writel_relaxed(0x103e, msm_mdss->mmio + UBWC_STATIC);
 -----          writel_relaxed(2, msm_mdss->mmio + UBWC_CTRL_2);
 -----          writel_relaxed(1, msm_mdss->mmio + UBWC_PREDICTION_MODE);
 +++++          /* TODO: highest_bank_bit = 2 for LP_DDR4 */
 +++++          msm_mdss_setup_ubwc_dec_40(msm_mdss, UBWC_4_0, 6, 1, 3, 1);
                break;
        case DPU_HW_VER_620:
 -----          writel_relaxed(0x1e, msm_mdss->mmio + UBWC_STATIC);
 +++++          /* UBWC_2_0 */
 +++++          msm_mdss_setup_ubwc_dec_20(msm_mdss, 0x1e);
  ++++          break;
+ ++++  case DPU_HW_VER_630:
+ ++++          /* UBWC_2_0 */
+ ++++          msm_mdss_setup_ubwc_dec_20(msm_mdss, 0x11f);
+               break;
        case DPU_HW_VER_720:
 -----          writel_relaxed(0x101e, msm_mdss->mmio + UBWC_STATIC);
 +++++          msm_mdss_setup_ubwc_dec_40(msm_mdss, UBWC_3_0, 6, 1, 1, 1);
                break;
        }