Commit | Line | Data |
---|---|---|
fd6ac7bb DT |
1 | /* |
2 | * Copyright 2009 Dmitriy Taychenachev <dimichxp@gmail.com> | |
3 | * | |
4 | * This file is released under the GPLv2 or later. | |
5 | */ | |
6 | ||
7 | #include <linux/irq.h> | |
8 | #include <linux/init.h> | |
9 | #include <linux/device.h> | |
10 | ||
11 | #include <asm/mach-types.h> | |
12 | #include <asm/mach/time.h> | |
13 | #include <asm/mach/arch.h> | |
14 | ||
15 | #include <mach/common.h> | |
16 | #include <mach/hardware.h> | |
94da274b | 17 | #include <mach/iomux-mxc91231.h> |
fd6ac7bb DT |
18 | #include <mach/mmc.h> |
19 | #include <mach/imx-uart.h> | |
20 | ||
21 | #include "devices.h" | |
22 | ||
23 | static struct imxuart_platform_data uart_pdata = { | |
24 | }; | |
25 | ||
26 | static struct imxmmc_platform_data sdhc_pdata = { | |
27 | }; | |
28 | ||
29 | static void __init zn5_init(void) | |
30 | { | |
31 | pm_power_off = mxc91231_power_off; | |
32 | ||
94da274b DT |
33 | mxc_iomux_alloc_pin(MXC91231_PIN_SP_USB_DAT_VP__RXD2, "uart2-rx"); |
34 | mxc_iomux_alloc_pin(MXC91231_PIN_SP_USB_SE0_VM__TXD2, "uart2-tx"); | |
35 | ||
fd6ac7bb DT |
36 | mxc_register_device(&mxc_uart_device1, &uart_pdata); |
37 | mxc_register_device(&mxc_uart_device0, &uart_pdata); | |
38 | ||
39 | mxc_register_device(&mxc_sdhc_device0, &sdhc_pdata); | |
40 | ||
41 | mxc_register_device(&mxc_wdog_device0, NULL); | |
42 | ||
43 | return; | |
44 | } | |
45 | ||
46 | static void __init zn5_timer_init(void) | |
47 | { | |
48 | mxc91231_clocks_init(26000000); /* 26mhz ckih */ | |
49 | } | |
50 | ||
51 | struct sys_timer zn5_timer = { | |
52 | .init = zn5_timer_init, | |
53 | }; | |
54 | ||
55 | MACHINE_START(MAGX_ZN5, "Motorola Zn5") | |
56 | .phys_io = MXC91231_AIPS1_BASE_ADDR, | |
57 | .io_pg_offst = ((MXC91231_AIPS1_BASE_ADDR_VIRT) >> 18) & 0xfffc, | |
58 | .boot_params = PHYS_OFFSET + 0x100, | |
59 | .map_io = mxc91231_map_io, | |
60 | .init_irq = mxc91231_init_irq, | |
61 | .timer = &zn5_timer, | |
62 | .init_machine = zn5_init, | |
63 | MACHINE_END |