#include <linux/module.h>
#include <linux/of_address.h>
#include <linux/platform_device.h>
#include <linux/thermal.h>
struct thermal_mmio { … };
static u32 thermal_mmio_readb(void __iomem *mmio_base)
{ … }
static int thermal_mmio_get_temperature(struct thermal_zone_device *tz, int *temp)
{ … }
static const struct thermal_zone_device_ops thermal_mmio_ops = …;
static int thermal_mmio_probe(struct platform_device *pdev)
{ … }
static int al_thermal_init(struct platform_device *pdev,
struct thermal_mmio *sensor)
{ … }
static const struct of_device_id thermal_mmio_id_table[] = …;
MODULE_DEVICE_TABLE(of, thermal_mmio_id_table);
static struct platform_driver thermal_mmio_driver = …;
module_platform_driver(…) …;
MODULE_AUTHOR(…) …;
MODULE_DESCRIPTION(…) …;
MODULE_LICENSE(…) …;