diff --git a/device/testing/linux-xiaomi-lavender/0007-nvt-touch-f7a-unbreak-libinput.patch b/device/testing/linux-xiaomi-lavender/0007-nvt-touch-f7a-unbreak-libinput.patch
new file mode 100644
index 0000000000000000000000000000000000000000..b63deec5a4e51e11f17f3baa2d080e2880c4e11d
--- /dev/null
+++ b/device/testing/linux-xiaomi-lavender/0007-nvt-touch-f7a-unbreak-libinput.patch
@@ -0,0 +1,60 @@
+From 674e10330546921dca7308fad44f593741f8db23 Mon Sep 17 00:00:00 2001
+From: Danct12 <danct12@disroot.org>
+Date: Tue, 17 Mar 2020 10:16:31 +0700
+Subject: [PATCH] driver: touchscreen: nvt_touch_f7a: do not report
+ ABS_MT_TOUCH_MAJOR/ABS_MT_WIDTH_MAJOR
+
+It seems touchscreen chip can only report touch pressure from 0 to 255,
+which should be ABS_MT_PRESSURE according to
+https://www.kernel.org/doc/Documentation/input/multi-touch-protocol.txt.
+
+Do not set same values to ABS_MT_TOUCH_MAJOR/ABS_MT_WIDTH_MAJOR to avoid
+breaking libinput and software.
+
+Thanks @NotKit!
+
+Signed-off-by: Danct12 <danct12@disroot.org>
+---
+ drivers/input/touchscreen/nvt_touch_f7a/nt36xxx.c | 8 ++++----
+ 1 file changed, 4 insertions(+), 4 deletions(-)
+
+diff --git a/drivers/input/touchscreen/nvt_touch_f7a/nt36xxx.c b/drivers/input/touchscreen/nvt_touch_f7a/nt36xxx.c
+index 9a3c1638b6a2..ad4dda241145 100644
+--- a/drivers/input/touchscreen/nvt_touch_f7a/nt36xxx.c
++++ b/drivers/input/touchscreen/nvt_touch_f7a/nt36xxx.c
+@@ -1030,7 +1030,7 @@ static void nvt_ts_work_func(struct work_struct *work)
+ 			input_report_abs(ts->input_dev, ABS_MT_POSITION_X, input_x);
+ 			input_report_abs(ts->input_dev, ABS_MT_POSITION_Y, input_y);
+ #if ENABLE_TOUCH_SZIE
+-			input_report_abs(ts->input_dev, ABS_MT_TOUCH_MAJOR, input_w);
++			//input_report_abs(ts->input_dev, ABS_MT_TOUCH_MAJOR, input_w);
+ #endif
+ 			input_report_abs(ts->input_dev, ABS_MT_PRESSURE, input_p);
+ 
+@@ -1048,7 +1048,7 @@ static void nvt_ts_work_func(struct work_struct *work)
+ 		if (press_id[i] != 1) {
+ 			input_mt_slot(ts->input_dev, i);
+ #if ENABLE_TOUCH_SZIE
+-			input_report_abs(ts->input_dev, ABS_MT_TOUCH_MAJOR, 0);
++			//input_report_abs(ts->input_dev, ABS_MT_TOUCH_MAJOR, 0);
+ #endif
+ 			input_report_abs(ts->input_dev, ABS_MT_PRESSURE, 0);
+ 			input_mt_report_slot_state(ts->input_dev, MT_TOOL_FINGER, false);
+@@ -1427,7 +1427,7 @@ static int32_t nvt_ts_probe(struct i2c_client *client, const struct i2c_device_i
+ 
+ #if TOUCH_MAX_FINGER_NUM > 1
+ #if ENABLE_TOUCH_SZIE
+-	input_set_abs_params(ts->input_dev, ABS_MT_TOUCH_MAJOR, 0, 255, 0, 0);
++	//input_set_abs_params(ts->input_dev, ABS_MT_TOUCH_MAJOR, 0, 255, 0, 0);
+ #endif
+ 	input_set_abs_params(ts->input_dev, ABS_MT_POSITION_X, 0, ts->abs_x_max-1, 0, 0);
+ 	input_set_abs_params(ts->input_dev, ABS_MT_POSITION_Y, 0, ts->abs_y_max-1, 0, 0);
+@@ -1708,7 +1708,7 @@ static int32_t nvt_ts_suspend(struct device *dev)
+ 	for (i = 0; i < ts->max_touch_num; i++) {
+ 		input_mt_slot(ts->input_dev, i);
+ #if ENABLE_TOUCH_SZIE
+-		input_report_abs(ts->input_dev, ABS_MT_TOUCH_MAJOR, 0);
++		//input_report_abs(ts->input_dev, ABS_MT_TOUCH_MAJOR, 0);
+ #endif
+ 		input_report_abs(ts->input_dev, ABS_MT_PRESSURE, 0);
+ 		input_mt_report_slot_state(ts->input_dev, MT_TOOL_FINGER, 0);
diff --git a/device/testing/linux-xiaomi-lavender/APKBUILD b/device/testing/linux-xiaomi-lavender/APKBUILD
index 12f614b30c9093d7f03081ee8752d2566cf66f78..06fae43601ea117a9cb63019e0a6c6f6f703dc37 100644
--- a/device/testing/linux-xiaomi-lavender/APKBUILD
+++ b/device/testing/linux-xiaomi-lavender/APKBUILD
@@ -5,7 +5,7 @@
 
 pkgname=linux-xiaomi-lavender
 pkgver=4.4.156
-pkgrel=3
+pkgrel=4
 pkgdesc="Xiaomi Redmi Note 7 kernel fork"
 arch="aarch64"
 _carch="arm64"
@@ -35,6 +35,7 @@ source="
 	0004-Reduce-battery-spam-in-dmesg.patch
 	0005-Adds-and-sets-BGRA-as-default.patch
 	0006-mdss-panel-to-fb-var.patch
+	0007-nvt-touch-f7a-unbreak-libinput.patch
 "
 
 builddir="$srcdir/$_repository-$_commit"
@@ -65,4 +66,5 @@ a8713d22404a5e2c0d2add3deb4cb033e972bd1983e10f1557d4de640c1329af50be2bfd92dc3cf7
 9ce867c4254b537ef5d2485780c26b72da8a3a8767ba71557f3b48d6c550e0e14c8c3e575b31bf65d2878f08a8a4926e48a1c2f1be534bf80a7a57f58313b0fd  0003-Add-config-option-to-fix-bootloader-cmdline-args.patch
 066ac4b77388fd2001df227db216da9f435e06d29ce1be59d8a8923613f3390e154cb5b6cb7785614a3a4b12c01d9f1b84dfd09b884dede3fa6d0e5b1ddb9045  0004-Reduce-battery-spam-in-dmesg.patch
 f2a97a9500b6155a11f2341a8fd4b083ceb25a17d656c7975e34b9f3d8bacb495ae687f823db5fd07ddee27b2d95021f193bfadb5274185334255cda12bc85ce  0005-Adds-and-sets-BGRA-as-default.patch
-d5b868c64b8ebddcf74cb3aa478f30f0897af1e14e4fc42d977921104a6c568cc0bf36fc8a3b0f538cd3ca2ebf59244fdf23186a903259e5acc14d1c4ef4ccc3  0006-mdss-panel-to-fb-var.patch"
+d5b868c64b8ebddcf74cb3aa478f30f0897af1e14e4fc42d977921104a6c568cc0bf36fc8a3b0f538cd3ca2ebf59244fdf23186a903259e5acc14d1c4ef4ccc3  0006-mdss-panel-to-fb-var.patch
+e13adff827073edfaded0a34a1f913b7341069d062552f1444c3de390c3b3b08bf3cd4ad8cdf0f76c6be084ccc14469492a535a96022a0729ce56b3b09cfdfec  0007-nvt-touch-f7a-unbreak-libinput.patch"