On 2013/05/04 01:40, Stuart Henderson wrote:
> --- uthum.c   15 Apr 2013 09:23:02 -0000      1.19
> +++ uthum.c   4 May 2013 00:19:28 -0000
> @@ -515,7 +515,7 @@ uthum_ntc_getdata(struct uthum_softc *sc
>               return EIO;
>  
>       /* get sensor value */
> -     if (uthum_read_data(sc, CMD_GETDATA_NTC, buf, sizeof(buf), 10) != 0) {
> +     if (uthum_read_data(sc, CMD_GETDATA_NTC, buf, sizeof(buf), 1000) != 0) {
>               DPRINTF(("uthum: data read fail\n"));
>               return EIO;
>       }
> @@ -600,6 +600,7 @@ uthum_ntc_tuning(struct uthum_softc *sc,
>               }
>               ostate = state;
>       }
> +     tsleep(&sc->sc_sensortask, 0, "uthum", hz * 10);
>  
>       DPRINTF(("uthum: ntc tuning done. state change: 0x%.2x->0x%.2x\n",
>           s->cur_state, state));
> 

...of course, as soon as I send the diff out, I get a handful of
messages even with the huge delays

uthum_ntc_getdata: broken ntc data 0x16 0x00 0x31
uthum_refresh_temperntc: data read fail
uthum_ntc_getdata: broken ntc data 0x16 0x00 0x31
uthum_refresh_temperntc: data read fail
uthum_ntc_getdata: broken ntc data 0x16 0x00 0x31
uthum_refresh_temperntc: data read fail

but so far it has not got stuck, and the sensors stay attached.
I'll re-check later...

Reply via email to