All of lore.kernel.org
 help / color / mirror / Atom feed
From: Benjamin Tissoires <benjamin.tissoires@redhat.com>
To: Przemo Firszt <przemo@firszt.eu>
Cc: Dmitry Torokhov <dmitry.torokhov@gmail.com>,
	Jiri Kosina <jkosina@suse.cz>, Ping Cheng <pinglinux@gmail.com>,
	Jason Gerecke <killertofu@gmail.com>,
	linux-kernel@vger.kernel.org, linux-input@vger.kernel.org
Subject: Re: [PATCH v2 00/10] Input - wacom: conversion to HID driver, series 2
Date: Fri, 25 Jul 2014 15:32:59 -0400	[thread overview]
Message-ID: <20140725193259.GC12268@mail.corp.redhat.com> (raw)
In-Reply-To: <1406316376.12682.18.camel@fedora-lan>

On Jul 25 2014 or thereabouts, Przemo Firszt wrote:
> Dnia 2014-07-25, pią o godzinie 10:54 -0400, Benjamin Tissoires pisze:
> > [..]
> Hi Benjamin,
> >  
> > > If I understand you correctly we cannot have the same entry point in
> > > sysfs for OLEDs unless we can tell userspace somehow if the tablet is
> > > conected over USB or over bluetooth. The hardware of Intuos4 Wireless
> > > over bluetooth allows only 1-bit images. The same hardware over USB
> > > allows 4-bit images. Formatting of the images is also completely
> > 
> > Holy crap! I missed that. I did not noticed the 1-bit vs 4-bits
> > difference :(
> > 
> > > different and it's not "plain". Check [1] for usb and exisitng
> > > hid-wacom.c/wacom_scramble function for bluetooth.
> > 
> > Maybe I overlooked it, but I thought that in case of USB, the scrambling
> > is done in user space, and in case of BT, the same scrambling made in the
> > kernel. They looks very similar so I thought the user-space scramble for
> > USB would have fit. However, the 4-bits/1-bits kills that assumption.
> 
> You're correct - USB requires scrambling in the user space, but
> scrambling for USB is different than for BT. Example of USB scramble is
> here: https://github.com/PrzemoF/i4oled/blob/master/src/i4oled.c#L401
> 
> > > 
> > > If we want to make it consistent single entry on kernel level we
> > > probably have to implement image conversion in the kernel. The user land
> > > would always use 4-bit, plain formatted images and kernel driver would
> > > convert them to 4-bit, wacom usb format or 1-bit wacom bluetooth format
> > > depending on how the tablet is connected.
> > > 
> > > The downside of this approach is that the user land wouldn't have 100%
> > > control over 1-bit images for bluetooth as kernel would have to create
> > > them from 4-bit images.
> > 
> > The USB interface is *very* simple:
> > - if incoming data != 1024 -> reject
> > - forward everything to the device without in kernel treatment*
> > 
> > How about just changing the expected size to 256 in case of a BT tablet,
> > and let the user-space scramble in both cases and forward proper raw
> > data?
> > 
> > This way, user space will still have control over 1-bit vs 4-bits, and
> > the changes required in the kernel will be small enough.
> Sounds good to me. Bit more coding in gnome, but it's a small thing.

yeah, gnome already scramble for USB, let's have it scramble for BT too
:)

> 
> > My concern is that I'd like to have this series in 3.17 and I will not
> > have access to the hardware until next week :/
> > Having all of the user-spaces breakages in the same kernel release will
> > I think simplify the user space work.
> I agree.

OK.

> 
> P.S. Could you send me that set of 23 patches using git-send-email that
> I should apply on top of linux-next? I got it from lkml, but there is
> still something messed (fails on patch 09/23). Of course, if it's not a
> problem for you :-)

Sure, I can definitively do that. I also made a small patch to check for
1024 or 256 bits in OLEDs, so if you could give a try, that would be
great.

