fa9b5bcf3a516f204a7d86f2046feca733a3c4c1
[platform/kernel/u-boot.git] / include / configs / mv-common.h
1 /* SPDX-License-Identifier: GPL-2.0+ */
2 /*
3  * (C) Copyright 2010
4  * Marvell Semiconductor <www.marvell.com>
5  * Written-by: Prafulla Wadaskar <prafulla@marvell.com>
6  */
7
8 /*
9  * This file contains Marvell Board Specific common defincations.
10  * This file should be included in board config header file.
11  *
12  * It supports common definations for Kirkwood platform
13  * TBD: support for Orion5X platforms
14  */
15
16 #ifndef _MV_COMMON_H
17 #define _MV_COMMON_H
18
19 /*
20  * High Level Configuration Options (easy to change)
21  */
22 #define CONFIG_MARVELL          1
23
24 /*
25  * Custom CONFIG_SYS_TEXT_BASE can be done in <board>.h
26  */
27
28 /* additions for new ARM relocation support */
29 #define CONFIG_SYS_SDRAM_BASE   0x00000000
30
31 /*
32  * CLKs configurations
33  */
34
35 /*
36  * NS16550 Configuration
37  */
38 #define CONFIG_SYS_NS16550_SERIAL
39 #define CONFIG_SYS_NS16550_CLK          CONFIG_SYS_TCLK
40 #if !defined(CONFIG_DM_SERIAL)
41 #define CONFIG_SYS_NS16550_REG_SIZE     (-4)
42 #define CONFIG_SYS_NS16550_COM1         MV_UART_CONSOLE_BASE
43 #endif
44
45 /*
46  * Serial Port configuration
47  * The following definitions let you select what serial you want to use
48  * for your console driver.
49  */
50
51 #define CONFIG_SYS_BAUDRATE_TABLE       { 9600, 19200, 38400, 57600, \
52                                           115200,230400, 460800, 921600 }
53 /* auto boot */
54 #define CONFIG_PREBOOT
55
56 /*
57  * For booting Linux, the board info and command line data
58  * have to be in the first 8 MB of memory, since this is
59  * the maximum mapped by the Linux kernel during initialization.
60  */
61 #define CONFIG_CMDLINE_TAG      1       /* enable passing of ATAGs  */
62 #define CONFIG_INITRD_TAG       1       /* enable INITRD tag */
63 #define CONFIG_SETUP_MEMORY_TAGS 1      /* enable memory tag */
64
65 #define CONFIG_SYS_CBSIZE       1024    /* Console I/O Buff Size */
66
67 /*
68  * Size of malloc() pool
69  */
70 #define CONFIG_SYS_MALLOC_LEN   (1024 * 1024 * 4) /* 4MiB for malloc() */
71
72 /*
73  * Other required minimal configurations
74  */
75 #define CONFIG_ARCH_CPU_INIT    /* call arch_cpu_init() */
76 #define CONFIG_SYS_LOAD_ADDR    0x00800000      /* default load adr- 8M */
77 #define CONFIG_SYS_MEMTEST_START 0x00800000     /* 8M */
78 #define CONFIG_SYS_MEMTEST_END  0x00ffffff      /*(_16M -1) */
79 #define CONFIG_SYS_RESET_ADDRESS 0xffff0000     /* Rst Vector Adr */
80 #define CONFIG_SYS_MAXARGS      32      /* max number of command args */
81
82 /* ====> Include platform Common Definitions */
83 #include <asm/arch/config.h>
84
85 /*
86  * DRAM Banks configuration, Custom config can be done in <board>.h
87  */
88 #ifndef CONFIG_NR_DRAM_BANKS
89 #define CONFIG_NR_DRAM_BANKS    CONFIG_NR_DRAM_BANKS_MAX
90 #else
91 #if (CONFIG_NR_DRAM_BANKS > CONFIG_NR_DRAM_BANKS_MAX)
92 #error CONFIG_NR_DRAM_BANKS Configurated more than available
93 #endif
94 #endif /* CONFIG_NR_DRAM_BANKS */
95
96 /* ====> Include driver Common Definitions */
97 /*
98  * Common NAND configuration
99  */
100 #ifdef CONFIG_CMD_NAND
101 #define CONFIG_SYS_MAX_NAND_DEVICE     1
102 #endif
103
104 /*
105  * Common SPI Flash configuration
106  */
107 #ifdef CONFIG_CMD_SF
108 #endif
109
110 /*
111  * File system
112  */
113 #ifdef CONFIG_SYS_MVFS
114 #define CONFIG_MTD_DEVICE               /* needed for mtdparts commands */
115 #define CONFIG_MTD_PARTITIONS
116 #endif
117
118 #endif /* _MV_COMMON_H */