arm: msm: add cpu frequency controls
[pandora-kernel.git] / arch / arm / mach-msm / include / mach / board.h
1 /* arch/arm/mach-msm/include/mach/board.h
2  *
3  * Copyright (C) 2007 Google, Inc.
4  * Author: Brian Swetland <swetland@google.com>
5  *
6  * This software is licensed under the terms of the GNU General Public
7  * License version 2, as published by the Free Software Foundation, and
8  * may be copied, distributed, and modified under those terms.
9  *
10  * This program is distributed in the hope that it will be useful,
11  * but WITHOUT ANY WARRANTY; without even the implied warranty of
12  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13  * GNU General Public License for more details.
14  *
15  */
16
17 #ifndef __ASM_ARCH_MSM_BOARD_H
18 #define __ASM_ARCH_MSM_BOARD_H
19
20 #include <linux/types.h>
21
22 /* platform device data structures */
23
24 struct msm_mddi_platform_data
25 {
26         void (*panel_power)(int on);
27         unsigned has_vsync_irq:1;
28 };
29
30 struct msm_acpu_clock_platform_data
31 {
32         uint32_t acpu_switch_time_us;
33         uint32_t max_speed_delta_khz;
34         uint32_t vdd_switch_time_us;
35         unsigned long power_collapse_khz;
36         unsigned long wait_for_irq_khz;
37 };
38
39   
40 /* common init routines for use by arch/arm/mach-msm/board-*.c */
41
42 void __init msm_add_devices(void);
43 void __init msm_map_common_io(void);
44 void __init msm_init_irq(void);
45 void __init msm_init_gpio(void);
46 void __init msm_clock_init(void);
47 void __init msm_acpu_clock_init(struct msm_acpu_clock_platform_data *);
48
49 #endif