diff options
author | Hans de Goede <hdegoede@redhat.com> | 2018-05-30 12:43:40 +0200 |
---|---|---|
committer | Andy Shevchenko <andriy.shevchenko@linux.intel.com> | 2018-06-01 16:49:09 +0200 |
commit | 3cd33db88e06547c89f3e5b30eac471bd9db3fc1 (patch) | |
tree | 1b7ad290df13cd0d08fab895adff491da4f7376f /drivers/platform | |
parent | platform/x86: silead_dmi: Add touchscreen info for the Jumper EZpad 6 Pro (diff) | |
download | linux-3cd33db88e06547c89f3e5b30eac471bd9db3fc1.tar.xz linux-3cd33db88e06547c89f3e5b30eac471bd9db3fc1.zip |
platform/x86: silead_dmi: Add info for the PoV mobii TAB-P800W (v2.0)
This commit adds the necessary device-properties to make the touchscreen
on Point of View mobii TAB-P800W (v2.0) tablets work.
Note that we already have an entry for the Point of View mobii
TAB-P800W (v2.1), that version uses a different digitizer and different
firmware, so the v2.0 version needs its own entry.
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Diffstat (limited to 'drivers/platform')
-rw-r--r-- | drivers/platform/x86/silead_dmi.c | 39 |
1 files changed, 34 insertions, 5 deletions
diff --git a/drivers/platform/x86/silead_dmi.c b/drivers/platform/x86/silead_dmi.c index d7a67a53195f..ca49deaa2336 100644 --- a/drivers/platform/x86/silead_dmi.c +++ b/drivers/platform/x86/silead_dmi.c @@ -141,7 +141,25 @@ static const struct silead_ts_dmi_data pipo_w2s_data = { .properties = pipo_w2s_props, }; -static const struct property_entry pov_mobii_wintab_p800w_props[] = { +static const struct property_entry pov_mobii_wintab_p800w_v20_props[] = { + PROPERTY_ENTRY_U32("touchscreen-min-x", 32), + PROPERTY_ENTRY_U32("touchscreen-min-y", 16), + PROPERTY_ENTRY_U32("touchscreen-size-x", 1692), + PROPERTY_ENTRY_U32("touchscreen-size-y", 1146), + PROPERTY_ENTRY_BOOL("touchscreen-swapped-x-y"), + PROPERTY_ENTRY_STRING("firmware-name", + "gsl3680-pov-mobii-wintab-p800w-v20.fw"), + PROPERTY_ENTRY_U32("silead,max-fingers", 10), + PROPERTY_ENTRY_BOOL("silead,home-button"), + { } +}; + +static const struct silead_ts_dmi_data pov_mobii_wintab_p800w_v20_data = { + .acpi_name = "MSSL1680:00", + .properties = pov_mobii_wintab_p800w_v20_props, +}; + +static const struct property_entry pov_mobii_wintab_p800w_v21_props[] = { PROPERTY_ENTRY_U32("touchscreen-size-x", 1800), PROPERTY_ENTRY_U32("touchscreen-size-y", 1150), PROPERTY_ENTRY_BOOL("touchscreen-swapped-x-y"), @@ -151,9 +169,9 @@ static const struct property_entry pov_mobii_wintab_p800w_props[] = { { } }; -static const struct silead_ts_dmi_data pov_mobii_wintab_p800w_data = { +static const struct silead_ts_dmi_data pov_mobii_wintab_p800w_v21_data = { .acpi_name = "MSSL1680:00", - .properties = pov_mobii_wintab_p800w_props, + .properties = pov_mobii_wintab_p800w_v21_props, }; static const struct property_entry itworks_tw891_props[] = { @@ -386,8 +404,19 @@ static const struct dmi_system_id silead_ts_dmi_table[] = { }, }, { - /* Point of View mobii wintab p800w */ - .driver_data = (void *)&pov_mobii_wintab_p800w_data, + /* Point of View mobii wintab p800w (v2.0) */ + .driver_data = (void *)&pov_mobii_wintab_p800w_v20_data, + .matches = { + DMI_MATCH(DMI_BOARD_VENDOR, "AMI Corporation"), + DMI_MATCH(DMI_BOARD_NAME, "Aptio CRB"), + DMI_MATCH(DMI_BIOS_VERSION, "3BAIR1014"), + /* Above matches are too generic, add bios-date match */ + DMI_MATCH(DMI_BIOS_DATE, "10/24/2014"), + }, + }, + { + /* Point of View mobii wintab p800w (v2.1) */ + .driver_data = (void *)&pov_mobii_wintab_p800w_v21_data, .matches = { DMI_MATCH(DMI_BOARD_VENDOR, "AMI Corporation"), DMI_MATCH(DMI_BOARD_NAME, "Aptio CRB"), |