blob: c21b8491228de620a932dafa8d33e4fd636d8745 [file] [log] [blame]
Albert ARIBAUD35629362015-10-23 18:06:43 +02001/*
2 * (C) Copyright 2009
3 * Net Insight <www.netinsight.net>
4 * Written-by: Simon Kagstrom <simon.kagstrom@netinsight.net>
5 *
6 * Based on sheevaplug.h:
7 * (C) Copyright 2009
8 * Marvell Semiconductor <www.marvell.com>
9 * Written-by: Prafulla Wadaskar <prafulla@marvell.com>
10 *
11 * SPDX-License-Identifier: GPL-2.0+
12 */
13
14#ifndef _CONFIG_OPENRD_H
15#define _CONFIG_OPENRD_H
16
17/*
Albert ARIBAUD35629362015-10-23 18:06:43 +020018 * High Level Configuration Options (easy to change)
19 */
20#define CONFIG_SHEEVA_88SV131 1 /* CPU Core subversion */
21#define CONFIG_KW88F6281 1 /* SOC Name */
22#define CONFIG_MACH_OPENRD_BASE /* Machine type */
23#define CONFIG_SKIP_LOWLEVEL_INIT /* disable board lowlevel_init */
24#define CONFIG_SYS_THUMB_BUILD
25
26/*
27 * Commands configuration
28 */
29#define CONFIG_SYS_NO_FLASH /* Declare no flash (NOR/SPI) */
30#define CONFIG_SYS_MVFS
Albert ARIBAUD35629362015-10-23 18:06:43 +020031#define CONFIG_CMD_ENV
Albert ARIBAUD35629362015-10-23 18:06:43 +020032#define CONFIG_CMD_NAND
Albert ARIBAUD35629362015-10-23 18:06:43 +020033#define CONFIG_CMD_IDE
34
35/*
36 * mv-common.h should be defined after CMD configs since it used them
37 * to enable certain macros
38 */
39#include "mv-common.h"
40
41/*
42 * Environment variables configurations
43 */
44#ifdef CONFIG_CMD_NAND
45#define CONFIG_ENV_IS_IN_NAND 1
46#define CONFIG_ENV_SECT_SIZE 0x20000 /* 128K */
47#else
48#define CONFIG_ENV_IS_NOWHERE 1 /* if env in SDRAM */
49#endif
50/*
51 * max 4k env size is enough, but in case of nand
52 * it has to be rounded to sector size
53 */
54#define CONFIG_ENV_SIZE 0x20000 /* 128k */
55#define CONFIG_ENV_ADDR 0x60000
56#define CONFIG_ENV_OFFSET 0x60000 /* env starts here */
57/*
58 * Environment is right behind U-Boot in flash. Make sure U-Boot
59 * doesn't grow into the environment area.
60 */
61#define CONFIG_BOARD_SIZE_LIMIT CONFIG_ENV_OFFSET
62
63/*
64 * Default environment variables
65 */
66#define CONFIG_BOOTCOMMAND "${x_bootcmd_kernel}; " \
67 "setenv bootargs ${x_bootargs} ${x_bootargs_root}; " \
68 "${x_bootcmd_usb}; bootm 0x6400000;"
69
70#define MTDIDS_DEFAULT "nand0=nand_mtd"
71#define MTDPARTS_DEFAULT "mtdparts=nand_mtd:0x100000@0x000000(uboot),"\
72 "0x400000@0x100000(uImage),"\
73 "0x1fb00000@0x500000(rootfs)"
74
75#define CONFIG_EXTRA_ENV_SETTINGS "x_bootargs=console" \
76 "=ttyS0,115200 "MTDPARTS_DEFAULT " rw ubi.mtd=2,2048\0" \
77 "x_bootcmd_kernel=nand read 0x6400000 0x100000 0x300000\0" \
78 "x_bootcmd_usb=usb start\0" \
79 "x_bootargs_root=root=ubi0:rootfs rootfstype=ubifs\0" \
80 "mtdids="MTDIDS_DEFAULT"\0" \
81 "mtdparts="MTDPARTS_DEFAULT"\0"
82
83/*
84 * Ethernet Driver configuration
85 */
86#ifdef CONFIG_CMD_NET
87# ifdef CONFIG_BOARD_IS_OPENRD_BASE
88# define CONFIG_MVGBE_PORTS {1, 0} /* enable port 0 only */
89# else
90# define CONFIG_MVGBE_PORTS {1, 1} /* enable both ports */
91# endif
92# ifdef CONFIG_BOARD_IS_OPENRD_ULTIMATE
93# define CONFIG_PHY_BASE_ADR 0x0
94# define PHY_NO "88E1121"
95# else
96# define CONFIG_PHY_BASE_ADR 0x8
97# define PHY_NO "88E1116"
98# endif
99#endif /* CONFIG_CMD_NET */
100
101/*
102 * SATA Driver configuration
103 */
104#ifdef CONFIG_MVSATA_IDE
105#define CONFIG_SYS_ATA_IDE0_OFFSET MV_SATA_PORT0_OFFSET
106#define CONFIG_SYS_ATA_IDE1_OFFSET MV_SATA_PORT1_OFFSET
107#endif /*CONFIG_MVSATA_IDE*/
108
109#ifdef CONFIG_CMD_MMC
Albert ARIBAUD35629362015-10-23 18:06:43 +0200110#define CONFIG_GENERIC_MMC
111#define CONFIG_MVEBU_MMC
112#define CONFIG_SYS_MMC_BASE KW_SDIO_BASE
113#endif /* CONFIG_CMD_MMC */
114
115#endif /* _CONFIG_OPENRD_BASE_H */