summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--CHANGES120
-rw-r--r--INSTALL2
-rw-r--r--bcm5974-dkms-mkdeb/debian/README.Debian23
-rw-r--r--bcm5974-dkms-mkdeb/debian/changelog4
-rw-r--r--bcm5974-dkms-mkdeb/debian/control5
-rw-r--r--bcm5974-dkms-mkdeb/debian/copyright41
-rw-r--r--bcm5974-dkms-mkdeb/debian/dirs1
-rw-r--r--bcm5974.c6
-rw-r--r--dkms.conf3
-rwxr-xr-xscripts/bcm5974-pre-install43
10 files changed, 185 insertions, 63 deletions
diff --git a/CHANGES b/CHANGES
index 8512d87..6e51394 100644
--- a/CHANGES
+++ b/CHANGES
@@ -1,78 +1,102 @@
108JUL2008 version 0.54 1bcm5974 (0.55) unstable; urgency=low
2----------------------
3 2
4And another one... finally got the bright idea to test it by emulating 3 * Package updates.
5the different product ids. 4 * Reverting GFP_ATOMIC for irq handlers.
6 5
707JUL2008 version 0.53 6 -- Henrik Rydberg <rydberg@euromail.se> Wed, 09 Jul 2008 20:59:39 +0200
8----------------------
9 7
10Another typo in the post-install script. 8bcm5974 (0.54) unstable; urgency=low
11 9
1207JUL2008 version 0.52 10 * And another one... finally got the bright idea to test it by
13---------------------- 11 emulating the different product ids.
14 12
15Typo in the post-install script. 13 -- Henrik Rydberg <rydberg@euromail.se> Tue, 08 Jul 2008 20:59:39 +0200
16 14
1707JUL2008 version 0.51 15bcm5974 (0.53) unstable; urgency=low
18----------------------
19 16
20Fine-tuned signal-to-noise ratio, smoother mouse motion. 17 * Another typo in the post-install script.
21Interrupt code got minor simplifications.
22GFP_ATOMIC completetly removed.
23 18
2406JUL2008 version 0.5 19 -- Henrik Rydberg <rydberg@euromail.se> Mon, 07 Jul 2008 20:59:39 +0200
25----------------------
26 20
27Working palm detection, changes for kernel.org, dkms introduced. 21bcm5974 (0.52) unstable; urgency=low
28 22
2901JUL2008 version 0.42 23 * Typo in the post-install script.
30----------------------
31 24
32First button click registered, pre/post-reset added. 25 -- Henrik Rydberg <rydberg@euromail.se> Mon, 07 Jul 2008 20:09:39 +0200
33 26
3429JUN2008 version 0.41 27bcm5974 (0.51) unstable; urgency=low
35----------------------
36 28
37The reset_resume kernel function added. 29 * Fine-tuned signal-to-noise ratio, smoother mouse motion.
30 * Interrupt code got minor simplifications.
31 * GFP_ATOMIC completetly removed.
38 32
3929JUN2008 version 0.4 33 -- Henrik Rydberg <rydberg@euromail.se> Mon, 07 Jul 2008 18:09:39 +0200
40----------------------
41 34
42Both finger pressure and width reported. 35bcm5974 (0.5) unstable; urgency=low
43 36
4427JUN2008 version 0.31 37 * Working palm detection
45---------------------- 38 * Changes for kernel.org
39 * DKMS introduced.
46 40
47Administrative changes for kernel.org. 41 -- Henrik Rydberg <rydberg@euromail.se> Sun, 06 Jul 2008 20:59:39 +0200
48 42
4927JUN2008 version 0.3 43bcm5974 (0.42) unstable; urgency=low
50----------------------
51 44
52Explicit device structure, use all packages. 45 * First button click registered.
46 * Hooks pre/post-reset added.
53 47
5427JUN2008 version 0.23 48 -- Henrik Rydberg <rydberg@euromail.se> Tue, 01 Jul 2008 20:59:39 +0200
55----------------------
56 49
57Finger release not reported properly. 50bcm5974 (0.41) unstable; urgency=low
58 51
5926JUN2008 version 0.22 52 * The reset_resume kernel function added.
60----------------------
61 53
62ABS coordinates more stable with synaptics. 54 -- Henrik Rydberg <rydberg@euromail.se> Sun, 29 Jun 2008 20:59:39 +0200
55
56bcm5974 (0.4) unstable; urgency=low
63 57
6425JUN2008 version 0.21 58 * Both finger pressure and width reported.
65----------------------
66 59
67Fixed the relative coordinate scaling. 60 -- Henrik Rydberg <rydberg@euromail.se> Sun, 29 Jun 2008 18:59:39 +0200
68 61
6925JUN2008 version 0.2 62bcm5974 (0.31) unstable; urgency=low
70----------------------
71 63
72Misinterpreted pressure input, noise reduction. 64 * Administrative changes for kernel.org.
73 65
7424JUN2008 version 0.1 66 -- Henrik Rydberg <rydberg@euromail.se> Fri, 27 Jun 2008 20:59:39 +0200
75----------------------
76 67
77First version. 68bcm5974 (0.3) unstable; urgency=low
78 69
70 * Explicit device structure, use all packages.
71
72 -- Henrik Rydberg <rydberg@euromail.se> Fri, 27 Jun 2008 18:59:39 +0200
73
74bcm5974 (0.23) unstable; urgency=low
75
76 * Finger release not reported properly.
77
78 -- Henrik Rydberg <rydberg@euromail.se> Fri, 27 Jun 2008 17:59:39 +0200
79
80bcm5974 (0.22) unstable; urgency=low
81
82 * ABS coordinates more stable with synaptics.
83
84 -- Henrik Rydberg <rydberg@euromail.se> Thu, 26 Jun 2008 20:59:39 +0200
85
86bcm5974 (0.21) unstable; urgency=low
87
88 * Fixed the relative coordinate scaling.
89
90 -- Henrik Rydberg <rydberg@euromail.se> Wed, 25 Jun 2008 20:59:39 +0200
91
92bcm5974 (0.2) unstable; urgency=low
93
94 * Misinterpreted pressure input, noise reduction.
95
96 -- Henrik Rydberg <rydberg@euromail.se> Wed, 25 Jun 2008 20:59:39 +0200
97
98bcm5974 (0.1) unstable; urgency=low
99
100 * First version.
101
102 -- Henrik Rydberg <rydberg@euromail.se> Tue, 24 Jun 2008 20:59:39 +0200
diff --git a/INSTALL b/INSTALL
index 7c7e975..2a2c42f 100644
--- a/INSTALL
+++ b/INSTALL
@@ -9,7 +9,7 @@ Standing in the source directory, do:
9 9
103. sudo ./scripts/bcm5974-post-install 103. sudo ./scripts/bcm5974-post-install
11 11
124. reboot (only if bcm5974 never was used before) 124. reboot (or reload the bcm5974 module if already installed)
13 13
14For trouble-shooting, try running 14For trouble-shooting, try running
15 15
diff --git a/bcm5974-dkms-mkdeb/debian/README.Debian b/bcm5974-dkms-mkdeb/debian/README.Debian
index 7a1b108..1f170f1 100644
--- a/bcm5974-dkms-mkdeb/debian/README.Debian
+++ b/bcm5974-dkms-mkdeb/debian/README.Debian
@@ -1,10 +1,23 @@
1MODULE_NAME DKMS module for Debian 1MODULE_NAME DKMS module for Debian
2 2
3This driver adds support for the multitouch trackpad on the new 3BCM5974: This driver adds support for the multitouch trackpad on the
4Apple Macbook Air and Macbook Pro Penryn laptops. It replaces the 4new Apple Macbook Air and Macbook Pro Penryn laptops. It replaces the
5appletouch driver on those computers, and integrates well with the 5appletouch driver on those computers, and integrates well with the
6synaptics driver of the Xorg system. 6synaptics driver of the Xorg system.
7 7
8This package was automatically generated by the DKMS system, 8Known to work on Macbook Air and Macbook Pro Penryn.
9for distribution on Debian based operating systems.
10 9
10* Install the debian package (uses dkms)
11
12* Reboot
13
14Post installation
15
16* Make sure your /etc/X11/xorg.conf settings are sane.
17
18* If experiencing problems with your xorg settings, try the
19 bcm5974-diagnostics script (dkms installs the source under /usr/src/).
20
21Enjoy!
22
23Henrik Rydberg <rydberg@euromail.se>
diff --git a/bcm5974-dkms-mkdeb/debian/changelog b/bcm5974-dkms-mkdeb/debian/changelog
index 029a7bc..1d4e435 100644
--- a/bcm5974-dkms-mkdeb/debian/changelog
+++ b/bcm5974-dkms-mkdeb/debian/changelog
@@ -1,6 +1,6 @@
1MODULE_NAME-dkms (MODULE_VERSION) unstable; urgency=low 1MODULE_NAME-dkms (MODULE_VERSION) unstable; urgency=low
2 2
3 * Automatically packaged by DKMS. 3 * Package updates.
4 * Reverting GFP_ATOMIC for irq handlers.
4 5
5 -- Henrik Rydberg <rydberg@euromail.se> DATE_STAMP 6 -- Henrik Rydberg <rydberg@euromail.se> DATE_STAMP
6
diff --git a/bcm5974-dkms-mkdeb/debian/control b/bcm5974-dkms-mkdeb/debian/control
index ad717e6..c5497bf 100644
--- a/bcm5974-dkms-mkdeb/debian/control
+++ b/bcm5974-dkms-mkdeb/debian/control
@@ -4,8 +4,13 @@ Priority: optional
4Maintainer: Henrik Rydberg <rydberg@euromail.se> 4Maintainer: Henrik Rydberg <rydberg@euromail.se>
5Build-Depends: debhelper (>= 5) 5Build-Depends: debhelper (>= 5)
6Standards-Version: 3.7.2 6Standards-Version: 3.7.2
7Homepage: http://web.comhem.se/rydberg/Bits/
7 8
8Package: MODULE_NAME-dkms 9Package: MODULE_NAME-dkms
9Architecture: all 10Architecture: all
10Depends: dkms (>= 1.95), bash (>> 1.99) 11Depends: dkms (>= 1.95), bash (>> 1.99)
11Description: Apple USB BCM5974 Multitouch trackpad support (DKMS) 12Description: Apple USB BCM5974 Multitouch trackpad support (DKMS)
13 This driver adds support for the multitouch trackpad on the new
14 Apple Macbook Air and Macbook Pro Penryn laptops. It replaces the
15 appletouch driver on those computers, and integrates well with the
16 synaptics driver of the Xorg system.
diff --git a/bcm5974-dkms-mkdeb/debian/copyright b/bcm5974-dkms-mkdeb/debian/copyright
index d690e83..e00b447 100644
--- a/bcm5974-dkms-mkdeb/debian/copyright
+++ b/bcm5974-dkms-mkdeb/debian/copyright
@@ -1,4 +1,41 @@
1GNU GENERAL PUBLIC LICENSE Version 2 1The bcm5974-dkms package was created using DKMS <dkms-devel@dell.com>
2 2
3See the LICENSE file of this distribution for details. 3Source URL: http://web.comhem.se/rydberg/Bits/
4 4
5Upstream Author: Henrik Rydberg <rydberg@euromail.se>
6
7Copyright:
8 Copyright (C) 2008 Henrik Rydberg (rydberg@euromail.se)
9
10 The USB initialization and package decoding was made by
11 Scott Shawcroft as part of the touchd user-space driver project:
12 Copyright (C) 2008 Scott Shawcroft (scott.shawcroft@gmail.com)
13
14 The BCM5974 driver is based on the appletouch driver:
15 Copyright (C) 2001-2004 Greg Kroah-Hartman (greg@kroah.com)
16 Copyright (C) 2005 Johannes Berg (johannes@sipsolutions.net)
17 Copyright (C) 2005 Stelian Pop (stelian@popies.net)
18 Copyright (C) 2005 Frank Arnold (frank@scirocco-5v-turbo.de)
19 Copyright (C) 2005 Peter Osterlund (petero2@telia.com)
20 Copyright (C) 2005 Michael Hanselmann (linux-kernel@hansmi.ch)
21 Copyright (C) 2006 Nicolas Boichat (nicolas@boichat.ch)
22
23License:
24
25 This program is free software; you can redistribute it and/or modify
26 it under the terms of the GNU General Public License as published by
27 the Free Software Foundation; either version 2 of the License, or
28 (at your option) any later version.
29
30 This program is distributed in the hope that it will be useful,
31 but WITHOUT ANY WARRANTY; without even the implied warranty of
32 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
33 GNU General Public License for more details.
34
35 You should have received a copy of the GNU General Public License
36 along with this program; if not, write to the Free Software
37 Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
38
39Packaging:
40 Copyright (C) 2008 by Henrik Rydberg <rydberg@euromail.se>
41 released under GPL 2
diff --git a/bcm5974-dkms-mkdeb/debian/dirs b/bcm5974-dkms-mkdeb/debian/dirs
index 2b01d9a..b601f22 100644
--- a/bcm5974-dkms-mkdeb/debian/dirs
+++ b/bcm5974-dkms-mkdeb/debian/dirs
@@ -1,2 +1 @@
1usr/src usr/src
2etc/modprobe.d
diff --git a/bcm5974.c b/bcm5974.c
index 4d9dd45..2b94835 100644
--- a/bcm5974.c
+++ b/bcm5974.c
@@ -167,7 +167,7 @@ struct atp {
167#define DIM_Y 800 /* maximum trackpad y value */ 167#define DIM_Y 800 /* maximum trackpad y value */
168 168
169/* logical signal quality */ 169/* logical signal quality */
170#define SN_PRESSURE 40 /* pressure signal-to-noise ratio */ 170#define SN_PRESSURE 45 /* pressure signal-to-noise ratio */
171#define SN_WIDTH 100 /* width signal-to-noise ratio */ 171#define SN_WIDTH 100 /* width signal-to-noise ratio */
172#define SN_COORD 250 /* coordinate signal-to-noise ratio */ 172#define SN_COORD 250 /* coordinate signal-to-noise ratio */
173 173
@@ -385,7 +385,7 @@ static void irq_button(struct urb *urb)
385 input_sync(dev->input); 385 input_sync(dev->input);
386 386
387exit: 387exit:
388 error = usb_submit_urb(dev->bt_urb, GFP_KERNEL); 388 error = usb_submit_urb(dev->bt_urb, GFP_ATOMIC);
389 if (error) 389 if (error)
390 err("bcm5974: button urb failed: %d", error); 390 err("bcm5974: button urb failed: %d", error);
391} 391}
@@ -424,7 +424,7 @@ static void irq_trackpad(struct urb *urb)
424 input_sync(dev->input); 424 input_sync(dev->input);
425 425
426exit: 426exit:
427 error = usb_submit_urb(dev->tp_urb, GFP_KERNEL); 427 error = usb_submit_urb(dev->tp_urb, GFP_ATOMIC);
428 if (error) 428 if (error)
429 err("bcm5974: trackpad urb failed: %d", error); 429 err("bcm5974: trackpad urb failed: %d", error);
430} 430}
diff --git a/dkms.conf b/dkms.conf
index cb169d6..44076e7 100644
--- a/dkms.conf
+++ b/dkms.conf
@@ -1,8 +1,9 @@
1PACKAGE_NAME="bcm5974" 1PACKAGE_NAME="bcm5974"
2PACKAGE_VERSION="0.54" 2PACKAGE_VERSION="0.55"
3MAKE[0]="make -C ${kernel_source_dir} 3MAKE[0]="make -C ${kernel_source_dir}
4 SUBDIRS=${dkms_tree}/${PACKAGE_NAME}/${PACKAGE_VERSION}/build modules" 4 SUBDIRS=${dkms_tree}/${PACKAGE_NAME}/${PACKAGE_VERSION}/build modules"
5BUILT_MODULE_NAME[0]="bcm5974" 5BUILT_MODULE_NAME[0]="bcm5974"
6DEST_MODULE_LOCATION[0]="/kernel/drivers/input/mouse" 6DEST_MODULE_LOCATION[0]="/kernel/drivers/input/mouse"
7PRE_INSTALL="scripts/bcm5974-pre-install"
7POST_INSTALL="scripts/bcm5974-post-install" 8POST_INSTALL="scripts/bcm5974-post-install"
8POST_REMOVE="scripts/bcm5974-post-remove" 9POST_REMOVE="scripts/bcm5974-post-remove"
diff --git a/scripts/bcm5974-pre-install b/scripts/bcm5974-pre-install
new file mode 100755
index 0000000..3c4556e
--- /dev/null
+++ b/scripts/bcm5974-pre-install
@@ -0,0 +1,43 @@
1#!/bin/bash
2#
3# bcm5943-pre-install - check system before installing the bcm5974
4#
5# Copyright (C) 2008 Henrik Rydberg (rydberg@euromail.se)
6#
7# This program is free software; you can redistribute it and/or modify
8# it under the terms of the GNU General Public License as published by
9# the Free Software Foundation; either version 2 of the License, or
10# (at your option) any later version.
11#
12# This program is distributed in the hope that it will be useful,
13# but WITHOUT ANY WARRANTY; without even the implied warranty of
14# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15# GNU General Public License for more details.
16#
17# You should have received a copy of the GNU General Public License
18# along with this program; if not, write to the Free Software
19# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
20#
21
22DRIVER=bcm5974
23LSUSB=/usr/sbin/lsusb
24
25PAT[0]="05ac:022"
26PAT[1]="05ac:023"
27
28#if [ -x $LSUSB ]; then
29if true; then
30 if [ "`$LSUSB|grep ${PAT[0]}`" != "" ]; then
31 exit 0
32 elif [ "`$LSUSB|grep ${PAT[1]}`" != "" ]; then
33 exit 0
34 else
35 echo bcm5974: no suitable device found
36 exit 1
37 fi
38else
39 echo bcm5974: cannot determine device type
40 exit 1
41fi
42
43exit 0