Bug#605450: linux-image-2.6.32-5-amd64: Please support and update multitouch driver of Macbookpro 7,1.
Nobuhiro Iwamatsu said: Current Linux-2.6 package does not work multitouch device of Macbookpro 7,1. This is because driver does not support a multitouch protocol of Macbookpro. The patch revising this problem is already taken in by upstream. 6f2701b79f2ee0c5eb946e8a87993acbe8041da3 I confirmed that I made the linux-2.6 package which did this patch applied, and a problem was revised. Could you apply this patch in Debian? I second that request. The patch is also required for the multitouch touchpad of the MacBookAir3,1 to work. -- mike dentifrice fl...@poivron.org -- To UNSUBSCRIBE, email to debian-kernel-requ...@lists.debian.org with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org Archive: http://lists.debian.org/20101206191138.ga32...@dentifrice
Bug#605450: linux-image-2.6.32-5-amd64: Please support and update multitouch driver of Macbookpro 7,1.
On Mon, Dec 06, 2010 at 08:11:38PM +0100, mike dentifrice wrote: Nobuhiro Iwamatsu said: Current Linux-2.6 package does not work multitouch device of Macbookpro 7,1. This is because driver does not support a multitouch protocol of Macbookpro. The patch revising this problem is already taken in by upstream. 6f2701b79f2ee0c5eb946e8a87993acbe8041da3 I confirmed that I made the linux-2.6 package which did this patch applied, and a problem was revised. Could you apply this patch in Debian? I second that request. The patch is also required for the multitouch touchpad of the MacBookAir3,1 to work. Does the touchpad work as a simple pointing device, or not at all? Ben. -- Ben Hutchings We get into the habit of living before acquiring the habit of thinking. - Albert Camus -- To UNSUBSCRIBE, email to debian-kernel-requ...@lists.debian.org with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org Archive: http://lists.debian.org/20101206200118.gn8...@decadent.org.uk
Bug#605450: linux-image-2.6.32-5-amd64: Please support and update multitouch driver of Macbookpro 7,1.
I confirmed that I made the linux-2.6 package which did this patch applied, and a problem was revised. Could you apply this patch in Debian? I second that request. The patch is also required for the multitouch touchpad of the MacBookAir3,1 to work. Does the touchpad work as a simple pointing device, or not at all? Before I applied the patch, I could click, but the pointer didn't move. Without the multitouch input driver (packaged by Nobuhiro Iwamatsu), it is possible to move the pointer, but impossible to drag anything, for click + movement doesn't work. -- mike dentifrice fl...@poivron.org -- To UNSUBSCRIBE, email to debian-kernel-requ...@lists.debian.org with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org Archive: http://lists.debian.org/20101206221644.ga3...@dentifrice
Bug#605450: linux-image-2.6.32-5-amd64: Please support and update multitouch driver of Macbookpro 7,1.
Hi, 2010/12/7 mike dentifrice fl...@poivron.org: I confirmed that I made the linux-2.6 package which did this patch applied, and a problem was revised. Could you apply this patch in Debian? I second that request. The patch is also required for the multitouch touchpad of the MacBookAir3,1 to work. Does the touchpad work as a simple pointing device, or not at all? Before I applied the patch, I could click, but the pointer didn't move. Without the multitouch input driver (packaged by Nobuhiro Iwamatsu), it is possible to move the pointer, but impossible to drag anything, for click + movement doesn't work. I am using Macbookpro 7,1. On this machine, I can drag while clicking it with this patch and multitouch driver. Best regards, Nobuhiro -- Nobuhiro Iwamatsu iwamatsu at {nigauri.org / debian.org} GPG ID: 40AD1FA6 -- To UNSUBSCRIBE, email to debian-kernel-requ...@lists.debian.org with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org Archive: http://lists.debian.org/aanlktinsj+ÊsmdÙdibfepbpoioqd-svpqng+k...@mail.gmail.com
Bug#605450: linux-image-2.6.32-5-amd64: Please support and update multitouch driver of Macbookpro 7,1.
On Mon, 2010-12-06 at 23:16 +0100, mike dentifrice wrote: I confirmed that I made the linux-2.6 package which did this patch applied, and a problem was revised. Could you apply this patch in Debian? I second that request. The patch is also required for the multitouch touchpad of the MacBookAir3,1 to work. Does the touchpad work as a simple pointing device, or not at all? Before I applied the patch, I could click, but the pointer didn't move. Without the multitouch input driver (packaged by Nobuhiro Iwamatsu), it is possible to move the pointer, but impossible to drag anything, for click + movement doesn't work. OK, I've applied that patch plus: commit 57157becdd1d23e6c2b8661ffe6c78d7d605d121 Author: Henrik Rydberg rydb...@euromail.se Date: Tue Aug 31 17:27:02 2010 -0700 Input: bcm5974 - adjust major/minor to scale By visual inspection, the reported touch_major and touch_minor axes are a factor of two too small. Presumably the device actually reports the semi-major and semi-minor axes. Corrected with this patch. Ben. -- Ben Hutchings Once a job is fouled up, anything done to improve it makes it worse. signature.asc Description: This is a digitally signed message part
Bug#605450: linux-image-2.6.32-5-amd64: Please support and update multitouch driver of Macbookpro 7,1.
Package: linux-2.6 Version: 2.6.32-28 Severity: normal Tags: patch Hi, Current Linux-2.6 package does not work multitouch device of Macbookpro 7,1. This is because driver does not support a multitouch protocol of Macbookpro. The patch revising this problem is already taken in by upstream. 6f2701b79f2ee0c5eb946e8a87993acbe8041da3 I confirmed that I made the linux-2.6 package which did this patch applied, and a problem was revised. Could you apply this patch in Debian? Best regards, Nobuhiro From 6f2701b79f2ee0c5eb946e8a87993acbe8041da3 Mon Sep 17 00:00:00 2001 From: Henrik Rydberg rydb...@euromail.se Date: Wed, 6 Jan 2010 00:32:48 -0800 Subject: [PATCH] Input: bcm5974 - report ABS_MT events Make bcm5974 report raw multi-touch (MT) data in the form of ABS_MT events. [d...@mail.ru: get rid of module option, always report all events] Signed-off-by: Henrik Rydberg rydb...@euromail.se Signed-off-by: Andrew Morton a...@linux-foundation.org Signed-off-by: Dmitry Torokhov d...@mail.ru --- drivers/input/mouse/bcm5974.c | 44 - 1 files changed, 43 insertions(+), 1 deletions(-) diff --git a/drivers/input/mouse/bcm5974.c b/drivers/input/mouse/bcm5974.c index 0d1d334..4f8fe08 100644 --- a/drivers/input/mouse/bcm5974.c +++ b/drivers/input/mouse/bcm5974.c @@ -139,6 +139,7 @@ struct tp_finger { /* trackpad finger data size, empirically at least ten fingers */ #define SIZEOF_FINGER sizeof(struct tp_finger) #define SIZEOF_ALL_FINGERS (16 * SIZEOF_FINGER) +#define MAX_FINGER_ORIENTATION 16384 /* device-specific parameters */ struct bcm5974_param { @@ -284,6 +285,26 @@ static void setup_events_to_report(struct input_dev *input_dev, input_set_abs_params(input_dev, ABS_Y, 0, cfg-y.dim, cfg-y.fuzz, 0); + /* finger touch area */ + input_set_abs_params(input_dev, ABS_MT_TOUCH_MAJOR, + cfg-w.devmin, cfg-w.devmax, 0, 0); + input_set_abs_params(input_dev, ABS_MT_TOUCH_MINOR, + cfg-w.devmin, cfg-w.devmax, 0, 0); + /* finger approach area */ + input_set_abs_params(input_dev, ABS_MT_WIDTH_MAJOR, + cfg-w.devmin, cfg-w.devmax, 0, 0); + input_set_abs_params(input_dev, ABS_MT_WIDTH_MINOR, + cfg-w.devmin, cfg-w.devmax, 0, 0); + /* finger orientation */ + input_set_abs_params(input_dev, ABS_MT_ORIENTATION, + -MAX_FINGER_ORIENTATION, + MAX_FINGER_ORIENTATION, 0, 0); + /* finger position */ + input_set_abs_params(input_dev, ABS_MT_POSITION_X, + cfg-x.devmin, cfg-x.devmax, 0, 0); + input_set_abs_params(input_dev, ABS_MT_POSITION_Y, + cfg-y.devmin, cfg-y.devmax, 0, 0); + __set_bit(EV_KEY, input_dev-evbit); __set_bit(BTN_TOUCH, input_dev-keybit); __set_bit(BTN_TOOL_FINGER, input_dev-keybit); @@ -310,13 +331,29 @@ static int report_bt_state(struct bcm5974 *dev, int size) return 0; } +static void report_finger_data(struct input_dev *input, + const struct bcm5974_config *cfg, + const struct tp_finger *f) +{ + input_report_abs(input, ABS_MT_TOUCH_MAJOR, raw2int(f-force_major)); + input_report_abs(input, ABS_MT_TOUCH_MINOR, raw2int(f-force_minor)); + input_report_abs(input, ABS_MT_WIDTH_MAJOR, raw2int(f-size_major)); + input_report_abs(input, ABS_MT_WIDTH_MINOR, raw2int(f-size_minor)); + input_report_abs(input, ABS_MT_ORIENTATION, + MAX_FINGER_ORIENTATION - raw2int(f-orientation)); + input_report_abs(input, ABS_MT_POSITION_X, raw2int(f-abs_x)); + input_report_abs(input, ABS_MT_POSITION_Y, + cfg-y.devmin + cfg-y.devmax - raw2int(f-abs_y)); + input_mt_sync(input); +} + /* report trackpad data as logical trackpad state */ static int report_tp_state(struct bcm5974 *dev, int size) { const struct bcm5974_config *c = dev-cfg; const struct tp_finger *f; struct input_dev *input = dev-input; - int raw_p, raw_w, raw_x, raw_y, raw_n; + int raw_p, raw_w, raw_x, raw_y, raw_n, i; int ptest, origin, ibt = 0, nmin = 0, nmax = 0; int abs_p = 0, abs_w = 0, abs_x = 0, abs_y = 0; @@ -329,6 +366,11 @@ static int report_tp_state(struct bcm5974 *dev, int size) /* always track the first finger; when detached, start over */ if (raw_n) { + + /* report raw trackpad data */ + for (i = 0; i raw_n; i++) + report_finger_data(input, c, f[i]); + raw_p = raw2int(f-force_major); raw_w = raw2int(f-size_major); raw_x = raw2int(f-abs_x); -- 1.7.2.3