OSDN Git Service

Support various silead dmi touchscreen devices kernel-4.18
authorRobin Gawenda <gawendauni@googlemail.com>
Wed, 14 Nov 2018 04:34:00 +0000 (12:34 +0800)
committerChih-Wei Huang <cwhuang@linux.org.tw>
Thu, 15 Nov 2018 06:32:12 +0000 (14:32 +0800)
This patch supports the Trekstor Primetab T13B tablet and other devices
that have silead dmi touchscreens.

arch/x86/configs/android-x86_64_defconfig
arch/x86/configs/android-x86_defconfig
drivers/platform/x86/silead_dmi.c

index fd43061..3f4c7af 100644 (file)
@@ -6277,7 +6277,7 @@ CONFIG_DV11P_TABLET=m
 # CONFIG_INTEL_PUNIT_IPC is not set
 # CONFIG_MLX_PLATFORM is not set
 # CONFIG_INTEL_TURBO_MAX_3 is not set
-# CONFIG_SILEAD_DMI is not set
+CONFIG_SILEAD_DMI=y
 CONFIG_PMC_ATOM=y
 CONFIG_CHROME_PLATFORMS=y
 CONFIG_CHROMEOS_LAPTOP=m
index 8b11642..a1e84b3 100644 (file)
@@ -6432,7 +6432,7 @@ CONFIG_SURFACE_3_POWER_OPREGION=m
 CONFIG_DV11P_TABLET=m
 # CONFIG_INTEL_PUNIT_IPC is not set
 # CONFIG_MLX_PLATFORM is not set
-# CONFIG_SILEAD_DMI is not set
+CONFIG_SILEAD_DMI=y
 CONFIG_PMC_ATOM=y
 CONFIG_CHROME_PLATFORMS=y
 CONFIG_CHROMEOS_LAPTOP=m
index 853a7ce..9c71b31 100644 (file)
@@ -279,6 +279,22 @@ static const struct silead_ts_dmi_data trekstor_primebook_c13_data = {
        .properties     = trekstor_primebook_c13_props,
 };
 
+static const struct property_entry trekstor_primetab_t13b_props[] = {
+       PROPERTY_ENTRY_U32("touchscreen-size-x", 2500),
+       PROPERTY_ENTRY_U32("touchscreen-size-y", 1900),
+       PROPERTY_ENTRY_STRING("firmware-name",
+                             "gsl1680-trekstor-primetab-t13b.fw"),
+       PROPERTY_ENTRY_U32("silead,max-fingers", 10),
+       PROPERTY_ENTRY_BOOL("silead,home-button"),
+       PROPERTY_ENTRY_BOOL("touchscreen-inverted-y"),
+       { }
+};
+
+static const struct silead_ts_dmi_data trekstor_primetab_t13b_data = {
+       .acpi_name  = "MSSL1680:00",
+       .properties = trekstor_primetab_t13b_props,
+};
+
 static const struct property_entry teclast_x98plus2_props[] = {
        PROPERTY_ENTRY_U32("touchscreen-size-x", 2048),
        PROPERTY_ENTRY_U32("touchscreen-size-y", 1280),
@@ -510,6 +526,14 @@ static const struct dmi_system_id silead_ts_dmi_table[] = {
                },
        },
        {
+               /* Trekstor Primetab T13B */
+               .driver_data = (void *)&trekstor_primetab_t13b_data,
+               .matches = {
+                       DMI_MATCH(DMI_SYS_VENDOR, "TREKSTOR"),
+                       DMI_MATCH(DMI_PRODUCT_NAME, "Primetab T13B"),
+               },
+       },
+       {
                /* Teclast X98 Plus II */
                .driver_data = (void *)&teclast_x98plus2_data,
                .matches = {