Re: [PATCH v3 12/13] HID: introduce Scan Time

2012-11-13 Thread Henrik Rydberg
Hi Benjamin,

> From: Benjamin Tissoires 
> Date: Tue, 13 Nov 2012 15:11:22 +0100
> Subject: [PATCH] Input: introduce EV_MSC Timestamp
> 
> Win 8 digitizer devices provides the actual timestamp (hid_dg_scan_time)
> computed by the hardware itself. The value is global to the frame and is
> not specific to the multitouch protocol (though only touch, not pen,
> should use it according to the specification).

I think it is good to use win8 as an example here, but this feature is
present in many other devices as well, and this feature is generic to
all of them. It would thus make sense to start off a bit more general here.

> 
> Signed-off-by: Benjamin Tissoires 
> ---
>  Documentation/input/event-codes.txt | 11 +++
>  include/linux/input.h   |  1 +
>  2 files changed, 12 insertions(+)
> 
> diff --git a/Documentation/input/event-codes.txt 
> b/Documentation/input/event-codes.txt
> index 53305bd..6f28e11 100644
> --- a/Documentation/input/event-codes.txt
> +++ b/Documentation/input/event-codes.txt
> @@ -196,6 +196,17 @@ EV_MSC:
>  EV_MSC events are used for input and output events that do not fall under 
> other
>  categories.
>  
> +A few EV_MSC codes have special meanings:

meaning:

> +
> +* MSC_TIMESTAMP:
> +  - Used to report the number of microseconds since the last reset. This 
> event
> +should be coded as an uint32 value, which is allowed to wrap around with
> +no special consequence. It is assumed that the time difference between 
> two
> +consecutive events is reliable on a reasonable time scale (hours).
> +A reset to zero can happen, in which case the time since the last event 
> is
> +unknown.  If the device does not provide this information, the driver 
> must
> +not provide it to the user space.

to user space.

