Procházet zdrojové kódy

Merge c164ae51f3013941ad6d120a9e40fd0bbdce9cb5 on remote branch

Change-Id: I432ad2d19ce13bca7a750471b16bec201f3df577
Linux Build Service Account před 1 rokem
rodič
revize
fadace3ad4
6 změnil soubory, kde provedl 169 přidání a 4 odebrání
  1. 37 3
      Android.mk
  2. 18 1
      BUILD.bazel
  3. 49 0
      target.bzl
  4. 3 0
      touch_driver_board.mk
  5. 3 0
      touch_driver_product.mk
  6. 59 0
      touch_modules.bzl

+ 37 - 3
Android.mk

@@ -9,7 +9,9 @@ endif
 
 ifeq ($(TOUCH_DLKM_ENABLE),  true)
        TOUCH_SELECT := CONFIG_MSM_TOUCH=m
-
+       BOARD_OPENSOURCE_DIR ?= vendor/qcom/opensource
+       BOARD_COMMON_DIR ?= device/qcom/common
+       
        LOCAL_PATH := $(call my-dir)
        ifeq ($(TARGET_BOARD_PLATFORM), pineapple)
               LOCAL_MODULE_DDK_BUILD := true
@@ -19,16 +21,24 @@ ifeq ($(TOUCH_DLKM_ENABLE),  true)
               LOCAL_MODULE_DDK_BUILD := true
        endif
 
+       ifeq ($(TARGET_BOARD_PLATFORM), pitti)
+              LOCAL_MODULE_DDK_BUILD := true
+       endif
+
+       ifeq ($(TARGET_BOARD_PLATFORM), monaco)
+              LOCAL_MODULE_DDK_BUILD := true
+       endif
+
        include $(CLEAR_VARS)
 
        # This makefile is only for DLKM
        ifneq ($(findstring vendor,$(LOCAL_PATH)),)
 
        ifneq ($(findstring opensource,$(LOCAL_PATH)),)
-               TOUCH_BLD_DIR := $(shell pwd)/vendor/qcom/opensource/touch-drivers
+               TOUCH_BLD_DIR := $(shell pwd)/$(BOARD_OPENSOURCE_DIR)/touch-drivers
        endif # opensource
 
