w1_therm.c 1.3 1.4 1.10 Use the strong pullup not the sleep. Note that the pullup goes before W1_CONVERT_TEMP not after. +w1_next_pullup(dev, tm); w1_write_8(dev, W1_CONVERT_TEMP); -msleep(tm); Signed-off-by: David Fries --- drivers/w1/slaves/w1_therm.c | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) diff --git a/drivers/w1/slaves/w1_therm.c b/drivers/w1/slaves/w1_therm.c index fb28aca..dd26db2 100644 --- a/drivers/w1/slaves/w1_therm.c +++ b/drivers/w1/slaves/w1_therm.c @@ -192,10 +192,10 @@ static ssize_t w1_therm_read_bin(struct kobject *kobj, int count = 0; unsigned int tm = 750; + /* 750ms strong pullup (or delay) after the convert */ + w1_next_pullup(dev, tm); w1_write_8(dev, W1_CONVERT_TEMP); - msleep(tm); - if (!w1_reset_select_slave(sl)) { w1_write_8(dev, W1_READ_SCRATCHPAD); -- 1.4.4.4