History log of /freebsd-10.1-release/sys/dev/adb/adb_mouse.c
Revision Date Author Comments
(<<< Hide modified files)
(Show modified files >>>)
# 272461 02-Oct-2014 gjb

Copy stable/10@r272459 to releng/10.1 as part of
the 10.1-RELEASE process.

Approved by: re (implicit)
Sponsored by: The FreeBSD Foundation

# 262668 01-Mar-2014 jhibbits

MFC r261068

Properly sort the arguments to mtx_init(9).

PR: misc/186020
Submitted by: alfred


# 256281 10-Oct-2013 gjb

Copy head (r256279) to stable/10 as part of the 10.0-RELEASE cycle.

Approved by: re (implicit)
Sponsored by: The FreeBSD Foundation


# 255921 28-Sep-2013 jhibbits

Fix powerpc/161045. ams_poll() needs to return that any data is available, not
just a new packet.

PR: powerpc/161045
Approved by: re(marius)
MFC after: 1 week


# 242948 13-Nov-2012 kevlo

Use uiomove return value instead of returning 0.


# 199888 28-Nov-2009 nwhitehorn

Add support for interpreting taps on ADB touchpads as a button click.

Submitted by: Andreas Tobler <andreast-list at fgznet dot ch>
MFC after: 2 weeks


# 187893 29-Jan-2009 jhb

Use si_drv1 to hold the softc for the adb_mouse character device instead of
using devclass_get_softc().

Tested by: nwhitehorn


# 187878 29-Jan-2009 ed

Make adb_mouse use dev2unit() instead of minor().

A real fix would be to migrate it to si_drv0 to store the softc
directly, but this is the quickest way to fix it right now.


# 185724 06-Dec-2008 nwhitehorn

Fix some nasty race conditions in the VIA-CUDA driver that ended up preventing
my right mouse button and keyboard LEDs from working due to mangled
configuration packets. Fixed several other races and associated problems in the
main ADB stack that were exposed while fixing this.


# 184565 02-Nov-2008 ed

Make the touch pad on my PowerBook G4 12" a little more usable.

For an unknown reason the touch pad of my PowerBook generates button 5
events when you operate it. This causes the adb_mouse code to convert
them to button 2 events, which is not what we want.

Add a new flag, AMS_TOUCHPAD, which is used to distinguish the touch
pad. When set, don't convert button events of unknown buttons to the
last button.

There are still three problems left with respect to user input:

- The mouse button events are not properly processed when the touch pad
isn't touched.

- The arrow keys on the keyboard don't work inside X11.

- The power button isn't handled by the kernel, similar to the ACPI
power button on i386/amd64.

Approved by: nwhitehorn


# 184520 01-Nov-2008 ed

Allow a read() on /dev/ams[0-9] to be interrupted.

Right now ams_read() uses cv_wait() to wait for new data to arrive on
the mouse device. This means that when you run `cat /dev/ams0', it
cannot be interrupted directly. After you press ^C, you first need to
move the mouse before cat will quit. Make this function use
cv_wait_sig(), which allows it to be interrupted directly.

Reviewed by: nwhitehorn


# 184299 26-Oct-2008 nwhitehorn

Add ADB support. This provides support for the external ADB bus on the PowerMac
G3 as well as the internal ADB keyboard and mice in PowerBooks and iBooks. This
also brings in Mac GPIO support, for which we should eventually have a better
interface.

Obtained from: NetBSD (CUDA and PMU drivers)