1/* ++++++++++ 2 Public interface to the ACPI thermal device driver. 3+++++ */ 4#ifndef _ACPI_THERMAL_H 5#define _ACPI_THERMAL_H 6 7#include <KernelExport.h> 8#include <ACPI.h> 9 10enum { /* ioctl op-codes */ 11 drvOpGetThermalType = B_DEVICE_OP_CODES_END + 10001, 12}; 13 14 15typedef struct acpi_thermal_active_object acpi_thermal_active_object; 16typedef struct acpi_thermal_type acpi_thermal_type; 17 18struct acpi_thermal_type { 19 /* Required fields for thermal devices */ 20 uint32 critical_temp; 21 uint32 current_temp; 22 23 /* Optional HOT temp, S4 sleep threshold */ 24 uint32 hot_temp; 25 26 /* acpi_objects_type evaluated from _PSL 27 if != NULL, client must free() 28 */ 29 acpi_object_type *passive_package; 30 31 /* List of acpi_thermal_active_objects that can actively manage this thermal device */ 32 uint32 active_count; 33 acpi_thermal_active_object *active_devices; 34}; 35 36struct acpi_thermal_active_object { 37 uint32 threshold_temp; 38 acpi_object_type *active_package; 39}; 40 41#endif /* _ACPI_THERMAL_H */ 42