1e3568d2eSYe.Li /* 2e3568d2eSYe.Li * 3e3568d2eSYe.Li * (C) Copyright 2014 Freescale Semiconductor, Inc 4e3568d2eSYe.Li * 5e3568d2eSYe.Li * SPDX-License-Identifier: GPL-2.0+ 6e3568d2eSYe.Li */ 7e3568d2eSYe.Li 8e3568d2eSYe.Li #ifndef _THERMAL_H_ 9e3568d2eSYe.Li #define _THERMAL_H_ 10e3568d2eSYe.Li 11e3568d2eSYe.Li #include <dm.h> 12e3568d2eSYe.Li 13e3568d2eSYe.Li int thermal_get_temp(struct udevice *dev, int *temp); 14e3568d2eSYe.Li 15e3568d2eSYe.Li /** 16*6918f974SFabio Estevam * struct dm_thermal_ops - Driver model Thermal operations 17e3568d2eSYe.Li * 18e3568d2eSYe.Li * The uclass interface is implemented by all Thermal devices which use 19e3568d2eSYe.Li * driver model. 20e3568d2eSYe.Li */ 21e3568d2eSYe.Li struct dm_thermal_ops { 22e3568d2eSYe.Li /** 23e3568d2eSYe.Li * Get the current temperature 24e3568d2eSYe.Li * 25*6918f974SFabio Estevam * This must be called before doing any transfers with a Thermal device. 26*6918f974SFabio Estevam * It will enable and initialize any Thermal hardware as necessary. 27e3568d2eSYe.Li * 28e3568d2eSYe.Li * @dev: The Thermal device 29*6918f974SFabio Estevam * @temp: pointer that returns the measured temperature 30e3568d2eSYe.Li */ 31e3568d2eSYe.Li int (*get_temp)(struct udevice *dev, int *temp); 32e3568d2eSYe.Li }; 33e3568d2eSYe.Li 34e3568d2eSYe.Li #endif /* _THERMAL_H_ */ 35