Loading msm/sde/sde_hw_catalog.c +18 −1 Original line number Diff line number Diff line // SPDX-License-Identifier: GPL-2.0-only /* * Copyright (c) 2015-2019, The Linux Foundation. All rights reserved. * Copyright (c) 2015-2020, The Linux Foundation. All rights reserved. */ #define pr_fmt(fmt) "[drm:%s:%d] " fmt, __func__, __LINE__ Loading Loading @@ -4288,6 +4288,23 @@ static int _sde_hardware_pre_caps(struct sde_mdss_cfg *sde_cfg, uint32_t hw_rev) sde_cfg->has_qos_fl_nocalc = true; clear_bit(MDSS_INTR_AD4_0_INTR, sde_cfg->mdss_irqs); clear_bit(MDSS_INTR_AD4_1_INTR, sde_cfg->mdss_irqs); } else if (IS_LAGOON_TARGET(hw_rev)) { sde_cfg->has_cwb_support = true; sde_cfg->has_qsync = true; sde_cfg->perf.min_prefill_lines = 24; sde_cfg->vbif_qos_nlvl = 8; sde_cfg->ts_prefill_rev = 2; sde_cfg->ctl_rev = SDE_CTL_CFG_VERSION_1_0_0; sde_cfg->delay_prg_fetch_start = true; sde_cfg->sui_ns_allowed = true; sde_cfg->sui_misr_supported = true; sde_cfg->sui_block_xin_mask = 0x261; sde_cfg->has_sui_blendstage = true; sde_cfg->has_qos_fl_nocalc = true; clear_bit(MDSS_INTR_AD4_0_INTR, sde_cfg->mdss_irqs); clear_bit(MDSS_INTR_AD4_1_INTR, sde_cfg->mdss_irqs); sde_cfg->has_hdr = true; sde_cfg->has_vig_p010 = true; } else { SDE_ERROR("unsupported chipset id:%X\n", hw_rev); sde_cfg->perf.min_prefill_lines = 0xffff; Loading msm/sde/sde_hw_catalog.h +3 −1 Original line number Diff line number Diff line /* SPDX-License-Identifier: GPL-2.0-only */ /* * Copyright (c) 2015-2019, The Linux Foundation. All rights reserved. * Copyright (c) 2015-2020, The Linux Foundation. All rights reserved. */ #ifndef _SDE_HW_CATALOG_H Loading Loading @@ -54,6 +54,7 @@ #define SDE_HW_VER_600 SDE_HW_VER(6, 0, 0) /* kona */ #define SDE_HW_VER_610 SDE_HW_VER(6, 1, 0) /* sm7250 */ #define SDE_HW_VER_630 SDE_HW_VER(6, 3, 0) /* bengal */ #define SDE_HW_VER_640 SDE_HW_VER(6, 4, 0) /* lagoon */ #define IS_MSM8996_TARGET(rev) IS_SDE_MAJOR_MINOR_SAME((rev), SDE_HW_VER_170) #define IS_MSM8998_TARGET(rev) IS_SDE_MAJOR_MINOR_SAME((rev), SDE_HW_VER_300) Loading @@ -67,6 +68,7 @@ #define IS_KONA_TARGET(rev) IS_SDE_MAJOR_MINOR_SAME((rev), SDE_HW_VER_600) #define IS_SAIPAN_TARGET(rev) IS_SDE_MAJOR_MINOR_SAME((rev), SDE_HW_VER_610) #define IS_BENGAL_TARGET(rev) IS_SDE_MAJOR_MINOR_SAME((rev), SDE_HW_VER_630) #define IS_LAGOON_TARGET(rev) IS_SDE_MAJOR_MINOR_SAME((rev), SDE_HW_VER_640) #define SDE_HW_BLK_NAME_LEN 16 Loading msm/sde/sde_hw_lm.c +3 −9 Original line number Diff line number Diff line // SPDX-License-Identifier: GPL-2.0-only /* * Copyright (c) 2015-2019, The Linux Foundation. All rights reserved. * Copyright (c) 2015-2020, The Linux Foundation. All rights reserved. */ #include <linux/iopoll.h> Loading Loading @@ -284,14 +284,8 @@ static void _setup_mixer_ops(struct sde_mdss_cfg *m, { ops->setup_mixer_out = sde_hw_lm_setup_out; if (IS_SDM845_TARGET(m->hwversion) || IS_SDM670_TARGET(m->hwversion) || IS_SM8150_TARGET(m->hwversion) || IS_SDMSHRIKE_TARGET(m->hwversion) || IS_SM6150_TARGET(m->hwversion) || IS_SDMMAGPIE_TARGET(m->hwversion) || IS_KONA_TARGET(m->hwversion) || IS_SAIPAN_TARGET(m->hwversion) || IS_SDMTRINKET_TARGET(m->hwversion) || IS_BENGAL_TARGET(m->hwversion)) IS_SDE_MAJOR_SAME(m->hwversion, SDE_HW_VER_500) || IS_SDE_MAJOR_SAME(m->hwversion, SDE_HW_VER_600)) ops->setup_blend_config = sde_hw_lm_setup_blend_config_sdm845; else ops->setup_blend_config = sde_hw_lm_setup_blend_config; Loading msm/sde/sde_hw_vbif.c +2 −4 Original line number Diff line number Diff line // SPDX-License-Identifier: GPL-2.0-only /* * Copyright (c) 2015-2019, The Linux Foundation. All rights reserved. * Copyright (c) 2015-2020, The Linux Foundation. All rights reserved. */ #include "sde_hwio.h" Loading Loading @@ -237,9 +237,7 @@ static void _setup_vbif_ops(const struct sde_mdss_cfg *m, if (IS_SM8150_TARGET(m->hwversion) || IS_SM6150_TARGET(m->hwversion) || IS_SDMMAGPIE_TARGET(m->hwversion) || IS_SDMTRINKET_TARGET(m->hwversion) || IS_KONA_TARGET(m->hwversion) || IS_SAIPAN_TARGET(m->hwversion) || IS_BENGAL_TARGET(m->hwversion)) IS_SDE_MAJOR_SAME(m->hwversion, SDE_HW_VER_600)) ops->set_mem_type = sde_hw_set_mem_type_v1; else ops->set_mem_type = sde_hw_set_mem_type; Loading msm/sde_dbg.c +2 −2 Original line number Diff line number Diff line // SPDX-License-Identifier: GPL-2.0-only /* * Copyright (c) 2009-2019, The Linux Foundation. All rights reserved. * Copyright (c) 2009-2020, The Linux Foundation. All rights reserved. */ #define pr_fmt(fmt) "[drm:%s:%d] " fmt, __func__, __LINE__ Loading Loading @@ -4605,7 +4605,7 @@ void sde_dbg_init_dbg_buses(u32 hwversion) ARRAY_SIZE(vbif_dbg_bus_msm8998); dbg->dbgbus_dsi.entries = NULL; dbg->dbgbus_dsi.size = 0; } else if (IS_KONA_TARGET(hwversion) || IS_SAIPAN_TARGET(hwversion)) { } else if (IS_SDE_MAJOR_SAME(hwversion, SDE_HW_VER_600)) { dbg->dbgbus_sde.entries = dbg_bus_sde_kona; dbg->dbgbus_sde.cmn.entries_size = ARRAY_SIZE(dbg_bus_sde_kona); Loading Loading
msm/sde/sde_hw_catalog.c +18 −1 Original line number Diff line number Diff line // SPDX-License-Identifier: GPL-2.0-only /* * Copyright (c) 2015-2019, The Linux Foundation. All rights reserved. * Copyright (c) 2015-2020, The Linux Foundation. All rights reserved. */ #define pr_fmt(fmt) "[drm:%s:%d] " fmt, __func__, __LINE__ Loading Loading @@ -4288,6 +4288,23 @@ static int _sde_hardware_pre_caps(struct sde_mdss_cfg *sde_cfg, uint32_t hw_rev) sde_cfg->has_qos_fl_nocalc = true; clear_bit(MDSS_INTR_AD4_0_INTR, sde_cfg->mdss_irqs); clear_bit(MDSS_INTR_AD4_1_INTR, sde_cfg->mdss_irqs); } else if (IS_LAGOON_TARGET(hw_rev)) { sde_cfg->has_cwb_support = true; sde_cfg->has_qsync = true; sde_cfg->perf.min_prefill_lines = 24; sde_cfg->vbif_qos_nlvl = 8; sde_cfg->ts_prefill_rev = 2; sde_cfg->ctl_rev = SDE_CTL_CFG_VERSION_1_0_0; sde_cfg->delay_prg_fetch_start = true; sde_cfg->sui_ns_allowed = true; sde_cfg->sui_misr_supported = true; sde_cfg->sui_block_xin_mask = 0x261; sde_cfg->has_sui_blendstage = true; sde_cfg->has_qos_fl_nocalc = true; clear_bit(MDSS_INTR_AD4_0_INTR, sde_cfg->mdss_irqs); clear_bit(MDSS_INTR_AD4_1_INTR, sde_cfg->mdss_irqs); sde_cfg->has_hdr = true; sde_cfg->has_vig_p010 = true; } else { SDE_ERROR("unsupported chipset id:%X\n", hw_rev); sde_cfg->perf.min_prefill_lines = 0xffff; Loading
msm/sde/sde_hw_catalog.h +3 −1 Original line number Diff line number Diff line /* SPDX-License-Identifier: GPL-2.0-only */ /* * Copyright (c) 2015-2019, The Linux Foundation. All rights reserved. * Copyright (c) 2015-2020, The Linux Foundation. All rights reserved. */ #ifndef _SDE_HW_CATALOG_H Loading Loading @@ -54,6 +54,7 @@ #define SDE_HW_VER_600 SDE_HW_VER(6, 0, 0) /* kona */ #define SDE_HW_VER_610 SDE_HW_VER(6, 1, 0) /* sm7250 */ #define SDE_HW_VER_630 SDE_HW_VER(6, 3, 0) /* bengal */ #define SDE_HW_VER_640 SDE_HW_VER(6, 4, 0) /* lagoon */ #define IS_MSM8996_TARGET(rev) IS_SDE_MAJOR_MINOR_SAME((rev), SDE_HW_VER_170) #define IS_MSM8998_TARGET(rev) IS_SDE_MAJOR_MINOR_SAME((rev), SDE_HW_VER_300) Loading @@ -67,6 +68,7 @@ #define IS_KONA_TARGET(rev) IS_SDE_MAJOR_MINOR_SAME((rev), SDE_HW_VER_600) #define IS_SAIPAN_TARGET(rev) IS_SDE_MAJOR_MINOR_SAME((rev), SDE_HW_VER_610) #define IS_BENGAL_TARGET(rev) IS_SDE_MAJOR_MINOR_SAME((rev), SDE_HW_VER_630) #define IS_LAGOON_TARGET(rev) IS_SDE_MAJOR_MINOR_SAME((rev), SDE_HW_VER_640) #define SDE_HW_BLK_NAME_LEN 16 Loading
msm/sde/sde_hw_lm.c +3 −9 Original line number Diff line number Diff line // SPDX-License-Identifier: GPL-2.0-only /* * Copyright (c) 2015-2019, The Linux Foundation. All rights reserved. * Copyright (c) 2015-2020, The Linux Foundation. All rights reserved. */ #include <linux/iopoll.h> Loading Loading @@ -284,14 +284,8 @@ static void _setup_mixer_ops(struct sde_mdss_cfg *m, { ops->setup_mixer_out = sde_hw_lm_setup_out; if (IS_SDM845_TARGET(m->hwversion) || IS_SDM670_TARGET(m->hwversion) || IS_SM8150_TARGET(m->hwversion) || IS_SDMSHRIKE_TARGET(m->hwversion) || IS_SM6150_TARGET(m->hwversion) || IS_SDMMAGPIE_TARGET(m->hwversion) || IS_KONA_TARGET(m->hwversion) || IS_SAIPAN_TARGET(m->hwversion) || IS_SDMTRINKET_TARGET(m->hwversion) || IS_BENGAL_TARGET(m->hwversion)) IS_SDE_MAJOR_SAME(m->hwversion, SDE_HW_VER_500) || IS_SDE_MAJOR_SAME(m->hwversion, SDE_HW_VER_600)) ops->setup_blend_config = sde_hw_lm_setup_blend_config_sdm845; else ops->setup_blend_config = sde_hw_lm_setup_blend_config; Loading
msm/sde/sde_hw_vbif.c +2 −4 Original line number Diff line number Diff line // SPDX-License-Identifier: GPL-2.0-only /* * Copyright (c) 2015-2019, The Linux Foundation. All rights reserved. * Copyright (c) 2015-2020, The Linux Foundation. All rights reserved. */ #include "sde_hwio.h" Loading Loading @@ -237,9 +237,7 @@ static void _setup_vbif_ops(const struct sde_mdss_cfg *m, if (IS_SM8150_TARGET(m->hwversion) || IS_SM6150_TARGET(m->hwversion) || IS_SDMMAGPIE_TARGET(m->hwversion) || IS_SDMTRINKET_TARGET(m->hwversion) || IS_KONA_TARGET(m->hwversion) || IS_SAIPAN_TARGET(m->hwversion) || IS_BENGAL_TARGET(m->hwversion)) IS_SDE_MAJOR_SAME(m->hwversion, SDE_HW_VER_600)) ops->set_mem_type = sde_hw_set_mem_type_v1; else ops->set_mem_type = sde_hw_set_mem_type; Loading
msm/sde_dbg.c +2 −2 Original line number Diff line number Diff line // SPDX-License-Identifier: GPL-2.0-only /* * Copyright (c) 2009-2019, The Linux Foundation. All rights reserved. * Copyright (c) 2009-2020, The Linux Foundation. All rights reserved. */ #define pr_fmt(fmt) "[drm:%s:%d] " fmt, __func__, __LINE__ Loading Loading @@ -4605,7 +4605,7 @@ void sde_dbg_init_dbg_buses(u32 hwversion) ARRAY_SIZE(vbif_dbg_bus_msm8998); dbg->dbgbus_dsi.entries = NULL; dbg->dbgbus_dsi.size = 0; } else if (IS_KONA_TARGET(hwversion) || IS_SAIPAN_TARGET(hwversion)) { } else if (IS_SDE_MAJOR_SAME(hwversion, SDE_HW_VER_600)) { dbg->dbgbus_sde.entries = dbg_bus_sde_kona; dbg->dbgbus_sde.cmn.entries_size = ARRAY_SIZE(dbg_bus_sde_kona); Loading