ARM: ux500: Remove ATAG booting support for U8520
[linux-2.6/btrfs-unstable.git] / arch / arm / mach-ux500 / board-mop500.c
blob0b56d4f0f45e41710d07ca3111c02ff648965921
1 /*
2 * Copyright (C) 2008-2012 ST-Ericsson
4 * Author: Srinidhi KASAGAR <srinidhi.kasagar@stericsson.com>
6 * This program is free software; you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License version 2, as
8 * published by the Free Software Foundation.
11 #include <linux/kernel.h>
12 #include <linux/init.h>
13 #include <linux/interrupt.h>
14 #include <linux/platform_device.h>
15 #include <linux/clk.h>
16 #include <linux/io.h>
17 #include <linux/platform_data/db8500_thermal.h>
18 #include <linux/amba/bus.h>
19 #include <linux/amba/pl022.h>
20 #include <linux/mfd/abx500/ab8500.h>
21 #include <linux/regulator/ab8500.h>
22 #include <linux/regulator/fixed.h>
23 #include <linux/regulator/driver.h>
24 #include <linux/mfd/tps6105x.h>
25 #include <linux/platform_data/leds-lp55xx.h>
26 #include <linux/input.h>
27 #include <linux/delay.h>
28 #include <linux/leds.h>
29 #include <linux/pinctrl/consumer.h>
30 #include <linux/platform_data/pinctrl-nomadik.h>
31 #include <linux/platform_data/dma-ste-dma40.h>
33 #include <asm/mach-types.h>
35 #include "setup.h"
36 #include "devices.h"
37 #include "irqs.h"
39 #include "ste-dma40-db8500.h"
40 #include "db8500-regs.h"
41 #include "devices-db8500.h"
42 #include "board-mop500.h"
43 #include "board-mop500-regulators.h"
45 struct ab8500_platform_data ab8500_platdata = {
46 .irq_base = MOP500_AB8500_IRQ_BASE,
47 .regulator = &ab8500_regulator_plat_data,
50 #ifdef CONFIG_STE_DMA40
51 static struct stedma40_chan_cfg ssp0_dma_cfg_rx = {
52 .mode = STEDMA40_MODE_LOGICAL,
53 .dir = DMA_DEV_TO_MEM,
54 .dev_type = DB8500_DMA_DEV8_SSP0,
57 static struct stedma40_chan_cfg ssp0_dma_cfg_tx = {
58 .mode = STEDMA40_MODE_LOGICAL,
59 .dir = DMA_MEM_TO_DEV,
60 .dev_type = DB8500_DMA_DEV8_SSP0,
62 #endif
64 struct pl022_ssp_controller ssp0_plat = {
65 .bus_id = 0,
66 #ifdef CONFIG_STE_DMA40
67 .enable_dma = 1,
68 .dma_filter = stedma40_filter,
69 .dma_rx_param = &ssp0_dma_cfg_rx,
70 .dma_tx_param = &ssp0_dma_cfg_tx,
71 #else
72 .enable_dma = 0,
73 #endif
74 /* on this platform, gpio 31,142,144,214 &
75 * 224 are connected as chip selects
77 .num_chipselect = 5,
80 static void __init snowball_init_machine(void)
82 /* This board has full regulator constraints */
83 regulator_has_full_constraints();
86 static void __init hrefv60_init_machine(void)
88 /* This board has full regulator constraints */
89 regulator_has_full_constraints();
92 MACHINE_START(HREFV60, "ST-Ericsson U8500 Platform HREFv60+")
93 .atag_offset = 0x100,
94 .smp = smp_ops(ux500_smp_ops),
95 .map_io = u8500_map_io,
96 .init_irq = ux500_init_irq,
97 .init_time = ux500_timer_init,
98 .init_machine = hrefv60_init_machine,
99 .restart = ux500_restart,
100 .init_late = NULL,
101 MACHINE_END
103 MACHINE_START(SNOWBALL, "Calao Systems Snowball platform")
104 .atag_offset = 0x100,
105 .smp = smp_ops(ux500_smp_ops),
106 .map_io = u8500_map_io,
107 .init_irq = ux500_init_irq,
108 /* we re-use nomadik timer here */
109 .init_time = ux500_timer_init,
110 .init_machine = snowball_init_machine,
111 .restart = ux500_restart,
112 .init_late = NULL,
113 MACHINE_END