Cheers,
Benjamin

--
To unsubscribe from this list: send the line "unsubscribe linux-input" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

WARNING: multiple messages have this Message-ID (diff)
From: Benjamin Tissoires <benjamin.tissoires@redhat.com>
To: Przemo Firszt <przemo@firszt.eu>
Cc: Dmitry Torokhov <dmitry.torokhov@gmail.com>,
	Jiri Kosina <jkosina@suse.cz>, Ping Cheng <pinglinux@gmail.com>,
	Jason Gerecke <killertofu@gmail.com>,
	linux-kernel@vger.kernel.org, linux-input@vger.kernel.org
Subject: Re: [PATCH v2 00/10] Input - wacom: conversion to HID driver, series 2
Date: Fri, 25 Jul 2014 15:32:59 -0400	[thread overview]
Message-ID: <20140725193259.GC12268@mail.corp.redhat.com> (raw)
In-Reply-To: <1406316376.12682.18.camel@fedora-lan>

On Jul 25 2014 or thereabouts, Przemo Firszt wrote:
> Dnia 2014-07-25, pią o godzinie 10:54 -0400, Benjamin Tissoires pisze:
> > [..]
> Hi Benjamin,
> >  
> > > If I understand you correctly we cannot have the same entry point in
> > > sysfs for OLEDs unless we can tell userspace somehow if the tablet is
> > > conected over USB or over bluetooth. The hardware of Intuos4 Wireless
> > > over bluetooth allows only 1-bit images. The same hardware over USB
> > > allows 4-bit images. Formatting of the images is also completely
> > 
> > Holy crap! I missed that. I did not noticed the 1-bit vs 4-bits
> > difference :(
> > 
> > > different and it's not "plain". Check [1] for usb and exisitng
> > > hid-wacom.c/wacom_scramble function for bluetooth.
> > 
> > Maybe I overlooked it, but I thought that in case of USB, the scrambling
> > is done in user space, and in case of BT, the same scrambling made in the
> > kernel. They looks very similar so I thought the user-space scramble for
> > USB would have fit. However, the 4-bits/1-bits kills that assumption.
> 
> You're correct - USB requires scrambling in the user space, but
> scrambling for USB is different than for BT. Example of USB scramble is
> here: https://github.com/PrzemoF/i4oled/blob/master/src/i4oled.c#L401
> 
> > > 
> > > If we want to make it consistent single entry on kernel level we
> > > probably have to implement image conversion in the kernel. The user land
> > > would always use 4-bit, plain formatted images and kernel driver would
> > > convert them to 4-bit, wacom usb format or 1-bit wacom bluetooth format
> > > depending on how the tablet is connected.
> > > 
> > > The downside of this approach is that the user land wouldn't have 100%
> > > control over 1-bit images for bluetooth as kernel would have to create
> > > them from 4-bit images.
> > 
> > The USB interface is *very* simple:
> > - if incoming data != 1024 -> reject
> > - forward everything to the device without in kernel treatment*
> > 
> > How about just changing the expected size to 256 in case of a BT tablet,
> > and let the user-space scramble in both cases and forward proper raw
> > data?
> > 
> > This way, user space will still have control over 1-bit vs 4-bits, and
> > the changes required in the kernel will be small enough.
> Sounds good to me. Bit more coding in gnome, but it's a small thing.

yeah, gnome already scramble for USB, let's have it scramble for BT too
:)

> 
> > My concern is that I'd like to have this series in 3.17 and I will not
> > have access to the hardware until next week :/
> > Having all of the user-spaces breakages in the same kernel release will
> > I think simplify the user space work.
> I agree.

OK.

> 
> P.S. Could you send me that set of 23 patches using git-send-email that
> I should apply on top of linux-next? I got it from lkml, but there is
> still something messed (fails on patch 09/23). Of course, if it's not a
> problem for you :-)

