⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 tz.h

📁 linux和2410结合开发 用他可以生成2410所需的zImage文件
💻 H
字号:
/***************************************************************************** * * Module Name: tz.h *   $Revision: 24 $ * *****************************************************************************//* *  Copyright (C) 2000, 2001 Andrew Grover * *  This program is free software; you can redistribute it and/or modify *  it under the terms of the GNU General Public License as published by *  the Free Software Foundation; either version 2 of the License, or *  (at your option) any later version. * *  This program is distributed in the hope that it will be useful, *  but WITHOUT ANY WARRANTY; without even the implied warranty of *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the *  GNU General Public License for more details. * *  You should have received a copy of the GNU General Public License *  along with this program; if not, write to the Free Software *  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA */#ifndef __TZ_H__#define __TZ_H__/* TBD: Linux-specific */#include <linux/module.h>#include <linux/timer.h>#include <bm.h>#include <pr.h>/***************************************************************************** *                             Types & Other Defines *****************************************************************************/#define TZ_MAX_THRESHOLDS	12	/* _AC0 through _AC9 + _CRT + _PSV */#define TZ_MAX_ACTIVE_THRESHOLDS 10	/* _AC0 through _AC9 */#define TZ_MAX_COOLING_DEVICES	10	/* TBD: Make size dynamic *//* * Notifications: * -------------- */#define TZ_NOTIFY_TEMPERATURE_CHANGE ((BM_NOTIFY) 0x80)#define TZ_NOTIFY_THRESHOLD_CHANGE ((BM_NOTIFY) 0x81)#define TZ_NOTIFY_DEVICE_LISTS_CHANGE ((BM_NOTIFY) 0x82)/* * TZ_THRESHOLD_TYPE: * ------------------ */typedef u32			TZ_THRESHOLD_TYPE;#define TZ_THRESHOLD_UNKNOWN	((TZ_THRESHOLD_TYPE) 0x00)#define TZ_THRESHOLD_CRITICAL	((TZ_THRESHOLD_TYPE) 0x01)#define TZ_THRESHOLD_PASSIVE	((TZ_THRESHOLD_TYPE) 0x02)#define TZ_THRESHOLD_ACTIVE	((TZ_THRESHOLD_TYPE) 0x03)/* * TZ_COOLING_STATE: * ----------------- */typedef u32			TZ_COOLING_STATE;#define TZ_COOLING_UNKNOWN	((TZ_COOLING_STATE) 0x00)#define TZ_COOLING_ENABLED	((TZ_COOLING_STATE) 0x01)#define TZ_COOLING_DISABLED	((TZ_COOLING_STATE) 0x02)/* * TZ_COOLING_MODE: * ---------------- */typedef u32			TZ_COOLING_MODE;#define TZ_COOLING_MODE_ACTIVE	((TZ_COOLING_MODE) 0x00)#define TZ_COOLING_MODE_PASSIVE	((TZ_COOLING_MODE) 0x01)/* * Thermal State: * -------------- * The encoding of TZ_STATE is illustrated below. * Note that a set bit (1) indicates the property is TRUE * (e.g. if bit 0 is set then the device has dynamic status). * No bits set indicates an OK cooling state. * +--+--+--+-----------+----------+ * |31|30|29| Bits 27:4 | Bits 3:0 | * +--+--+--+-----------+----------+ *  |  |  |       |          | *  |  |  |       |          +------ Active Index *  |  |  |       +----------------- <reserved> *  |  |  +------------------------- Active *  |  +---------------------------- Passive *  +------------------------------- Critical * * Active Index:    Value representing the level of active cooling *                  presently applied (e.g. 0=_AL0, 9=_AL9).  Only *                  valid when 'Active' is set. * Active:          If set, indicates that the system temperature *                  has crossed at least one active threshold (_ALx). * Passive:         If set, indicates that the system temperature *                  has crossed the passive threshold (_PSL). * Passive:         If set, indicates that the system temperature *                  has crossed the critical threshold (_CRT). */typedef u32			TZ_STATE;#define TZ_STATE_OK		((TZ_STATE) 0x00000000)#define TZ_STATE_HOT		((TZ_STATE) 0x10000000)#define TZ_STATE_ACTIVE		((TZ_STATE) 0x20000000)#define TZ_STATE_PASSIVE	((TZ_STATE) 0x40000000)#define TZ_STATE_CRITICAL	((TZ_STATE) 0x80000000)typedef struct {	u32			temperature;} TZ_CRITICAL_THRESHOLD;typedef struct {	u8			is_valid;	u32			temperature;} TZ_HOT_THRESHOLD;typedef struct {	u8			is_valid;	u32			temperature;	u32			tc1;	u32			tc2;	u32			tsp;	BM_HANDLE_LIST		devices;} TZ_PASSIVE_THRESHOLD;typedef struct {	u8			is_valid;	u32			temperature;	TZ_COOLING_STATE	cooling_state;	BM_HANDLE_LIST		devices;} TZ_ACTIVE_THRESHOLD;typedef struct {	TZ_CRITICAL_THRESHOLD	critical;	TZ_HOT_THRESHOLD	hot;	TZ_PASSIVE_THRESHOLD	passive;	TZ_ACTIVE_THRESHOLD	active[TZ_MAX_ACTIVE_THRESHOLDS];} TZ_THRESHOLDS;/* * TZ_POLICY: * --------- */typedef struct {	u32			temperature;	TZ_STATE		state;	TZ_COOLING_MODE		cooling_mode;	u32			polling_freq;	TZ_THRESHOLDS		thresholds;	struct timer_list	timer;} TZ_POLICY;/* * TZ_CONTEXT: * ----------- */typedef struct {	BM_HANDLE		device_handle;	acpi_handle		acpi_handle;	char			uid[9];	TZ_POLICY		policy;} TZ_CONTEXT;/***************************************************************************** *                             Function Prototypes *****************************************************************************//* tz.c */acpi_statustz_initialize (void);acpi_statustz_terminate (void);acpi_statustz_notify (	BM_NOTIFY               notify_type,	BM_HANDLE               device_handle,	BM_DRIVER_CONTEXT	*context);acpi_statustz_request (	BM_REQUEST              *request,	BM_DRIVER_CONTEXT	context);acpi_statustz_get_temperature (	TZ_CONTEXT		*tz);acpi_statustz_get_thresholds (	TZ_CONTEXT		*tz);acpi_statustz_set_cooling_preference (	TZ_CONTEXT              *tz,	TZ_COOLING_MODE         cooling_mode);voidtz_print (	TZ_CONTEXT              *tz);/* tzpolicy.c */acpi_statustz_policy_add_device (	TZ_CONTEXT              *tz);acpi_statustz_policy_remove_device (	TZ_CONTEXT              *tz);voidtz_policy_check (	void                    *context);/* tz_osl.c */acpi_statustz_osl_add_device (	TZ_CONTEXT		*tz);acpi_statustz_osl_remove_device (	TZ_CONTEXT		*tz);acpi_statustz_osl_generate_event (	u32			event,	TZ_CONTEXT		*tz);#endif  /* __TZ_H__ */

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -