FILES                |    2 -
 INSTALL              |   40 +++++++++++++++++---------------
 README.alps          |   20 ++++++++++------
 alpscomm.c           |    2 -
 eventcomm.c          |    2 -
 manpages/synaptics.5 |   42 +++++++++++++++++++++++++++-------
 synaptics.c          |   63 +++++++++++++++++++++++++++++++++++++++++----------
 synaptics.h          |    1 
 synclient.c          |   13 +++++-----
 9 files changed, 131 insertions(+), 54 deletions(-)

New commits:
commit cd6a1225ec319cad9788e8fba158d9792b55de23
Author: Joseph P. Skudlarek <[EMAIL PROTECTED](none)>
Date:   Fri Jul 6 15:39:53 2007 +0200

    Implement "corner coasting".

diff --git a/INSTALL b/INSTALL
index 91b6b67..900b8c5 100644
--- a/INSTALL
+++ b/INSTALL
@@ -65,6 +65,8 @@ Section "InputDevice"
   Option       "MaxTapTime"            "180"
   Option       "MaxTapMove"            "220"
   Option       "VertScrollDelta"       "100"
+  Option       "CornerCoasting"        "1"
+  Option       "CoastingSpeed"         "3"
   Option       "MinSpeed"              "0.09"
   Option       "MaxSpeed"              "0.18"
   Option       "AccelFactor"           "0.0015"
diff --git a/README.alps b/README.alps
index 206696f..d89b38b 100644
--- a/README.alps
+++ b/README.alps
@@ -30,6 +30,8 @@ Section "InputDevice"
   Option       "EmulateMidButtonTime"  "75"
   Option       "VertScrollDelta"       "20"
   Option       "HorizScrollDelta"      "20"
+  Option       "CornerCoasting"        "1"
+  Option       "CoastingSpeed"         "3"
   Option       "MinSpeed"              "0.3"
   Option       "MaxSpeed"              "0.75"
   Option       "AccelFactor"           "0.015"
diff --git a/manpages/synaptics.5 b/manpages/synaptics.5
index 14be846..6e99bd0 100644
--- a/manpages/synaptics.5
+++ b/manpages/synaptics.5
@@ -134,6 +134,9 @@ Enable vertical scrolling when dragging along the right 
edge.
 \fBHorizEdgeScroll\fR (Bool)
 Enable horizontal scrolling when dragging along the bottom edge.
 .TP
+\fBCornerCoasting\fR (Bool)
+Enable edge scrolling to continue while the finger stays in an edge corner.
+.TP
 \fBVertTwoFingerScroll\fR (Bool)
 Enable vertical scrolling when dragging with two fingers anywhere on
 the touchpad.
@@ -524,9 +527,15 @@ scrolling.
 Coasting is enabled by setting the CoastingSpeed parameter to a
 non-zero value.
 .
-When coasting is enabled, horizontal/vertical scrolling can continue
-after the finger is released from the lower/right edge of the
-touchpad.
+Coasting comes in two flavors: conventional (finger off) coasting, and
+corner (finger on) coasting.
+.LP
+Conventional coasting is enabled when coasting is enabled,
+and CornerCoasting is set to false.
+.
+When conventional coasting is enabled, horizontal/vertical scrolling
+can continue after the finger is released from the lower/right edge of
+the touchpad.
 .
 The driver computes the scrolling speed corresponding to the finger
 speed immediately before the finger leaves the touchpad.
@@ -537,6 +546,21 @@ with the same speed in the same direction until the finger 
touches the
 touchpad again.
 .
 .LP
+Corner coasting is enabled when coasting is enabled, and
+CornerCoasting is set to true.
+.
+When corner coasting is enabled, edge scrolling can continue as long
+as the finger stays in a corner.
+.
+Coasting begins when the finger enters the corner, and continues until
+the finger leaves the corner.
+.
+CornerCoasting takes precedence over the seamless switch from edge
+scrolling to circular scrolling.  That is, if CornerCoasting is
+active, scrolling will stop, and circular scrolling will not start,
+when the finger leaves the corner.
+.
+.LP
 Trackstick emulation mode is entered when pressing the finger hard on
 the touchpad.
 .
