linux/drivers/mfd
Jean-François Dagenais f607e7fc5f w1: ds1wm: add a reset recovery parameter
This fixes a regression in 3.0 reported by Paul Parsons regarding the
removal of the msleep(1) in the ds1wm_reset() function:

: The linux-3.0-rc4 DS1WM 1-wire driver is logging "bus error, retrying"
: error messages on an HP iPAQ hx4700 PDA (XScale-PXA270):
:
: <snip>
: Driver for 1-wire Dallas network protocol.
: DS1WM w1 busmaster driver - (c) 2004 Szabolcs Gyurko
: 1-Wire driver for the DS2760 battery monitor  chip  - (c) 2004-2005, Szabolcs Gyurko
: ds1wm ds1wm: pass: 1 bus error, retrying
: ds1wm ds1wm: pass: 2 bus error, retrying
: ds1wm ds1wm: pass: 3 bus error, retrying
: ds1wm ds1wm: pass: 4 bus error, retrying
: ds1wm ds1wm: pass: 5 bus error, retrying
: ...
:
: The visible result is that the battery charging LED is erratic; sometimes
: it works, mostly it doesn't.
:
: The linux-2.6.39 DS1WM 1-wire driver worked OK.  I haven't tried 3.0-rc1,
: 3.0-rc2, or 3.0-rc3.

This sleep should not be required on normal circuitry provided the
pull-ups on the bus are correctly adapted to the slaves.  Unfortunately,
this is not always the case.  The sleep is restored but as a parameter to
the probe function in the pdata.

[akpm@linux-foundation.org: coding-style fixes]
Reported-by: Paul Parsons <lost.distance@yahoo.com>
Tested-by: Paul Parsons <lost.distance@yahoo.com>
Signed-off-by: Jean-François Dagenais <dagenaisj@sonatest.com>
Cc: Evgeniy Polyakov <johnpol@2ka.mipt.ru>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2011-07-08 21:14:44 -07:00
..
88pm860x-core.c
88pm860x-i2c.c
ab3100-core.c
ab3100-otp.c
ab3550-core.c
ab8500-core.c
ab8500-debugfs.c
ab8500-gpadc.c
ab8500-i2c.c
ab8500-sysctrl.c
abx500-core.c
adp5520.c
asic3.c
cs5535-mfd.c
da903x.c
davinci_voicecodec.c
db5500-prcmu-regs.h
db5500-prcmu.c
db8500-prcmu-regs.h
db8500-prcmu.c
dm355evm_msp.c
ezx-pcap.c
htc-egpio.c
htc-i2cpld.c
htc-pasic3.c
janz-cmodio.c
jz4740-adc.c
Kconfig
lpc_sch.c
Makefile
max8925-core.c
max8925-i2c.c
max8997-irq.c
max8997.c
max8998-irq.c
max8998.c
mc13xxx-core.c
mcp-core.c
mcp-sa11x0.c
menelaus.c
mfd-core.c
omap-usb-host.c
pcf50633-adc.c
pcf50633-core.c
pcf50633-gpio.c
pcf50633-irq.c
pm8xxx-irq.c
pm8921-core.c
rdc321x-southbridge.c
sm501.c
stmpe.c
stmpe.h
t7l66xb.c
tc3589x.c
tc6387xb.c
tc6393xb.c
ti-ssp.c
timberdale.c
timberdale.h
tmio_core.c
tps6105x.c
tps6507x.c
tps6586x.c
tps65010.c
tps65910-irq.c
tps65910.c
tps65911-comparator.c
twl4030-codec.c
twl4030-irq.c
twl4030-madc.c
twl4030-power.c
twl6030-irq.c
twl6030-pwm.c
twl-core.c
twl-core.h
ucb1x00-assabet.c
ucb1x00-core.c
ucb1x00-ts.c
ucb1400_core.c
vx855.c
wl1273-core.c
wm831x-core.c
wm831x-i2c.c
wm831x-irq.c
wm831x-otp.c
wm831x-spi.c
wm8350-core.c
wm8350-gpio.c
wm8350-i2c.c
wm8350-irq.c
wm8350-regmap.c
wm8400-core.c
wm8994-core.c
wm8994-irq.c