android_kernel_motorola_sm6225/drivers
David Fries 6e10f65427 W1: ds2490.c simplify and fix ds_touch_bit
Simplify and fix ds_touch_bit.  If a device is attached in the middle of a
bus search the status register will return more than the default 16 bytes.
 The additional bytes indicate that it has detected a new device.  The way
ds_wait_status is coded, if it doesn't read 16 status bytes it returns an
error value.  ds_touch_bit then will detect that error and return an
error.  In that case it doesn't read the input buffer and returns
uninitialized data.  It doesn't stop there.  The next transaction will not
expect the extra byte in the input buffer and the short read will cause an
error and clear out both the old byte and new data in the input buffer.

Just ignore the value of ds_wait_status.  It is still required to wait
until ds2490 is again idle and there is data to read when ds_recv_data is
called.  This also removes the while loop.  None of the other commands
wait and verify that the issued command is in the status register.

Signed-off-by: David Fries <david@fries.net>
Signed-off-by: Evgeniy Polyakov <johnpol@2ka.mipt.ru>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2008-10-16 11:21:50 -07:00
..
accessibility braille_console: only register notifiers when the braille console is used 2008-10-02 15:53:13 -07:00
acpi rtc-cmos: move wake setup from ACPI glue into RTC driver 2008-10-14 16:08:21 -07:00
amba
ata Merge commit 'origin' 2008-10-15 11:31:54 +11:00
atm Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/torvalds/linux-2.6 2008-10-11 12:39:35 -07:00
auxdisplay
base firmware: use dev_printk when possible 2008-10-16 11:21:47 -07:00
block Merge commit 'origin' 2008-10-15 11:31:54 +11:00
bluetooth Merge git://git.kernel.org/pub/scm/linux/kernel/git/brodo/pcmcia-2.6 2008-10-13 14:12:40 -07:00
cdrom gdrom: change to use __blk_end_request() 2008-10-09 08:56:21 +02:00
char drivers/char/tpm/tpm.c: fix error-path memory leak 2008-10-16 11:21:49 -07:00
clocksource clocksource, acpi_pm.c: fix check for monotonicity 2008-09-11 11:14:29 +02:00
connector
cpufreq [CPUFREQ] Fix BUG: using smp_processor_id() in preemptible code 2008-10-09 13:52:44 -04:00
cpuidle
crypto crypto: talitos - Avoid consecutive packets going out with same IV 2008-09-14 13:41:19 -07:00
dca
dio
dma dw_dmac: fix copy/paste bug in tasklet 2008-10-03 18:22:18 -07:00
edac edac i5000: fix thermal issues 2008-10-16 11:21:48 -07:00
eisa
firewire
firmware ibft: fix target info parsing in ibft module 2008-09-02 19:21:40 -07:00
gpio gpiolib: request/free hooks 2008-10-16 11:21:40 -07:00
gpu misc: replace __FUNCTION__ with __func__ 2008-10-16 11:21:30 -07:00
hid HID: build drivers for all quirky devices by default 2008-10-14 23:51:05 +02:00
hwmon Merge branch 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc 2008-10-15 08:07:35 -07:00
i2c Merge branch 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc 2008-10-15 08:07:35 -07:00
ide Kconfig: eliminate "def_bool n" constructs 2008-10-16 11:21:31 -07:00
ieee1394
infiniband vfs: Use const for kernel parser table 2008-10-13 10:10:37 -07:00
input omap drivers: switch to standard GPIO calls 2008-10-16 11:21:40 -07:00
isdn Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6 2008-10-14 10:28:49 -07:00
leds Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/torvalds/linux-2.6 2008-10-11 12:39:35 -07:00
lguest
macintosh
mca
md raid, fastboot: hide RAID autodetect option if MD is compiled as a module 2008-10-12 08:25:14 -07:00
media Merge branch 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-2.6 2008-10-13 14:03:59 -07:00
memstick memstick: change to use __blk_end_request() 2008-10-09 08:56:20 +02:00
message i2o: Fix 32/64bit DMA locking 2008-10-16 11:21:38 -07:00
mfd mfd: Fix warning in WM8350 2008-10-13 21:51:57 +01:00
misc AT91: atmel_pwm only available for certain AT91 processors 2008-10-16 11:21:32 -07:00
mmc Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6 2008-10-13 17:13:56 +01:00
mtd omap drivers: switch to standard GPIO calls 2008-10-16 11:21:40 -07:00
net Remove Andrew Morton's old email accounts 2008-10-16 11:21:32 -07:00
nubus nubus: fix mis-indented statement 2008-10-16 11:21:30 -07:00
of Merge commit 'gcl/gcl-next' 2008-10-14 10:11:27 +11:00
oprofile Merge branch 'linus' into oprofile-v2 2008-10-13 11:05:51 +02:00
parisc
parport parport: remove CVS keywords 2008-10-16 11:21:49 -07:00
pci Merge commit 'origin' 2008-10-15 11:31:54 +11:00
pcmcia Merge git://git.kernel.org/pub/scm/linux/kernel/git/brodo/pcmcia-2.6 2008-10-13 14:12:40 -07:00
pnp pnp: make the resource type an unsigned long 2008-10-16 11:21:45 -07:00
power olpc: olpc_battery.c sparse endian annotations 2008-10-16 11:21:30 -07:00
ps3
rapidio
regulator da903x: add regulator support for DA9030/DA9034 2008-10-13 21:51:57 +01:00
rtc rtc-ds1672 new style driver 2008-10-16 11:21:40 -07:00
s390 misc: replace __FUNCTION__ with __func__ 2008-10-16 11:21:30 -07:00
sbus sparc: Kill sbus mostek RTC driver. 2008-09-03 15:55:32 -07:00
scsi m68k: Atari SCSI needs NVRAM 2008-10-14 10:23:27 -07:00
serial Merge commit 'origin' 2008-10-15 11:31:54 +11:00
sh
sn
spi spi: core and gpio expanders use subsys_init 2008-10-16 11:21:38 -07:00
ssb Merge git://git.kernel.org/pub/scm/linux/kernel/git/brodo/pcmcia-2.6 2008-10-13 14:12:40 -07:00
tc
telephony telephony: remove CVS keywords 2008-10-16 11:21:45 -07:00
thermal
uio
usb Merge git://git.kernel.org/pub/scm/linux/kernel/git/brodo/pcmcia-2.6 2008-10-13 14:12:40 -07:00
video fbcon_set_all_vcs: fix kernel crash when switching the rotated consoles 2008-10-16 11:21:45 -07:00
virtio
w1 W1: ds2490.c simplify and fix ds_touch_bit 2008-10-16 11:21:50 -07:00
watchdog Merge git://git.kernel.org/pub/scm/linux/kernel/git/wim/linux-2.6-watchdog 2008-10-12 11:51:32 -07:00
xen xen: remove unused balloon.h 2008-10-03 10:04:10 +02:00
zorro
Kconfig
Makefile