Go to:
Gentoo Home
Documentation
Forums
Lists
Bugs
Planet
Store
Wiki
Get Gentoo!
Gentoo's Bugzilla – Attachment 152655 Details for
Bug 221117
[ebuild] x11-drivers/linuxwacom - Disable quirk rescaling, and support old baudrate
Home
|
New
–
[Ex]
|
Browse
|
Search
|
Privacy Policy
|
[?]
|
Reports
|
Requests
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
[patch]
Patch to fall back to 19200 baud
0.8.0-Fixed-Tablet-PC-baudrate-19200-issue.patch (text/plain), 8.16 KB, created by
Gautam Iyer
on 2008-05-09 17:49:33 UTC
(
hide
)
Description:
Patch to fall back to 19200 baud
Filename:
MIME Type:
Creator:
Gautam Iyer
Created:
2008-05-09 17:49:33 UTC
Size:
8.16 KB
patch
obsolete
>From: Ping Cheng <pinglinux@gmail.com> >Date: Wed, 7 May 2008 22:30:46 +0000 (-0700) >Subject: Fixed Tablet PC baudrate 19200 issue. >X-Git-Url: http://git.debian.org/?p=collab-maint%2Flinux-wacom.git;a=commitdiff_plain;h=12d6a464e4c57e04ea35a87279ae6ecd92e2f15a > >Fixed Tablet PC baudrate 19200 issue. >--- > >diff --git a/src/util/xidump.c b/src/util/xidump.c >index 47e6220..3f04923 100755 >--- a/src/util/xidump.c >+++ b/src/util/xidump.c >@@ -2,7 +2,7 @@ > ** xidump.c > ** > ** Copyright (C) 2003 - 2004 - John E. Joganic >-** Copyright (C) 2004 - 2007 - Ping Cheng >+** Copyright (C) 2004 - 2008 - Ping Cheng > ** > ** This program is free software; you can redistribute it and/or > ** modify it under the terms of the GNU General Public License >@@ -30,6 +30,7 @@ > ** 2006-05-05 0.7.4 - Removed older 2.6 kernels > ** 2006-07-19 0.7.5 - Support buttons and keys combined > ** 2007-01-10 0.7.7 - Don't list uninitialized tools >+** 2008-05-06 0.8.0 - Support Xorg 7.3 or later > ** > ****************************************************************************/ > >@@ -41,7 +42,7 @@ > #include <sys/time.h> > #include <math.h> > >-#define XIDUMP_VERSION "0.7.7" >+#define XIDUMP_VERSION "0.8.0" > > #include "../include/util-config.h" > >@@ -52,6 +53,7 @@ > #include <X11/Xlib.h> > #include <X11/extensions/XInput.h> > #include <X11/extensions/XIproto.h> >+#include <X11/keysym.h> > > enum > { >@@ -156,8 +158,14 @@ int ListDevices(Display* pDisp, const char* pszDeviceName) > (pDev->use == 0) ? "disabled" : > (pDev->use == IsXKeyboard) ? "keyboard" : > (pDev->use == IsXPointer) ? "pointer" : >- (pDev->use == IsXExtensionDevice) ? "extension" : >- "unknown"); >+#ifndef WCM_ISXEXTENSIONPOINTER >+ (pDev->use == IsXExtensionDevice) ? >+#else >+ (pDev->use == IsXExtensionDevice || >+ pDev->use == IsXExtensionKeyboard || >+ pDev->use == IsXExtensionPointer) ? >+#endif >+ "extension" : "unknown"); > > if (gnVerbose) > { >@@ -444,7 +452,7 @@ static int CursesRun(Display* pDisp, XDeviceInfo* pDevInfo, FORMATTYPE fmt) > nTitleRow = nRow; > if (pValInfo) > { >- snprintf(chBuf,sizeof(chBuf),"Valuators: %s ID: Undefined Serial Number: Undefined", >+ snprintf(chBuf,sizeof(chBuf),"Valuators: %s ID: Unreported Serial Number: Unreported", > pValInfo->mode == Absolute ? "Absolute" : > pValInfo->mode == Relative ? "Relative" : "Unknown"); > wacscrn_output(nRow,0,chBuf); >@@ -539,13 +547,21 @@ static int CursesRun(Display* pDisp, XDeviceInfo* pDevInfo, FORMATTYPE fmt) > else > { > /* title value */ >- int v = (pMove->axis_data[3]&0xffff0000) >> 16; > snprintf(chBuf,sizeof(chBuf),"%s", > pValInfo->mode == Absolute ? "Absolute" : > pValInfo->mode == Relative ? "Relative" : "Unknown"); > wacscrn_output(nTitleRow,11,chBuf); >+ >+ /* Device/tool ID can only be retrieved through the ToolID option >+ * of xsetwacom due to valuator backward compatibility concern >+ * >+ v = (pMove->axis_data[3]&0xffff0000) >> 16; > snprintf(chBuf, sizeof(chBuf), "%10d", v); > wacscrn_output(nTitleRow, 25, chBuf); >+ >+ * serial number can only be retrieved through the ToolSerial option >+ * of xsetwacom due to valuator backward compatibility concern >+ * > v = (pMove->axis_data[4]&0xffff0000) | > ((pMove->axis_data[5]&0xffff0000)>>16); > if ( v ) >@@ -553,6 +569,7 @@ static int CursesRun(Display* pDisp, XDeviceInfo* pDevInfo, FORMATTYPE fmt) > snprintf(chBuf,sizeof(chBuf), "%12d", v); > wacscrn_output(nTitleRow,52,chBuf); > } >+ */ > > for (k=0; k<pValInfo->num_axes && k<3; ++k) > { >diff --git a/src/wacomxi/wacomcpl-exec b/src/wacomxi/wacomcpl-exec >index a60bc55..4b63eb6 100755 >--- a/src/wacomxi/wacomcpl-exec >+++ b/src/wacomxi/wacomcpl-exec >@@ -192,7 +192,7 @@ proc calibrationSequence {which xDev yDev} { > set type $getDeviceModel($device,type) > if { ![ string compare $type "stylus" ] } { > set eraser $getDeviceModel($device,eraser) >- if { [ string compare $eraser $device ] } { >+ if { [ string compare $eraser $device ] && $eraser != "" } { > updateXinitrc $eraser topx $xDevMin > updateXinitrc $eraser topy $yDevMin > updateXinitrc $eraser bottomx $xDevMax >@@ -502,6 +502,10 @@ proc createDeviceList {} { > grid .workingDev.sb -row 2 -sticky nse > set flag 0 > foreach dev $devices { >+ # initial related erasers for styli >+ set getDeviceModel($dev,eraser) "" >+ } >+ foreach dev $devices { > .workingDev.list insert end $dev > createScreenList $dev > set type $getDeviceModel($dev,type) >diff --git a/src/xdrv/wcmCommon.c b/src/xdrv/wcmCommon.c >index 2568897..84de3e3 100755 >--- a/src/xdrv/wcmCommon.c >+++ b/src/xdrv/wcmCommon.c >@@ -1597,7 +1597,8 @@ static void commonDispatchDevice(WacomCommonPtr common, unsigned int channel, > > if (priv->oldProximity) > { >- if (abs(filtered.distance - common->wcmMaxCursorDist) > common->wcmCursorProxoutDist) >+ if (abs(filtered.distance - common->wcmMaxCursorDist) >+ > common->wcmCursorProxoutDist) > filtered.proximity = 0; > } > /* once it is out. Don't let it in until a hard in */ >@@ -1694,10 +1695,10 @@ int xf86WcmInitTablet(LocalDevicePtr local, const char* id, float version) > > /* output tablet state as probed */ > if (xf86Verbose) >- ErrorF("%s Wacom %s tablet speed=%d maxX=%d maxY=%d maxZ=%d " >+ ErrorF("%s Wacom %s tablet speed=%d (%d) maxX=%d maxY=%d maxZ=%d " > "resX=%d resY=%d tilt=%s\n", > XCONFIG_PROBED, >- model->name, common->wcmLinkSpeed, >+ model->name, common->wcmLinkSpeed, common->wcmISDV4Speed, > common->wcmMaxX, common->wcmMaxY, common->wcmMaxZ, > common->wcmResolX, common->wcmResolY, > HANDLE_TILT(common) ? "enabled" : "disabled"); >diff --git a/src/xdrv/wcmISDV4.c b/src/xdrv/wcmISDV4.c >index 9c66110..cafdf08 100755 >--- a/src/xdrv/wcmISDV4.c >+++ b/src/xdrv/wcmISDV4.c >@@ -71,7 +71,7 @@ static Bool isdv4Init(LocalDevicePtr local, char* id, float *version) > > DBG(1, priv->debugLevel, ErrorF("initializing ISDV4 tablet\n")); > >- /* Try 38400 first */ >+ /* Initial baudrate is 38400 */ > if (xf86WcmSetSerialSpeed(local->fd, common->wcmISDV4Speed) < 0) > return !Success; > >@@ -96,6 +96,8 @@ static int isdv4Query(LocalDevicePtr local, const char* query, char* data) > WacomDevicePtr priv = (WacomDevicePtr)local->private; > WacomCommonPtr common = priv->common; > >+ DBG(1, priv->debugLevel, ErrorF("Querying ISDV4 tablet\n")); >+ > /* Send stop command to the tablet */ > err = xf86WcmWrite(local->fd, query, strlen(query)); > if (err == -1) >@@ -119,28 +121,22 @@ static int isdv4Query(LocalDevicePtr local, const char* query, char* data) > /* Read the control data */ > if (!xf86WcmWaitForTablet(local->fd, data, 11)) > { >- ErrorF("Wacom unable to read ISDV4 control data " >- "after %d tries\n", MAXTRY); >- return !Success; >- } >- >- /* Control data bit check */ >- if ( !(data[0] & 0x40) ) /* baudrate too high? */ >- { > /* Try 19200 now */ > if (common->wcmISDV4Speed != 19200) > { > common->wcmISDV4Speed = 19200; >- if(isdv4Init(local, NULL, NULL) != Success) >+ if (xf86WcmSetSerialSpeed(local->fd, common->wcmISDV4Speed) < 0) > return !Success; >- return isdv4GetRanges(local); >+ return isdv4Query(local, query, data); > } > else > { >- ErrorF("Wacom Query ISDV4 error magic error in %s query\n", query); >+ ErrorF("Wacom unable to read ISDV4 control data " >+ "after %d tries\n", MAXTRY); > return !Success; > } > } >+ > return Success; > } > >@@ -231,6 +227,10 @@ static int isdv4GetRanges(LocalDevicePtr local) > } > } > >+ DBG(2, priv->debugLevel, ErrorF("isdv4GetRanges speed=%d maxX=%d maxY=%d " >+ "maxZ=%d resX=%d resY=%d \n", common->wcmISDV4Speed, >+ common->wcmMaxX, common->wcmMaxY, common->wcmMaxZ, >+ common->wcmResolX, common->wcmResolY)); > return Success; > } > >diff --git a/src/xdrv/xf86Wacom.c b/src/xdrv/xf86Wacom.c >index 28a4612..0d130f0 100755 >--- a/src/xdrv/xf86Wacom.c >+++ b/src/xdrv/xf86Wacom.c >@@ -68,9 +68,10 @@ > * 2008-02-27 47-pc0.7.9-8 - Support Cintiq 20 > * 2008-03-07 47-pc0.7.9-9 - Support keystrokes in wacomcpl > * 2008-04-07 47-pc0.7.9-11 - Synchronized databases >+ * 2008-05-06 47-pc0.8.0-1 - new release > */ > >-static const char identification[] = "$Identification: 47-0.7.9-11 $"; >+static const char identification[] = "$Identification: 47-0.8.0-1 $"; > > /****************************************************************************/ >
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
Attachments on
bug 221117
:
152653
| 152655 |
153145
|
153147