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

Daniel Kurtz djkurtz at chromium.org
Tue Sep 22 00:30:47 PDT 2015


On Mon, Sep 14, 2015 at 3:32 PM, Daniel Kurtz <djkurtz at chromium.org> wrote:
>
> 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

It is actually a little worse than a warning.  This actually causes a
crash on boot.
Sascha, can you send out a rebased patch set on v4.3-rc1?

Thanks,
-Dan

>
>
> -Dan



More information about the Linux-mediatek mailing list