diff --git a/synaptics.c b/synaptics.c
index d65dbd1..802132c 100644
--- a/synaptics.c
+++ b/synaptics.c
@@ -1,4 +1,7 @@
 /*
+ *   Copyright 2007 Joseph P. Skudlarek <[EMAIL PROTECTED]>
+ *     patch for corner coasting (originally called corner edge scrolling)
+ *
  *   Copyright 2006 Christian Thaeter <[EMAIL PROTECTED]>
  *     patch for Trackstick mode
  *
@@ -428,6 +431,7 @@ SynapticsPreInit(InputDriverPtr drv, IDevPtr dev, int flags)
     pars->emulate_twofinger_z = xf86SetIntOption(opts, "EmulateTwoFingerMinZ", 
257);
     pars->scroll_edge_vert = xf86SetBoolOption(opts, "VertEdgeScroll", TRUE);
     pars->scroll_edge_horiz = xf86SetBoolOption(opts, "HorizEdgeScroll", TRUE);
+    pars->scroll_edge_corner = xf86SetBoolOption(opts, "CornerCoasting", 
FALSE);
     pars->scroll_twofinger_vert = xf86SetBoolOption(opts, 
"VertTwoFingerScroll", FALSE);
     pars->scroll_twofinger_horiz = xf86SetBoolOption(opts, 
"HorizTwoFingerScroll", FALSE);
     pars->edge_motion_min_z = xf86SetIntOption(opts, "EdgeMotionMinZ", 30);
@@ -1465,6 +1469,14 @@ start_coasting(SynapticsPrivate *priv, struct 
SynapticsHwState *hw, edge_type ed
     priv->scroll_packet_count = 0;
 }
 
+static void
+stop_coasting(SynapticsPrivate *priv)
+{
+    priv->autoscroll_xspd = 0;
+    priv->autoscroll_yspd = 0;
+    priv->scroll_packet_count = 0;
+}
+
 static int
 HandleScrolling(SynapticsPrivate *priv, struct SynapticsHwState *hw,
                edge_type edge, Bool finger, struct ScrollData *sd)
@@ -1475,8 +1487,7 @@ HandleScrolling(SynapticsPrivate *priv, struct 
SynapticsHwState *hw,
     sd->left = sd->right = sd->up = sd->down = 0;
 
     if (priv->synpara->touchpad_off == 2) {
-       priv->autoscroll_xspd = 0;
-       priv->autoscroll_yspd = 0;
+       stop_coasting(priv);
        priv->circ_scroll_on = FALSE;
        priv->vert_scroll_edge_on = FALSE;
        priv->horiz_scroll_edge_on = FALSE;
@@ -1487,9 +1498,7 @@ HandleScrolling(SynapticsPrivate *priv, struct 
SynapticsHwState *hw,
 
     /* scroll detection */
     if (finger && !priv->finger_state) {
-       priv->autoscroll_xspd = 0;
-       priv->autoscroll_yspd = 0;
-       priv->scroll_packet_count = 0;
+       stop_coasting(priv);
        if (para->circular_scrolling) {
            if ((para->circular_trigger == 0 && edge) ||
                (para->circular_trigger == 1 && edge & TOP_EDGE) ||
@@ -1571,18 +1580,40 @@ HandleScrolling(SynapticsPrivate *priv, struct 
SynapticsHwState *hw,
            DBG(7, ErrorF("horiz edge scroll off\n"));
            priv->horiz_scroll_edge_on = FALSE;
        }
-       if ((oldv || oldh) &&
+       /* If we were corner edge scrolling (coasting),
+        * but no longer in corner or raised a finger, then stop coasting. */
+       if (para->scroll_edge_corner && (priv->autoscroll_xspd || 
priv->autoscroll_yspd)) {
+           Bool is_in_corner =
+               ((edge & RIGHT_EDGE)  && (edge & (TOP_EDGE | BOTTOM_EDGE))) ||
+               ((edge & BOTTOM_EDGE) && (edge & (LEFT_EDGE | RIGHT_EDGE))) ;
+           if (!is_in_corner || !finger) {
+               DBG(7, ErrorF("corner edge scroll off\n"));
+               stop_coasting(priv);
+           }
+       }
+       /* if we were scrolling, but couldn't corner edge scroll,
+        * and are no longer scrolling, then start coasting */
+       if ((oldv || oldh) && !para->scroll_edge_corner &&
            !(priv->circ_scroll_on || priv->vert_scroll_edge_on ||
              priv->horiz_scroll_edge_on)) {
            start_coasting(priv, hw, edge, oldv);
        }
     }
 
-    /* if hitting a corner (top right or bottom right) while vertical scrolling
-       is active, switch over to circular scrolling smoothly */
+    /* if hitting a corner (top right or bottom right) while vertical
+     * scrolling is active, consider starting corner edge scrolling or
+     * switching over to circular scrolling smoothly */
     if (priv->vert_scroll_edge_on && !priv->horiz_scroll_edge_on &&
-       para->circular_scrolling) {
-       if ((edge & RIGHT_EDGE) && (edge & (TOP_EDGE | BOTTOM_EDGE))) {
+       (edge & RIGHT_EDGE) && (edge & (TOP_EDGE | BOTTOM_EDGE))) {
+       if (para->scroll_edge_corner) {
+           if (priv->autoscroll_yspd == 0) {
+               /* FYI: We can generate multiple start_coasting requests if
+                * we're in the corner, but we were moving so slowly when we
+                * got here that we didn't actually start coasting. */
+               DBG(7, ErrorF("corner edge scroll on\n"));
+               start_coasting(priv, hw, edge, TRUE);
+           }
+       } else if (para->circular_scrolling) {
            priv->vert_scroll_edge_on = FALSE;
            priv->circ_scroll_on = TRUE;
            priv->circ_scroll_vert = TRUE;
@@ -1592,8 +1623,16 @@ HandleScrolling(SynapticsPrivate *priv, struct 
SynapticsHwState *hw,
     }
     /* Same treatment for horizontal scrolling */
     if (priv->horiz_scroll_edge_on && !priv->vert_scroll_edge_on &&
-       para->circular_scrolling) {
-       if ((edge & BOTTOM_EDGE) && (edge & (LEFT_EDGE | RIGHT_EDGE))) {
+       (edge & BOTTOM_EDGE) && (edge & (LEFT_EDGE | RIGHT_EDGE))) {
+       if (para->scroll_edge_corner) {
+           if (priv->autoscroll_xspd == 0) {
+               /* FYI: We can generate multiple start_coasting requests if
+                * we're in the corner, but we were moving so slowly when we
+                * got here that we didn't actually start coasting. */
+               DBG(7, ErrorF("corner edge scroll on\n"));
+               start_coasting(priv, hw, edge, FALSE);
+           }
+       } else if (para->circular_scrolling) {
            priv->horiz_scroll_edge_on = FALSE;
            priv->circ_scroll_on = TRUE;
            priv->circ_scroll_vert = FALSE;
diff --git a/synaptics.h b/synaptics.h
index 225eeb9..f780849 100644
--- a/synaptics.h
+++ b/synaptics.h
@@ -64,6 +64,7 @@ typedef struct _SynapticsSHM
     int scroll_dist_horiz;                 /* Scrolling distance in absolute 
coordinates */
     Bool scroll_edge_vert;                 /* Enable/disable vertical 
scrolling on right edge */
     Bool scroll_edge_horiz;                /* Enable/disable horizontal 
scrolling on left edge */
+    Bool scroll_edge_corner;               /* Enable/disable continuous edge 
scrolling when in the corner */
     Bool scroll_twofinger_vert;                    /* Enable/disable vertical 
two-finger scrolling */
     Bool scroll_twofinger_horiz;           /* Enable/disable horizontal 
two-finger scrolling */
     double min_speed, max_speed, accl;     /* movement parameters */
diff --git a/synclient.c b/synclient.c
index 3868658..aa5479c 100644
--- a/synclient.c
+++ b/synclient.c
@@ -68,6 +68,7 @@ static struct Parameter params[] = {
     DEFINE_PAR("HorizScrollDelta",     scroll_dist_horiz,       PT_INT,    0, 
1000),
     DEFINE_PAR("VertEdgeScroll",       scroll_edge_vert,        PT_BOOL,   0, 
1),
     DEFINE_PAR("HorizEdgeScroll",      scroll_edge_horiz,       PT_BOOL,   0, 
1),
+    DEFINE_PAR("CornerCoasting",       scroll_edge_corner,      PT_BOOL,   0, 
1),
     DEFINE_PAR("VertTwoFingerScroll",  scroll_twofinger_vert,   PT_BOOL,   0, 
1),
     DEFINE_PAR("HorizTwoFingerScroll", scroll_twofinger_horiz,  PT_BOOL,   0, 
1),
     DEFINE_PAR("MinSpeed",             min_speed,               PT_DOUBLE, 0, 
1.0),

commit 80a10d7a097747fd6d7ab9806853e68601276334
Author: Peter Osterlund <[EMAIL PROTECTED]>
Date:   Fri Jul 6 15:25:24 2007 +0200

    Update my copyright information.

diff --git a/alpscomm.c b/alpscomm.c
index 822d173..89d2a4a 100644
--- a/alpscomm.c
+++ b/alpscomm.c
@@ -1,7 +1,7 @@
 /* Copyright (C) 2001 Stefan Gmeiner <[EMAIL PROTECTED]>
  *
  * Copyright (c) 2003 Neil Brown <[EMAIL PROTECTED]>
- * Copyright (c) 2003-2004 Peter Osterlund <[EMAIL PROTECTED]>
+ * Copyright (c) 2003-2005,2007 Peter Osterlund <[EMAIL PROTECTED]>
  *
  *   This program is free software; you can redistribute it and/or
  *   modify it under the terms of the GNU General Public License
diff --git a/eventcomm.c b/eventcomm.c
index c4e0996..e3257cd 100644
--- a/eventcomm.c
+++ b/eventcomm.c
@@ -1,5 +1,5 @@
 /*
- *   Copyright 2004 Peter Osterlund <[EMAIL PROTECTED]>
+ *   Copyright 2004-2007 Peter Osterlund <[EMAIL PROTECTED]>
  *
  *   This program is free software; you can redistribute it and/or
  *   modify it under the terms of the GNU General Public License
diff --git a/synclient.c b/synclient.c
index ff73cd0..3868658 100644
--- a/synclient.c
+++ b/synclient.c
@@ -1,5 +1,5 @@
 /*
- *   Copyright 2002-2004 Peter Osterlund <[EMAIL PROTECTED]>
+ *   Copyright 2002-2005,2007 Peter Osterlund <[EMAIL PROTECTED]>
  *
  *   This program is free software; you can redistribute it and/or
  *   modify it under the terms of the GNU General Public License

commit 0ce431dc5291d95f4b3e78f9fb1c9e0be5de5abd
Author: Joseph P. Skudlarek <[EMAIL PROTECTED](none)>
Date:   Fri Jul 6 15:07:01 2007 +0200

    Repair mismatch between driver and client regarding parameter names.

diff --git a/INSTALL b/INSTALL
index 2ccc112..91b6b67 100644
--- a/INSTALL
+++ b/INSTALL
@@ -53,7 +53,7 @@ Section "InputDevice"
   Driver       "synaptics"
   Option       "Device"                "/dev/psaux"
   Option       "Protocol"              "auto-dev"
-# enable SHMCOnfig if you want to enable synclient
+# enable SHMConfig if you want to enable synclient
 # NB: enabling SHMConfig is insecure, since any user can invoke it
 #  Option       "SHMConfig"             "on"
   Option       "LeftEdge"              "1700"
diff --git a/manpages/synaptics.5 b/manpages/synaptics.5
index 702d95f..14be846 100644
--- a/manpages/synaptics.5
+++ b/manpages/synaptics.5
@@ -203,12 +203,12 @@ If on, the left/right buttons generate button 6/7 events.
 .
 If off, the left/right buttons both generate button 2 events.
 .TP
-\fBUpDownRepeat\fR (Bool)
+\fBUpDownScrollRepeat\fR (Bool)
 If on, and the up/down buttons are used for scrolling
 (\fBUpDownScrolling\fR), these buttons will send auto-repeating 4/5 events,
 with the delay between repeats determined by \fBScrollButtonRepeat\fR.
 .TP
-\fBLeftRightRepeat\fR (Bool)
+\fBLeftRightScrollRepeat\fR (Bool)
 If on, and the left/right buttons are used for scrolling
 (\fBLeftRightScrolling\fR), these buttons will send auto-repeating 6/7 events,
 with the delay between repeats determined by \fBScrollButtonRepeat\fR.
diff --git a/synclient.c b/synclient.c
index 6bf3ed0..ff73cd0 100644
--- a/synclient.c
+++ b/synclient.c
@@ -81,8 +81,8 @@ static struct Parameter params[] = {
     DEFINE_PAR("EdgeMotionUseAlways",  edge_motion_use_always,  PT_BOOL,   0, 
1),
     DEFINE_PAR("UpDownScrolling",      updown_button_scrolling, PT_BOOL,   0, 
1),
     DEFINE_PAR("LeftRightScrolling",   leftright_button_scrolling, PT_BOOL,   
0, 1),
-    DEFINE_PAR("UpDownRepeat",         updown_button_repeat,    PT_BOOL,   0, 
1),
-    DEFINE_PAR("LeftRightRepeat",      leftright_button_repeat, PT_BOOL,   0, 
1),
+    DEFINE_PAR("UpDownScrollRepeat",   updown_button_repeat,    PT_BOOL,   0, 
1),
+    DEFINE_PAR("LeftRightScrollRepeat",leftright_button_repeat, PT_BOOL,   0, 
1),
     DEFINE_PAR("ScrollButtonRepeat",   scroll_button_repeat,    PT_INT,    
SBR_MIN , SBR_MAX),
     DEFINE_PAR("TouchpadOff",          touchpad_off,            PT_INT,    0, 
2),
     DEFINE_PAR("GuestMouseOff",        guestmouse_off,          PT_BOOL,   0, 
1),

commit f6ccc31c29c9dfefd033ec1c5be6fdc11206bffb
Author: Peter Osterlund <[EMAIL PROTECTED]>
Date:   Sun Jun 3 22:27:45 2007 +0200

    Align the "synclient -l" output.

diff --git a/synclient.c b/synclient.c
index 1436121..6bf3ed0 100644
--- a/synclient.c
+++ b/synclient.c
@@ -137,13 +137,13 @@ show_settings(SynapticsSHM *synshm)
        struct Parameter* par = &params[i];
        switch (par->type) {
        case PT_INT:
-           printf("    %-20s = %d\n", par->name, *(int*)((char*)synshm + 
par->offset));
+           printf("    %-23s = %d\n", par->name, *(int*)((char*)synshm + 
par->offset));
            break;
        case PT_BOOL:
-           printf("    %-20s = %d\n", par->name, *(Bool*)((char*)synshm + 
par->offset));
+           printf("    %-23s = %d\n", par->name, *(Bool*)((char*)synshm + 
par->offset));
            break;
        case PT_DOUBLE:
-           printf("    %-20s = %g\n", par->name, *(double*)((char*)synshm + 
par->offset));
+           printf("    %-23s = %g\n", par->name, *(double*)((char*)synshm + 
par->offset));
            break;
        }
     }

commit cab78d760ddbd26511143cfd309cfa3120864472
Author: Joseph P. Skudlarek <[EMAIL PROTECTED](none)>
Date:   Sun Jun 3 21:42:10 2007 +0200

    Documentation update.

diff --git a/INSTALL b/INSTALL
index 8fcf919..2ccc112 100644
--- a/INSTALL
+++ b/INSTALL
@@ -49,24 +49,26 @@ EndSection
    following lines:
 
 Section "InputDevice"
-  Identifier   "Synaptics Mouse"
-  Driver       "synaptics"
-  Option       "Device"        "/dev/psaux"
-  Option       "Protocol"      "auto-dev"
-  Option       "LeftEdge"      "1700"
-  Option       "RightEdge"     "5300"
-  Option       "TopEdge"       "1700"
-  Option       "BottomEdge"    "4200"
-  Option       "FingerLow"     "25"
-  Option       "FingerHigh"    "30"
-  Option       "MaxTapTime"    "180"
-  Option       "MaxTapMove"    "220"
-  Option       "VertScrollDelta" "100"
-  Option       "MinSpeed"      "0.09"
-  Option       "MaxSpeed"      "0.18"
-  Option       "AccelFactor"   "0.0015"
-  Option       "SHMConfig"     "on"
-#  Option      "Repeater"      "/dev/ps2mouse"
+  Identifier   "Synaptics Mouse"
+  Driver       "synaptics"
+  Option       "Device"                "/dev/psaux"
+  Option       "Protocol"              "auto-dev"
+# enable SHMCOnfig if you want to enable synclient
+# NB: enabling SHMConfig is insecure, since any user can invoke it
+#  Option       "SHMConfig"             "on"
+  Option       "LeftEdge"              "1700"
+  Option       "RightEdge"             "5300"
+  Option       "TopEdge"               "1700"
+  Option       "BottomEdge"            "4200"
+  Option       "FingerLow"             "25"
+  Option       "FingerHigh"            "30"
+  Option       "MaxTapTime"            "180"
+  Option       "MaxTapMove"            "220"
+  Option       "VertScrollDelta"       "100"
+  Option       "MinSpeed"              "0.09"
+  Option       "MaxSpeed"              "0.18"
+  Option       "AccelFactor"           "0.0015"
+#  Option      "Repeater"              "/dev/ps2mouse"
 EndSection
 
 Change the Identifier to the same name as in the ServerLayout section.
diff --git a/README.alps b/README.alps
index fa6d038..206696f 100644
--- a/README.alps
+++ b/README.alps
@@ -12,13 +12,13 @@ touchpads, you probably have to change some parameter 
values. Here is
 an example InputDevice section for the X configuration file.
 
 Section "InputDevice"
-  Driver       "synaptics"
-  Identifier   "Mouse[1]"
-  Option       "Device"                "/dev/psaux"
+  Driver       "synaptics"
+  Identifier   "Mouse[1]"
+  Option       "Device"                "/dev/psaux"
   Option       "Protocol"              "auto-dev"
 # enable SHMConfig if you want to enable synclient
 # NB: enabling SHMConfig is insecure, since any user can invoke it
-#  Option      "SHMConfig"             "on"
+#  Option       "SHMConfig"             "on"
   Option       "LeftEdge"              "120"
   Option       "RightEdge"             "830"
   Option       "TopEdge"               "120"
diff --git a/manpages/synaptics.5 b/manpages/synaptics.5
index 0304cf3..702d95f 100644
--- a/manpages/synaptics.5
+++ b/manpages/synaptics.5
@@ -61,7 +61,9 @@ The driver behavior can be configured with parameters.
 These parameters are options in the InputDevice section in the
 XOrg/XFree86 config file.
 .
-See the INSTALL file for a working example.
+See the INSTALL file for a working example for a synaptics touchpad.
+.
+See the README.alps file for a working example for an ALPS touchpad.
 .
 If you have the SHMConfig parameter enabled, these parameters can also
 be changed at runtime with the synclient(1) program.
@@ -506,8 +508,8 @@ region, which can be all edges, a particular side, or a 
particular
 corner.
 .
 Once scrolling is engaged, moving your finger in clockwise circles
-around the touchpad will generate scroll down events and counter
-clockwise scroll up events.
+around the center of the touchpad will generate scroll down events and
+counter clockwise motion will generate scroll up events.
 .
 Lifting your finger will disengage circular scrolling.
 .

commit b54890504a17916f6633d8069164a06e42824238
Author: Joseph P. Skudlarek <[EMAIL PROTECTED](none)>
Date:   Mon May 28 12:25:39 2007 -0700

    Comment out SHMConfig, and explain that it is insecure.

diff --git a/README.alps b/README.alps
index 6a2314b..fa6d038 100644
--- a/README.alps
+++ b/README.alps
@@ -16,7 +16,9 @@ Section "InputDevice"
   Identifier   "Mouse[1]"
   Option       "Device"                "/dev/psaux"
   Option       "Protocol"              "auto-dev"
-  Option       "SHMConfig"             "on"
+# enable SHMConfig if you want to enable synclient
+# NB: enabling SHMConfig is insecure, since any user can invoke it
+#  Option      "SHMConfig"             "on"
   Option       "LeftEdge"              "120"
   Option       "RightEdge"             "830"
   Option       "TopEdge"               "120"

commit 2a946548ff6083edc3f300cb553ce45588f625ba
Author: Joseph P. Skudlarek <[EMAIL PROTECTED](none)>
Date:   Mon May 28 12:23:47 2007 -0700

    Alsp documentation update.
    
    Fix typo in prose -- no longer need to set Device;
    augment example to suggest using shared memory, so can use synclient

diff --git a/README.alps b/README.alps
index ce807cb..6a2314b 100644
--- a/README.alps
+++ b/README.alps
@@ -16,6 +16,7 @@ Section "InputDevice"
   Identifier   "Mouse[1]"
   Option       "Device"                "/dev/psaux"
   Option       "Protocol"              "auto-dev"
+  Option       "SHMConfig"             "on"
   Option       "LeftEdge"              "120"
   Option       "RightEdge"             "830"
   Option       "TopEdge"               "120"
@@ -39,7 +40,7 @@ Section "InputDevice"
 EndSection
 
 If you use a 2.4 linux kernel, you don't need to patch the kernel, but
-you should instead set "Device" and "Protocol" like this:
+you should instead set "Protocol" like this:
 
   Option       "Protocol"              "alps"
 

commit 9a7ea338e558449aa62e152d7a79e8cb71224754
Author: Joseph P. Skudlarek <[EMAIL PROTECTED](none)>
Date:   Mon May 28 11:26:14 2007 -0700

    Clarify that alps.patch file is not always needed.

diff --git a/FILES b/FILES
index a8db79b..d3d0624 100644
--- a/FILES
+++ b/FILES
@@ -9,5 +9,5 @@ script/usbmouse         script for shutting the touchpad down if
                        an external USB-mouse is attached
 syndaemon.c            A user space program that disables the touchpad
                        when the keyboard is used.
-alps.patch             Patch for 2.6 kernels that makes it possible to
+alps.patch             Patch for older 2.6 kernels that makes it possible to
                        use the driver with an ALPS GlidePoint device.
diff --git a/README.alps b/README.alps
index 1b63cb0..ce807cb 100644
--- a/README.alps
+++ b/README.alps
@@ -1,7 +1,8 @@
 It is possible to use this driver with an ALPS Glidepoint device. If
-you use a 2.6 linux kernel, you need to apply the ALPS kernel patch 
-in the alps.patch file. See http://www.kernelnewbies.org/faq/ for
-information about how to apply kernel patches and compile kernels.
+you use an older 2.6 linux kernel which has no ALPS input driver, you
+need to apply the ALPS kernel patch in the alps.patch file. See
+http://www.kernelnewbies.org/faq/ for information about how to apply
+kernel patches and compile kernels.
 
 Note! If you use kernel 2.6.11 or later, the alps patch is already
 included, so you don't have to patch your kernel.


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]

Reply via email to