diff options
Diffstat (limited to 'msm/sde_dbg.c')
-rw-r--r-- | msm/sde_dbg.c | 16 |
1 files changed, 6 insertions, 10 deletions
diff --git a/msm/sde_dbg.c b/msm/sde_dbg.c index 2723d01c..3fad1079 100644 --- a/msm/sde_dbg.c +++ b/msm/sde_dbg.c @@ -1,5 +1,6 @@ // SPDX-License-Identifier: GPL-2.0-only /* + * Copyright (c) 2021-2022 Qualcomm Innovation Center, Inc. All rights reserved. * Copyright (c) 2009-2020, The Linux Foundation. All rights reserved. */ @@ -3251,7 +3252,6 @@ static void _sde_dbg_dump_sde_dbg_bus(struct sde_dbg_sde_debug_bus *bus) u32 *dump_addr = NULL; u32 status = 0; struct sde_debug_bus_entry *head; - phys_addr_t phys = 0; int list_size; int i; u32 offset; @@ -3289,8 +3289,7 @@ static void _sde_dbg_dump_sde_dbg_bus(struct sde_dbg_sde_debug_bus *bus) if (in_mem) { if (!(*dump_mem)) - *dump_mem = dma_alloc_coherent(sde_dbg_base.dev, - list_size, &phys, GFP_KERNEL); + *dump_mem = vzalloc(list_size); if (*dump_mem) { dump_addr = *dump_mem; @@ -3400,7 +3399,6 @@ static void _sde_dbg_dump_vbif_dbg_bus(struct sde_dbg_vbif_debug_bus *bus) u32 value, d0, d1; unsigned long reg, reg1, reg2; struct vbif_debug_bus_entry *head; - phys_addr_t phys = 0; int i, list_size = 0; void __iomem *mem_base = NULL; struct vbif_debug_bus_entry *dbg_bus; @@ -3450,8 +3448,7 @@ static void _sde_dbg_dump_vbif_dbg_bus(struct sde_dbg_vbif_debug_bus *bus) if (in_mem) { if (!(*dump_mem)) - *dump_mem = dma_alloc_coherent(sde_dbg_base.dev, - list_size, &phys, GFP_KERNEL); + *dump_mem = vzalloc(list_size); if (*dump_mem) { dump_addr = *dump_mem; @@ -3542,13 +3539,11 @@ static void _sde_dump_array(struct sde_dbg_reg_base *blk_arr[], int i; u32 reg_dump_size; struct sde_dbg_base *dbg_base = &sde_dbg_base; - phys_addr_t phys = 0; mutex_lock(&sde_dbg_base.mutex); reg_dump_size = _sde_dbg_get_reg_dump_size(); - dbg_base->reg_dump_addr = dma_alloc_coherent(sde_dbg_base.dev, - reg_dump_size, &phys, GFP_KERNEL); + dbg_base->reg_dump_addr = vzalloc(reg_dump_size); if (dump_all) sde_evtlog_dump_all(sde_dbg_base.evtlog); @@ -4051,7 +4046,7 @@ static ssize_t sde_recovery_regdump_read(struct file *file, char __user *ubuf, mutex_lock(&sde_dbg_base.mutex); if (!rbuf->dump_done && !rbuf->cur_blk) { if (!rbuf->buf) - rbuf->buf = kzalloc(DUMP_BUF_SIZE, GFP_KERNEL); + rbuf->buf = vzalloc(DUMP_BUF_SIZE); if (!rbuf->buf) { len = -ENOMEM; goto err; @@ -4781,6 +4776,7 @@ static void sde_dbg_reg_base_destroy(void) list_del(&blk_base->reg_base_head); kfree(blk_base); } + vfree(dbg_base->reg_dump_addr); } /** * sde_dbg_destroy - destroy sde debug facilities |