Re: [PATCH v2] Input: add i2c/smbus driver for elan touchpad

From: cheng wei Lin
Date: Fri Jul 25 2014 - 14:15:12 EST


Hi Dmitry,

Sorry for late to reply you and thanks for your command

Yes, I also agree, it looks great than my original code.
So, should I modify this and upstream v3 patch for you?

thank you,
duson


Dmitry Torokhov <dmitry.torokhov@xxxxxxxxx> 於 2014/7/25 上午2:05 寫道:

> Hi,
>
> On Tue, Jan 07, 2014 at 11:08:03AM +0800, Duson Lin wrote:
>> +/*
>> + ******************************************************************
>> + * General functions
>> + ******************************************************************
>> + */
>> +/*
>> + * (value from firmware) * 10 + 790 = dpi
>> + * we also have to convert dpi to dots/mm (*10/254 to avoid floating point)
>> + */
>> +static unsigned int elan_convert_res(char val)
>> +{
>> + int res;
>> + if (val & 0x80) {
>> + val = ~val + 1;
>> + res = (790 - val * 10) * 10 / 254;
>> + } else
>> + res = (val * 10 + 790) * 10 / 254;
>> + return res;
>> +}
>
> Why isn't this simply:
>
> res = ((int)val * 10 + 790) * 10 / 254;
>
> ?
>
> If high bit is 1 you basically do the 2 complement by hand to get to
> positive and then subtract. Which shoudl be the same as adding positive
> value.
>
> Thanks.
>
> --
> Dmitry
>

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/