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