blob: eb12383347a4bdc13cdbdf6498de0f613e825e92 [file] [log] [blame]
Brian Swetlandbcc0f6a2008-09-10 14:00:53 -07001/* linux/arch/arm/mach-msm/devices.h
2 *
3 * Copyright (C) 2008 Google, Inc.
Praveen Chidambaramf27a5152013-02-01 11:44:53 -07004 * Copyright (c) 2009-2013, The Linux Foundation. All rights reserved.
Brian Swetlandbcc0f6a2008-09-10 14:00:53 -07005 *
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 __ARCH_ARM_MACH_MSM_DEVICES_H
18#define __ARCH_ARM_MACH_MSM_DEVICES_H
19
Stephen Boydbd323442011-02-23 09:37:42 -080020#include <linux/clkdev.h>
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -070021#include <linux/platform_device.h>
Daniel Walker5e96da52010-05-12 13:43:28 -070022#include "clock.h"
Rohit Vaswaniced9b3b2011-08-23 17:21:49 -070023
24void __init msm9615_device_init(void);
25void __init msm9615_map_io(void);
26void __init msm_map_msm9615_io(void);
27void __init msm9615_init_irq(void);
Ravishangar Kalyanam319a83c2012-03-21 18:38:05 -070028void __init msm_rotator_update_bus_vectors(unsigned int xres,
29 unsigned int yres);
Olav Hauganef95ae32012-05-15 09:50:30 -070030void __init msm_rotator_set_split_iommu_domain(void);
Rohit Vaswaniced9b3b2011-08-23 17:21:49 -070031
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -070032extern struct platform_device asoc_msm_pcm;
33extern struct platform_device asoc_msm_dai0;
34extern struct platform_device asoc_msm_dai1;
35#if defined (CONFIG_SND_MSM_MVS_DAI_SOC)
36extern struct platform_device asoc_msm_mvs;
37extern struct platform_device asoc_mvs_dai0;
38extern struct platform_device asoc_mvs_dai1;
39#endif
40
41extern struct platform_device msm_ebi0_thermal;
42extern struct platform_device msm_ebi1_thermal;
Daniel Walker5e96da52010-05-12 13:43:28 -070043
Laxminath Kasam5faa1ca2012-02-15 12:06:45 +053044extern struct platform_device msm_adsp_device;
Brian Swetlandbcc0f6a2008-09-10 14:00:53 -070045extern struct platform_device msm_device_uart1;
46extern struct platform_device msm_device_uart2;
47extern struct platform_device msm_device_uart3;
Taniya Das43bcdd62011-12-02 17:33:27 +053048extern struct platform_device msm8625_device_uart1;
Brian Swetlandbcc0f6a2008-09-10 14:00:53 -070049
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -070050extern struct platform_device msm_device_uart_dm1;
51extern struct platform_device msm_device_uart_dm2;
52extern struct platform_device msm_device_uart_dm3;
53extern struct platform_device msm_device_uart_dm12;
54extern struct platform_device *msm_device_uart_gsbi9;
Mayank Rana9f51f582011-08-04 18:35:59 +053055extern struct platform_device msm_device_uart_dm6;
Mayank Rana1f02d952012-07-04 19:11:20 +053056extern struct platform_device msm_device_uart_dm8;
Mayank Ranae009c922012-03-22 03:02:06 +053057extern struct platform_device msm_device_uart_dm9;
Mayank Rana262e9032012-05-10 15:14:00 -070058extern struct platform_device mpq8064_device_uartdm_gsbi6;
Saket Saurabhd425a5d2012-11-06 16:08:28 +053059extern struct platform_device mpq8064_device_uart_gsbi5;
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -070060
Stepan Moskovchenkod056fca2011-01-27 12:12:07 -080061extern struct platform_device msm8960_device_uart_gsbi2;
62extern struct platform_device msm8960_device_uart_gsbi5;
Stepan Moskovchenko2b4b1cd2012-03-29 18:21:04 -070063extern struct platform_device msm8960_device_uart_gsbi8;
Jay Chokshi33c044a2011-12-07 13:05:40 -080064extern struct platform_device msm8960_device_ssbi_pmic;
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -070065extern struct platform_device msm8960_device_qup_i2c_gsbi3;
66extern struct platform_device msm8960_device_qup_i2c_gsbi4;
Harini Jayaramanfe6ff4162012-03-14 11:25:40 -060067extern struct platform_device msm8960_device_qup_i2c_gsbi9;
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -070068extern struct platform_device msm8960_device_qup_i2c_gsbi10;
69extern struct platform_device msm8960_device_qup_i2c_gsbi12;
70extern struct platform_device msm8960_device_qup_spi_gsbi1;
71extern struct platform_device msm8960_gemini_device;
Kalyani Oruganti465d1e12012-05-15 10:23:05 -070072extern struct platform_device msm8960_mercury_device;
Kevin Chanbb8ef862012-02-14 13:03:04 -080073extern struct platform_device msm8960_device_i2c_mux_gsbi4;
Kevin Chanf6216f22011-10-25 18:40:11 -070074extern struct platform_device msm8960_device_csiphy0;
75extern struct platform_device msm8960_device_csiphy1;
Sreesudhan Ramakrish Ramkumarb1edcd02012-01-17 11:33:05 -080076extern struct platform_device msm8960_device_csiphy2;
Kevin Chanc8b52e82011-10-25 23:20:21 -070077extern struct platform_device msm8960_device_csid0;
78extern struct platform_device msm8960_device_csid1;
Sreesudhan Ramakrish Ramkumarb1edcd02012-01-17 11:33:05 -080079extern struct platform_device msm8960_device_csid2;
Kevin Chane12c6672011-10-26 11:55:26 -070080extern struct platform_device msm8960_device_ispif;
Kevin Chan5827c552011-10-28 18:36:32 -070081extern struct platform_device msm8960_device_vfe;
Kevin Chana0853122011-11-07 19:48:44 -080082extern struct platform_device msm8960_device_vpe;
Stepan Moskovchenko28662c52012-03-01 12:48:45 -080083extern struct platform_device msm8960_device_cache_erp;
Stepan Moskovchenkoc0557252012-06-07 17:39:14 -070084extern struct platform_device msm8960_device_ebi1_ch0_erp;
85extern struct platform_device msm8960_device_ebi1_ch1_erp;
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -070086
Stepan Moskovchenko2701a442011-08-19 13:47:22 -070087extern struct platform_device apq8064_device_uart_gsbi1;
Rohit Vaswani4375c802013-01-09 13:38:19 -080088extern struct platform_device apq8064_device_uart_gsbi2;
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -070089extern struct platform_device apq8064_device_uart_gsbi3;
Rohit Vaswani4375c802013-01-09 13:38:19 -080090extern struct platform_device apq8064_device_uart_gsbi4;
Jin Hong4bbbfba2012-02-02 21:48:07 -080091extern struct platform_device apq8064_device_uart_gsbi7;
David Keitel3c40fc52012-02-09 17:53:52 -080092extern struct platform_device apq8064_device_qup_i2c_gsbi1;
Jing Lin04601f92012-02-05 15:36:07 -080093extern struct platform_device apq8064_device_qup_i2c_gsbi3;
Kenneth Heitke748593a2011-07-15 15:45:11 -060094extern struct platform_device apq8064_device_qup_i2c_gsbi4;
Harini Jayaramanc4c58692011-07-19 14:50:10 -060095extern struct platform_device apq8064_device_qup_spi_gsbi5;
Sagar Dharia8bdcdaf2011-09-16 16:01:15 -060096extern struct platform_device apq8064_slim_ctrl;
Kenneth Heitke36920d32011-07-20 16:44:30 -060097extern struct platform_device apq8064_device_ssbi_pmic1;
98extern struct platform_device apq8064_device_ssbi_pmic2;
Stepan Moskovchenko28662c52012-03-01 12:48:45 -080099extern struct platform_device apq8064_device_cache_erp;
Sujit Reddy Thummab0d51e72012-12-31 15:37:16 +0530100extern struct platform_device apq8064_device_sata;
Stepan Moskovchenkod056fca2011-01-27 12:12:07 -0800101
Rohit Vaswani09666872011-08-23 17:41:54 -0700102extern struct platform_device msm9615_device_uart_gsbi4;
Harini Jayaramaneba52672011-09-08 15:13:00 -0600103extern struct platform_device msm9615_device_qup_i2c_gsbi5;
Harini Jayaraman738c9312011-09-08 15:22:38 -0600104extern struct platform_device msm9615_device_qup_spi_gsbi3;
Sagar Dharia2a5378d2011-12-01 20:00:11 -0700105extern struct platform_device msm9615_slim_ctrl;
Kenneth Heitkeaf3d3cf2011-09-08 11:45:31 -0700106extern struct platform_device msm9615_device_ssbi_pmic1;
Siddartha Mohanadoss5d49cec2011-09-21 10:26:15 -0700107extern struct platform_device msm9615_device_tsens;
Gagan Mac7a827642011-09-22 19:42:21 -0600108extern struct platform_device msm_bus_9615_sys_fabric;
109extern struct platform_device msm_bus_def_fab;
Rohit Vaswani09666872011-08-23 17:41:54 -0700110
Brian Swetlandbcc0f6a2008-09-10 14:00:53 -0700111extern struct platform_device msm_device_sdc1;
112extern struct platform_device msm_device_sdc2;
113extern struct platform_device msm_device_sdc3;
114extern struct platform_device msm_device_sdc4;
115
Praveen Chidambaramf27a5152013-02-01 11:44:53 -0700116extern struct platform_device msm8960_pm_8x60;
117extern struct platform_device msm8064_pm_8x60;
118extern struct platform_device msm8930_pm_8x60;
Girish Mahadevan55944992012-10-26 11:03:07 -0600119extern struct platform_device msm9615_pm_8x60;
Praveen Chidambaramf27a5152013-02-01 11:44:53 -0700120extern struct platform_device msm8660_pm_8x60;
Anji Jonnala6c2b6852012-09-21 13:34:44 +0530121
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700122extern struct platform_device msm_device_gadget_peripheral;
Pavankumar Kondeti7032d512010-12-08 13:37:07 +0530123extern struct platform_device msm_device_hsusb_host;
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700124extern struct platform_device msm_device_hsusb_host2;
Vijayavardhan Vennapusaeb566482011-09-18 07:48:37 +0530125extern struct platform_device msm_device_hsic_host;
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700126
Anji Jonnalaf91d8972013-02-26 17:55:50 +0530127extern struct platform_device msm8960_cpu_slp_status;
128extern struct platform_device msm8064_cpu_slp_status;
129extern struct platform_device msm8930_cpu_slp_status;
130
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700131extern struct platform_device msm_device_otg;
Ofir Cohen94213a72012-05-03 14:26:32 +0300132extern struct platform_device msm_android_usb_device;
Ido Shayevitz479f2eb2012-06-27 10:39:57 +0300133extern struct platform_device msm_android_usb_hsic_device;
Ofir Cohen06789f12012-01-16 09:43:13 +0200134extern struct platform_device msm_device_hsic_peripheral;
Stepan Moskovchenko14aa6492011-08-08 15:15:01 -0700135extern struct platform_device msm8960_device_otg;
136extern struct platform_device msm8960_device_gadget_peripheral;
137
138extern struct platform_device apq8064_device_otg;
139extern struct platform_device apq8064_usb_diag_device;
140extern struct platform_device apq8064_device_gadget_peripheral;
Hemant Kumard86c4882012-01-24 19:39:37 -0800141extern struct platform_device apq8064_device_hsusb_host;
Hemant Kumara945b472012-01-25 15:08:06 -0800142extern struct platform_device apq8064_device_hsic_host;
Manu Gautam91223e02011-11-08 15:27:22 +0530143extern struct platform_device apq8064_device_ehci_host3;
Hemant Kumar1d66e1c2012-02-13 15:24:59 -0800144extern struct platform_device apq8064_device_ehci_host4;
Stepan Moskovchenko14aa6492011-08-08 15:15:01 -0700145
Brian Swetlandbcc0f6a2008-09-10 14:00:53 -0700146extern struct platform_device msm_device_i2c;
147
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700148extern struct platform_device msm_device_i2c_2;
149
150extern struct platform_device qup_device_i2c;
151
152extern struct platform_device msm_gsbi0_qup_i2c_device;
153extern struct platform_device msm_gsbi1_qup_i2c_device;
154extern struct platform_device msm_gsbi3_qup_i2c_device;
155extern struct platform_device msm_gsbi4_qup_i2c_device;
156extern struct platform_device msm_gsbi7_qup_i2c_device;
157extern struct platform_device msm_gsbi8_qup_i2c_device;
158extern struct platform_device msm_gsbi9_qup_i2c_device;
159extern struct platform_device msm_gsbi12_qup_i2c_device;
160
Taniya Dase3027e22012-02-27 16:32:27 +0530161extern struct platform_device msm8625_gsbi0_qup_i2c_device;
162extern struct platform_device msm8625_gsbi1_qup_i2c_device;
Trilok Soni269fff42012-02-13 20:35:30 +0530163extern struct platform_device msm8625_device_uart_dm1;
164extern struct platform_device msm8625_device_uart_dm2;
Trilok Soniee75f6c2012-02-13 20:45:07 +0530165extern struct platform_device msm8625_device_sdc1;
166extern struct platform_device msm8625_device_sdc2;
167extern struct platform_device msm8625_device_sdc3;
168extern struct platform_device msm8625_device_sdc4;
Trilok Sonida63a8b2012-02-13 20:50:03 +0530169extern struct platform_device msm8625_device_gadget_peripheral;
170extern struct platform_device msm8625_device_hsusb_host;
171extern struct platform_device msm8625_device_otg;
Trilok Soni664b95d2012-02-13 21:13:15 +0530172extern struct platform_device msm8625_kgsl_3d0;
Laxminath Kasam5faa1ca2012-02-15 12:06:45 +0530173extern struct platform_device msm8625_device_adsp;
Taniya Das9d187142011-12-02 15:53:25 +0530174
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700175extern struct platform_device msm_slim_ctrl;
176extern struct platform_device msm_device_sps;
Ofir Cohen40a4e862011-12-08 15:17:52 +0200177extern struct platform_device msm_device_usb_bam;
Yan He06913ce2011-08-26 16:33:46 -0700178extern struct platform_device msm_device_sps_apq8064;
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700179extern struct platform_device msm_device_bam_dmux;
Brian Swetlandbcc0f6a2008-09-10 14:00:53 -0700180extern struct platform_device msm_device_smd;
Jeff Hugo0c0f5e92011-09-28 13:55:45 -0600181extern struct platform_device msm_device_smd_apq8064;
Angshuman Sarkarfb1cce92012-02-21 15:20:43 +0530182extern struct platform_device msm8625_device_smd;
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700183extern struct platform_device msm_device_dmov;
Stepan Moskovchenkodf13d342011-08-03 19:01:25 -0700184extern struct platform_device msm8960_device_dmov;
185extern struct platform_device apq8064_device_dmov;
Jeff Ohlsteind19bf442011-09-09 12:48:18 -0700186extern struct platform_device msm9615_device_dmov;
Taniya Das43bcdd62011-12-02 17:33:27 +0530187extern struct platform_device msm8625_device_dmov;
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700188extern struct platform_device msm_device_dmov_adm0;
189extern struct platform_device msm_device_dmov_adm1;
Brian Swetlandbcc0f6a2008-09-10 14:00:53 -0700190
Niranjana Vishwanathapura06f89332012-05-03 17:11:13 -0600191extern struct platform_device msm_device_pcie;
192
Brian Swetlandbcc0f6a2008-09-10 14:00:53 -0700193extern struct platform_device msm_device_nand;
194
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700195extern struct platform_device msm_device_tssc;
196
197extern struct platform_device msm_rotator_device;
Terence Hampson2e1705f2012-04-11 19:55:29 -0400198#ifdef CONFIG_MSM_VCAP
199extern struct platform_device msm8064_device_vcap;
200#endif
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700201
Nagamalleswararao Ganji5fabbd62011-11-06 23:10:43 -0800202#ifdef CONFIG_MSM_BUS_SCALING
203extern struct msm_bus_scale_pdata rotator_bus_scale_pdata;
204#endif
205
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700206extern struct platform_device msm_device_tsif[2];
Joel Nider6b9a7bc2012-06-26 11:19:19 +0300207extern struct platform_device msm_8064_device_tsif[2];
Joel Nider50b50fa2012-08-05 14:17:29 +0300208extern struct platform_device msm_8064_device_tspp;
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700209
Anirudh Ghayal9d9cdc22011-10-10 17:17:07 +0530210extern struct platform_device msm_device_ssbi_pmic1;
Anirudh Ghayalc49157f2011-11-09 14:49:59 +0530211extern struct platform_device msm_device_ssbi_pmic2;
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700212extern struct platform_device msm_device_ssbi1;
213extern struct platform_device msm_device_ssbi2;
214extern struct platform_device msm_device_ssbi3;
215extern struct platform_device msm_device_ssbi6;
216extern struct platform_device msm_device_ssbi7;
217
218extern struct platform_device msm_gsbi1_qup_spi_device;
219
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700220extern struct platform_device msm_device_vidc_720p;
221
222extern struct platform_device msm_pcm;
Kiran Kandi5e809b02012-01-31 00:24:33 -0800223extern struct platform_device msm_multi_ch_pcm;
Jayasena Sangaraboina99bf09c2012-07-17 12:03:08 -0700224extern struct platform_device msm_lowlatency_pcm;
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700225extern struct platform_device msm_pcm_routing;
226extern struct platform_device msm_cpudai0;
227extern struct platform_device msm_cpudai1;
Santosh Mardieff9a742012-04-09 23:23:39 +0530228extern struct platform_device mpq_cpudai_sec_i2s_rx;
Aviral Guptabfa97882012-10-16 12:15:59 +0530229extern struct platform_device mpq_cpudai_pseudo;
Kiran Kandi97fe19d2012-05-20 22:34:04 -0700230extern struct platform_device msm8960_cpudai_slimbus_2_rx;
Kiran Kandi1e6371d2012-03-29 11:48:57 -0700231extern struct platform_device msm8960_cpudai_slimbus_2_tx;
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700232extern struct platform_device msm_cpudai_hdmi_rx;
233extern struct platform_device msm_cpudai_bt_rx;
234extern struct platform_device msm_cpudai_bt_tx;
235extern struct platform_device msm_cpudai_fm_rx;
236extern struct platform_device msm_cpudai_fm_tx;
Bhalchandra Gajare0e795c42011-08-15 18:10:30 -0700237extern struct platform_device msm_cpudai_auxpcm_rx;
238extern struct platform_device msm_cpudai_auxpcm_tx;
Shiv Maliyappanahalli7f4dec52012-06-01 16:06:08 -0700239extern struct platform_device msm_cpudai_sec_auxpcm_rx;
240extern struct platform_device msm_cpudai_sec_auxpcm_tx;
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700241extern struct platform_device msm_cpu_fe;
242extern struct platform_device msm_stub_codec;
243extern struct platform_device msm_voice;
244extern struct platform_device msm_voip;
Shiv Maliyappanahalli30561a52012-10-28 21:15:07 -0700245extern struct platform_device msm_dtmf;
Shiv Maliyappanahalliebdb3062013-01-16 19:31:25 -0800246extern struct platform_device msm_host_pcm_voice;
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700247extern struct platform_device msm_lpa_pcm;
248extern struct platform_device msm_pcm_hostless;
Laxminath Kasamcee1d602011-08-01 19:26:57 +0530249extern struct platform_device msm_cpudai_afe_01_rx;
250extern struct platform_device msm_cpudai_afe_01_tx;
251extern struct platform_device msm_cpudai_afe_02_rx;
252extern struct platform_device msm_cpudai_afe_02_tx;
253extern struct platform_device msm_pcm_afe;
Asish Bhattacharya96bb6f42011-11-01 20:36:09 +0530254extern struct platform_device msm_compr_dsp;
Helen Zeng0705a5f2011-10-14 15:29:52 -0700255extern struct platform_device msm_cpudai_incall_music_rx;
Helen Zenge3d716a2011-10-14 16:32:16 -0700256extern struct platform_device msm_cpudai_incall_record_rx;
257extern struct platform_device msm_cpudai_incall_record_tx;
Venkat Sudhir5efc4912012-05-15 17:10:35 -0700258extern struct platform_device msm_i2s_cpudai0;
259extern struct platform_device msm_i2s_cpudai1;
Damir Didjustoadd54442012-09-21 10:39:54 -0700260extern struct platform_device msm_i2s_cpudai4;
261extern struct platform_device msm_i2s_cpudai5;
Shiv Maliyappanahallic2321262012-11-12 15:21:05 -0800262extern struct platform_device msm_cpudai_stub;
Damir Didjusto10925802013-04-23 14:21:53 -0700263extern struct platform_device msm_fm_loopback;
Shiv Maliyappanahallic2321262012-11-12 15:21:05 -0800264
Stephen Boyd3acc9e42011-09-28 16:46:40 -0700265extern struct platform_device msm_pil_q6v3;
Stephen Boyd4eb885b2011-09-29 01:16:03 -0700266extern struct platform_device msm_pil_modem;
Stephen Boydd89eebe2011-09-28 23:28:11 -0700267extern struct platform_device msm_pil_tzapps;
Stephen Boyd25c4a0b2011-09-20 00:12:36 -0700268extern struct platform_device msm_pil_dsps;
Stephen Boyd7b973de2012-03-09 12:26:16 -0800269extern struct platform_device msm_pil_vidc;
Stephen Boydeb819882011-08-29 14:46:30 -0700270extern struct platform_device msm_8960_q6_lpass;
Stephen Boyda1cf76b2012-06-13 12:05:35 -0700271extern struct platform_device msm_9615_q6_lpass;
Stephen Boydbdb53f32012-06-05 18:39:47 -0700272extern struct platform_device msm_8960_q6_mss;
Stephen Boyd2efa9962012-06-12 14:20:12 -0700273extern struct platform_device msm_9615_q6_mss;
Stephen Boyd322a9922011-09-20 01:05:54 -0700274extern struct platform_device msm_8960_riva;
Matt Wagantall292aace2012-01-26 19:12:34 -0800275extern struct platform_device msm_gss;
Stephen Boydeb819882011-08-29 14:46:30 -0700276
Bharath Ramachandramurthyb8e797f2011-11-30 12:08:42 -0800277extern struct platform_device apq_pcm;
278extern struct platform_device apq_pcm_routing;
279extern struct platform_device apq_cpudai0;
280extern struct platform_device apq_cpudai1;
Kuirong Wangf23f8c52012-03-31 12:34:51 -0700281extern struct platform_device mpq_cpudai_mi2s_tx;
Bharath Ramachandramurthyb8e797f2011-11-30 12:08:42 -0800282extern struct platform_device apq_cpudai_hdmi_rx;
283extern struct platform_device apq_cpudai_bt_rx;
284extern struct platform_device apq_cpudai_bt_tx;
285extern struct platform_device apq_cpudai_fm_rx;
286extern struct platform_device apq_cpudai_fm_tx;
287extern struct platform_device apq_cpudai_auxpcm_rx;
288extern struct platform_device apq_cpudai_auxpcm_tx;
289extern struct platform_device apq_cpu_fe;
290extern struct platform_device apq_stub_codec;
291extern struct platform_device apq_voice;
292extern struct platform_device apq_voip;
293extern struct platform_device apq_lpa_pcm;
Krishnankutty Kolathappilly4374e332012-03-18 22:27:30 -0700294extern struct platform_device apq_compr_dsp;
295extern struct platform_device apq_multi_ch_pcm;
Jayasena Sangaraboina99bf09c2012-07-17 12:03:08 -0700296extern struct platform_device apq_lowlatency_pcm;
Bharath Ramachandramurthyb8e797f2011-11-30 12:08:42 -0800297extern struct platform_device apq_pcm_hostless;
298extern struct platform_device apq_cpudai_afe_01_rx;
299extern struct platform_device apq_cpudai_afe_01_tx;
300extern struct platform_device apq_cpudai_afe_02_rx;
301extern struct platform_device apq_cpudai_afe_02_tx;
302extern struct platform_device apq_pcm_afe;
Neema Shetty8427c262012-02-16 11:23:43 -0800303extern struct platform_device apq_cpudai_stub;
Neema Shetty3c9d2862012-03-11 01:25:32 -0800304extern struct platform_device apq_cpudai_slimbus_1_rx;
305extern struct platform_device apq_cpudai_slimbus_1_tx;
Kiran Kandi97fe19d2012-05-20 22:34:04 -0700306extern struct platform_device apq_cpudai_slimbus_2_rx;
Kiran Kandi1e6371d2012-03-29 11:48:57 -0700307extern struct platform_device apq_cpudai_slimbus_2_tx;
Neema Shettyc9d86c32012-05-09 12:01:39 -0700308extern struct platform_device apq_cpudai_slimbus_3_rx;
Helen Zeng38c3c962012-05-17 14:56:20 -0700309extern struct platform_device apq_cpudai_slimbus_3_tx;
Helen Zeng8f925502012-03-05 16:50:17 -0800310extern struct platform_device apq_cpudai_slim_4_rx;
311extern struct platform_device apq_cpudai_slim_4_tx;
Bharath Ramachandramurthyb8e797f2011-11-30 12:08:42 -0800312
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700313extern struct platform_device *msm_footswitch_devices[];
314extern unsigned msm_num_footswitch_devices;
Matt Wagantall1f65d9d2012-04-25 14:24:20 -0700315extern struct platform_device *msm8660_footswitch[];
316extern unsigned msm8660_num_footswitch;
317extern struct platform_device *msm8960_footswitch[];
318extern unsigned msm8960_num_footswitch;
Stephen Boyd913c29d2012-10-25 11:46:04 -0700319extern struct platform_device *msm8960ab_footswitch[];
320extern unsigned msm8960ab_num_footswitch;
Matt Wagantall1f65d9d2012-04-25 14:24:20 -0700321extern struct platform_device *apq8064_footswitch[];
322extern unsigned apq8064_num_footswitch;
323extern struct platform_device *msm8930_footswitch[];
324extern unsigned msm8930_num_footswitch;
Aravind Venkateswaran896d2f92012-10-29 17:54:55 -0700325extern struct platform_device *msm8930_pm8917_footswitch[];
326extern unsigned msm8930_pm8917_num_footswitch;
Tianyi Gou723843b2012-06-13 15:24:56 -0700327extern struct platform_device *msm8627_footswitch[];
328extern unsigned msm8627_num_footswitch;
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700329
330extern struct platform_device fsm_qfp_fuse_device;
331
Rohit Vaswani4c0d3042011-07-13 14:19:23 -0700332extern struct platform_device fsm_xo_device;
333
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700334extern struct platform_device qfec_device;
Daniel Walker50bc0ef2010-12-13 14:35:11 -0800335
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700336extern struct platform_device msm_kgsl_3d0;
337extern struct platform_device msm_kgsl_2d0;
338extern struct platform_device msm_kgsl_2d1;
339
Harsh Vardhan Dwivedi623b9a22012-10-28 20:54:17 -0600340extern struct resource kgsl_3d0_resources_8960ab[];
341extern int kgsl_num_resources_8960ab;
Lucille Sylvester0a82ff22012-12-06 14:10:19 -0700342#ifdef CONFIG_MSM_BUS_SCALING
343extern struct msm_bus_scale_pdata grp3d_bus_scale_pdata_ab;
344#endif
Harsh Vardhan Dwivedi623b9a22012-10-28 20:54:17 -0600345
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700346extern struct platform_device msm_mipi_dsi1_device;
Padmanabhan Komanduru0b9517b2012-07-02 18:31:23 +0530347extern struct platform_device mipi_dsi_device;
Padmanabhan Komandurue77bcf52012-07-26 12:43:39 +0530348extern struct platform_device msm_lcdc_device;
Ravishangar Kalyanamc2fee312012-02-09 19:11:22 -0800349extern struct platform_device msm_lvds_device;
Zhang Chang Kenc2f2bcc2012-03-30 18:32:02 -0400350extern struct platform_device msm_ebi2_lcdc_device;
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700351
352extern struct clk_lookup msm_clocks_fsm9xxx[];
353extern unsigned msm_num_clocks_fsm9xxx;
354
355extern struct platform_device msm_footswitch;
356
357void __init msm_fb_register_device(char *name, void *data);
358void __init msm_camera_register_device(void *, uint32_t, void *);
359struct platform_device *msm_add_gsbi9_uart(void);
360extern struct platform_device msm_device_touchscreen;
361
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700362extern struct platform_device led_pdev;
Laura Abbotta2e93632011-08-19 13:36:32 -0700363
Praveen Chidambaram78499012011-11-01 17:15:17 -0600364extern struct platform_device msm8960_rpm_device;
365extern struct platform_device msm8960_rpm_stat_device;
Anji Jonnala93129922012-10-09 20:57:53 +0530366extern struct platform_device msm8960_rpm_master_stat_device;
Praveen Chidambaram78499012011-11-01 17:15:17 -0600367extern struct platform_device msm8960_rpm_log_device;
368
369extern struct platform_device msm8930_rpm_device;
370extern struct platform_device msm8930_rpm_stat_device;
Anji Jonnala93129922012-10-09 20:57:53 +0530371extern struct platform_device msm8930_rpm_master_stat_device;
Praveen Chidambaram78499012011-11-01 17:15:17 -0600372extern struct platform_device msm8930_rpm_log_device;
Girish Mahadevan898c56d2012-06-05 16:09:19 -0600373extern struct platform_device msm8930_rpm_rbcpr_device;
Praveen Chidambaram78499012011-11-01 17:15:17 -0600374
375extern struct platform_device msm8660_rpm_device;
376extern struct platform_device msm8660_rpm_stat_device;
377extern struct platform_device msm8660_rpm_log_device;
378
379extern struct platform_device msm9615_rpm_device;
380extern struct platform_device msm9615_rpm_stat_device;
Anji Jonnala93129922012-10-09 20:57:53 +0530381extern struct platform_device msm9615_rpm_master_stat_device;
Praveen Chidambaram78499012011-11-01 17:15:17 -0600382extern struct platform_device msm9615_rpm_log_device;
383
384extern struct platform_device apq8064_rpm_device;
385extern struct platform_device apq8064_rpm_stat_device;
Anji Jonnala93129922012-10-09 20:57:53 +0530386extern struct platform_device apq8064_rpm_master_stat_device;
Praveen Chidambaram78499012011-11-01 17:15:17 -0600387extern struct platform_device apq8064_rpm_log_device;
388
Ramesh Masavarapu5ad37392011-10-10 10:44:10 -0700389extern struct platform_device msm_device_rng;
Ramesh Masavarapuf46be1b2011-11-03 11:13:41 -0700390extern struct platform_device apq8064_device_rng;
Ramesh Masavarapuaa28b5b2011-10-21 10:26:03 -0700391
392#if defined(CONFIG_CRYPTO_DEV_QCRYPTO) || \
393 defined(CONFIG_CRYPTO_DEV_QCRYPTO_MODULE)
394extern struct platform_device msm9615_qcrypto_device;
395#endif
396
397#if defined(CONFIG_CRYPTO_DEV_QCEDEV) || \
398 defined(CONFIG_CRYPTO_DEV_QCEDEV_MODULE)
399extern struct platform_device msm9615_qcedev_device;
400#endif
Jeff Ohlstein7e668552011-10-06 16:17:25 -0700401extern struct platform_device msm8960_device_watchdog;
402extern struct platform_device msm8660_device_watchdog;
403extern struct platform_device msm8064_device_watchdog;
404extern struct platform_device msm9615_device_watchdog;
Rohit Vaswanie897f842012-03-19 14:19:34 -0700405extern struct platform_device fsm9xxx_device_watchdog;
Pratik Patelfd6f56a2011-10-10 17:47:55 -0700406
Pratik Patel3b0ca882012-06-01 16:54:14 -0700407extern struct platform_device coresight_tpiu_device;
408extern struct platform_device coresight_etb_device;
409extern struct platform_device coresight_funnel_device;
410extern struct platform_device apq8064_coresight_funnel_device;
411extern struct platform_device coresight_etm0_device;
412extern struct platform_device coresight_etm1_device;
413extern struct platform_device coresight_etm2_device;
414extern struct platform_device coresight_etm3_device;
Brian Swetlandbcc0f6a2008-09-10 14:00:53 -0700415#endif
Gagan Mac8a7a5d32011-11-11 16:43:06 -0700416
417extern struct platform_device msm_bus_8064_apps_fabric;
418extern struct platform_device msm_bus_8064_sys_fabric;
419extern struct platform_device msm_bus_8064_mm_fabric;
420extern struct platform_device msm_bus_8064_sys_fpb;
421extern struct platform_device msm_bus_8064_cpss_fpb;
Joel Kingdacbc822012-01-25 13:30:57 -0800422
423extern struct platform_device mdm_8064_device;
Ameya Thakure155ece2012-07-09 12:08:37 -0700424extern struct platform_device i2s_mdm_8064_device;
Jin Hongd3024e62012-02-09 16:13:32 -0800425extern struct platform_device msm_dsps_device_8064;
Abhimanyu Kapur90ced6e2012-06-26 17:41:25 -0700426extern struct platform_device *msm_8974_stub_regulator_devices[];
427extern int msm_8974_stub_regulator_devices_len;
Praveen Chidambaram8ea3dcd2011-12-07 14:46:31 -0700428
Steve Mucklef9a87492012-11-02 15:41:00 -0700429extern struct platform_device apq8064_dcvs_device;
Praveen Chidambaram5c8adf22012-02-23 18:44:37 -0700430extern struct platform_device apq8064_msm_gov_device;
Gagan Maccd5b3272012-02-09 18:13:10 -0700431
432extern struct platform_device msm_bus_8930_apps_fabric;
433extern struct platform_device msm_bus_8930_sys_fabric;
434extern struct platform_device msm_bus_8930_mm_fabric;
435extern struct platform_device msm_bus_8930_sys_fpb;
436extern struct platform_device msm_bus_8930_cpss_fpb;
Kevin Chan3be11612012-03-22 20:05:40 -0700437
438extern struct platform_device msm_device_csic0;
439extern struct platform_device msm_device_csic1;
440extern struct platform_device msm_device_vfe;
441extern struct platform_device msm_device_vpe;
Joel King8f839b92012-04-01 14:37:46 -0700442extern struct platform_device mpq8064_device_qup_i2c_gsbi5;
Bar Weinerf82c5872012-10-23 14:31:26 +0200443extern struct platform_device mpq8064_device_qup_spi_gsbi6;
Laura Abbott0577d7b2012-04-17 11:14:30 -0700444
Laura Abbottd92be422012-06-04 15:11:09 -0700445extern struct platform_device msm8660_iommu_domain_device;
Laura Abbott0577d7b2012-04-17 11:14:30 -0700446extern struct platform_device msm8960_iommu_domain_device;
447extern struct platform_device msm8930_iommu_domain_device;
448extern struct platform_device apq8064_iommu_domain_device;
Laura Abbott532b2df2012-04-12 10:53:48 -0700449
450extern struct platform_device msm8960_rtb_device;
451extern struct platform_device msm8930_rtb_device;
452extern struct platform_device apq8064_rtb_device;
Laura Abbott2ae8f362012-04-12 11:03:04 -0700453
454extern struct platform_device msm8960_cache_dump_device;
Laura Abbott93a4a352012-05-25 09:26:35 -0700455extern struct platform_device apq8064_cache_dump_device;
Laura Abbottf3173042012-05-29 15:23:18 -0700456extern struct platform_device msm8930_cache_dump_device;
Hariprasad Dhalinarasimhaf42732a2012-05-21 18:00:49 -0700457
Joel King0cbf5d82012-05-24 15:21:38 -0700458extern struct platform_device mdm_sglte_device;
Ramesh Masavarapuf31ff242012-05-10 18:55:21 -0700459
460extern struct platform_device apq_device_tz_log;
Matt Wagantallbf430eb2012-03-22 11:45:49 -0700461
462extern struct platform_device msm7x27_device_acpuclk;
463extern struct platform_device msm7x27a_device_acpuclk;
464extern struct platform_device msm7x27aa_device_acpuclk;
465extern struct platform_device msm7x30_device_acpuclk;
Matt Wagantallf5cc3892012-06-07 19:47:02 -0700466extern struct platform_device apq8064_device_acpuclk;
Matt Wagantallbf430eb2012-03-22 11:45:49 -0700467extern struct platform_device msm8625_device_acpuclk;
Matt Wagantallab730bd2012-06-07 20:13:51 -0700468extern struct platform_device msm8627_device_acpuclk;
Kaushal Kumar86473f02012-06-28 19:35:58 +0530469extern struct platform_device msm8625ab_device_acpuclk;
Matt Wagantallbf430eb2012-03-22 11:45:49 -0700470extern struct platform_device msm8x50_device_acpuclk;
471extern struct platform_device msm8x60_device_acpuclk;
Matt Wagantall6dcfa922012-06-07 20:13:51 -0700472extern struct platform_device msm8930_device_acpuclk;
Tianyi Gou12370f12012-07-23 19:13:57 -0700473extern struct platform_device msm8930aa_device_acpuclk;
Tianyi Gou2520b6e2012-10-29 19:13:53 -0700474extern struct platform_device msm8930ab_device_acpuclk;
Matt Wagantallbf430eb2012-03-22 11:45:49 -0700475extern struct platform_device msm8960_device_acpuclk;
Patrick Daly6578e0c2012-07-19 18:50:02 -0700476extern struct platform_device msm8960ab_device_acpuclk;
Matt Wagantallbf430eb2012-03-22 11:45:49 -0700477extern struct platform_device msm9615_device_acpuclk;
Rohit Vaswanib1cc4932012-07-23 21:30:11 -0700478
Abhijeet Dharmapurikarfb4a2f82012-08-23 14:36:59 -0700479extern struct platform_device apq8064_msm_mpd_device;
480
Rohit Vaswanib1cc4932012-07-23 21:30:11 -0700481extern struct platform_device msm_gpio_device;
Kuirong Wangf8c5e142012-06-21 16:17:32 -0700482
483extern struct platform_device apq_cpudai_mi2s;
484extern struct platform_device apq_cpudai_i2s_rx;
485extern struct platform_device apq_cpudai_i2s_tx;
Srikanth Uyyala7d4f7212012-10-12 17:45:36 +0530486extern struct dev_avtimer_data dev_avtimer_pdata;
Kuirong Wangf8c5e142012-06-21 16:17:32 -0700487