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 #define CONFIG_SYS_PBSIZE (CONFIG_SYS_CBSIZE \ 72 +sizeof(CONFIG_SYS_PROMPT) + 16) /* Print Buff */ 73 74 /* 75 * Size of malloc() pool 76 */ 77 #define CONFIG_SYS_MALLOC_LEN (1024 * 1024 * 4) /* 4MiB for malloc() */ 78 79 /* 80 * Other required minimal configurations 81 */ 82 #define CONFIG_SYS_LONGHELP 83 #define CONFIG_AUTO_COMPLETE 84 #define CONFIG_CMDLINE_EDITING 85 #define CONFIG_ARCH_CPU_INIT /* call arch_cpu_init() */ 86 #define CONFIG_SYS_LOAD_ADDR 0x00800000 /* default load adr- 8M */ 87 #define CONFIG_SYS_MEMTEST_START 0x00800000 /* 8M */ 88 #define CONFIG_SYS_MEMTEST_END 0x00ffffff /*(_16M -1) */ 89 #define CONFIG_SYS_RESET_ADDRESS 0xffff0000 /* Rst Vector Adr */ 90 #define CONFIG_SYS_MAXARGS 32 /* max number of command args */ 91 92 /* ====> Include platform Common Definitions */ 93 #include <asm/arch/config.h> 94 95 /* 96 * DRAM Banks configuration, Custom config can be done in <board>.h 97 */ 98 #ifndef CONFIG_NR_DRAM_BANKS 99 #define CONFIG_NR_DRAM_BANKS CONFIG_NR_DRAM_BANKS_MAX 100 #else 101 #if (CONFIG_NR_DRAM_BANKS > CONFIG_NR_DRAM_BANKS_MAX) 102 #error CONFIG_NR_DRAM_BANKS Configurated more than available 103 #endif 104 #endif /* CONFIG_NR_DRAM_BANKS */ 105 106 /* ====> Include driver Common Definitions */ 107 /* 108 * Common NAND configuration 109 */ 110 #ifdef CONFIG_CMD_NAND 111 #define CONFIG_SYS_MAX_NAND_DEVICE 1 112 #endif 113 114 /* 115 * Common SPI Flash configuration 116 */ 117 #ifdef CONFIG_CMD_SF 118 #endif 119 120 /* 121 * Common USB/EHCI configuration 122 */ 123 #if defined(CONFIG_CMD_USB) && !defined(CONFIG_DM) 124 #define CONFIG_USB_EHCI /* Enable EHCI USB support */ 125 #define CONFIG_SUPPORT_VFAT 126 #endif /* CONFIG_CMD_USB */ 127 128 /* 129 * File system 130 */ 131 #ifdef CONFIG_SYS_MVFS 132 #define CONFIG_CMD_JFFS2 133 #define CONFIG_CMD_UBIFS 134 #define CONFIG_RBTREE 135 #define CONFIG_MTD_DEVICE /* needed for mtdparts commands */ 136 #define CONFIG_MTD_PARTITIONS 137 #define CONFIG_CMD_MTDPARTS 138 #define CONFIG_LZO 139 #endif 140 141 #endif /* _MV_COMMON_H */ 142