History log of /haiku/src/add-ons/kernel/drivers/input/wacom/wacom.c
Revision Date Author Comments
# 425ac1b6 20-Jun-2023 Alexander von Gluck IV <kallisti5@unixzen.com>

refactor: Swap %Ld for %lld in all format usages

* %Ld is an undocumented alias for %lld in glibc.
* muslc doesn't implement it for this reason.
* While we will likely never drop %Ld support,
lets clean house and set a better example.

Change-Id: Id46dad3104abae483e80cc5c05d1464d3ecd8030
Reviewed-on: https://review.haiku-os.org/c/haiku/+/6636
Reviewed-by: Adrien Destugues <pulkomandy@pulkomandy.tk>
Reviewed-by: Alex von Gluck IV <kallisti5@unixzen.com>
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>


# 718fce99 12-Oct-2021 Franck LeCodeur <cassisian@gmail.com>

drivers/input: Fix warnings and enable Werror

Correct signedness for comparisons, remove unused code, remove unused variable, correct variable type for callbacks

Part of #9460

Change-Id: Ie48e8498e0830ed8b175986aaf82b94a1d99b72f
Reviewed-on: https://review.haiku-os.org/c/haiku/+/4570
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>


# 29ae0e0f 22-May-2020 CodeforEvolution <secundaja@gmail.com>

wacom: SMAP Fixes and Refactoring

Utilize user_memcpy and IS_USER_ADDRESS when necessary to prevent SMAP violations.
Also add a "wacom_device_header" struct to more easily share data between the wacom
kernel driver and input_server addon.

Should fix #14589

Change-Id: Ie2784020b21523f82fd450a2db2de60ccf9d6620
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2783
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>


# 11d738a4 05-Feb-2020 Adrien Destugues <pulkomandy@pulkomandy.tk>

wacom: remove control device

It is unused, and it leads to an unexpected entry in the Input
preferences.

Change-Id: I68f31c3ae6baca7be1a5d6070dc1ebcf04522dad
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2208
Reviewed-by: waddlesplash <waddlesplash@gmail.com>


# 749c57a3 29-Jun-2019 Murai Takashi <tmurai01@gmail.com>

drivers/input/wacom: Fix -Wformat=

Change-Id: I164aa8e0ad7e0c19f7e59d7b6e36877fde9f2877
Reviewed-on: https://review.haiku-os.org/c/1547
Reviewed-by: Jérôme Duval <jerome.duval@gmail.com>


# a9f29dd2 17-May-2010 Stephan Aßmus <superstippi@gmx.de>

Patch by idefix: Code cleanup and debug output cleanup. Part of patch to
ticket #3744, thanks!


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36842 a95241bf-73f2-0310-859d-f6bbb57e9c96


# c1f316db 06-Jan-2010 Michael Lotz <mmlr@mlotz.ch>

When canceling the transfer, the callback is still called, just with the
canceled status, so we need to collect the corresponding sem release. Otherwise
we would run directly into the old cancel status the next time we schedule.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34932 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 5926a612 05-Jan-2010 Michael Lotz <mmlr@mlotz.ch>

I don't know why this was disabled, but not canceling the queued transfers after
a timeout leaks these transfers. In the end this would at least lead to a flood
of canceled transfers on device unplug or, worse yet, exhaust the USB memory
pool stalling all further transfers as seen in #4604. Probably fixes both
issues, can't test though as I don't have the hardware.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34915 a95241bf-73f2-0310-859d-f6bbb57e9c96


# cb3d173d 05-Jan-2010 Michael Lotz <mmlr@mlotz.ch>

Whitespace cleanup only, no functional change.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34914 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 8ac8a808 26-Sep-2009 Stephan Aßmus <superstippi@gmx.de>

Patch by idefix:
* Use the correct interface index for the control transfer that sets a Wacom
tablet into tablet mode.
* Check if the mode is indeed setup correctly.
* Retry switching the mode up to five times, as done in the Linux driver.

Thanks a bunch! As Michael has proposed in ticket #3744, the whole Wacom
driver should be merged into the existing HID driver framework (eventually).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33301 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 6df04777 21-Jul-2008 Stephan Aßmus <superstippi@gmx.de>

* Cleanup for 80 char per line limit.
* Don't spam the syslog when the device was not a Wacom.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26553 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 400ba068 09-Apr-2008 Axel Dörfler <axeld@pinc-software.de>

Made sure load_driver_symbols() is not used anymore when building for Haiku;
it's a no-op, and I removed the prototype from KernelExport.h.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24875 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 33def0ba 19-Feb-2008 Stephan Aßmus <superstippi@gmx.de>

* Small cleanups, renamed "md" (for "mouse device") to "device" among other
stuff.
* It's a while since I wrote this code, and I don't remember why I don't
always "set the configuration". Appearantly on BeOS and ZETA, the
active configuration was not yet set on the device when the driver examined
it, but on Haiku it is. The special control command which puts a tablet
into tablet mode is then not executed. I simply commented out this check
(always set the configuration) and now my Wacom Intuos 2 is working fine
in Haiku.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24019 a95241bf-73f2-0310-859d-f6bbb57e9c96


