diff --git a/build.config.mtk.aarch64.mgk b/build.config.mtk.aarch64.mgk index 074964810fcd..60f109b2510c 100644 --- a/build.config.mtk.aarch64.mgk +++ b/build.config.mtk.aarch64.mgk @@ -1,5 +1,5 @@ -. ${ROOT_DIR}/${KERNEL_DIR}/build.config.common -. ${ROOT_DIR}/${KERNEL_DIR}/build.config.aarch64 +. ${ROOT_DIR}/${KERNEL_DIR}/build.config.constants +KCFLAGS="${KCFLAGS} -D__ANDROID_COMMON_KERNEL__" DEVICE_MODULES_PATH="\$(srctree)/\$(DEVICE_MODULES_REL_DIR)" DEVCIE_MODULES_INCLUDE="-I\$(DEVICE_MODULES_PATH)/include" diff --git a/drivers/gpu/drm/mediatek/mediatek_v2/mi_disp/mi_disp_file.c b/drivers/gpu/drm/mediatek/mediatek_v2/mi_disp/mi_disp_file.c index 445b287d04ae..da79053e7210 100755 --- a/drivers/gpu/drm/mediatek/mediatek_v2/mi_disp/mi_disp_file.c +++ b/drivers/gpu/drm/mediatek/mediatek_v2/mi_disp/mi_disp_file.c @@ -161,16 +161,18 @@ ssize_t mi_disp_read(struct file *filp, char __user *buffer, e->offset, copy_length)) { if (ret == 0) ret = -EFAULT; - goto put_back_event; + spin_lock_irq(&df->client_spinlock); + client->event_space -= length; + list_add(&e->link, &client->event_list); + spin_unlock_irq(&df->client_spinlock); + break; } ret += copy_length; if (partial_read) { e->offset += copy_length; -put_back_event: - pr_debug("putting event back!"); spin_lock_irq(&df->client_spinlock); - client->event_space -= length; + client->event_space -= copy_length; list_add(&e->link, &client->event_list); spin_unlock_irq(&df->client_spinlock); wake_up_interruptible(&client->event_wait);