ARM: tegra12: set CPU rate to 2.2GHz for sku 0x87
[linux-3.10.git] / arch / arm / mach-tegra / devices.h
1 /*
2  * Copyright (C) 2010,2011 Google, Inc.
3  *
4  * Author:
5  *      Colin Cross <ccross@android.com>
6  *      Erik Gilling <ccross@android.com>
7  *
8  * Copyright (C) 2010-2013 NVIDIA CORPORATION.  All rights reserved.
9  *
10  * This software is licensed under the terms of the GNU General Public
11  * License version 2, as published by the Free Software Foundation, and
12  * may be copied, distributed, and modified under those terms.
13  *
14  * This program is distributed in the hope that it will be useful,
15  * but WITHOUT ANY WARRANTY; without even the implied warranty of
16  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
17  * GNU General Public License for more details.
18  *
19  */
20
21 #ifndef __MACH_TEGRA_DEVICES_H
22 #define __MACH_TEGRA_DEVICES_H
23
24 #include <linux/platform_device.h>
25 #include <linux/nvhost.h>
26 #include <linux/platform_data/tegra_usb.h>
27
28 extern struct platform_device tegra_emc_device;
29 extern struct platform_device tegra_gpio_device;
30 extern struct platform_device tegra114_pinctrl_device;
31 extern struct platform_device tegra124_pinctrl_device;
32 extern struct platform_device tegra_sdhci_device1;
33 extern struct platform_device tegra_sdhci_device2;
34 extern struct platform_device tegra_sdhci_device3;
35 extern struct platform_device tegra_sdhci_device4;
36 extern struct platform_device tegra_i2c_device1;
37 extern struct platform_device tegra_i2c_device2;
38 extern struct platform_device tegra_i2c_device3;
39 extern struct platform_device tegra_i2c_device4;
40 extern struct platform_device tegra_kbc_device;
41 extern struct platform_device tegra_pci_device;
42 extern struct platform_device tegra_apbdma;
43 #ifndef CONFIG_ARCH_TEGRA_2x_SOC
44 extern struct platform_device tegra_i2c_device5;
45 #endif
46 extern struct platform_device tegra11_i2c_device1;
47 extern struct platform_device tegra11_i2c_device2;
48 extern struct platform_device tegra11_i2c_device3;
49 extern struct platform_device tegra11_i2c_device4;
50 #ifndef CONFIG_ARCH_TEGRA_2x_SOC
51 extern struct platform_device tegra11_i2c_device5;
52 #endif
53 extern struct platform_device tegra_spi_device1;
54 extern struct platform_device tegra_spi_device2;
55 extern struct platform_device tegra_spi_device3;
56 extern struct platform_device tegra_spi_device4;
57 extern struct platform_device tegra11_spi_device1;
58 extern struct platform_device tegra11_spi_device2;
59 extern struct platform_device tegra11_spi_device3;
60 extern struct platform_device tegra11_spi_device4;
61 extern struct platform_device tegra_spi_slave_device1;
62 extern struct platform_device tegra_spi_slave_device2;
63 extern struct platform_device tegra_spi_slave_device3;
64 extern struct platform_device tegra_spi_slave_device4;
65 extern struct platform_device tegra11_spi_slave_device1;
66 extern struct platform_device tegra11_spi_slave_device2;
67 extern struct platform_device tegra11_spi_slave_device3;
68 extern struct platform_device tegra11_spi_slave_device4;
69 #ifndef CONFIG_ARCH_TEGRA_2x_SOC
70 extern struct platform_device tegra11_spi_device5;
71 extern struct platform_device tegra11_spi_device6;
72 extern struct platform_device tegra11_spi_slave_device5;
73 extern struct platform_device tegra11_spi_slave_device6;
74 extern struct platform_device tegra_spi_device5;
75 extern struct platform_device tegra_spi_device6;
76 extern struct platform_device tegra_spi_slave_device5;
77 extern struct platform_device tegra_spi_slave_device6;
78 extern struct platform_device tegra_dtv_device;
79 #endif
80 extern struct platform_device tegra_ehci1_device;
81 extern struct platform_device tegra_ehci2_device;
82 extern struct platform_device tegra_ehci3_device;
83 extern struct platform_device tegra_uarta_device;
84 extern struct platform_device tegra_uartb_device;
85 extern struct platform_device tegra_uartc_device;
86 extern struct platform_device tegra_uartd_device;
87 extern struct platform_device tegra_uarte_device;
88 extern struct platform_device tegra_pmu_device;
89 extern struct platform_device tegra_i2s_device1;
90 extern struct platform_device tegra_i2s_device2;
91 extern struct platform_device tegra_spdif_device;
92 extern struct platform_device tegra_das_device;
93 extern struct platform_device spdif_dit_device;
94 extern struct platform_device bluetooth_dit_device;
95 extern struct platform_device baseband_dit_device;
96 extern struct platform_device tegra_pcm_device;
97 extern struct platform_device tegra_tdm_pcm_device;
98 extern struct platform_device tegra_w1_device;
99 extern struct platform_device tegra_udc_device;
100 extern struct platform_device tegra_ehci1_device;
101 extern struct platform_device tegra_ehci2_device;
102 extern struct platform_device tegra_ehci3_device;
103 extern struct platform_device tegra_i2s_device1;
104 extern struct platform_device tegra_i2s_device2;
105 #ifndef CONFIG_ARCH_TEGRA_2x_SOC
106 extern struct platform_device tegra_i2s_device0;
107 extern struct platform_device tegra_i2s_device3;
108 extern struct platform_device tegra_i2s_device4;
109 extern struct platform_device tegra_ahub_device;
110 extern struct platform_device tegra_apbif0_device;
111 extern struct platform_device tegra_apbif1_device;
112 extern struct platform_device tegra_apbif2_device;
113 extern struct platform_device tegra_apbif3_device;
114 extern struct platform_device tegra_dam_device0;
115 extern struct platform_device tegra_dam_device1;
116 extern struct platform_device tegra_dam_device2;
117 #ifdef CONFIG_ARCH_TEGRA_14x_SOC
118 extern struct platform_device tegra_dmic_device0;
119 extern struct platform_device tegra_dmic_device1;
120 #endif
121 extern struct platform_device tegra_hda_device;
122 extern struct platform_device tegra_sata_device;
123 #endif
124 #if defined(CONFIG_ARCH_TEGRA_2x_SOC)
125 extern struct platform_device tegra_gart_device;
126 #else
127 extern struct platform_device tegra_smmu_device;
128 #endif
129 #if defined(CONFIG_ARCH_TEGRA_2x_SOC)
130 extern struct platform_device tegra_wdt_device;
131 #else
132 extern struct platform_device tegra_wdt0_device;
133 #endif
134 extern struct platform_device tegra_pwfm_device;
135 extern struct platform_device tegra_otg_device;
136 extern struct platform_device tegra_uarta_device;
137 extern struct platform_device tegra_uartb_device;
138 extern struct platform_device tegra_uartc_device;
139 extern struct platform_device tegra_uartd_device;
140 extern struct platform_device tegra_uarte_device;
141 extern struct platform_device tegra_avp_device;
142 extern struct platform_device nvavp_device;
143 extern struct platform_device tegra_aes_device;
144 #if defined(CONFIG_TEGRA_SKIN_THROTTLE)
145 extern struct platform_device tegra_skin_therm_est_device;
146 #endif
147 #if !defined(CONFIG_ARCH_TEGRA_2x_SOC)
148 extern struct platform_device tegra_tsensor_device;
149 #endif
150 extern struct platform_device tegra_nor_device;
151 extern struct platform_device debug_uarta_device;
152 extern struct platform_device debug_uartb_device;
153 extern struct platform_device debug_uartc_device;
154 extern struct platform_device debug_uartd_device;
155 #if !defined(CONFIG_ARCH_TEGRA_2x_SOC)
156 extern struct platform_device tegra_se_device;
157 extern struct platform_device tegra11_se_device;
158 extern struct platform_device tegra12_se_device;
159 extern struct platform_device debug_uarte_device;
160 #endif
161
162 extern struct platform_device tegra_disp1_device;
163 extern struct platform_device tegra_disp2_device;
164 extern struct platform_device tegra_nvmap_device;
165 extern struct platform_device tegra_xhci_device;
166 #ifndef CONFIG_ARCH_TEGRA_2x_SOC
167 extern struct platform_device tegra_cec_device;
168 #endif
169 #ifdef CONFIG_ARCH_TEGRA_HAS_CL_DVFS
170 extern struct platform_device tegra_cl_dvfs_device;
171 #endif
172 extern struct platform_device tegra_fuse_device;
173
174 #ifdef CONFIG_TEGRA_WAKEUP_MONITOR
175 extern struct platform_device tegratab_tegra_wakeup_monitor_device;
176 #endif
177
178 extern struct platform_device tegra_ptm_device;
179
180 #ifdef CONFIG_ARCH_TEGRA_14x_SOC
181 extern struct platform_device tegra14_i2c_device1;
182 extern struct platform_device tegra14_i2c_device2;
183 extern struct platform_device tegra14_i2c_device3;
184 extern struct platform_device tegra14_i2c_device4;
185 extern struct platform_device tegra14_i2c_device5;
186 extern struct platform_device tegra14_i2c_device6;
187 extern struct platform_device tegra_mipi_bif_device;
188 #endif
189
190 #if defined(CONFIG_ARCH_TEGRA_12x_SOC)
191 extern struct platform_device tegra12_i2c_device1;
192 extern struct platform_device tegra12_i2c_device2;
193 extern struct platform_device tegra12_i2c_device3;
194 extern struct platform_device tegra12_i2c_device4;
195 extern struct platform_device tegra12_i2c_device5;
196 extern struct platform_device tegra12_i2c_device6;
197 #endif
198
199 void __init tegra_init_debug_uart_rate(void);
200
201 #endif