summaryrefslogtreecommitdiff
path: root/mali_kbase/mali_kbase_mem_linux.c
diff options
context:
space:
mode:
authorSiddharth Kapoor <ksiddharth@google.com>2022-01-07 19:09:01 +0800
committerSiddharth Kapoor <ksiddharth@google.com>2022-01-07 19:09:01 +0800
commit0207d6c3b7a2002f15c60d08617e956faf5ba90c (patch)
treeeae0afe608a70b25f64e959db2b782fb33f89160 /mali_kbase/mali_kbase_mem_linux.c
parent0c596dc70431fa2c70021fa1685e3efc969a852d (diff)
downloadgpu-0207d6c3b7a2002f15c60d08617e956faf5ba90c.tar.gz
Mali Valhall Android DDK r35p0 KMD
Provenance: 3e260085ac (collaborate/EAC/v_r35p0) VX504X08X-BU-00000-r35p0-01eac0 - Valhall Android DDK VX504X08X-BU-60000-r35p0-01eac0 - Valhall Android Document Bundle VX504X08X-DC-11001-r35p0-01eac0 - Valhall Android DDK Software Errata VX504X08X-SW-99006-r35p0-01eac0 - Valhall Android Renderscript AOSP parts Signed-off-by: Siddharth Kapoor <ksiddharth@google.com> Change-Id: Id9ef73da49680e2935a827c40d54169545f7162e
Diffstat (limited to 'mali_kbase/mali_kbase_mem_linux.c')
-rw-r--r--mali_kbase/mali_kbase_mem_linux.c10
1 files changed, 9 insertions, 1 deletions
diff --git a/mali_kbase/mali_kbase_mem_linux.c b/mali_kbase/mali_kbase_mem_linux.c
index 527bec4..d252373 100644
--- a/mali_kbase/mali_kbase_mem_linux.c
+++ b/mali_kbase/mali_kbase_mem_linux.c
@@ -1029,7 +1029,7 @@ int kbase_mem_do_sync_imported(struct kbase_context *kctx,
struct kbase_va_region *reg, enum kbase_sync_type sync_fn)
{
int ret = -EINVAL;
- struct dma_buf *dma_buf;
+ struct dma_buf __maybe_unused *dma_buf;
enum dma_data_direction dir = DMA_BIDIRECTIONAL;
lockdep_assert_held(&kctx->reg_lock);
@@ -3214,8 +3214,12 @@ static unsigned long get_queue_doorbell_pfn(struct kbase_device *kbdev,
* assigned one, otherwise a dummy page. Always return the
* dummy page in no mali builds.
*/
+#if IS_ENABLED(CONFIG_MALI_NO_MALI)
+ return PFN_DOWN(as_phys_addr_t(kbdev->csf.dummy_db_page));
+#else
if (queue->doorbell_nr == KBASEP_USER_DB_NR_INVALID)
return PFN_DOWN(as_phys_addr_t(kbdev->csf.dummy_db_page));
+#endif
return (PFN_DOWN(kbdev->reg_start + CSF_HW_DOORBELL_PAGE_OFFSET +
(u64)queue->doorbell_nr * CSF_HW_DOORBELL_PAGE_SIZE));
}
@@ -3461,8 +3465,12 @@ static vm_fault_t kbase_csf_user_reg_vm_fault(struct vm_fault *vmf)
/* Don't map in the actual register page if GPU is powered down.
* Always map in the dummy page in no mali builds.
*/
+#if IS_ENABLED(CONFIG_MALI_NO_MALI)
+ pfn = PFN_DOWN(as_phys_addr_t(kbdev->csf.dummy_user_reg_page));
+#else
if (!kbdev->pm.backend.gpu_powered)
pfn = PFN_DOWN(as_phys_addr_t(kbdev->csf.dummy_user_reg_page));
+#endif
ret = mgm_dev->ops.mgm_vmf_insert_pfn_prot(mgm_dev,
KBASE_MEM_GROUP_CSF_FW, vma,