#include <linux/module.h>
#include <linux/platform_device.h>
#include <linux/acpi.h>
#include <linux/thermal.h>
#include "acpi_thermal_rel.h"
#define INT3400_THERMAL_TABLE_CHANGED …
#define INT3400_ODVP_CHANGED …
#define INT3400_KEEP_ALIVE …
#define INT3400_FAKE_TEMP …
enum int3400_thermal_uuid { … };
static char *int3400_thermal_uuids[INT3400_THERMAL_MAXIMUM_UUID] = …;
struct odvp_attr;
struct int3400_thermal_priv { … };
static int evaluate_odvp(struct int3400_thermal_priv *priv);
struct odvp_attr { … };
static BIN_ATTR_SIMPLE_RO(data_vault);
static struct bin_attribute *data_attributes[] = …;
static ssize_t imok_store(struct device *dev, struct device_attribute *attr,
const char *buf, size_t count)
{ … }
static DEVICE_ATTR_WO(imok);
static struct attribute *imok_attr[] = …;
static const struct attribute_group imok_attribute_group = …;
static const struct attribute_group data_attribute_group = …;
static ssize_t available_uuids_show(struct device *dev,
struct device_attribute *attr,
char *buf)
{ … }
static ssize_t current_uuid_show(struct device *dev,
struct device_attribute *devattr, char *buf)
{ … }
static int int3400_thermal_run_osc(acpi_handle handle, char *uuid_str, int *enable)
{ … }
static int set_os_uuid_mask(struct int3400_thermal_priv *priv, u32 mask)
{ … }
static ssize_t current_uuid_store(struct device *dev,
struct device_attribute *attr,
const char *buf, size_t count)
{ … }
static DEVICE_ATTR_RW(current_uuid);
static DEVICE_ATTR_RO(available_uuids);
static struct attribute *uuid_attrs[] = …;
static const struct attribute_group uuid_attribute_group = …;
static int int3400_thermal_get_uuids(struct int3400_thermal_priv *priv)
{ … }
static ssize_t production_mode_show(struct device *dev, struct device_attribute *attr,
char *buf)
{ … }
static DEVICE_ATTR_RO(production_mode);
static int production_mode_init(struct int3400_thermal_priv *priv)
{ … }
static void production_mode_exit(struct int3400_thermal_priv *priv)
{ … }
static ssize_t odvp_show(struct device *dev, struct device_attribute *attr,
char *buf)
{ … }
static void cleanup_odvp(struct int3400_thermal_priv *priv)
{ … }
static int evaluate_odvp(struct int3400_thermal_priv *priv)
{ … }
static void int3400_notify(acpi_handle handle,
u32 event,
void *data)
{ … }
static int int3400_thermal_get_temp(struct thermal_zone_device *thermal,
int *temp)
{ … }
static int int3400_thermal_change_mode(struct thermal_zone_device *thermal,
enum thermal_device_mode mode)
{ … }
static struct thermal_zone_device_ops int3400_thermal_ops = …;
static struct thermal_zone_params int3400_thermal_params = …;
static void int3400_setup_gddv(struct int3400_thermal_priv *priv)
{ … }
static int int3400_thermal_probe(struct platform_device *pdev)
{ … }
static void int3400_thermal_remove(struct platform_device *pdev)
{ … }
static const struct acpi_device_id int3400_thermal_match[] = …;
MODULE_DEVICE_TABLE(acpi, int3400_thermal_match);
static struct platform_driver int3400_thermal_driver = …;
module_platform_driver(…) …;
MODULE_DESCRIPTION(…) …;
MODULE_AUTHOR(…) …;
MODULE_LICENSE(…) …;