Sure, I can definitively do that. I also made a small patch to check for
1024 or 256 bits in OLEDs, so if you could give a try, that would be
great.

Cheers,
Benjamin


  reply	other threads:[~2014-07-25 19:33 UTC|newest]

Thread overview: 36+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-07-24 18:13 [PATCH v2 00/10] Input - wacom: conversion to HID driver, series 2 Benjamin Tissoires
2014-07-24 18:13 ` [PATCH v2 01/10] Input - wacom: Support up to 2048 pressure levels with ISDv4 Benjamin Tissoires
2014-07-24 18:13 ` [PATCH v2 02/10] Input - wacom: put a flag when the led are initialized Benjamin Tissoires
2014-07-24 18:13 ` [PATCH v2 03/10] Input - wacom: enhance Wireless Receiver battery reporting Benjamin Tissoires
2014-07-24 18:13 ` [PATCH v2 04/10] Input - wacom: use a uniq name for the battery device Benjamin Tissoires
2014-07-24 18:14 ` [PATCH v2 05/10] Input - wacom: register an ac power supply for wireless devices Benjamin Tissoires
2014-07-24 18:14 ` [PATCH v2 06/10] Input - wacom: prepare the driver to include BT devices Benjamin Tissoires
2014-07-26  0:39   ` Dmitry Torokhov
2014-07-26  3:25     ` Benjamin Tissoires
2014-07-26  3:58       ` Dmitry Torokhov
2014-07-24 18:14 ` [PATCH v2 07/10] Input - wacom: handle Graphire BT tablets in wacom.ko Benjamin Tissoires
2014-07-24 19:35   ` Dmitry Torokhov
2014-07-24 19:43     ` Benjamin Tissoires
2014-07-24 19:58       ` Dmitry Torokhov
2014-07-24 20:11         ` Benjamin Tissoires
2014-07-24 18:14 ` [PATCH v2 08/10] Input - wacom: handle Intuos 4 BT " Benjamin Tissoires
2014-07-24 18:14 ` [PATCH v2 09/10] Input - wacom: add copyright note and bump version to 2.0 Benjamin Tissoires
2014-07-24 18:14 ` [PATCH v2 10/10] HID: remove hid-wacom Bluetooth driver Benjamin Tissoires
2014-07-25 12:42 ` [PATCH v2 00/10] Input - wacom: conversion to HID driver, series 2 Przemo Firszt
2014-07-25 12:58   ` Benjamin Tissoires
2014-07-25 13:30     ` Przemo Firszt
2014-07-25 13:30       ` Przemo Firszt
2014-07-25 14:54       ` Benjamin Tissoires
2014-07-25 14:54         ` Benjamin Tissoires
2014-07-25 19:26         ` Przemo Firszt
2014-07-25 19:26           ` Przemo Firszt
2014-07-25 19:32           ` Benjamin Tissoires [this message]
2014-07-25 19:32             ` Benjamin Tissoires
2014-07-25 22:13 ` Przemo Firszt
2014-07-25 23:15   ` Benjamin Tissoires
2014-07-26 11:55     ` Przemo Firszt
2014-07-25 23:20 ` [PATCH 11/10] Input - wacom: Check for bluetooth protocol while setting OLEDs Benjamin Tissoires
2014-07-26 12:05   ` Przemo Firszt
2014-07-26  1:41 ` [PATCH v2 00/10] Input - wacom: conversion to HID driver, series 2 Dmitry Torokhov
2014-07-26  3:21   ` Benjamin Tissoires
2014-07-26  3:56     ` Dmitry Torokhov

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20140725193259.GC12268@mail.corp.redhat.com \
    --to=benjamin.tissoires@redhat.com \
    --cc=dmitry.torokhov@gmail.com \
    --cc=jkosina@suse.cz \
    --cc=killertofu@gmail.com \
    --cc=linux-input@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=pinglinux@gmail.com \
    --cc=przemo@firszt.eu \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.