2
* vacpi.h: Virtual ACPI definitions
4
* Copyright (c) 2007, FUJITSU LIMITED
5
* Kouya Shimura <kouya at jp fujitsu com>
7
* This program is free software; you can redistribute it and/or modify it
8
* under the terms and conditions of the GNU General Public License,
9
* version 2, as published by the Free Software Foundation.
11
* This program is distributed in the hope it will be useful, but WITHOUT
12
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
13
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
16
* You should have received a copy of the GNU General Public License along with
17
* this program; if not, write to the Free Software Foundation, Inc., 59 Temple
18
* Place - Suite 330, Boston, MA 02111-1307 USA.
21
#ifndef __ASM_IA64_HVM_VACPI_H__
22
#define __ASM_IA64_HVM_VACPI_H__
24
#include <public/arch-ia64/hvm/save.h> /* for struct vacpi_regs */
25
#include <public/hvm/ioreq.h>
27
#define ACPI_PM1A_EVT_BLK_ADDRESS 0x0000000000001f40
28
#define ACPI_PM1A_CNT_BLK_ADDRESS (ACPI_PM1A_EVT_BLK_ADDRESS + 0x04)
29
#define ACPI_PM_TMR_BLK_ADDRESS (ACPI_PM1A_EVT_BLK_ADDRESS + 0x08)
31
#define IS_ACPI_ADDR(X) ((unsigned long)((X)-ACPI_PM1A_EVT_BLK_ADDRESS)<12)
33
#define FREQUENCE_PMTIMER 3579545UL /* Timer should run at 3.579545 MHz */
36
struct vacpi_regs regs;
42
int vacpi_intercept(ioreq_t * p, u64 * val);
43
void vacpi_init(struct domain *d);
44
void vacpi_relinquish_resources(struct domain *d);
46
#endif /* __ASM_IA64_HVM_VACPI_H__ */