Pali Rohár
d91abc21e1
Input: alps - demystify trackstick initialization for v3 and v6 protocols
...
Remove cite "Not sure what this does, but it is absolutely essential".
Extract initialization of trackstick part when touchpad is in passthrough
mode for v3 and v6 protocols into own function. Initialization for v3 is:
setscale11, setscale11, setscale11, nibble 0x9, nibble 0x4. Initialization
for v6 is: setscale11, setscale11, setscale11, setrate 0xC8, setrate 0x14.
Nibbles 0x9 and 0x4 for v3 protocol correspond to setrate 0xC8 and 0x14,
therefore these sequences are same.
When touchpad is in passthrough mode, then OS communicates with trackstick
and this sequence is some magic vendor PS/2 command to put trackstick into
"extended" mode. After that sequence trackstick starts reporting packets in
some vendor 4 bytes format (first byte is always 0xE8).
Next step after configuring trackstick to be in "extended" mode, is to
configure touchpad for v3 protocol to expect that trackstick reports data
in "extended" mode. For v3 protocol this is done by setting bit 1 in
register 0xC2C8 (offset 0x08 from base address 0xC2C0).
When both touchpad and trackstick are not configured for "extended" mode
then touchpad reports trackstick packets in different format, which is not
supported by psmouse/alps driver (yet).
In Cirque documentation GP-AN- 130823 INTERFACING TO GEN4 OVER I2C (PDF)
available at http://www.cirque.com/gen4-dev-resources is Logical Address
0xC2C8 named as PS2AuxControl and Bit Number 1 as ProcessAuxExtendedData
with description: Auxiliary device data is assumed to be extended data when
set.
Signed-off-by: Pali Rohár <pali.rohar@gmail.com>
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
2018-04-23 16:37:54 -07:00
..
accessibility
acpi
Merge branch 'libnvdimm-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/nvdimm/nvdimm
2018-03-22 18:37:49 -07:00
amba
android
ANDROID: binder: synchronize_rcu() when using POLLFREE.
2018-02-16 11:16:38 +01:00
ata
libata: Modify quirks for MX100 to limit NCQ_TRIM quirk to MU01 version
2018-03-19 08:36:38 -07:00
atm
atm: he: use 64-bit arithmetic instead of 32-bit
2018-02-08 15:05:16 -05:00
auxdisplay
auxdisplay: img-ascii-lcd: Silence 2 uninitialized warnings
2018-03-13 18:16:38 +01:00
base
ACPI updates for v4.16-rc2
2018-02-15 14:50:32 -08:00
bcma
block
loop: Fix lost writes caused by missing flag
2018-03-09 08:36:36 -07:00
bluetooth
Bluetooth: hci_bcm: Set pulsed_host_wake flag in sleep parameters
2018-03-15 19:39:37 +01:00
bus
bus: ti-sysc: Fix checking of no-reset-on-init quirk
2018-02-15 09:18:55 -08:00
cdrom
char
tpm: fix potential buffer overruns caused by bit glitches on the bus
2018-02-26 15:43:46 -08:00
clk
clk: bcm2835: Protect sections updating shared registers
2018-03-19 09:27:37 -07:00
clocksource
clocksource/atmel-st: Add 'depends on HAS_IOMEM' to fix unmet dependency
2018-03-09 11:11:58 +01:00
connector
cpufreq
Merge branch 'cpufreq-scpi'
2018-03-02 10:44:44 +01:00
cpuidle
powerpc updates for 4.16
2018-02-02 10:01:04 -08:00
crypto
s390:
2018-02-26 09:28:35 -08:00
dax
dax: ->direct_access does not sleep anymore
2018-02-26 12:32:29 -08:00
dca
devfreq
dio
dma
dmaengine: stm32-dmamux: fix a potential buffer overflow
2018-03-22 10:51:35 +05:30
dma-buf
vfs: do bulk POLL* -> EPOLL* replacement
2018-02-11 14:34:03 -08:00
edac
EDAC, sb_edac: Fix out of bound writes during DIMM configuration on KNL
2018-02-23 12:05:37 +01:00
eisa
extcon
extcon: int3496: process id-pin first so that we start with the right status
2018-02-14 06:37:33 +09:00
firewire
vfs: do bulk POLL* -> EPOLL* replacement
2018-02-11 14:34:03 -08:00
firmware
Merge branch 'efi-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip
2018-03-18 11:56:53 -07:00
fmc
fpga
fsi
gpio
gpio: rcar: Use wakeup_path i.s.o. explicit clock handling
2018-03-05 09:01:21 +01:00
gpu
drm/ast: Fixed 1280x800 Display Issue
2018-03-23 09:50:54 +10:00
hid
usb: ldusb: add PIDs for new CASSY devices supported by this driver
2018-02-15 18:44:03 +01:00
hsi
vfs: do bulk POLL* -> EPOLL* replacement
2018-02-11 14:34:03 -08:00
hv
Drivers: hv: vmbus: Fix ring buffer signaling
2018-03-06 09:52:59 -08:00
hwmon
Fix bad temperature display on Ryzen/Threadripper
2018-02-15 14:31:28 -08:00
hwspinlock
hwtracing
Char/Misc driver patches for 4.16-rc1
2018-02-01 10:31:17 -08:00
i2c
i2c: octeon: Prevent error message on bus error
2018-03-02 11:11:15 +01:00
ide
genhd: Rename get_disk() to get_disk_and_module()
2018-02-26 09:48:42 -07:00
idle
iio
iio: st_pressure: st_accel: pass correct platform data to init
2018-03-10 16:28:05 +00:00
infiniband
Fourth pull request for 4.16-rc
2018-03-20 17:39:07 -07:00
input
Input: alps - demystify trackstick initialization for v3 and v6 protocols
2018-04-23 16:37:54 -07:00
iommu
treewide/trivial: Remove ';;$' typo noise
2018-02-22 10:59:33 +01:00
ipack
irqchip
irqchip/irq-imx-gpcv2: Remove unused function
2018-03-11 13:27:12 +00:00
isdn
vfs: do bulk POLL* -> EPOLL* replacement
2018-02-11 14:34:03 -08:00
leds
vfs: do bulk POLL* -> EPOLL* replacement
2018-02-11 14:34:03 -08:00
lightnvm
macintosh
powerpc/macio: set a proper dma_coherent_mask
2018-02-13 08:58:53 -08:00
mailbox
vfs: do bulk POLL* -> EPOLL* replacement
2018-02-11 14:34:03 -08:00
mcb
md
dm mpath: fix passing integrity data
2018-03-14 15:39:33 -04:00
media
media: dvb: fix a Kconfig typo
2018-03-05 07:57:41 -05:00
memory
memory: brcmstb: dpfe: support new way of passing data from the DCPU
2018-02-23 10:56:59 -08:00
memstick
message
scsi: mptfusion: Add bounds check in mptctl_hp_targetinfo()
2018-01-30 21:32:06 -05:00
mfd
vfs: do bulk POLL* -> EPOLL* replacement
2018-02-11 14:34:03 -08:00
misc
powerpc fixes for 4.16 #5
2018-03-09 09:33:48 -08:00
mmc
mmc: sdhci-acpi: Fix IRQ 0
2018-03-21 11:10:20 +01:00
mtd
mtd: nand: fsl_ifc: Read ECCSTAT0 and ECCSTAT1 registers for IFC 2.0
2018-03-21 10:22:28 +01:00
mux
Char/Misc driver patches for 4.16-rc1
2018-02-01 10:31:17 -08:00
net
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
2018-03-22 14:10:29 -07:00
nfc
ntb
NTB: ntb_perf: fix cast to restricted __le32
2018-01-28 22:17:24 -05:00
nubus
nvdimm
libnvdimm, nfit: fix persistence domain reporting
2018-03-21 15:12:07 -07:00
nvme
nvme_fc: rework sqsize handling
2018-03-08 10:39:58 -07:00
nvmem
of
device property: Constify device_get_match_data()
2018-02-12 10:41:11 +01:00
opp
opp: cpu: Replace GFP_ATOMIC with GFP_KERNEL in dev_pm_opp_init_cpufreq_table
2018-02-12 15:07:46 +05:30
oprofile
parisc
parport
pci
Merge branch 'for-4.16-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/libata
2018-03-19 14:23:30 -07:00
pcmcia
Merge branch 'pcmcia' of git://git.kernel.org/pub/scm/linux/kernel/git/brodo/pcmcia
2018-02-08 11:48:49 -08:00
perf
arm_pmu: Use disable_irq_nosync when disabling SPI in CPU teardown hook
2018-02-28 14:59:47 +00:00
phy
phy: qcom-ufs: add MODULE_LICENSE tag
2018-03-12 15:11:59 +05:30
pinctrl
pinctrl: samsung: Validate alias coming from DT
2018-03-08 13:02:26 +01:00
platform
platform/chrome: chromeos_laptop - discard data for unneeded boards
2018-04-09 22:52:17 -07:00
pnp
power
power supply and reset changes for the v4.16 series
2018-01-31 12:55:31 -08:00
powercap
pps
vfs: do bulk POLL* -> EPOLL* replacement
2018-02-11 14:34:03 -08:00
ps3
ptp
vfs: do bulk POLL* -> EPOLL* replacement
2018-02-11 14:34:03 -08:00
pwm
rapidio
vfs: do bulk POLL* -> EPOLL* replacement
2018-02-11 14:34:03 -08:00
ras
mm/memory_failure: Remove unused trapno from memory_failure
2018-01-23 12:17:42 -06:00
regulator
Merge remote-tracking branches 'regulator/fix/resume' and 'regulator/fix/stm32-vfrefbuf' into regulator-linus
2018-03-07 14:39:07 +00:00
remoteproc
remoteproc updates for v4.16
2018-02-05 10:07:40 -08:00
reset
rpmsg
vfs: do bulk POLL* -> EPOLL* replacement
2018-02-11 14:34:03 -08:00
rtc
vfs: do bulk POLL* -> EPOLL* replacement
2018-02-11 14:34:03 -08:00
s390
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
2018-03-22 14:10:29 -07:00
sbus
pci-v4.16-changes
2018-02-06 09:59:40 -08:00
scsi
SCSI fixes on 20180320
2018-03-20 16:59:01 -07:00
sfi
sh
cpufreq: Add and use cpufreq_for_each_{valid_,}entry_idx()
2018-02-08 10:21:39 +01:00
siox
slimbus
sn
soc
soc/fsl/qbman: fix issue in qman_delete_cgr_safe()
2018-03-14 13:16:23 -04:00
soundwire
spi
Merge remote-tracking branch 'spi/topic/xilinx' into spi-next
2018-01-26 17:57:34 +00:00
spmi
ssb
Merge git://git.kernel.org/pub/scm/linux/kernel/git/kvalo/wireless-drivers.git
2018-02-01 10:37:39 +02:00
staging
staging: ncpfs: memory corruption in ncp_read_kernel()
2018-03-19 16:31:39 +01:00
target
Merge branch 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/nab/target-pending
2018-02-09 14:49:46 -08:00
tc
tee
thermal
Merge branch 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/rzhang/linux
2018-02-06 15:04:58 -08:00
thunderbolt
tty
tty: vt: fix up tabstops properly
2018-03-25 07:04:00 -10:00
uio
vfs: do bulk POLL* -> EPOLL* replacement
2018-02-11 14:34:03 -08:00
usb
usb: musb: Fix external abort in musb_remove on omap2430
2018-03-13 16:36:59 +01:00
uwb
vfio
Revert: "vfio-pci: Mask INTx if a device is not capabable of enabling it"
2018-03-21 22:50:19 -06:00
vhost
vhost_net: examine pointer types during un-producing
2018-03-09 12:02:59 -05:00
video
fbdev: Fixing arbitrary kernel leak in case FBIOGETCMAP_SPARC in sbusfb_ioctl_helper().
2018-03-07 14:00:34 +01:00
virt
vfs: do bulk POLL* -> EPOLL* replacement
2018-02-11 14:34:03 -08:00
virtio
virtio_ring: fix num_free handling in error case
2018-03-01 18:53:38 +02:00
visorbus
vlynq
vme
w1
Documentation updates for 4.16. New stuff includes refcount_t
2018-01-31 19:25:25 -08:00
watchdog
ACPI / watchdog: Fix off-by-one error at resource assignment
2018-03-19 23:17:07 +01:00
xen
xen: fix for V4.16-rc5
2018-03-09 16:54:18 -08:00
zorro
Kconfig
Char/Misc driver patches for 4.16-rc1
2018-02-01 10:31:17 -08:00
Makefile
pci-v4.16-changes
2018-02-06 09:59:40 -08:00