Re: [PATCH] Input: elantech: adjust hw_version detection logic

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

 



hi Jj,

On Tuesday 08 November 2011 20:08:19 JJ Ding wrote:
> This patch fixes some v3 hardware (fw_version: 0x150500) wrongly detected
> as v2 hardware.
> 
> Reported-by: Marc Dietrich <marvin24@xxxxxx>
> Signed-off-by: JJ Ding <jj_ding@xxxxxxxxxx>
> ---
> Hi list,
> 
> This is patched against v3.2-rc1.
> 
> Marc, could you please test this again? Thanks a lot.

patch works fine here. You may add:

	Tested-By: Marc Dietrich <marvin24@xxxxxx>

Btw, are there any known issues with suspend/resume? The touchpad doesn't seem 
to wakeup again after resume, but that's propably a problem of our kbd 
controller driver. Just in case there's something known...

Thanks Marc

> 
>  drivers/input/mouse/elantech.c |   26 ++++++++++++++++++--------
>  1 files changed, 18 insertions(+), 8 deletions(-)
> 
> diff --git a/drivers/input/mouse/elantech.c b/drivers/input/mouse/elantech.c
> index 09b93b1..e2a9867 100644
> --- a/drivers/input/mouse/elantech.c
> +++ b/drivers/input/mouse/elantech.c
> @@ -1210,18 +1210,28 @@ static int elantech_reconnect(struct psmouse
> *psmouse) */
>  static int elantech_set_properties(struct elantech_data *etd)
>  {
> +	/* This represents the version of IC body. */
>  	int ver = (etd->fw_version & 0x0f0000) >> 16;
> 
> +	/* Early version of Elan touchpads doesn't obey the rule. */
>  	if (etd->fw_version < 0x020030 || etd->fw_version == 0x020600)
>  		etd->hw_version = 1;
> -	else if (etd->fw_version < 0x150600)
> -		etd->hw_version = 2;
> -	else if (ver == 5)
> -		etd->hw_version = 3;
> -	else if (ver == 6)
> -		etd->hw_version = 4;
> -	else
> -		return -1;
> +	else {
> +		switch (ver) {
> +		case 2:
> +		case 4:
> +			etd->hw_version = 2;
> +			break;
> +		case 5:
> +			etd->hw_version = 3;
> +			break;
> +		case 6:
> +			etd->hw_version = 4;
> +			break;
> +		default:
> +			return -1;
> +		}
> +	}
> 
>  	/*
>  	 * Turn on packet checking by default.
--
To unsubscribe from this list: send the line "unsubscribe linux-input" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux Media Devel]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Linux Wireless Networking]     [Linux Omap]

  Powered by Linux