linux-sg2042/include
Roland Stigge c076ada4e4 i2c: pnx: Fix read transactions of >= 2 bytes
On transactions with n>=2 bytes, the controller actually wrongly clocks in n+1
bytes. This is caused by the (wrong) assumption that RFE in the Status Register
is 1 iff there is no byte already ordered (via a dummy TX byte). This lead to
the implementation of synchronized byte ordering, e.g.:

Dummy-TX - RX - Dummy-TX - RX - ...

But since RFE actually stays high after some Dummy-TX, it rather looks like:

Dummy-TX - Dummy-TX - RX - Dummy-TX - RX - (RX)

The last RX byte is clocked in by the bus controller, but ignored by the kernel
when filling the userspace buffer.

This patch fixes the issue by asking for RX via Dummy-TX asynchronously.
Introducing a separate counter for TX bytes.

Signed-off-by: Roland Stigge <stigge@antcom.de>
Signed-off-by: Wolfram Sang <w.sang@pengutronix.de>
2012-09-12 17:52:44 +02:00
..
acpi Merge branches 'delete-gts-bfs', 'misc', 'novell-bugzilla-757888-numa' and 'osc-pcie' into base 2012-08-03 00:31:23 -04:00
asm-generic mutex: Place lock in contended state after fastpath_lock failure 2012-08-13 18:46:54 +02:00
crypto
drm drm: Check for invalid cursor flags 2012-08-24 09:38:40 +10:00
keys
linux i2c: pnx: Fix read transactions of >= 2 bytes 2012-09-12 17:52:44 +02:00
math-emu
media [media] v4l2: add core support for the new VIDIOC_ENUM_FREQ_BANDS ioctl 2012-07-30 20:23:05 -03:00
memory
misc
mtd
net Merge branch 'master' of git://1984.lsi.us.es/nf 2012-08-31 13:06:37 -04:00
pcmcia
ras
rdma Merge branches 'cma', 'cxgb4', 'misc', 'mlx4-sriov', 'mlx-cleanups', 'ocrdma' and 'qib' into for-linus 2012-07-22 23:26:17 -07:00
rxrpc
scsi Merge branch 'master' [vanilla Linus master] into libata-dev.git/upstream 2012-07-25 15:58:48 -04:00
sound ASoC: Additional updates for 3.6 2012-08-20 21:26:04 +02:00
target target: Remove unused se_cmd.cmd_spdtl 2012-08-21 14:27:35 -07:00
trace Merge branch 'perf-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip 2012-08-03 10:57:20 -07:00
video video: da8xx-fb: configure FIFO threshold to reduce underflow errors 2012-07-29 01:11:09 +00:00
xen Revert "xen PVonHVM: move shared_info to MMIO before kexec" 2012-08-16 13:05:25 -04:00
Kbuild