Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
board-dt-8960.c
Go to the documentation of this file.
1 /* Copyright (c) 2012, The Linux Foundation. All rights reserved.
2  *
3  * This program is free software; you can redistribute it and/or modify
4  * it under the terms of the GNU General Public License version 2 and
5  * only version 2 as published by the Free Software Foundation.
6  *
7  * This program is distributed in the hope that it will be useful,
8  * but WITHOUT ANY WARRANTY; without even the implied warranty of
9  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
10  * GNU General Public License for more details.
11  */
12 
13 #include <linux/init.h>
14 #include <linux/of_irq.h>
15 #include <linux/of_platform.h>
16 
17 #include <asm/hardware/gic.h>
18 #include <asm/mach/arch.h>
19 
20 #include "common.h"
21 
22 static const struct of_device_id msm_dt_gic_match[] __initconst = {
23  { .compatible = "qcom,msm-qgic2", .data = gic_of_init },
24  { }
25 };
26 
27 static void __init msm_dt_init_irq(void)
28 {
29  of_irq_init(msm_dt_gic_match);
30 }
31 
32 static void __init msm_dt_init(void)
33 {
34  of_platform_populate(NULL, of_default_bus_match_table, NULL, NULL);
35 }
36 
37 static const char * const msm8960_dt_match[] __initconst = {
38  "qcom,msm8960-cdp",
39  NULL
40 };
41 
42 DT_MACHINE_START(MSM8960_DT, "Qualcomm MSM (Flattened Device Tree)")
43  .smp = smp_ops(msm_smp_ops),
44  .map_io = msm_map_msm8960_io,
45  .init_irq = msm_dt_init_irq,
46  .timer = &msm_dt_timer,
47  .init_machine = msm_dt_init,
48  .dt_compat = msm8960_dt_match,
49  .handle_irq = gic_handle_irq,