From f8a617fa1f07c512ebe0cc55ff470e1236c63b6c Mon Sep 17 00:00:00 2001 From: Amit Kushwaha Date: Thu, 22 Apr 2021 21:49:21 +0530 Subject: [PATCH] msm: kgsl: Fix compilation failure for 32-bit platform Changes to fix compilation failures for implicit declaration of readq and writeq_relaxed for 32 bit platform, warning for unused result and undefined symbol for __aeabi_uldivmod. Change-Id: I1382d3faae6e67945d37509046e60e9061bac871 Signed-off-by: Amit Kushwaha --- drivers/gpu/msm/adreno.c | 4 ++-- drivers/gpu/msm/adreno_dispatch.c | 4 ++-- drivers/gpu/msm/adreno_hwsched.c | 4 ++-- drivers/gpu/msm/kgsl.c | 6 ++++-- drivers/gpu/msm/kgsl_iommu.c | 1 + 5 files changed, 11 insertions(+), 8 deletions(-) diff --git a/drivers/gpu/msm/adreno.c b/drivers/gpu/msm/adreno.c index 19361dfacda0..fadbb08d05cf 100644 --- a/drivers/gpu/msm/adreno.c +++ b/drivers/gpu/msm/adreno.c @@ -3537,8 +3537,8 @@ static void adreno_power_stats(struct kgsl_device *device, } else { /* clock sourced from GFX3D */ s64 freq = kgsl_pwrctrl_active_freq(pwr) / 1000000; - - stats->busy_time = gpu_busy / freq; + do_div(gpu_busy, freq); + stats->busy_time = gpu_busy; } if (device->pwrctrl.bus_control) { diff --git a/drivers/gpu/msm/adreno_dispatch.c b/drivers/gpu/msm/adreno_dispatch.c index 32c42c75204d..34f4a5ad37a3 100644 --- a/drivers/gpu/msm/adreno_dispatch.c +++ b/drivers/gpu/msm/adreno_dispatch.c @@ -1,6 +1,6 @@ // SPDX-License-Identifier: GPL-2.0-only /* - * Copyright (c) 2013-2020, The Linux Foundation. All rights reserved. + * Copyright (c) 2013-2021, The Linux Foundation. All rights reserved. */ #include @@ -2977,7 +2977,7 @@ int adreno_dispatcher_init(struct adreno_device *adreno_dev) if (ret) return ret; - sysfs_create_files(&device->dev->kobj, _preempt_attr_list); + WARN_ON(sysfs_create_files(&device->dev->kobj, _preempt_attr_list)); mutex_init(&dispatcher->mutex); diff --git a/drivers/gpu/msm/adreno_hwsched.c b/drivers/gpu/msm/adreno_hwsched.c index 89d9050b8d9b..756630493d1a 100644 --- a/drivers/gpu/msm/adreno_hwsched.c +++ b/drivers/gpu/msm/adreno_hwsched.c @@ -1,6 +1,6 @@ // SPDX-License-Identifier: GPL-2.0-only /* - * Copyright (c) 2020, The Linux Foundation. All rights reserved. + * Copyright (c) 2020-2021, The Linux Foundation. All rights reserved. */ #include "adreno.h" @@ -1371,7 +1371,7 @@ void adreno_hwsched_init(struct adreno_device *adreno_dev) init_llist_head(&hwsched->requeue[i]); } - sysfs_create_files(&device->dev->kobj, _hwsched_attr_list); + WARN_ON(sysfs_create_files(&device->dev->kobj, _hwsched_attr_list)); } void adreno_hwsched_mark_drawobj(struct adreno_device *adreno_dev, diff --git a/drivers/gpu/msm/kgsl.c b/drivers/gpu/msm/kgsl.c index 24f45d62fbda..e543e3af092d 100644 --- a/drivers/gpu/msm/kgsl.c +++ b/drivers/gpu/msm/kgsl.c @@ -3212,6 +3212,7 @@ static inline bool check_full_flush(size_t size, int op) return false; } #else +#include /* Support full flush if the size is bigger than the threshold */ static inline bool check_full_flush(size_t size, int op) { @@ -4288,8 +4289,9 @@ static int _register_device(struct kgsl_device *device) set_dma_ops(device->dev, NULL); - kobject_init_and_add(&device->gpu_sysfs_kobj, &kgsl_gpu_sysfs_ktype, - kernel_kobj, "gpu"); + if (kobject_init_and_add(&device->gpu_sysfs_kobj, &kgsl_gpu_sysfs_ktype, + kernel_kobj, "gpu")) + dev_err(device->dev, "Unable to add sysfs for gpu\n"); return 0; } diff --git a/drivers/gpu/msm/kgsl_iommu.c b/drivers/gpu/msm/kgsl_iommu.c index 31e498529d92..c572a3b7ffc6 100644 --- a/drivers/gpu/msm/kgsl_iommu.c +++ b/drivers/gpu/msm/kgsl_iommu.c @@ -15,6 +15,7 @@ #include #include #include +#include #include "adreno.h" #include "kgsl_device.h"