> +
>  EV_LED:
>  --
>  EV_LED events are used for input and output to set and query the state of
> diff --git a/include/linux/input.h b/include/linux/input.h
> index ba48743..25354f3 100644
> --- a/include/linux/input.h
> +++ b/include/linux/input.h
> @@ -858,6 +858,7 @@ struct input_keymap_entry {
>  #define MSC_GESTURE  0x02
>  #define MSC_RAW  0x03
>  #define MSC_SCAN 0x04
> +#define MSC_TIMESTAMP0x05
>  #define MSC_MAX  0x07
>  #define MSC_CNT  (MSC_MAX+1)
>  
> -- 
> 1.8.0
> 
> Cheers,
> Benjamin

Reviewed-by: Henrik Rydberg 

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


Re: [PATCH v3 12/13] HID: introduce Scan Time

2012-11-13 Thread Benjamin Tissoires


On 11/09/2012 09:45 AM, Dmitry Torokhov wrote:
> Hi Benjamin,
> 
> On Wed, Nov 07, 2012 at 05:37:35PM +0100, Benjamin Tissoires wrote:
>> Win 8 digitizer devices provides the actual scan time computed by the
>> hardware itself. The value is global to the frame and is not specific
>> to the multitouch protocol (though only touch, not pen, should use it
>> according to the specification).
>>
>> Signed-off-by: Benjamin Tissoires 
>> ---
>>   Documentation/input/event-codes.txt | 9 +
>>   drivers/hid/hid-input.c | 4 
>>   include/linux/hid.h | 1 +
>>   include/linux/input.h   | 1 +
>>   4 files changed, 15 insertions(+)
>>
>> diff --git a/Documentation/input/event-codes.txt 
>> b/Documentation/input/event-codes.txt
>> index 53305bd..80c06e5 100644
>> --- a/Documentation/input/event-codes.txt
>> +++ b/Documentation/input/event-codes.txt
>> @@ -174,6 +174,15 @@ A few EV_ABS codes have special meanings:
>>   the input device may be used freely in three dimensions, consider ABS_Z
>>   instead.
>>   
>> +* ABS_SCAN_TIME:
>> +  - Used to report the number of microseconds since the last reset. This 
>> event
>> +should be coded as an uint32 value, which is allowed to wrap around with
>> +no special consequence. It is assumed that the time difference between 
>> two
>> +consecutive events is reliable on a reasonable time scale (hours).
>> +A reset to zero can happen, in which case the time since the last event 
>> is
>> +unknown.  If the device does not provide this information, the driver 
>> must
>> +not provide it to the user space.
>> +
> 
> This should not be an absolute event but rather EV_MSC/MSC_TIMESTAMP.
> 
> Thanks.

Hi Dmitry,

alright.
However, since we are using EV_MSC now and the hid layer is not so friendly 
with them,
the change in hid-input can not be done in the same way, so let's drop it for 
now.

How about this?


From: Benjamin Tissoires 
Date: Tue, 13 Nov 2012 15:11:22 +0100
Subject: [PATCH] Input: introduce EV_MSC Timestamp

Win 8 digitizer devices provides the actual timestamp (hid_dg_scan_time)
computed by the hardware itself. The value is global to the frame and is
not specific to the multitouch protocol (though only touch, not pen,
should use it according to the specification).

Signed-off-by: Benjamin Tissoires 
---
 Documentation/input/event-codes.txt | 11 +++
 include/linux/input.h   |  1 +
 2 files changed, 12 insertions(+)

diff --git a/Documentation/input/event-codes.txt 
b/Documentation/input/event-codes.txt
index 53305bd..6f28e11 100644
--- a/Documentation/input/event-codes.txt
+++ b/Documentation/input/event-codes.txt
@@ -196,6 +196,17 @@ EV_MSC:
 EV_MSC events are used for input and output events that do not fall under other
 categories.
 
+A few EV_MSC codes have special meanings:
+
+* MSC_TIMESTAMP:
+  - Used to report the number of microseconds since the last reset. This event
+should be coded as an uint32 value, which is allowed to wrap around with
+no special consequence. It is assumed that the time difference between two
+consecutive events is reliable on a reasonable time scale (hours).
+A reset to zero can happen, in which case the time since the last event is
+unknown.  If the device does not provide this information, the driver must
+not provide it to the user space.
+
 EV_LED:
 --
 EV_LED events are used for input and output to set and query the state of
diff --git a/include/linux/input.h b/include/linux/input.h
index ba48743..25354f3 100644
--- a/include/linux/input.h
+++ b/include/linux/input.h
@@ -858,6 +858,7 @@ struct input_keymap_entry {
 #define MSC_GESTURE0x02
 #define MSC_RAW0x03
 #define MSC_SCAN   0x04
+#define MSC_TIMESTAMP  0x05
 #define MSC_MAX0x07
 #define MSC_CNT(MSC_MAX+1)
 
-- 
1.8.0

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


Re: [PATCH v3 12/13] HID: introduce Scan Time

2012-11-13 Thread Benjamin Tissoires


On 11/09/2012 09:45 AM, Dmitry Torokhov wrote:
 Hi Benjamin,
 
 On Wed, Nov 07, 2012 at 05:37:35PM +0100, Benjamin Tissoires wrote:
 Win 8 digitizer devices provides the actual scan time computed by the
 hardware itself. The value is global to the frame and is not specific
 to the multitouch protocol (though only touch, not pen, should use it
 according to the specification).

 Signed-off-by: Benjamin Tissoires benjamin.tissoi...@gmail.com
 ---
   Documentation/input/event-codes.txt | 9 +
   drivers/hid/hid-input.c | 4 
   include/linux/hid.h | 1 +
   include/linux/input.h   | 1 +
   4 files changed, 15 insertions(+)

 diff --git a/Documentation/input/event-codes.txt 
 b/Documentation/input/event-codes.txt
 index 53305bd..80c06e5 100644
 --- a/Documentation/input/event-codes.txt
 +++ b/Documentation/input/event-codes.txt
 @@ -174,6 +174,15 @@ A few EV_ABS codes have special meanings:
   the input device may be used freely in three dimensions, consider ABS_Z
   instead.
   
 +* ABS_SCAN_TIME:
 +  - Used to report the number of microseconds since the last reset. This 
 event
 +should be coded as an uint32 value, which is allowed to wrap around with
 +no special consequence. It is assumed that the time difference between 
 two
 +consecutive events is reliable on a reasonable time scale (hours).
 +A reset to zero can happen, in which case the time since the last event 
 is
 +unknown.  If the device does not provide this information, the driver 
 must
 +not provide it to the user space.
 +
 
 This should not be an absolute event but rather EV_MSC/MSC_TIMESTAMP.
 
 Thanks.

Hi Dmitry,

alright.
However, since we are using EV_MSC now and the hid layer is not so friendly 
with them,
the change in hid-input can not be done in the same way, so let's drop it for 
now.

How about this?


From: Benjamin Tissoires benjamin.tissoi...@gmail.com
Date: Tue, 13 Nov 2012 15:11:22 +0100
Subject: [PATCH] Input: introduce EV_MSC Timestamp

Win 8 digitizer devices provides the actual timestamp (hid_dg_scan_time)
computed by the hardware itself. The value is global to the frame and is
not specific to the multitouch protocol (though only touch, not pen,
should use it according to the specification).

Signed-off-by: Benjamin Tissoires benjamin.tissoi...@gmail.com
---
 Documentation/input/event-codes.txt | 11 +++
 include/linux/input.h   |  1 +
 2 files changed, 12 insertions(+)

diff --git a/Documentation/input/event-codes.txt 
b/Documentation/input/event-codes.txt
index 53305bd..6f28e11 100644
--- a/Documentation/input/event-codes.txt
+++ b/Documentation/input/event-codes.txt
@@ -196,6 +196,17 @@ EV_MSC:
 EV_MSC events are used for input and output events that do not fall under other
 categories.
 
+A few EV_MSC codes have special meanings:
+
+* MSC_TIMESTAMP:
+  - Used to report the number of microseconds since the last reset. This event
+should be coded as an uint32 value, which is allowed to wrap around with
+no special consequence. It is assumed that the time difference between two
+consecutive events is reliable on a reasonable time scale (hours).
+A reset to zero can happen, in which case the time since the last event is
+unknown.  If the device does not provide this information, the driver must
+not provide it to the user space.
+
 EV_LED:
 --
 EV_LED events are used for input and output to set and query the state of
diff --git a/include/linux/input.h b/include/linux/input.h
index ba48743..25354f3 100644
--- a/include/linux/input.h
+++ b/include/linux/input.h
@@ -858,6 +858,7 @@ struct input_keymap_entry {
 #define MSC_GESTURE0x02
 #define MSC_RAW0x03
 #define MSC_SCAN   0x04
+#define MSC_TIMESTAMP  0x05
 #define MSC_MAX0x07
 #define MSC_CNT(MSC_MAX+1)
 
-- 
1.8.0

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


Re: [PATCH v3 12/13] HID: introduce Scan Time

2012-11-13 Thread Henrik Rydberg
Hi Benjamin,

 From: Benjamin Tissoires benjamin.tissoi...@gmail.com
 Date: Tue, 13 Nov 2012 15:11:22 +0100
 Subject: [PATCH] Input: introduce EV_MSC Timestamp
 
 Win 8 digitizer devices provides the actual timestamp (hid_dg_scan_time)
 computed by the hardware itself. The value is global to the frame and is
 not specific to the multitouch protocol (though only touch, not pen,
 should use it according to the specification).

I think it is good to use win8 as an example here, but this feature is
present in many other devices as well, and this feature is generic to
all of them. It would thus make sense to start off a bit more general here.

 
 Signed-off-by: Benjamin Tissoires benjamin.tissoi...@gmail.com
 ---
  Documentation/input/event-codes.txt | 11 +++
  include/linux/input.h   |  1 +
  2 files changed, 12 insertions(+)
 
 diff --git a/Documentation/input/event-codes.txt 
 b/Documentation/input/event-codes.txt
 index 53305bd..6f28e11 100644
 --- a/Documentation/input/event-codes.txt
 +++ b/Documentation/input/event-codes.txt
 @@ -196,6 +196,17 @@ EV_MSC:
  EV_MSC events are used for input and output events that do not fall under 
 other
  categories.
  
 +A few EV_MSC codes have special meanings:

meaning:

 +
 +* MSC_TIMESTAMP:
 +  - Used to report the number of microseconds since the last reset. This 
 event
 +should be coded as an uint32 value, which is allowed to wrap around with
 +no special consequence. It is assumed that the time difference between 
 two
 +consecutive events is reliable on a reasonable time scale (hours).
 +A reset to zero can happen, in which case the time since the last event 
 is
 +unknown.  If the device does not provide this information, the driver 
 must
 +not provide it to the user space.

to user space.

 +
  EV_LED:
  --
  EV_LED events are used for input and output to set and query the state of
 diff --git a/include/linux/input.h b/include/linux/input.h
 index ba48743..25354f3 100644
 --- a/include/linux/input.h
 +++ b/include/linux/input.h
 @@ -858,6 +858,7 @@ struct input_keymap_entry {
  #define MSC_GESTURE  0x02
  #define MSC_RAW  0x03
  #define MSC_SCAN 0x04
 +#define MSC_TIMESTAMP0x05
  #define MSC_MAX  0x07
  #define MSC_CNT  (MSC_MAX+1)
  
 -- 
 1.8.0
 
 Cheers,
 Benjamin

Reviewed-by: Henrik Rydberg rydb...@euromail.se

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


Re: [PATCH v3 12/13] HID: introduce Scan Time

2012-11-09 Thread Dmitry Torokhov
Hi Benjamin,

On Wed, Nov 07, 2012 at 05:37:35PM +0100, Benjamin Tissoires wrote:
> Win 8 digitizer devices provides the actual scan time computed by the
> hardware itself. The value is global to the frame and is not specific
> to the multitouch protocol (though only touch, not pen, should use it
> according to the specification).
> 
> Signed-off-by: Benjamin Tissoires 
> ---
>  Documentation/input/event-codes.txt | 9 +
>  drivers/hid/hid-input.c | 4 
>  include/linux/hid.h | 1 +
>  include/linux/input.h   | 1 +
>  4 files changed, 15 insertions(+)
> 
> diff --git a/Documentation/input/event-codes.txt 
> b/Documentation/input/event-codes.txt
> index 53305bd..80c06e5 100644
> --- a/Documentation/input/event-codes.txt
> +++ b/Documentation/input/event-codes.txt
> @@ -174,6 +174,15 @@ A few EV_ABS codes have special meanings:
>  the input device may be used freely in three dimensions, consider ABS_Z
>  instead.
>  
> +* ABS_SCAN_TIME:
> +  - Used to report the number of microseconds since the last reset. This 
> event
> +should be coded as an uint32 value, which is allowed to wrap around with
> +no special consequence. It is assumed that the time difference between 
> two
> +consecutive events is reliable on a reasonable time scale (hours).
> +A reset to zero can happen, in which case the time since the last event 
> is
> +unknown.  If the device does not provide this information, the driver 
> must
> +not provide it to the user space.
> +

This should not be an absolute event but rather EV_MSC/MSC_TIMESTAMP.

Thanks.

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


Re: [PATCH v3 12/13] HID: introduce Scan Time

2012-11-09 Thread Dmitry Torokhov
Hi Benjamin,

On Wed, Nov 07, 2012 at 05:37:35PM +0100, Benjamin Tissoires wrote:
 Win 8 digitizer devices provides the actual scan time computed by the
 hardware itself. The value is global to the frame and is not specific
 to the multitouch protocol (though only touch, not pen, should use it
 according to the specification).
 
 Signed-off-by: Benjamin Tissoires benjamin.tissoi...@gmail.com
 ---
  Documentation/input/event-codes.txt | 9 +
  drivers/hid/hid-input.c | 4 
  include/linux/hid.h | 1 +
  include/linux/input.h   | 1 +
  4 files changed, 15 insertions(+)
 
 diff --git a/Documentation/input/event-codes.txt 
 b/Documentation/input/event-codes.txt
 index 53305bd..80c06e5 100644
 --- a/Documentation/input/event-codes.txt
 +++ b/Documentation/input/event-codes.txt
 @@ -174,6 +174,15 @@ A few EV_ABS codes have special meanings:
  the input device may be used freely in three dimensions, consider ABS_Z
  instead.
  
 +* ABS_SCAN_TIME:
 +  - Used to report the number of microseconds since the last reset. This 
 event
 +should be coded as an uint32 value, which is allowed to wrap around with
 +no special consequence. It is assumed that the time difference between 
 two
 +consecutive events is reliable on a reasonable time scale (hours).
 +A reset to zero can happen, in which case the time since the last event 
 is
 +unknown.  If the device does not provide this information, the driver 
 must
 +not provide it to the user space.
 +

This should not be an absolute event but rather EV_MSC/MSC_TIMESTAMP.

Thanks.

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