[PATCH 2/3] thermal: Add Mediatek thermal controller support

Daniel Kurtz djkurtz at chromium.org
Mon Sep 14 00:32:56 PDT 2015


Hi Sascha,

On Mon, Aug 31, 2015 at 3:34 PM, Sascha Hauer <s.hauer at pengutronix.de> wrote:
> This adds support for the Mediatek thermal controller found on MT8173
> and likely other SoCs.
> The controller is a bit special. It does not have its own ADC, instead
> it controls the on-SoC AUXADC via AHB bus accesses. For this reason
> we need the physical address of the AUXADC. Also it controls a mux
> using AHB bus accesses, so we need the APMIXEDSYS physical address aswell.
>
> Signed-off-by: Sascha Hauer <s.hauer at pengutronix.de>
> Reviewed-by: Daniel Kurtz <djkurtz at chromium.org>

[snip...]

> +static int mtk_read_temp(void *data, long *temp)
> +{
> +       struct mtk_thermal_bank *bank = data;
> +
> +       mtk_thermal_get_bank(bank);
> +
> +       *temp = mtk_thermal_bank_temperature(bank);
> +
> +       mtk_thermal_put_bank(bank);
> +
> +       return 0;
> +}
> +
> +static const struct thermal_zone_of_device_ops mtk_thermal_ops = {
> +       .get_temp = mtk_read_temp,

On v4.3-rc1, this now causes a compile warning, since the prototype
for get_temp was changed to:

       int (*get_temp)(void *, int *);

by:
commit 17e8351a77397e8a83727eb17e3a3e9b8ab5257a
    thermal: consistently use int for temperatures

-Dan



More information about the linux-arm-kernel mailing list