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