Sebastian Andrzej Siewior
8c896308fe
input: ti_am335x_adc: use only FIFO0 and clean up a little
...
The driver programs a threshold of "coordinate_readouts" say 5. The
REG_FIFO0THR registers says it should it be programmed to "threshold
minus one". The driver does not expect just 5 coordinates but 5 * 2 + 2.
Multiplied by two because 5 for X and 5 for Y and plus 2 because we have
two Z.
The whole thing kind of works because It reads the 5 coordinates for X
and Y from FIFO0 and FIFO1 and the last element in each FIFO is ignored
within the loop and read later.
Nothing guaranties that FIFO1 is ready by the time it is read. In fact I
could see that that FIFO1 reaturns for Y channels 8,9, 10, 12, 6 and for
Y channel 7 for Z. The problem is that channel 7 and channel 12 got
somehow mixed up.
The other Problem is that FIFO1 is also used by the IIO part leading to
wrong results if both (tsc & adc) are used.
The patch tries to clean up the whole thing a little:
- Remove the +1 and -1 in REG_STEPCONFIG, REG_STEPDELAY and its counter
part in the for loop. This is just confusing.
- Use only FIFO0 in TSC. The fifo has space for 64 entries so should be
fine.
- Read the whole FIFO in one function and check the channel.
- in case we dawdle around, make sure we only read a multiple of our
coordinate set. On the second interrupt we will cleanup the remaining
enties.
Acked-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
2013-06-12 18:50:22 +02:00
..
accessibility
acpi
aerdrv: Move cper_print_aer() call out of interrupt context
2013-05-30 10:51:20 -07:00
amba
ata
drivers/ata: don't check resource with devm_ioremap_resource
2013-05-12 15:19:46 +02:00
atm
auxdisplay
base
Driver core fixes for 3.10-rc2
2013-05-23 09:27:08 -07:00
bcma
bcma: add more core IDs
2013-05-17 14:31:05 -04:00
block
drivers/block/brd.c: fix brd_lookup_page() race
2013-05-24 16:22:52 -07:00
bluetooth
bus
cdrom
block_device_operations->release() should return void
2013-05-07 02:16:21 -04:00
char
random: fix accounting race condition with lockless irq entropy_count update
2013-05-24 16:22:52 -07:00
clk
clk: mxs: Include clk mxs header file
2013-05-30 18:27:24 -07:00
clocksource
ARM: late Exynos multiplatform changes
2013-05-07 11:28:42 -07:00
connector
cpufreq
Power management and ACPI fixes for 3.10-rc3
2013-05-25 20:32:00 -07:00
cpuidle
crypto
Merge git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6
2013-05-28 10:09:38 -07:00
dca
devfreq
dio
dma
Merge branch 'fixes' of git://git.infradead.org/users/vkoul/slave-dma
2013-05-25 20:30:31 -07:00
edac
amd64_edac: Fix bogus sysfs file permissions
2013-05-21 09:13:11 +02:00
eisa
extcon
Removal of GENERIC_GPIO for v3.10
2013-05-09 09:59:16 -07:00
firewire
IEEE 1394 (FireWire) subsystem changes:
2013-05-09 10:11:48 -07:00
firmware
efivar: fix oops in efivar_update_sysfs_entries() caused by memory reuse
2013-05-13 20:20:02 +01:00
gpio
GPIO fixes for the v3.10 series:
2013-05-23 18:24:10 -07:00
gpu
fbdev: fixes for 3.10-rc4
2013-06-01 19:53:41 +09:00
hid
HID: debug: fix RCU preemption issue
2013-05-06 13:07:33 +02:00
hsi
hv
Drivers: hv: Fix a bug in get_vp_index()
2013-05-21 09:56:55 -07:00
hwmon
hwmon: (tmp401) Drop redundant safety on cache lifetime
2013-05-19 08:19:29 -07:00
hwspinlock
A single patch from Vincent extending OMAP's hwspinlock support to OMAP5.
2013-05-07 14:01:27 -07:00
i2c
Merge branch 'i2c/for-current' of git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux
2013-05-21 11:11:45 -07:00
ide
block_device_operations->release() should return void
2013-05-07 02:16:21 -04:00
idle
Merge branch 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux
2013-05-11 15:23:17 -07:00
iio
input: ti_am335x_adc: use only FIFO0 and clean up a little
2013-06-12 18:50:22 +02:00
infiniband
ib_srpt: Call target_sess_cmd_list_set_waiting during shutdown_session
2013-05-29 21:30:46 -07:00
input
input: ti_am335x_adc: use only FIFO0 and clean up a little
2013-06-12 18:50:22 +02:00
iommu
IOMMU Updates for Linux v3.10
2013-05-06 14:59:13 -07:00
ipack
irqchip
ARM: late Exynos multiplatform changes
2013-05-07 11:28:42 -07:00
isdn
isdn/kcapi: fix a small underflow
2013-05-20 13:38:14 -07:00
leds
drivers/leds/leds-ot200.c: fix error caused by shifted mask
2013-05-24 16:22:51 -07:00
lguest
lguest: clear cached last cpu when guest_set_pgd() called.
2013-05-08 10:49:18 +09:30
macintosh
Merge branch 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc
2013-05-02 10:16:16 -07:00
mailbox
md
dm thin: fix metadata dev resize detection
2013-05-19 18:57:50 +01:00
media
fbdev: fixes for 3.10-rc4
2013-06-01 19:53:41 +09:00
memory
drivers/memory: don't check resource with devm_ioremap_resource
2013-05-18 11:55:52 +02:00
memstick
block_device_operations->release() should return void
2013-05-07 02:16:21 -04:00
message
Merge branch 'for-3.10/core' of git://git.kernel.dk/linux-block
2013-05-08 10:13:35 -07:00
mfd
mfd: iio: ti_am335x_adc: rename device from tiadc to TI-am335x-adc
2013-06-12 18:50:21 +02:00
misc
char/misc driver fixes for 3.10-rc2
2013-05-23 09:26:32 -07:00
mmc
Merge branch 'fixes' of git://git.linaro.org/people/rmk/linux-arm
2013-05-15 13:37:54 -07:00
mtd
drivers/mtd/nand: don't check resource with devm_ioremap_resource
2013-05-18 11:55:55 +02:00
net
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
2013-05-24 08:27:32 -07:00
nfc
ntb
NTB: Multiple NTB client fix
2013-05-15 10:58:22 -07:00
nubus
nubus: Kill nubus_proc_detach_device()
2013-05-04 14:47:26 -04:00
of
Device tree bug fixes and documentation updates for v3.10
2013-05-18 10:46:50 -07:00
oprofile
parisc
parisc/PCI: lba: fix: convert to pci_create_root_bus() for correct root bus resources (v2)
2013-06-01 14:44:25 +02:00
parport
parisc: parport0: fix this legacy no-device port driver!
2013-06-01 14:46:42 +02:00
pci
aerdrv: Move cper_print_aer() call out of interrupt context
2013-05-30 10:51:20 -07:00
pcmcia
pinctrl
pinctrl: pinconf: take the right mutex
2013-05-27 15:53:32 +02:00
platform
- Artem's removal of dead code continues (RPX, MBX860)
2013-05-10 09:09:47 -07:00
pnp
Merge branch 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc
2013-05-02 10:16:16 -07:00
power
Last minute one-liners: wrong kfree usage fix, module alias fixup and
2013-05-25 20:32:49 -07:00
pps
ps3
ptp
pwm
drivers/pwm: don't check resource with devm_ioremap_resource
2013-05-18 11:55:58 +02:00
rapidio
rapidio/tsi721: fix bug in MSI interrupt handling
2013-05-24 16:22:51 -07:00
regulator
Removal of GENERIC_GPIO for v3.10
2013-05-09 09:59:16 -07:00
remoteproc
This pull request contains:
2013-05-07 14:04:56 -07:00
reset
rpmsg
A small pull request consisting of:
2013-05-07 14:02:00 -07:00
rtc
drivers/rtc/rtc-max8998.c: check for pdata presence before dereferencing
2013-05-24 16:22:53 -07:00
s390
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux
2013-05-21 09:36:46 -07:00
sbus
scsi
Merge git://git.kernel.org/pub/scm/linux/kernel/git/nab/target-pending
2013-06-01 20:05:20 +09:00
sfi
sh
sn
spi
Merge branch 'devm_no_resource_check' of git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux
2013-05-18 10:54:54 -07:00
ssb
- Lots of cleanups from Artem, including deletion of some obsolete drivers
2013-05-09 10:15:46 -07:00
ssbi
staging
Merge remote-tracking branch 'pfdo/drm-fixes' into drm-next
2013-05-24 10:12:22 +10:00
target
iscsi-target: Fix iscsit_free_cmd() se_cmd->cmd_kref shutdown handling
2013-05-31 01:21:28 -07:00
tc
thermal
drivers/thermal: don't check resource with devm_ioremap_resource
2013-05-18 11:57:30 +02:00
tty
ARM: SoC fixes for 3.10-rc
2013-05-24 16:27:37 -07:00
uio
uio: UIO_DMEM_GENIRQ should depend on HAS_DMA
2013-05-21 10:13:23 -07:00
usb
USB fixes for 3.10-rc2
2013-05-23 09:23:32 -07:00
uwb
vfio
vfio updates for v3.10
2013-05-02 14:02:32 -07:00
vhost
Add missing module license tag to vring helpers.
2013-05-08 10:49:03 +09:30
video
atmel_lcdfb: blank the backlight on remove
2013-06-01 03:18:55 +08:00
virt
virtio
vlynq
vme
w1
drivers/w1/masters: don't check resource with devm_ioremap_resource
2013-05-18 11:58:03 +02:00
watchdog
drivers/watchdog: don't check resource with devm_ioremap_resource
2013-05-18 11:58:04 +02:00
xen
xenbus_client.c: correct exit path for xenbus_map_ring_valloc_hvm
2013-05-29 15:24:55 -04:00
zorro
Kconfig
ARM: arm-soc driver changes for 3.10
2013-05-04 12:31:18 -07:00
Makefile
ARM: arm-soc driver changes for 3.10
2013-05-04 12:31:18 -07:00