Re: [Linuxwacom-devel] [PATCH] Intuos Pro 2nd Generation doesn't support the puck.

2017-12-05 Thread Ping Cheng
Yeah, puck’s feature is pretty much replaced by MT’s...

On Tuesday, December 5, 2017, Aaron Armstrong Skomra 
wrote:

> Signed-off-by: Aaron Armstrong Skomra 


Reviewed-by: Ping Cheng 

Ping


> ---
>  2.6.30/wacom_wac.c | 17 ++---
>  2.6.36/wacom_wac.c | 17 ++---
>  2.6.38/wacom_wac.c | 17 ++---
>  3.7/wacom_wac.c| 17 ++---
>  4 files changed, 40 insertions(+), 28 deletions(-)
>
> diff --git a/2.6.30/wacom_wac.c b/2.6.30/wacom_wac.c
> index 3020ade403a7..aa6c6d279343 100644
> --- a/2.6.30/wacom_wac.c
> +++ b/2.6.30/wacom_wac.c
> @@ -1875,18 +1875,21 @@ static void wacom_setup_cintiq(struct wacom_wac
> *wacom_wac)
>  static void wacom_setup_intuos(struct wacom_wac *wacom_wac)
>  {
> struct input_dev *input_dev = wacom_wac->input;
> +   struct wacom_features *features = _wac->features;
>
> input_set_capability(input_dev, EV_REL, REL_WHEEL);
>
> wacom_setup_cintiq(wacom_wac);
>
> -   __set_bit(BTN_LEFT, input_dev->keybit);
> -   __set_bit(BTN_RIGHT, input_dev->keybit);
> -   __set_bit(BTN_MIDDLE, input_dev->keybit);
> -   __set_bit(BTN_SIDE, input_dev->keybit);
> -   __set_bit(BTN_EXTRA, input_dev->keybit);
> -   __set_bit(BTN_TOOL_MOUSE, input_dev->keybit);
> -   __set_bit(BTN_TOOL_LENS, input_dev->keybit);
> +   if (features->type != INTUOSP2) {
> +   __set_bit(BTN_LEFT, input_dev->keybit);
> +   __set_bit(BTN_RIGHT, input_dev->keybit);
> +   __set_bit(BTN_MIDDLE, input_dev->keybit);
> +   __set_bit(BTN_SIDE, input_dev->keybit);
> +   __set_bit(BTN_EXTRA, input_dev->keybit);
> +   __set_bit(BTN_TOOL_MOUSE, input_dev->keybit);
> +   __set_bit(BTN_TOOL_LENS, input_dev->keybit);
> +   }
>
> input_set_abs_params(input_dev, ABS_RZ, -900, 899, 0, 0);
> input_set_abs_params(input_dev, ABS_THROTTLE, -1023, 1023, 0, 0);
> diff --git a/2.6.36/wacom_wac.c b/2.6.36/wacom_wac.c
> index 54432390e13f..640c61e8b295 100644
> --- a/2.6.36/wacom_wac.c
> +++ b/2.6.36/wacom_wac.c
> @@ -1704,18 +1704,21 @@ static void wacom_setup_cintiq(struct wacom_wac
> *wacom_wac)
>  static void wacom_setup_intuos(struct wacom_wac *wacom_wac)
>  {
> struct input_dev *input_dev = wacom_wac->input;
> +   struct wacom_features *features = _wac->features;
>
> input_set_capability(input_dev, EV_REL, REL_WHEEL);
>
> wacom_setup_cintiq(wacom_wac);
>
> -   __set_bit(BTN_LEFT, input_dev->keybit);
> -   __set_bit(BTN_RIGHT, input_dev->keybit);
> -   __set_bit(BTN_MIDDLE, input_dev->keybit);
> -   __set_bit(BTN_SIDE, input_dev->keybit);
> -   __set_bit(BTN_EXTRA, input_dev->keybit);
> -   __set_bit(BTN_TOOL_MOUSE, input_dev->keybit);
> -   __set_bit(BTN_TOOL_LENS, input_dev->keybit);
> +   if (features->type != INTUOSP2) {
> +   __set_bit(BTN_LEFT, input_dev->keybit);
> +   __set_bit(BTN_RIGHT, input_dev->keybit);
> +   __set_bit(BTN_MIDDLE, input_dev->keybit);
> +   __set_bit(BTN_SIDE, input_dev->keybit);
> +   __set_bit(BTN_EXTRA, input_dev->keybit);
> +   __set_bit(BTN_TOOL_MOUSE, input_dev->keybit);
> +   __set_bit(BTN_TOOL_LENS, input_dev->keybit);
> +   }
>
> input_set_abs_params(input_dev, ABS_RZ, -900, 899, 0, 0);
> input_set_abs_params(input_dev, ABS_THROTTLE, -1023, 1023, 0, 0);
> diff --git a/2.6.38/wacom_wac.c b/2.6.38/wacom_wac.c
> index 3db445f6fbcd..7809c5904325 100644
> --- a/2.6.38/wacom_wac.c
> +++ b/2.6.38/wacom_wac.c
> @@ -2139,18 +2139,21 @@ static void wacom_setup_cintiq(struct wacom_wac
> *wacom_wac)
>  static void wacom_setup_intuos(struct wacom_wac *wacom_wac)
>  {
> struct input_dev *input_dev = wacom_wac->input;
> +   struct wacom_features *features = _wac->features;
>
> input_set_capability(input_dev, EV_REL, REL_WHEEL);
>
> wacom_setup_cintiq(wacom_wac);
>
> -   __set_bit(BTN_LEFT, input_dev->keybit);
> -   __set_bit(BTN_RIGHT, input_dev->keybit);
> -   __set_bit(BTN_MIDDLE, input_dev->keybit);
> -   __set_bit(BTN_SIDE, input_dev->keybit);
> -   __set_bit(BTN_EXTRA, input_dev->keybit);
> -   __set_bit(BTN_TOOL_MOUSE, input_dev->keybit);
> -   __set_bit(BTN_TOOL_LENS, input_dev->keybit);
> +   if (features->type != INTUOSP2) {
> +   __set_bit(BTN_LEFT, input_dev->keybit);
> +   __set_bit(BTN_RIGHT, input_dev->keybit);
> +   __set_bit(BTN_MIDDLE, input_dev->keybit);
> +   __set_bit(BTN_SIDE, input_dev->keybit);
> +   __set_bit(BTN_EXTRA, input_dev->keybit);
> +   __set_bit(BTN_TOOL_MOUSE, input_dev->keybit);
> +   __set_bit(BTN_TOOL_LENS, input_dev->keybit);
> +   }
>
> input_set_abs_params(input_dev, ABS_RZ, -900, 899, 0, 0);
>   

[Linuxwacom-devel] [PATCH] Intuos Pro 2nd Generation doesn't support the puck.

2017-12-05 Thread Aaron Armstrong Skomra
Signed-off-by: Aaron Armstrong Skomra 
---
 2.6.30/wacom_wac.c | 17 ++---
 2.6.36/wacom_wac.c | 17 ++---
 2.6.38/wacom_wac.c | 17 ++---
 3.7/wacom_wac.c| 17 ++---
 4 files changed, 40 insertions(+), 28 deletions(-)

diff --git a/2.6.30/wacom_wac.c b/2.6.30/wacom_wac.c
index 3020ade403a7..aa6c6d279343 100644
--- a/2.6.30/wacom_wac.c
+++ b/2.6.30/wacom_wac.c
@@ -1875,18 +1875,21 @@ static void wacom_setup_cintiq(struct wacom_wac 
*wacom_wac)
 static void wacom_setup_intuos(struct wacom_wac *wacom_wac)
 {
struct input_dev *input_dev = wacom_wac->input;
+   struct wacom_features *features = _wac->features;
 
input_set_capability(input_dev, EV_REL, REL_WHEEL);
 
wacom_setup_cintiq(wacom_wac);
 
-   __set_bit(BTN_LEFT, input_dev->keybit);
-   __set_bit(BTN_RIGHT, input_dev->keybit);
-   __set_bit(BTN_MIDDLE, input_dev->keybit);
-   __set_bit(BTN_SIDE, input_dev->keybit);
-   __set_bit(BTN_EXTRA, input_dev->keybit);
-   __set_bit(BTN_TOOL_MOUSE, input_dev->keybit);
-   __set_bit(BTN_TOOL_LENS, input_dev->keybit);
+   if (features->type != INTUOSP2) {
+   __set_bit(BTN_LEFT, input_dev->keybit);
+   __set_bit(BTN_RIGHT, input_dev->keybit);
+   __set_bit(BTN_MIDDLE, input_dev->keybit);
+   __set_bit(BTN_SIDE, input_dev->keybit);
+   __set_bit(BTN_EXTRA, input_dev->keybit);
+   __set_bit(BTN_TOOL_MOUSE, input_dev->keybit);
+   __set_bit(BTN_TOOL_LENS, input_dev->keybit);
+   }
 
input_set_abs_params(input_dev, ABS_RZ, -900, 899, 0, 0);
input_set_abs_params(input_dev, ABS_THROTTLE, -1023, 1023, 0, 0);
diff --git a/2.6.36/wacom_wac.c b/2.6.36/wacom_wac.c
index 54432390e13f..640c61e8b295 100644
--- a/2.6.36/wacom_wac.c
+++ b/2.6.36/wacom_wac.c
@@ -1704,18 +1704,21 @@ static void wacom_setup_cintiq(struct wacom_wac 
*wacom_wac)
 static void wacom_setup_intuos(struct wacom_wac *wacom_wac)
 {
struct input_dev *input_dev = wacom_wac->input;
+   struct wacom_features *features = _wac->features;
 
input_set_capability(input_dev, EV_REL, REL_WHEEL);
 
wacom_setup_cintiq(wacom_wac);
 
-   __set_bit(BTN_LEFT, input_dev->keybit);
-   __set_bit(BTN_RIGHT, input_dev->keybit);
-   __set_bit(BTN_MIDDLE, input_dev->keybit);
-   __set_bit(BTN_SIDE, input_dev->keybit);
-   __set_bit(BTN_EXTRA, input_dev->keybit);
-   __set_bit(BTN_TOOL_MOUSE, input_dev->keybit);
-   __set_bit(BTN_TOOL_LENS, input_dev->keybit);
+   if (features->type != INTUOSP2) {
+   __set_bit(BTN_LEFT, input_dev->keybit);
+   __set_bit(BTN_RIGHT, input_dev->keybit);
+   __set_bit(BTN_MIDDLE, input_dev->keybit);
+   __set_bit(BTN_SIDE, input_dev->keybit);
+   __set_bit(BTN_EXTRA, input_dev->keybit);
+   __set_bit(BTN_TOOL_MOUSE, input_dev->keybit);
+   __set_bit(BTN_TOOL_LENS, input_dev->keybit);
+   }
 
input_set_abs_params(input_dev, ABS_RZ, -900, 899, 0, 0);
input_set_abs_params(input_dev, ABS_THROTTLE, -1023, 1023, 0, 0);
diff --git a/2.6.38/wacom_wac.c b/2.6.38/wacom_wac.c
index 3db445f6fbcd..7809c5904325 100644
--- a/2.6.38/wacom_wac.c
+++ b/2.6.38/wacom_wac.c
@@ -2139,18 +2139,21 @@ static void wacom_setup_cintiq(struct wacom_wac 
*wacom_wac)
 static void wacom_setup_intuos(struct wacom_wac *wacom_wac)
 {
struct input_dev *input_dev = wacom_wac->input;
+   struct wacom_features *features = _wac->features;
 
input_set_capability(input_dev, EV_REL, REL_WHEEL);
 
wacom_setup_cintiq(wacom_wac);
 
-   __set_bit(BTN_LEFT, input_dev->keybit);
-   __set_bit(BTN_RIGHT, input_dev->keybit);
-   __set_bit(BTN_MIDDLE, input_dev->keybit);
-   __set_bit(BTN_SIDE, input_dev->keybit);
-   __set_bit(BTN_EXTRA, input_dev->keybit);
-   __set_bit(BTN_TOOL_MOUSE, input_dev->keybit);
-   __set_bit(BTN_TOOL_LENS, input_dev->keybit);
+   if (features->type != INTUOSP2) {
+   __set_bit(BTN_LEFT, input_dev->keybit);
+   __set_bit(BTN_RIGHT, input_dev->keybit);
+   __set_bit(BTN_MIDDLE, input_dev->keybit);
+   __set_bit(BTN_SIDE, input_dev->keybit);
+   __set_bit(BTN_EXTRA, input_dev->keybit);
+   __set_bit(BTN_TOOL_MOUSE, input_dev->keybit);
+   __set_bit(BTN_TOOL_LENS, input_dev->keybit);
+   }
 
input_set_abs_params(input_dev, ABS_RZ, -900, 899, 0, 0);
input_set_abs_params(input_dev, ABS_THROTTLE, -1023, 1023, 0, 0);
diff --git a/3.7/wacom_wac.c b/3.7/wacom_wac.c
index df557623027d..d707a97e08e4 100644
--- a/3.7/wacom_wac.c
+++ b/3.7/wacom_wac.c
@@ -2121,18 +2121,21 @@ static void wacom_setup_cintiq(struct wacom_wac 
*wacom_wac)
 static void wacom_setup_intuos(struct wacom_wac *wacom_wac)
 {
struct input_dev *input_dev =