-       DLKM_DIR := $(TOP)/device/qcom/common/dlkm
+       DLKM_DIR := $(TOP)/$(BOARD_COMMON_DIR)/dlkm
 
        LOCAL_ADDITIONAL_DEPENDENCIES := $(wildcard $(LOCAL_PATH)/**/*) $(wildcard $(LOCAL_PATH)/*)
 
@@ -268,6 +278,30 @@ else ifeq ($(TARGET_BOARD_PLATFORM), trinket)
        include $(DLKM_DIR)/Build_external_kernelmodule.mk
        ###########################################################
 
+else ifeq ($(TARGET_BOARD_PLATFORM), pitti)
+
+       ###########################################################
+       include $(CLEAR_VARS)
+       LOCAL_SRC_FILES   := $(wildcard $(LOCAL_PATH)/**/*) $(wildcard $(LOCAL_PATH)/*)
+       LOCAL_MODULE              := focaltech_fts.ko
+       LOCAL_MODULE_KBUILD_NAME  := focaltech_fts.ko
+       LOCAL_MODULE_TAGS         := optional
+       #LOCAL_MODULE_DEBUG_ENABLE := true
+       LOCAL_MODULE_PATH         := $(KERNEL_MODULES_OUT)
+       include $(DLKM_DIR)/Build_external_kernelmodule.mk
+       ###########################################################
+
+       ###########################################################
+       include $(CLEAR_VARS)
+       LOCAL_SRC_FILES   := $(wildcard $(LOCAL_PATH)/**/*) $(wildcard $(LOCAL_PATH)/*)
+       LOCAL_MODULE              := goodix_ts.ko
+       LOCAL_MODULE_KBUILD_NAME  := goodix_ts.ko
+       LOCAL_MODULE_TAGS         := optional
+       #LOCAL_MODULE_DEBUG_ENABLE := true
+       LOCAL_MODULE_PATH         := $(KERNEL_MODULES_OUT)
+       include $(DLKM_DIR)/Build_external_kernelmodule.mk
+       ###########################################################
+
 else
 
        ###########################################################

+ 18 - 1
BUILD.bazel

@@ -47,9 +47,26 @@ ddk_headers(
     includes = ["config"]
 )
 
+ddk_headers(
+    name = "pt_headers",
+    hdrs = glob([
+            "pt/*.h"
+        ]
+    )
+)
+
+ddk_headers(
+    name = "raydium_headers",
+    hdrs = glob([
+            "raydium/*.h",
+            "raydium/chip_raydium/*.h"
+        ]
+    )
+)
+
 ddk_headers(
     name = "touch_drivers_headers",
-    hdrs = [":goodix_ts_headers", ":nt36xxx_headers", ":focaltech_headers", ":synaptics_tcm_headers", ":config_headers"]
+    hdrs = [":goodix_ts_headers", ":nt36xxx_headers", ":focaltech_headers", ":synaptics_tcm_headers", ":pt_headers", ":raydium_headers", ":config_headers"]
 )
 
 load(":target.bzl", "define_touch_target")

+ 49 - 0
target.bzl

@@ -46,9 +46,58 @@ def define_blair(t,v):
         ],
 )
 
+def define_pitti(t,v):
+     define_target_variant_modules(
+        target = t,
+        variant = v,
+        registry = touch_driver_modules,
+        modules = [
+            "focaltech_fts",
+            "goodix_ts"
+        ],
+        config_options = [
+            "TOUCH_DLKM_ENABLE",
+            "CONFIG_ARCH_PITTI",
+            "CONFIG_MSM_TOUCH",
+            "CONFIG_TOUCH_FOCALTECH",
+            "CONFIG_TOUCHSCREEN_GOODIX_BRL"
+        ],
+)
+
+def define_monaco(t,v):
+    define_target_variant_modules(
+        target = t,
+        variant = v,
+        registry = touch_driver_modules,
+        modules = [
+            "pt_ts",
+            "pt_i2c",
+            "pt_device_access",
+            "pt_debug",
+            "raydium_ts",
+        ],
+        config_options = [
+            "TOUCH_DLKM_ENABLE",
+            "CONFIG_ARCH_MONACO",
+            "CONFIG_MSM_TOUCH",
+            "CONFIG_TOUCHSCREEN_PARADE",
+            "CONFIG_TOUCHSCREEN_PARADE_DEVICETREE_SUPPORT",
+            "CONFIG_TOUCHSCREEN_PARADE_I2C",
+            "CONFIG_TOUCHSCREEN_PARADE_DEVICE_ACCESS",
+            "CONFIG_TOUCHSCREEN_PARADE_BUTTON",
+            "CONFIG_TOUCHSCREEN_PARADE_PROXIMITY",
+            "CONFIG_TOUCHSCREEN_PARADE_DEBUG_MDL",
+            "CONFIG_TOUCHSCREEN_RM_TS",
+        ],
+)
+
 def define_touch_target():
     for (t, v) in get_all_la_variants() + get_all_le_variants() + get_all_lxc_variants():
         if t == "blair":
             define_blair(t, v)
+        elif t == "pitti":
+            define_pitti(t, v)
+        elif t == "monaco":
+            define_monaco(t, v)
         else:
             define_pineapple(t, v)

+ 3 - 0
touch_driver_board.mk

@@ -35,6 +35,9 @@ ifeq ($(TOUCH_DLKM_ENABLE),  true)
                                         $(KERNEL_MODULES_OUT)/nt36xxx-i2c.ko
                         else ifeq ($(TARGET_BOARD_PLATFORM), trinket)
                                 BOARD_VENDOR_KERNEL_MODULES += $(KERNEL_MODULES_OUT)/synaptics_tcm_ts.ko
+                        else ifeq ($(TARGET_BOARD_PLATFORM), pitti)
+                                BOARD_VENDOR_KERNEL_MODULES += $(KERNEL_MODULES_OUT)/focaltech_fts.ko \
+                                        $(KERNEL_MODULES_OUT)/goodix_ts.ko
                         else
                                 BOARD_VENDOR_KERNEL_MODULES += $(KERNEL_MODULES_OUT)/nt36xxx-i2c.ko \
                                         $(KERNEL_MODULES_OUT)/goodix_ts.ko \

+ 3 - 0
touch_driver_product.mk

@@ -33,6 +33,9 @@ ifeq ($(TOUCH_DLKM_ENABLE),  true)
                         $(KERNEL_MODULES_OUT)/nt36xxx-i2c.ko
         else ifeq ($(TARGET_BOARD_PLATFORM), trinket)
                 PRODUCT_PACKAGES += $(KERNEL_MODULES_OUT)/synaptics_tcm_ts.ko
+        else ifeq ($(TARGET_BOARD_PLATFORM), pitti)
+                PRODUCT_PACKAGES += $(KERNEL_MODULES_OUT)/focaltech_fts.ko \
+                        $(KERNEL_MODULES_OUT)/goodix_ts.ko
         else
                 PRODUCT_PACKAGES += $(KERNEL_MODULES_OUT)/nt36xxx-i2c.ko \
                         $(KERNEL_MODULES_OUT)/goodix_ts.ko \

+ 59 - 0
touch_modules.bzl

@@ -85,3 +85,62 @@ module_entry(
             "dummy_touch/dummy_touch.c"
     ]
 )
+
+#define ddk_module() for pt_ts
+module_entry(
+    name = "pt_ts",
+    config_option = "CONFIG_TOUCHSCREEN_PARADE",
+    srcs = [
+            "pt/pt_core.c",
+            "pt/pt_devtree.c",
+            "pt/pt_mt_common.c",
+            "pt/pt_platform.c",
+            "pt/pt_btn.c",
+            "pt/pt_mtb.c",
+            "pt/pt_proximity.c"
+    ]
+)
+
+#define ddk_module() for pt_i2c
+module_entry(
+    name = "pt_i2c",
+    config_option = "CONFIG_TOUCHSCREEN_PARADE_I2C",
+    srcs = [
+            "pt/pt_i2c.c"
+    ]
+)
+
+#define ddk_module() for pt_device_access
+module_entry(
+    name = "pt_device_access",
+    config_option = "CONFIG_TOUCHSCREEN_PARADE_DEVICE_ACCESS",
+    srcs = [
+            "pt/pt_device_access.c"
+    ]
+)
+
+#define ddk_module() for pt_debug
+module_entry(
+    name = "pt_debug",
+    config_option = "CONFIG_TOUCHSCREEN_PARADE_DEBUG_MDL",
+    srcs = [
+            "pt/pt_debug.c"
+    ]
+)
+
+#define ddk_module() for raydium_ts
+module_entry(
+    name = "raydium_ts",
+    config_option = "CONFIG_TOUCHSCREEN_RM_TS",
+    srcs = [
+            "raydium/drv_interface.c",
+            "raydium/raydium_driver.c",
+            "raydium/raydium_fw_update.c",
+            "raydium/raydium_selftest.c",
+            "raydium/raydium_sysfs.c",
+            "raydium/chip_raydium/f303_ic_control.c",
+            "raydium/chip_raydium/f303_ic_test.c",
+            "raydium/chip_raydium/ic_drv_global.c",
+            "raydium/chip_raydium/ic_drv_interface.c"
+    ]
+)