On Tue, May 31, 2011 at 12:43 PM, Chris Bagwell <chris@...> wrote:
> On Tue, May 31, 2011 at 1:28 PM, Jason Gerecke <killertofu@...> wrote:
>> On Sat, May 28, 2011 at 5:53 PM, Chris Bagwell <chris@...> wrote:
>>> On Sat, May 28, 2011 at 3:54 PM, Jason Gerecke <killertofu@...> wrote:
>>>> On Fri, May 27, 2011 at 9:11 PM, Chris Bagwell <chris@...> wrote:
>>>>> Hi Favux,
>>>>> For first bug report, it does sound same issue as I looked into a
>>>>> while back. The kernel driver is mistakenly telling userland that the
>>>>> PAD device has gone out of proximity when you use pen. From that
>>>>> point, buttons don't work.
>>>>> Something has changed in xf86-input-wacom that we must l trust kernel
>>>>> information more then we used to. My personal preference is to fix
>>>>> the kernel to give us good info instead of reverting back to old
>>>>> xf86-input-wacom behavior.
>>>>> Maybe when Ping gets back next month we can have some progress. Or
>>>>> hopefully we can find a user that doesn't mind hacking kernel drivers.
>>>>> I can give tons of guidance on patch to implement (its like 3 lines
>>>>> for simple solution) but ultimately I can't push forward much more
>>>>> since I don't have the device.
>>>>> For second bug report (X server crash), I've no idea. It sounds like
>>>>> its own issue.
>>>> Chris, I just happen to have a Graphire4 at home. If you have an idea
>>>> of where the bug may lie, I'd be happy to try patching up the kernel
>>>> code :)
>>> Cool. I've attached the patch I think that is needed. This is
>>> against Linus' git that was rebased at some random time in last month
>>> or two.
>>> Originally, I was going to give you a patch against input-wacom but it
>>> looks like that is different compared to upstream for graphire.
>>> Specifically, it is correctly setting MSC_SERIAL when switching over
>>> to pen.
>>> That means input-wacom may be working with graphire4. input-wacom is
>>> not ever sending BTN_TOOL_FINGER for some reason so if its not working
>>> then thats probably only change needed (add it back in to match
>> While I can confirm the bug under Ubuntu 11.04 64-bit
>> (2.6.38-8-generic), I can't under my 32-bit Arch Linux development
>> box. This was tested with the pre-installed "2.6.38-ARCH" kernel, as
>> well as the tarballs from kernel.org for 184.108.40.206 or 2.8.39 (with the
>> config from /proc/config used as the source). xf86-input-wacom was
>> from Git obviously :)
> Strange. Must be distro's backporting patches.
>> There is a similar bug under these kernels (multiple presses to the
>> same pad button don't work while pen is in prox -- you either have to
>> press another button before the first works again, or take the pen out
>> of prox to press buttons repeatedly).
> Yeah, that sounds about right for this bug. When switching tools (PEN
> vs. PAD), we are not correctly changing serial # and that side affect
> can be seen a few different ways.
>> I'll try setting up a build environment under my virtual Ubuntu box to
>> see what the official kernel sources do there.
> Since Graphire is generally stable, I look at git to see whats been
> changing. Here is immediately interesting one. Looks like a
> non-Tablet PC change snuck in this commit.
> commit ab687b18aa77aeda5472d9ea054bf92c45c49c0c
> Author: Ping Cheng <pingc@...>
> Date: Mon Apr 5 23:07:41 2010 -0700
> Input: wacom - streamline 2-finger touch support
> Clean up 2-finger touch support. This still needs to be converted to
> proper multi-touch protocol.
> Signed-off-by: Ping Cheng <pingc@...>
> Signed-off-by: Dmitry Torokhov <dtor@...>
> diff --git a/drivers/input/tablet/wacom_wac.c b/drivers/input/tablet/wacom_wac.c
> index 950a81d..847fd01 100644
> --- a/drivers/input/tablet/wacom_wac.c
> +++ b/drivers/input/tablet/wacom_wac.c
> @@ -236,13 +236,12 @@ static int wacom_graphire_irq(struct wacom_wac *wacom)
> rw = ((data & 0x18) >> 3) - ((data & 0x20) >> 3);
> input_report_rel(input, REL_WHEEL, rw);
> input_report_key(input, BTN_TOOL_FINGER, 0xf0);
> - input_report_abs(input, ABS_MISC, wacom->id);
> if (!prox)
> wacom->id = 0;
> input_report_abs(input, ABS_MISC, wacom->id);
> input_event(input, EV_MSC, MSC_SERIAL, 0xf0);
> + retval = 1;
> - retval = 1;
> There more in that patch but just wanted to show the part about
> ABS_MISC being removed.
> Here is my original email ton linuxwacom-devel to describe gist of
> problem. It contains reference to why removing that above ABS_MISC
> may have side affect of fixing graphire issue.
> http://sourceforge.net/mailarchive/message.php?msg_id=27202503 >
> I prefer my patch I included in this thread alaready for its
> correctness but I think above happens to make things squeak by.
Looks like your patch works when applied to the ubuntu-natty git tree.
Buttons continue to work flawlessly after pen enters and exits
proximity. I haven't yet tested to see if your patch fixes the related
bug I was seeing on my development box, but I'll get around to that
Day xee-nee-svsh duu-'ushtlh-ts'it;
nuu-wee-ya' duu-xan' 'vm-nvshtlh-ts'it.
Huu-chan xuu naa~-gha.