Re: [PATCH 1/2] platform/x86: touchscreen_dmi: Add info for the Chuwi HiBook (CWI514) tablet

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi All,

On 9/5/21 3:02 PM, Hans de Goede wrote:
> Add touchscreen info for the Chuwi HiBook (CWI514) tablet. This includes
> info for getting the firmware directly from the UEFI, so that the user does
> not need to manually install the firmware in /lib/firmware/silead.
> 
> This change will make the touchscreen on these devices work OOTB,
> without requiring any manual setup.
> 
> Signed-off-by: Hans de Goede <hdegoede@xxxxxxxxxx>

I've added both these patches to my review-hans and fixes branches now.

Regards,

Hans


> ---
>  drivers/platform/x86/touchscreen_dmi.c | 37 ++++++++++++++++++++++++++
>  1 file changed, 37 insertions(+)
> 
> diff --git a/drivers/platform/x86/touchscreen_dmi.c b/drivers/platform/x86/touchscreen_dmi.c
> index 0e1451b1d9c6..1f9cb756b103 100644
> --- a/drivers/platform/x86/touchscreen_dmi.c
> +++ b/drivers/platform/x86/touchscreen_dmi.c
> @@ -141,6 +141,33 @@ static const struct ts_dmi_data chuwi_hi10_pro_data = {
>  	.properties     = chuwi_hi10_pro_props,
>  };
>  
> +static const struct property_entry chuwi_hibook_props[] = {
> +	PROPERTY_ENTRY_U32("touchscreen-min-x", 30),
> +	PROPERTY_ENTRY_U32("touchscreen-min-y", 4),
> +	PROPERTY_ENTRY_U32("touchscreen-size-x", 1892),
> +	PROPERTY_ENTRY_U32("touchscreen-size-y", 1276),
> +	PROPERTY_ENTRY_BOOL("touchscreen-inverted-y"),
> +	PROPERTY_ENTRY_BOOL("touchscreen-swapped-x-y"),
> +	PROPERTY_ENTRY_STRING("firmware-name", "gsl1680-chuwi-hibook.fw"),
> +	PROPERTY_ENTRY_U32("silead,max-fingers", 10),
> +	PROPERTY_ENTRY_BOOL("silead,home-button"),
> +	{ }
> +};
> +
> +static const struct ts_dmi_data chuwi_hibook_data = {
> +	.embedded_fw = {
> +		.name	= "silead/gsl1680-chuwi-hibook.fw",
> +		.prefix = { 0xf0, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00 },
> +		.length	= 40392,
> +		.sha256	= { 0xf7, 0xc0, 0xe8, 0x5a, 0x6c, 0xf2, 0xeb, 0x8d,
> +			    0x12, 0xc4, 0x45, 0xbf, 0x55, 0x13, 0x4c, 0x1a,
> +			    0x13, 0x04, 0x31, 0x08, 0x65, 0x73, 0xf7, 0xa8,
> +			    0x1b, 0x7d, 0x59, 0xc9, 0xe6, 0x97, 0xf7, 0x38 },
> +	},
> +	.acpi_name      = "MSSL0017:00",
> +	.properties     = chuwi_hibook_props,
> +};
> +
>  static const struct property_entry chuwi_vi8_props[] = {
>  	PROPERTY_ENTRY_U32("touchscreen-min-x", 4),
>  	PROPERTY_ENTRY_U32("touchscreen-min-y", 6),
> @@ -979,6 +1006,16 @@ const struct dmi_system_id touchscreen_dmi_table[] = {
>  			DMI_MATCH(DMI_BOARD_NAME, "Cherry Trail CR"),
>  		},
>  	},
> +	{
> +		/* Chuwi HiBook (CWI514) */
> +		.driver_data = (void *)&chuwi_hibook_data,
> +		.matches = {
> +			DMI_MATCH(DMI_BOARD_VENDOR, "Hampoo"),
> +			DMI_MATCH(DMI_BOARD_NAME, "Cherry Trail CR"),
> +			/* Above matches are too generic, add bios-date match */
> +			DMI_MATCH(DMI_BIOS_DATE, "05/07/2016"),
> +		},
> +	},
>  	{
>  		/* Chuwi Vi8 (CWI506) */
>  		.driver_data = (void *)&chuwi_vi8_data,
> 




[Index of Archives]     [Linux Kernel Development]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux