diff options
Diffstat (limited to 'drivers/platform/x86/touchscreen_dmi.c')
| -rw-r--r-- | drivers/platform/x86/touchscreen_dmi.c | 58 | 
1 files changed, 58 insertions, 0 deletions
diff --git a/drivers/platform/x86/touchscreen_dmi.c b/drivers/platform/x86/touchscreen_dmi.c index 4370e4add83a..1c7d8324ff5c 100644 --- a/drivers/platform/x86/touchscreen_dmi.c +++ b/drivers/platform/x86/touchscreen_dmi.c @@ -136,6 +136,22 @@ static const struct ts_dmi_data chuwi_vi10_data = {  	.properties     = chuwi_vi10_props,  }; +static const struct property_entry chuwi_surbook_mini_props[] = { +	PROPERTY_ENTRY_U32("touchscreen-min-x", 88), +	PROPERTY_ENTRY_U32("touchscreen-min-y", 13), +	PROPERTY_ENTRY_U32("touchscreen-size-x", 2040), +	PROPERTY_ENTRY_U32("touchscreen-size-y", 1524), +	PROPERTY_ENTRY_STRING("firmware-name", "gsl1680-chuwi-surbook-mini.fw"), +	PROPERTY_ENTRY_U32("silead,max-fingers", 10), +	PROPERTY_ENTRY_BOOL("touchscreen-inverted-y"), +	{ } +}; + +static const struct ts_dmi_data chuwi_surbook_mini_data = { +	.acpi_name      = "MSSL1680:00", +	.properties     = chuwi_surbook_mini_props, +}; +  static const struct property_entry connect_tablet9_props[] = {  	PROPERTY_ENTRY_U32("touchscreen-min-x", 9),  	PROPERTY_ENTRY_U32("touchscreen-min-y", 10), @@ -230,6 +246,24 @@ static const struct ts_dmi_data gp_electronic_t701_data = {  	.properties	= gp_electronic_t701_props,  }; +static const struct property_entry irbis_tw90_props[] = { +	PROPERTY_ENTRY_U32("touchscreen-size-x", 1720), +	PROPERTY_ENTRY_U32("touchscreen-size-y", 1138), +	PROPERTY_ENTRY_U32("touchscreen-min-x", 8), +	PROPERTY_ENTRY_U32("touchscreen-min-y", 14), +	PROPERTY_ENTRY_BOOL("touchscreen-inverted-y"), +	PROPERTY_ENTRY_BOOL("touchscreen-swapped-x-y"), +	PROPERTY_ENTRY_STRING("firmware-name", "gsl3680-irbis_tw90.fw"), +	PROPERTY_ENTRY_U32("silead,max-fingers", 10), +	PROPERTY_ENTRY_BOOL("silead,home-button"), +	{ } +}; + +static const struct ts_dmi_data irbis_tw90_data = { +	.acpi_name	= "MSSL1680:00", +	.properties	= irbis_tw90_props, +}; +  static const struct property_entry itworks_tw891_props[] = {  	PROPERTY_ENTRY_U32("touchscreen-min-x", 1),  	PROPERTY_ENTRY_U32("touchscreen-min-y", 5), @@ -647,6 +681,14 @@ static const struct dmi_system_id touchscreen_dmi_table[] = {  		},  	},  	{ +		/* Chuwi Surbook Mini (CWI540) */ +		.driver_data = (void *)&chuwi_surbook_mini_data, +		.matches = { +			DMI_MATCH(DMI_BOARD_VENDOR, "Hampoo"), +			DMI_MATCH(DMI_PRODUCT_NAME, "C3W6_AP108_4G"), +		}, +	}, +	{  		/* Connect Tablet 9 */  		.driver_data = (void *)&connect_tablet9_data,  		.matches = { @@ -709,6 +751,14 @@ static const struct dmi_system_id touchscreen_dmi_table[] = {  		},  	},  	{ +		/* Irbis TW90 */ +		.driver_data = (void *)&irbis_tw90_data, +		.matches = { +			DMI_MATCH(DMI_SYS_VENDOR, "IRBIS"), +			DMI_MATCH(DMI_PRODUCT_NAME, "TW90"), +		}, +	}, +	{  		/* I.T.Works TW891 */  		.driver_data = (void *)&itworks_tw891_data,  		.matches = { @@ -884,6 +934,14 @@ static const struct dmi_system_id touchscreen_dmi_table[] = {  		},  	},  	{ +		/* Trekstor Primebook C11B (same touchscreen as the C11) */ +		.driver_data = (void *)&trekstor_primebook_c11_data, +		.matches = { +			DMI_MATCH(DMI_SYS_VENDOR, "TREKSTOR"), +			DMI_MATCH(DMI_PRODUCT_NAME, "PRIMEBOOK C11B"), +		}, +	}, +	{  		/* Trekstor Primebook C13 */  		.driver_data = (void *)&trekstor_primebook_c13_data,  		.matches = {  |