From f82943be7ba1450d5bad38be213ecf6b593bc5db Mon Sep 17 00:00:00 2001 From: Michael Bestas Date: Sat, 13 Aug 2022 04:25:09 +0300 Subject: [PATCH] tegu: Copy touch modules to vendor_kernel_boot Makes touch work in recovery syna_touch requires heatmap & goog_touch_interface symbols Co-authored-by: Nicholas Lim Co-authored-by: LuK1337 Change-Id: Iaa5a158af827732b13ab79b60bed2f319ce56391 --- BoardConfigLineage.mk | 6 ++++++ modules.blocklist.vendor_kernel_boot | 3 +++ modules.load.vendor_kernel_boot | 3 +++ tegu/Android.bp | 11 +++++++++++ tegu/device-lineage.mk | 4 ++++ tegu/init.recovery.touch.rc | 4 ++++ 6 files changed, 31 insertions(+) create mode 100644 modules.blocklist.vendor_kernel_boot create mode 100644 modules.load.vendor_kernel_boot create mode 100644 tegu/Android.bp create mode 100644 tegu/init.recovery.touch.rc diff --git a/BoardConfigLineage.mk b/BoardConfigLineage.mk index eadedb9..4c3a41b 100644 --- a/BoardConfigLineage.mk +++ b/BoardConfigLineage.mk @@ -3,3 +3,9 @@ # SPDX-FileCopyrightText: 2021-2024 The Calyx Institute # SPDX-License-Identifier: Apache-2.0 # + +# Kernel modules +BOARD_VENDOR_KERNEL_RAMDISK_KERNEL_MODULES_BLOCKLIST_FILE := $(DEVICE_PATH)/modules.blocklist.vendor_kernel_boot +BOARD_VENDOR_KERNEL_RAMDISK_KERNEL_MODULES_LOAD_RAW := $(strip $(shell cat $(DEVICE_PATH)/modules.load.vendor_kernel_boot)) +BOARD_VENDOR_KERNEL_RAMDISK_KERNEL_MODULES_LOAD += $(BOARD_VENDOR_KERNEL_RAMDISK_KERNEL_MODULES_LOAD_RAW) +BOARD_VENDOR_KERNEL_RAMDISK_KERNEL_MODULES += $(addprefix $(KERNEL_MODULE_DIR)/, $(notdir $(BOARD_VENDOR_KERNEL_RAMDISK_KERNEL_MODULES_LOAD_RAW))) diff --git a/modules.blocklist.vendor_kernel_boot b/modules.blocklist.vendor_kernel_boot new file mode 100644 index 0000000..6073fb1 --- /dev/null +++ b/modules.blocklist.vendor_kernel_boot @@ -0,0 +1,3 @@ +blocklist heatmap +blocklist goog_touch_interface +blocklist syna_touch diff --git a/modules.load.vendor_kernel_boot b/modules.load.vendor_kernel_boot new file mode 100644 index 0000000..32393ed --- /dev/null +++ b/modules.load.vendor_kernel_boot @@ -0,0 +1,3 @@ +extra/private/google-modules/touch/common/heatmap.ko +extra/private/google-modules/touch/common/goog_touch_interface.ko +extra/private/google-modules/touch/synaptics/syna_gtd/syna_touch.ko diff --git a/tegu/Android.bp b/tegu/Android.bp new file mode 100644 index 0000000..20de133 --- /dev/null +++ b/tegu/Android.bp @@ -0,0 +1,11 @@ +// +// SPDX-FileCopyrightText: 2024 The LineageOS Project +// SPDX-License-Identifier: Apache-2.0 +// + +prebuilt_etc { + name: "init.recovery.tegu.touch.rc", + src: "init.recovery.touch.rc", + sub_dir: "init", + recovery: true, +} diff --git a/tegu/device-lineage.mk b/tegu/device-lineage.mk index 462e392..1633f11 100644 --- a/tegu/device-lineage.mk +++ b/tegu/device-lineage.mk @@ -12,3 +12,7 @@ PRODUCT_PACKAGES += \ PixelDisplayServiceOverlayTegu TARGET_VENDOR_PROP += $(DEVICE_PATH)/$(DEVICE_CODENAME)/vendor.prop + +# Init +PRODUCT_PACKAGES += \ + init.recovery.tegu.touch.rc diff --git a/tegu/init.recovery.touch.rc b/tegu/init.recovery.touch.rc new file mode 100644 index 0000000..a5a8071 --- /dev/null +++ b/tegu/init.recovery.touch.rc @@ -0,0 +1,4 @@ +on init + insmod /lib/modules/heatmap.ko + insmod /lib/modules/goog_touch_interface.ko + insmod /lib/modules/syna_touch.ko