On 2017-03-06 21:03:55 +0100, Niklas Söderlund wrote: > The .thermal_init needs to be delayed a short amount of to allow for the > TEMP register to contain something useful. If it's not delayed theses > warnings are common during boot: > > thermal thermal_zone0: failed to read out thermal zone (-5) > thermal thermal_zone1: failed to read out thermal zone (-5) > thermal thermal_zone2: failed to read out thermal zone (-5) > > The warnings are triggered by the first call to .get_temp while the TEMP > register contains 0 and rcar_gen3_thermal_get_temp() returns -EIO since > a TEMP value of 0 will result in a temperature reading which is out of > specifications. > > This should have been done in the initial commit which adds the driver > as the same issue was found and corrected for r8a7795. > > Signed-off-by: Niklas Söderlund <niklas.soderlund+renesas@xxxxxxxxxxxx> I forgot this tag for this patch, will update if there is a need for v2. Fixes: 564e73d283af9d4c ("thermal: rcar_gen3_thermal: Add R-Car Gen3 thermal driver") > --- > drivers/thermal/rcar_gen3_thermal.c | 2 ++ > 1 file changed, 2 insertions(+) > > diff --git a/drivers/thermal/rcar_gen3_thermal.c b/drivers/thermal/rcar_gen3_thermal.c > index d33c845244b1d819..ec477d47d0bae8e5 100644 > --- a/drivers/thermal/rcar_gen3_thermal.c > +++ b/drivers/thermal/rcar_gen3_thermal.c > @@ -222,6 +222,8 @@ static void r8a7796_thermal_init(struct rcar_gen3_thermal_tsc *tsc) > reg_val = rcar_gen3_thermal_read(tsc, REG_GEN3_THCTR); > reg_val |= THCTR_THSST; > rcar_gen3_thermal_write(tsc, REG_GEN3_THCTR, reg_val); > + > + usleep_range(1000, 2000); > } > > static const struct rcar_gen3_thermal_data r8a7795_data = { > -- > 2.12.0 > -- Regards, Niklas Söderlund