diff options
author | Stephen Boyd <sboyd@codeaurora.org> | 2012-09-05 21:28:56 +0200 |
---|---|---|
committer | David Brown <davidb@codeaurora.org> | 2012-09-13 20:15:14 +0200 |
commit | 5a6e814f5d2bdb6eea99ed032e4be3a2dc295099 (patch) | |
tree | 6009e0bf5d3ec6b92e66c60a4530aa7c801060d5 /arch/arm/mach-msm/board-dt-8660.c | |
parent | ARM: msm: Make 8660 a DT only target (diff) | |
download | linux-5a6e814f5d2bdb6eea99ed032e4be3a2dc295099.tar.xz linux-5a6e814f5d2bdb6eea99ed032e4be3a2dc295099.zip |
ARM: msm: Rename board-msm8x60 to signify its DT only status
Rename this file to signify that this board is only supported via
devicetree.
Signed-off-by: Stephen Boyd <sboyd@codeaurora.org>
Signed-off-by: David Brown <davidb@codeaurora.org>
Diffstat (limited to 'arch/arm/mach-msm/board-dt-8660.c')
-rw-r--r-- | arch/arm/mach-msm/board-dt-8660.c | 69 |
1 files changed, 69 insertions, 0 deletions
diff --git a/arch/arm/mach-msm/board-dt-8660.c b/arch/arm/mach-msm/board-dt-8660.c new file mode 100644 index 000000000000..fdbed439855a --- /dev/null +++ b/arch/arm/mach-msm/board-dt-8660.c @@ -0,0 +1,69 @@ +/* Copyright (c) 2010-2012, The Linux Foundation. All rights reserved. + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 2 and + * only version 2 as published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + */ + +#include <linux/init.h> +#include <linux/of.h> +#include <linux/of_irq.h> +#include <linux/of_platform.h> + +#include <asm/mach/arch.h> +#include <asm/hardware/gic.h> + +#include <mach/board.h> +#include <mach/msm_iomap.h> +#include "common.h" + +static const struct of_device_id msm_dt_gic_match[] __initconst = { + { .compatible = "qcom,msm-8660-qgic", .data = gic_of_init }, + {} +}; + +static void __init msm8x60_init_irq(void) +{ + of_irq_init(msm_dt_gic_match); +} + +static void __init msm8x60_init_late(void) +{ + smd_debugfs_init(); +} + +static struct of_dev_auxdata msm_auxdata_lookup[] __initdata = { + {} +}; + +static void __init msm8x60_dt_init(void) +{ + if (of_machine_is_compatible("qcom,msm8660-surf")) { + printk(KERN_INFO "Init surf UART registers\n"); + msm8x60_init_uart12dm(); + } + + of_platform_populate(NULL, of_default_bus_match_table, + msm_auxdata_lookup, NULL); +} + +static const char *msm8x60_fluid_match[] __initdata = { + "qcom,msm8660-fluid", + "qcom,msm8660-surf", + NULL +}; + +DT_MACHINE_START(MSM_DT, "Qualcomm MSM (Flattened Device Tree)") + .map_io = msm_map_msm8x60_io, + .init_irq = msm8x60_init_irq, + .handle_irq = gic_handle_irq, + .init_machine = msm8x60_dt_init, + .init_late = msm8x60_init_late, + .timer = &msm_dt_timer, + .dt_compat = msm8x60_fluid_match, +MACHINE_END |