blob: b1ca8592507b0e248f4336dfb8b6d3df697f215c [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 */
37#define CONFIG_KIRKWOOD 1 /* SOC Family Name */
38#define CONFIG_KW88F6281 1 /* SOC Name */
39#define CONFIG_MACH_TYPE MACH_TYPE_DREAMPLUG
40#define CONFIG_SKIP_LOWLEVEL_INIT /* disable board lowlevel_init */
41
42/*
43 * Commands configuration
44 */
45#define CONFIG_SYS_NO_FLASH /* Declare no flash (NOR/SPI) */
46#include <config_cmd_default.h>
47#define CONFIG_CMD_DHCP
48#define CONFIG_CMD_ENV
49#define CONFIG_CMD_FAT
50#define CONFIG_CMD_SF
51#define CONFIG_CMD_PING
52#define CONFIG_CMD_USB
53#define CONFIG_CMD_IDE
54#define CONFIG_CMD_DATE
55
56/*
57 * mv-common.h should be defined after CMD configs since it used them
58 * to enable certain macros
59 */
60#include "mv-common.h"
61
62/*
63 * Environment variables configurations
64 */
65#ifdef CONFIG_SPI_FLASH
66#define CONFIG_ENV_IS_IN_SPI_FLASH 1
67#define CONFIG_ENV_SECT_SIZE 0x10000 /* 64k */
68#else
69#define CONFIG_ENV_IS_NOWHERE 1 /* if env in SDRAM */
70#endif
71
72#ifdef CONFIG_CMD_SF
73#define CONFIG_SPI_FLASH 1
74#define CONFIG_HARD_SPI 1
75#define CONFIG_KIRKWOOD_SPI 1
76#define CONFIG_SPI_FLASH_MACRONIX 1
77#define CONFIG_ENV_SPI_BUS 0
78#define CONFIG_ENV_SPI_CS 0
79#define CONFIG_ENV_SPI_MAX_HZ 50000000 /* 50 MHz */
80#endif
81
82/*
83 * max 4k env size is enough, but in case of nand
84 * it has to be rounded to sector size
85 */
86#define CONFIG_ENV_SIZE 0x1000 /* 4k */
87#define CONFIG_ENV_ADDR 0x100000
88#define CONFIG_ENV_OFFSET 0x100000 /* env starts here */
89
90/*
91 * Default environment variables
92 */
93#define CONFIG_BOOTCOMMAND "setenv ethact egiga0; " \
94 "${x_bootcmd_ethernet}; setenv ethact egiga1; " \
95 "${x_bootcmd_ethernet}; ${x_bootcmd_usb}; ${x_bootcmd_kernel}; "\
96 "setenv bootargs ${x_bootargs} ${x_bootargs_root}; " \
97 "bootm 0x6400000;"
98
99#define CONFIG_EXTRA_ENV_SETTINGS \
100 "x_bootcmd_ethernet=ping 192.168.2.1\0" \
101 "x_bootcmd_usb=usb start\0" \
102 "x_bootcmd_kernel=fatload usb 0 0x6400000 uImage\0" \
103 "x_bootargs=console=ttyS0,115200\0" \
104 "x_bootargs_root=root=/dev/sda2 rootdelay=10\0"
105
106/*
107 * Ethernet Driver configuration
108 */
109#ifdef CONFIG_CMD_NET
110#define CONFIG_MVGBE_PORTS {1, 1} /* enable both ports */
111#define CONFIG_PHY_BASE_ADR 0
112#endif /* CONFIG_CMD_NET */
113
114/*
115 * SATA Driver configuration
116 */
117#ifdef CONFIG_MVSATA_IDE
118#define CONFIG_SYS_ATA_IDE0_OFFSET MV_SATA_PORT0_OFFSET
119#endif /*CONFIG_MVSATA_IDE*/
120
121/*
122 * RTC driver configuration
123 */
124#ifdef CONFIG_CMD_DATE
125#define CONFIG_RTC_MV
126#endif /* CONFIG_CMD_DATE */
127
128#define CONFIG_SYS_ALT_MEMTEST
129
130/*
131 * display enhanced info about the cpu at boot.
132 */
133#define CONFIG_DISPLAY_CPUINFO
134
Ian Campbell5f2e1422012-02-27 21:19:02 +0000135#define CONFIG_OF_LIBFDT
136
Jason Cooper2e0c1c72011-10-03 13:49:53 +0530137#endif /* _CONFIG_DREAMPLUG_H */