blob: 133c7f4a35e979f7eb958e92006f50e2a4ff8adf [file] [log] [blame]
Jason Cooper2e0c1c72011-10-03 13:49:53 +05301/*
2 * (C) Copyright 2011
3 * Jason Cooper <u-boot@lakedaemon.net>
4 *
5 * Based on work by:
6 * Marvell Semiconductor <www.marvell.com>
7 * Written-by: Siddarth Gore <gores@marvell.com>
8 *
Wolfgang Denk1a459662013-07-08 09:37:19 +02009 * SPDX-License-Identifier: GPL-2.0+
Jason Cooper2e0c1c72011-10-03 13:49:53 +053010 */
11
12#ifndef _CONFIG_DREAMPLUG_H
13#define _CONFIG_DREAMPLUG_H
14
15/*
16 * FIXME: This belongs in mach-types.h. However, we only pull mach-types
17 * from Linus' kernel.org tree. This hasn't been updated primarily due to
18 * the recent arch/arm reshuffling. So, in the meantime, we'll place it
19 * here.
20 */
21#include <asm/mach-types.h>
22#ifdef MACH_TYPE_DREAMPLUG
23#error "MACH_TYPE_DREAMPLUG has been defined properly, please remove this."
24#else
25#define MACH_TYPE_DREAMPLUG 3550
26#endif
27
28/*
29 * Version number information
30 */
31#define CONFIG_IDENT_STRING "\nMarvell-DreamPlug"
32
33/*
34 * High Level Configuration Options (easy to change)
35 */
36#define CONFIG_SHEEVA_88SV131 1 /* CPU Core subversion */
Jason Cooper2e0c1c72011-10-03 13:49:53 +053037#define CONFIG_KW88F6281 1 /* SOC Name */
38#define CONFIG_MACH_TYPE MACH_TYPE_DREAMPLUG
39#define CONFIG_SKIP_LOWLEVEL_INIT /* disable board lowlevel_init */
Ian Campbellce4eae02015-02-24 08:38:56 +000040#define CONFIG_SYS_GENERIC_BOARD
Jason Cooper2e0c1c72011-10-03 13:49:53 +053041
Ian Campbelldbfc4c92015-02-24 08:38:57 +000042/* Add target to build it automatically upon "make" */
43#define CONFIG_BUILD_TARGET "u-boot.kwb"
44
Jason Cooper2e0c1c72011-10-03 13:49:53 +053045/*
46 * Commands configuration
47 */
48#define CONFIG_SYS_NO_FLASH /* Declare no flash (NOR/SPI) */
Jason Cooper2e0c1c72011-10-03 13:49:53 +053049#define CONFIG_CMD_DHCP
50#define CONFIG_CMD_ENV
51#define CONFIG_CMD_FAT
52#define CONFIG_CMD_SF
53#define CONFIG_CMD_PING
54#define CONFIG_CMD_USB
55#define CONFIG_CMD_IDE
56#define CONFIG_CMD_DATE
57
58/*
59 * mv-common.h should be defined after CMD configs since it used them
60 * to enable certain macros
61 */
62#include "mv-common.h"
63
64/*
65 * Environment variables configurations
66 */
67#ifdef CONFIG_SPI_FLASH
68#define CONFIG_ENV_IS_IN_SPI_FLASH 1
69#define CONFIG_ENV_SECT_SIZE 0x10000 /* 64k */
70#else
71#define CONFIG_ENV_IS_NOWHERE 1 /* if env in SDRAM */
72#endif
73
74#ifdef CONFIG_CMD_SF
Jason Cooper2e0c1c72011-10-03 13:49:53 +053075#define CONFIG_HARD_SPI 1
76#define CONFIG_KIRKWOOD_SPI 1
77#define CONFIG_SPI_FLASH_MACRONIX 1
78#define CONFIG_ENV_SPI_BUS 0
79#define CONFIG_ENV_SPI_CS 0
80#define CONFIG_ENV_SPI_MAX_HZ 50000000 /* 50 MHz */
81#endif
82
83/*
84 * max 4k env size is enough, but in case of nand
85 * it has to be rounded to sector size
86 */
87#define CONFIG_ENV_SIZE 0x1000 /* 4k */
88#define CONFIG_ENV_ADDR 0x100000
89#define CONFIG_ENV_OFFSET 0x100000 /* env starts here */
90
91/*
92 * Default environment variables
93 */
94#define CONFIG_BOOTCOMMAND "setenv ethact egiga0; " \
95 "${x_bootcmd_ethernet}; setenv ethact egiga1; " \
96 "${x_bootcmd_ethernet}; ${x_bootcmd_usb}; ${x_bootcmd_kernel}; "\
97 "setenv bootargs ${x_bootargs} ${x_bootargs_root}; " \
98 "bootm 0x6400000;"
99
100#define CONFIG_EXTRA_ENV_SETTINGS \
101 "x_bootcmd_ethernet=ping 192.168.2.1\0" \
102 "x_bootcmd_usb=usb start\0" \
103 "x_bootcmd_kernel=fatload usb 0 0x6400000 uImage\0" \
104 "x_bootargs=console=ttyS0,115200\0" \
105 "x_bootargs_root=root=/dev/sda2 rootdelay=10\0"
106
107/*
108 * Ethernet Driver configuration
109 */
110#ifdef CONFIG_CMD_NET
111#define CONFIG_MVGBE_PORTS {1, 1} /* enable both ports */
112#define CONFIG_PHY_BASE_ADR 0
113#endif /* CONFIG_CMD_NET */
114
115/*
116 * SATA Driver configuration
117 */
118#ifdef CONFIG_MVSATA_IDE
119#define CONFIG_SYS_ATA_IDE0_OFFSET MV_SATA_PORT0_OFFSET
120#endif /*CONFIG_MVSATA_IDE*/
121
122/*
123 * RTC driver configuration
124 */
125#ifdef CONFIG_CMD_DATE
126#define CONFIG_RTC_MV
127#endif /* CONFIG_CMD_DATE */
128
129#define CONFIG_SYS_ALT_MEMTEST
130
131/*
132 * display enhanced info about the cpu at boot.
133 */
134#define CONFIG_DISPLAY_CPUINFO
135
Ian Campbell5f2e1422012-02-27 21:19:02 +0000136#define CONFIG_OF_LIBFDT
137
Jason Cooper2e0c1c72011-10-03 13:49:53 +0530138#endif /* _CONFIG_DREAMPLUG_H */