platform/x86: silead_dmi: Add Teclast X3 Plus tablet support
authorAlberto Ponces <ponces26@gmail.com>
Tue, 23 Jan 2018 18:33:38 +0000 (18:33 +0000)
committerDarren Hart (VMware) <dvhart@infradead.org>
Thu, 25 Jan 2018 22:29:58 +0000 (14:29 -0800)
Add touchscreen platform data for the Teclast X3 Plus tablet.

Reviewed-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Alberto Ponces <ponces26@gmail.com>
Signed-off-by: Darren Hart (VMware) <dvhart@infradead.org>
drivers/platform/x86/silead_dmi.c

index 048a82f..3a62409 100644 (file)
@@ -263,6 +263,20 @@ static const struct silead_ts_dmi_data teclast_x98plus2_data = {
        .properties     = teclast_x98plus2_props,
 };
 
+static const struct property_entry teclast_x3_plus_props[] = {
+       PROPERTY_ENTRY_U32("touchscreen-size-x", 1980),
+       PROPERTY_ENTRY_U32("touchscreen-size-y", 1500),
+       PROPERTY_ENTRY_STRING("firmware-name", "gsl1680-teclast-x3-plus.fw"),
+       PROPERTY_ENTRY_U32("silead,max-fingers", 10),
+       PROPERTY_ENTRY_BOOL("silead,home-button"),
+       { }
+};
+
+static const struct silead_ts_dmi_data teclast_x3_plus_data = {
+       .acpi_name      = "MSSL1680:00",
+       .properties     = teclast_x3_plus_props,
+};
+
 static const struct dmi_system_id silead_ts_dmi_table[] = {
        {
                /* CUBE iwork8 Air */
@@ -423,6 +437,15 @@ static const struct dmi_system_id silead_ts_dmi_table[] = {
                        DMI_MATCH(DMI_PRODUCT_NAME, "X98 Plus II"),
                },
        },
+       {
+               /* Teclast X3 Plus */
+               .driver_data = (void *)&teclast_x3_plus_data,
+               .matches = {
+                       DMI_MATCH(DMI_SYS_VENDOR, "TECLAST"),
+                       DMI_MATCH(DMI_PRODUCT_NAME, "X3 Plus"),
+                       DMI_MATCH(DMI_BOARD_NAME, "X3 Plus"),
+               },
+       },
        { },
 };