# cad9eceb 09-Feb-2008 Jérôme Duval <korli@users.berlios.de>

added missing api_version


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23937 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 7fd8d11d 20-Jan-2008 Stephan Aßmus <superstippi@gmx.de>

* added a kernel driver for Wacom USB tablets.
* the driver should be generic for all Wacom tablets, but there is a
special control transfer to put the devices in to "absolute mode", it
may not work with future tablets. The driver allows to use read devices,
for which there is a special protocol. If the read request has a certain
size, then the driver will transmit info on the device, like the vendor
and product id as well as the max the packet size, for reads larger than
that, it will issue an interrupt transfer and put the raw data received
from the device behind the info header


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23666 a95241bf-73f2-0310-859d-f6bbb57e9c96


# a9f29dd29c75a22bfdbc2e4ae63c77a94c3d99c0 17-May-2010 Stephan Aßmus <superstippi@gmx.de>

Patch by idefix: Code cleanup and debug output cleanup. Part of patch to
ticket #3744, thanks!


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36842 a95241bf-73f2-0310-859d-f6bbb57e9c96


# c1f316db61eef7c1d34f065c984e939641bee420 06-Jan-2010 Michael Lotz <mmlr@mlotz.ch>

When canceling the transfer, the callback is still called, just with the
canceled status, so we need to collect the corresponding sem release. Otherwise
we would run directly into the old cancel status the next time we schedule.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34932 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 5926a6129f926ab894b82a4c3d3ff97806abf956 05-Jan-2010 Michael Lotz <mmlr@mlotz.ch>

I don't know why this was disabled, but not canceling the queued transfers after
a timeout leaks these transfers. In the end this would at least lead to a flood
of canceled transfers on device unplug or, worse yet, exhaust the USB memory
pool stalling all further transfers as seen in #4604. Probably fixes both
issues, can't test though as I don't have the hardware.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34915 a95241bf-73f2-0310-859d-f6bbb57e9c96


# cb3d173dc2a38b7bbfa345f1882995b69e2926c7 05-Jan-2010 Michael Lotz <mmlr@mlotz.ch>

Whitespace cleanup only, no functional change.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34914 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 8ac8a808e46214ff242a4b5ad7f055d79492adde 26-Sep-2009 Stephan Aßmus <superstippi@gmx.de>

Patch by idefix:
* Use the correct interface index for the control transfer that sets a Wacom
tablet into tablet mode.
* Check if the mode is indeed setup correctly.
* Retry switching the mode up to five times, as done in the Linux driver.

Thanks a bunch! As Michael has proposed in ticket #3744, the whole Wacom
driver should be merged into the existing HID driver framework (eventually).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33301 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 6df047777a0006741a3b5ffd9b71f30ed0d0bb4a 21-Jul-2008 Stephan Aßmus <superstippi@gmx.de>

* Cleanup for 80 char per line limit.
* Don't spam the syslog when the device was not a Wacom.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26553 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 400ba068e0971623161ea2f939fd5ede8e5af25c 09-Apr-2008 Axel Dörfler <axeld@pinc-software.de>

Made sure load_driver_symbols() is not used anymore when building for Haiku;
it's a no-op, and I removed the prototype from KernelExport.h.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24875 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 33def0ba07c66c057966c86f82d392a9588d0111 19-Feb-2008 Stephan Aßmus <superstippi@gmx.de>

* Small cleanups, renamed "md" (for "mouse device") to "device" among other
stuff.
* It's a while since I wrote this code, and I don't remember why I don't
always "set the configuration". Appearantly on BeOS and ZETA, the
active configuration was not yet set on the device when the driver examined
it, but on Haiku it is. The special control command which puts a tablet
into tablet mode is then not executed. I simply commented out this check
(always set the configuration) and now my Wacom Intuos 2 is working fine
in Haiku.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24019 a95241bf-73f2-0310-859d-f6bbb57e9c96


# cad9eceb7a2574cea449fe10357b6fe4cecdf4ec 09-Feb-2008 Jérôme Duval <korli@users.berlios.de>

added missing api_version


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23937 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 7fd8d11d3a877dc32ea41e9182060f2e12793d28 20-Jan-2008 Stephan Aßmus <superstippi@gmx.de>

* added a kernel driver for Wacom USB tablets.
* the driver should be generic for all Wacom tablets, but there is a
special control transfer to put the devices in to "absolute mode", it
may not work with future tablets. The driver allows to use read devices,
for which there is a special protocol. If the read request has a certain
size, then the driver will transmit info on the device, like the vendor
and product id as well as the max the packet size, for reads larger than
that, it will issue an interrupt transfer and put the raw data received
from the device behind the info header


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23666 a95241bf-73f2-0310-859d-f6bbb57e9c96