summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorpingc <pingc>2008-05-23 22:43:16 +0000
committerpingc <pingc>2008-05-23 22:43:16 +0000
commit1c9627cde6e853301a407903967d1f45db0f5513 (patch)
treebec11e5e241032d96848ab25c47ed65088c9827c
parente7358ba15824d89e9b4915cb6e03e288c80b3cb9 (diff)
downloadxf86-input-wacom-1c9627cde6e853301a407903967d1f45db0f5513.tar.gz
Updated configure.inrelease-0.8.0-3
-rw-r--r--ChangeLog5
-rw-r--r--configure.in25
-rwxr-xr-xsrc/xdrv/wcmISDV4.c19
3 files changed, 34 insertions, 15 deletions
diff --git a/ChangeLog b/ChangeLog
index 8afb21a..561349b 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2008-05-23 Ping Cheng <pingc@wacom.com>
+ * Fixed an issue in configure.in (Ron and Magnus)
+ * Fixed an issue in wcmISDV4.c
+ * Label 0.8.0-3
+
2008-05-14 Ping Cheng <pingc@wacom.com>
* Fixed rotation issue
* Label 0.8.0-2
diff --git a/configure.in b/configure.in
index af9ac0e..765a1fa 100644
--- a/configure.in
+++ b/configure.in
@@ -1,5 +1,5 @@
AC_PREREQ(2.58)
-AC_INIT(linuxwacom, 0.7.9)
+AC_INIT(linuxwacom, 0.8.0)
AM_INIT_AUTOMAKE
AM_MAINTAINER_MODE
@@ -832,30 +832,33 @@ fi
dnl =======================================================
dnl Check for xmoduledir
AC_MSG_CHECKING(for Wacom X driver module path)
-WCM_OPTION_DLLOADER=yes
WCM_MODDIR=
AC_ARG_WITH(xmoduledir,
AC_HELP_STRING([--with-xmoduledir], [Specify wacom_drv path explicitly. Implies --enable-dlloader]),
WCM_MODDIR="$withval")
-if test -d $WCM_XLIB_DIR/xorg/modules/input; then
- WCM_MODDIR=$WCM_XLIB_DIR/xorg/modules/input
-elif test -d $WCM_XLIB_DIR/modules/input; then
- WCM_MODDIR=$WCM_XLIB_DIR/modules/input
-elif -z "$WCM_MODDIR"; then
- WCM_OPTION_DLLOADER=no
+if test -z "$WCM_MODDIR"; then
+ if test -d $WCM_XLIB_DIR/xorg/modules/input; then
+ WCM_MODDIR=$WCM_XLIB_DIR/xorg/modules/input
+ elif test -d $WCM_XLIB_DIR/modules/input; then
+ WCM_MODDIR=$WCM_XLIB_DIR/modules/input
+ fi
fi
AC_MSG_RESULT($WCM_MODDIR)
dnl =======================================================
dnl Check for dlloader
AC_MSG_CHECKING(for dynamic driver loading support)
+if test -n "$WCM_MODDIR"; then
+ WCM_OPTION_DLLOADER=yes
+else
+ WCM_OPTION_DLLOADER=no
+fi
AC_ARG_ENABLE(dlloader,
AC_HELP_STRING([--enable-dlloader], [Use dlloader [[default=usually]]]),
WCM_OPTION_DLLOADER=$enableval)
+#don't enable dlloader when there is a wacom_drv.o under $WCM_MODDIR
if test "$WCM_OPTION_DLLOADER" = yes; then
- if test -f $WCM_MODDIR/evdev_drv.so -o -f $WCM_MODDIR/kbd_drv.so -o -f $WCM_MODDIR/mouse_drv.so; then
- WCM_OPTION_DLLOADER=yes
- else
+ if test -f $WCM_MODDIR/wacom_drv.o; then
WCM_OPTION_DLLOADER=no
fi
fi
diff --git a/src/xdrv/wcmISDV4.c b/src/xdrv/wcmISDV4.c
index d61aa45..3d27dc8 100755
--- a/src/xdrv/wcmISDV4.c
+++ b/src/xdrv/wcmISDV4.c
@@ -131,8 +131,8 @@ static int isdv4Query(LocalDevicePtr local, const char* query, char* data)
}
else
{
- ErrorF("Wacom unable to read ISDV4 control data "
- "after %d tries\n", MAXTRY);
+ ErrorF("Wacom unable to read ISDV4 %s data "
+ "after %d tries at (%d)\n", query, MAXTRY, common->wcmISDV4Speed);
return !Success;
}
}
@@ -140,8 +140,19 @@ static int isdv4Query(LocalDevicePtr local, const char* query, char* data)
/* Control data bit check */
if ( !(data[0] & 0x40) )
{
- ErrorF("Wacom Query ISDV4 control data (%x) error in %s query\n", data[0], query);
- return !Success;
+ /* Try 19200 if it is not a touch query */
+ if (common->wcmISDV4Speed != 19200 && strcmp(query, WC_ISDV4_TOUCH_QUERY))
+ {
+ common->wcmISDV4Speed = 19200;
+ if (xf86WcmSetSerialSpeed(local->fd, common->wcmISDV4Speed) < 0)
+ return !Success;
+ return isdv4Query(local, query, data);
+ }
+ else
+ {
+ ErrorF("Wacom ISDV4 control data (%x) error in %s query\n", data[0], query);
+ return !Success;
+ }
}
return Success;