Merge remote-tracking branch 'quic/display-kernel.lnx.5.10' into display-kernel.lnx.5.15
* quic/display-kernel.lnx.5.10: disp: msm: sde: avoid error during fal10_veto override enablement disp: msm: update copyright description disp: msm: sde: configure dest_scaler op_mode for two independent displays disp: msm: dp: updated copyright set for 4nm target Revert "disp: msm: sde: consider max of actual and default prefill lines" disp: msm: sde: Reset backlight scale when HWC is stopped disp: msm: dp: avoid duplicate read of link status disp: msm: dsi: update vreg_ctrl settings for cape disp: msm: fail commit if drm_gem_obj was found attached to a sec CB disp: msm: dp: updated register values for 4nm target disp: msm: sde: update framedata event handling disp: msm: dsi: Add new phy comaptible string for cape disp: msm: sde: software override for fal10 in cwb enable disp: msm: update cleanup during bind failure in msm_drm_component_init disp: msm: sde: dump user input_fence info on spec fence timeout disp: msm: sde: add null pointer check for encoder current master disp: msm: dsi: enable DMA start window scheduling for broadcast commands disp: msm: sde: avoid alignment checks for linear formats disp: msm: reset thread priority work on every new run disp: msm: sde: send power on event for cont. splash disp: msm: sde: always set CTL_x_UIDLE_ACTIVE register to "1" disp: msm: use vzalloc for large allocations disp: msm: sde: Add support to limit DSC size to 10k disp: msm: sde: add tx wait during DMS for sim panel disp: msm: dsi: add check for any queued DSI CMDs before clock force update disp: msm: sde: correct pp block allocation during dcwb dither programming disp: msm: sde: avoid setting of max vblank count disp: msm: sde: add cached lut flag in sde plane disp: msm: sde: avoid use after free in msm_lastclose disp: msm: sde: update TEAR_SYNC_WRCOUNT register before vsync counter disp: msm: dsi: Support uncompressed rgb101010 format disp: msm: sde: update idle_pc_enabled flag for all encoders disp: msm: sde: flush esd work before disabling the encoder disp: msm: sde: allow qsync update along with modeset disp: msm: dp: avoid dp sw reset on disconnect path disp: msm: sde: consider max of actual and default prefill lines disp: msm: ensure vbif debugbus not in use is disabled disp: msm: sde: update cached encoder mask if required disp: msm: sde: while timing engine enabling poll for active region disp: msm: enable cache flag for dumb buffer disp: msm: sde: disable ot limit for cwb disp: msm: sde: avoid race condition at vm release disp: msm: dsi: set qsync min fps list length to zero disp: msm: sde: reset mixers in crtc when ctl datapath switches disp: msm: sde: update vm state atomic check for non-primary usecases disp: msm: sde: reset CTL_UIDLE_ACTIVE register only if uidle is disabled Change-Id: If480e7f33743eb4788549f853ba05e744ecb38d3 Signed-off-by: Narendra Muppalla <quic_nmuppall@quicinc.com>
这个提交包含在:
@@ -905,6 +905,7 @@ static void _sde_dbg_vbif_disable_block(void __iomem *mem_base, u32 wr_addr)
|
||||
MMSS_VBIF_TEST_BUS2_CTRL0 : MMSS_VBIF_TEST_BUS1_CTRL0;
|
||||
writel_relaxed(0, mem_base + disable_addr);
|
||||
writel_relaxed(BIT(0), mem_base + MMSS_VBIF_TEST_BUS_OUT_CTRL);
|
||||
wmb(); /* update test bus */
|
||||
}
|
||||
|
||||
static u32 _sde_dbg_vbif_read_test_point(void __iomem *mem_base, u32 wr_addr, u32 rd_addr,
|
||||
@@ -920,6 +921,7 @@ static void _sde_dbg_vbif_clear_test_point(void __iomem *mem_base, u32 wr_addr)
|
||||
{
|
||||
writel_relaxed(0, mem_base + wr_addr);
|
||||
writel_relaxed(0, mem_base + wr_addr + 0x4);
|
||||
wmb(); /* update test point clear */
|
||||
}
|
||||
|
||||
static u32 _sde_dbg_sde_read_test_point(void __iomem *mem_base, u32 wr_addr, u32 rd_addr,
|
||||
@@ -1120,7 +1122,7 @@ static void _sde_dbg_dump_sde_dbg_bus(struct sde_dbg_sde_debug_bus *bus, u32 ena
|
||||
SDE_DBG_LOG_MARKER(name, SDE_DBG_LOG_START, in_log);
|
||||
|
||||
if ((in_mem || in_dump) && (!(*dump_mem))) {
|
||||
*dump_mem = kvzalloc(list_size, GFP_KERNEL);
|
||||
*dump_mem = vzalloc(list_size);
|
||||
bus->cmn.content_size = list_size / sizeof(u32);
|
||||
}
|
||||
dump_addr = *dump_mem;
|
||||
@@ -1165,7 +1167,7 @@ static void _sde_dbg_dump_dsi_dbg_bus(struct sde_dbg_sde_debug_bus *bus, u32 ena
|
||||
|
||||
mutex_lock(&sde_dbg_dsi_mutex);
|
||||
if ((in_mem || in_dump) && (!(*dump_mem))) {
|
||||
*dump_mem = kvzalloc(list_size, GFP_KERNEL);
|
||||
*dump_mem = vzalloc(list_size);
|
||||
bus->cmn.content_size = list_size / sizeof(u32);
|
||||
}
|
||||
dump_addr = *dump_mem;
|
||||
@@ -1259,7 +1261,7 @@ static void _sde_dump_array(bool do_panic, const char *name, bool dump_secure, u
|
||||
|
||||
reg_dump_size = _sde_dbg_get_reg_dump_size();
|
||||
if (!dbg_base->reg_dump_base)
|
||||
dbg_base->reg_dump_base = kvzalloc(reg_dump_size, GFP_KERNEL);
|
||||
dbg_base->reg_dump_base = vzalloc(reg_dump_size);
|
||||
|
||||
dbg_base->reg_dump_addr = dbg_base->reg_dump_base;
|
||||
|
||||
@@ -1834,7 +1836,7 @@ static ssize_t sde_recovery_regdump_read(struct file *file, char __user *ubuf,
|
||||
|
||||
if (!rbuf->dump_done && !rbuf->cur_blk) {
|
||||
if (!rbuf->buf)
|
||||
rbuf->buf = kvzalloc(DUMP_BUF_SIZE, GFP_KERNEL);
|
||||
rbuf->buf = vzalloc(DUMP_BUF_SIZE);
|
||||
if (!rbuf->buf) {
|
||||
len = -ENOMEM;
|
||||
goto err;
|
||||
@@ -2647,7 +2649,7 @@ static void sde_dbg_reg_base_destroy(void)
|
||||
list_del(&blk_base->reg_base_head);
|
||||
kfree(blk_base);
|
||||
}
|
||||
kvfree(dbg_base->reg_dump_base);
|
||||
vfree(dbg_base->reg_dump_base);
|
||||
}
|
||||
|
||||
static void sde_dbg_dsi_ctrl_destroy(void)
|
||||
@@ -2666,12 +2668,12 @@ static void sde_dbg_buses_destroy(void)
|
||||
{
|
||||
struct sde_dbg_base *dbg_base = &sde_dbg_base;
|
||||
|
||||
kvfree(dbg_base->dbgbus_sde.cmn.dumped_content);
|
||||
kvfree(dbg_base->dbgbus_vbif_rt.cmn.dumped_content);
|
||||
kvfree(dbg_base->dbgbus_dsi.cmn.dumped_content);
|
||||
kvfree(dbg_base->dbgbus_lutdma.cmn.dumped_content);
|
||||
kvfree(dbg_base->dbgbus_rsc.cmn.dumped_content);
|
||||
kvfree(dbg_base->dbgbus_dp.cmn.dumped_content);
|
||||
vfree(dbg_base->dbgbus_sde.cmn.dumped_content);
|
||||
vfree(dbg_base->dbgbus_vbif_rt.cmn.dumped_content);
|
||||
vfree(dbg_base->dbgbus_dsi.cmn.dumped_content);
|
||||
vfree(dbg_base->dbgbus_lutdma.cmn.dumped_content);
|
||||
vfree(dbg_base->dbgbus_rsc.cmn.dumped_content);
|
||||
vfree(dbg_base->dbgbus_dp.cmn.dumped_content);
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -2679,7 +2681,7 @@ static void sde_dbg_buses_destroy(void)
|
||||
*/
|
||||
void sde_dbg_destroy(void)
|
||||
{
|
||||
kvfree(sde_dbg_base.regbuf.buf);
|
||||
vfree(sde_dbg_base.regbuf.buf);
|
||||
memset(&sde_dbg_base.regbuf, 0, sizeof(sde_dbg_base.regbuf));
|
||||
_sde_dbg_debugfs_destroy();
|
||||
sde_dbg_base_evtlog = NULL;
|
||||
|
在新工单中引用
屏蔽一个用户