MIPS: Malta: Select 32bit DMA zone for 64-bit kernels
[linux-drm-fsl-dcu.git] / arch / mips / loongson / common / init.c
1 /*
2  * Copyright (C) 2009 Lemote Inc.
3  * Author: Wu Zhangjin, wuzhangjin@gmail.com
4  *
5  * This program is free software; you can redistribute  it and/or modify it
6  * under  the terms of  the GNU General  Public License as published by the
7  * Free Software Foundation;  either version 2 of the  License, or (at your
8  * option) any later version.
9  */
10
11 #include <linux/bootmem.h>
12 #include <asm/bootinfo.h>
13 #include <asm/smp-ops.h>
14
15 #include <loongson.h>
16
17 /* Loongson CPU address windows config space base address */
18 unsigned long __maybe_unused _loongson_addrwincfg_base;
19
20 void __init prom_init(void)
21 {
22 #ifdef CONFIG_CPU_SUPPORTS_ADDRWINCFG
23         _loongson_addrwincfg_base = (unsigned long)
24                 ioremap(LOONGSON_ADDRWINCFG_BASE, LOONGSON_ADDRWINCFG_SIZE);
25 #endif
26
27         prom_init_cmdline();
28         prom_init_env();
29
30         /* init base address of io space */
31         set_io_port_base((unsigned long)
32                 ioremap(LOONGSON_PCIIO_BASE, LOONGSON_PCIIO_SIZE));
33
34 #ifdef CONFIG_NUMA
35         prom_init_numa_memory();
36 #else
37         prom_init_memory();
38 #endif
39
40         /*init the uart base address */
41         prom_init_uart_base();
42         register_smp_ops(&loongson3_smp_ops);
43 }
44
45 void __init prom_free_prom_memory(void)
46 {
47 }