On Monday, April 16, 2018 02:54:01 PM Daniel Lezcano wrote: > On 16/04/2018 14:49, Bartlomiej Zolnierkiewicz wrote: > > On Monday, April 16, 2018 02:41:48 PM Daniel Lezcano wrote: > >> On 16/04/2018 14:35, Bartlomiej Zolnierkiewicz wrote: > >>> On Monday, April 16, 2018 02:16:56 PM Daniel Lezcano wrote: > >>>> On 16/04/2018 12:11, Bartlomiej Zolnierkiewicz wrote: > >>>>> From: Marek Szyprowski <m.szyprowski@xxxxxxxxxxx> > >>>>> > >>>>> tmu_read() in case of Exynos4210 might return error for out of bound > >>>>> values. Current code ignores such value, what leads to reporting critical > >>>>> temperature value. Add proper error code propagation to exynos_get_temp() > >>>>> function. > >>>> > >>>> For me the comment in the function exynos4210_tmu_read > >>>> > >>>> /* "temp_code" should range between 75 and 175 */ > >>>> > >>>> ... is strange. I would double check this assertion before dealing with > >>>> the error value. > >>> > >>> static int exynos4210_tmu_read(struct exynos_tmu_data *data) > >>> { > >>> int ret = readb(data->base + EXYNOS_TMU_REG_CURRENT_TEMP); > >>> > >>> /* "temp_code" should range between 75 and 175 */ > >>> return (ret < 75 || ret > 175) ? -ENODATA : ret; > >>> } > >>> > >> > >> But I don't get why it *should* ? > > > > Because of hardware design. > > > >> Shouldn't be the same with the 4412, it seems having the same sensor, no? > > > > Probably same limitations apply to all SoCs (Exynos4412 has very similar > > sensor) but the driver currently lacks the needed checks for them (it is > > on TODO but other things have higher priority). > > > I understand. Why the other boards are not reporting a critical value? ->tmu_read methods for other SoCs currently lack hardware limitations checking so they don't return negative values (which before fix was passed to code_to_temp() unchecked and was mapped to critical temperature value). Best regards, -- Bartlomiej Zolnierkiewicz Samsung R&D Institute Poland Samsung Electronics -- To unsubscribe from this list: send the line "unsubscribe linux-samsung-soc" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html