blob: e520b1a735420f1cb6b6100d22ed991078d59dcc [file] [log] [blame]
Stefan Roese0299c902015-10-20 15:14:47 +02001/*
2 * Copyright (C) 2015 Stefan Roese <sr@denx.de>
3 *
4 * SPDX-License-Identifier: GPL-2.0+
5 */
6
7#ifndef _CONFIG_CLEARFOG_H
8#define _CONFIG_CLEARFOG_H
9
10/*
11 * High Level Configuration Options (easy to change)
12 */
Stefan Roese0299c902015-10-20 15:14:47 +020013
14#define CONFIG_DISPLAY_BOARDINFO_LATE
15
16/*
17 * TEXT_BASE needs to be below 16MiB, since this area is scrubbed
18 * for DDR ECC byte filling in the SPL before loading the main
19 * U-Boot into it.
20 */
21#define CONFIG_SYS_TEXT_BASE 0x00800000
22#define CONFIG_SYS_TCLK 250000000 /* 250MHz */
23
24/*
25 * Commands configuration
26 */
27#define CONFIG_SYS_NO_FLASH /* Declare no flash (NOR/SPI) */
Stefan Roese0299c902015-10-20 15:14:47 +020028#define CONFIG_CMD_ENV
Stefan Roese0299c902015-10-20 15:14:47 +020029#define CONFIG_CMD_PCI
Stefan Roese0299c902015-10-20 15:14:47 +020030
31/* I2C */
32#define CONFIG_SYS_I2C
33#define CONFIG_SYS_I2C_MVTWSI
34#define CONFIG_I2C_MVTWSI_BASE0 MVEBU_TWSI_BASE
35#define CONFIG_SYS_I2C_SLAVE 0x0
36#define CONFIG_SYS_I2C_SPEED 100000
37
38/* SPI NOR flash default params, used by sf commands */
39#define CONFIG_SF_DEFAULT_SPEED 1000000
40#define CONFIG_SF_DEFAULT_MODE SPI_MODE_3
41#define CONFIG_SPI_FLASH_STMICRO
42
43/*
44 * SDIO/MMC Card Configuration
45 */
Stefan Roese0299c902015-10-20 15:14:47 +020046#define CONFIG_GENERIC_MMC
Stefan Roese0299c902015-10-20 15:14:47 +020047#define CONFIG_SYS_MMC_BASE MVEBU_SDIO_BASE
48
49/* Partition support */
50#define CONFIG_DOS_PARTITION
51#define CONFIG_EFI_PARTITION
52
53/* Additional FS support/configuration */
54#define CONFIG_SUPPORT_VFAT
55
56/* USB/EHCI configuration */
57#define CONFIG_EHCI_IS_TDI
58
59#define CONFIG_ENV_MIN_ENTRIES 128
60
61/* Environment in MMC */
62#define CONFIG_ENV_IS_IN_MMC
63#define CONFIG_SYS_MMC_ENV_DEV 0
64#define CONFIG_ENV_SECT_SIZE 0x200
65#define CONFIG_ENV_SIZE 0x10000
66/*
67 * For SD - reserve 1 LBA for MBR + 1M for u-boot image. The MMC/eMMC
68 * boot image starts @ LBA-0.
69 * As result in MMC/eMMC case it will be a 1 sector gap between u-boot
70 * image and environment
71 */
72#define CONFIG_ENV_OFFSET 0xf0000
73#define CONFIG_ENV_ADDR CONFIG_ENV_OFFSET
74
75#define CONFIG_PHY_MARVELL /* there is a marvell phy */
76#define PHY_ANEG_TIMEOUT 8000 /* PHY needs a longer aneg time */
77
78/* PCIe support */
79#ifndef CONFIG_SPL_BUILD
Stefan Roese0299c902015-10-20 15:14:47 +020080#define CONFIG_PCI_MVEBU
Stefan Roese0299c902015-10-20 15:14:47 +020081#define CONFIG_PCI_SCAN_SHOW
82#endif
83
Stefan Roese0299c902015-10-20 15:14:47 +020084#define CONFIG_SYS_ALT_MEMTEST
85
86/* Keep device tree and initrd in lower memory so the kernel can access them */
87#define CONFIG_EXTRA_ENV_SETTINGS \
88 "fdt_high=0x10000000\0" \
89 "initrd_high=0x10000000\0"
90
91/* SPL */
92/*
93 * Select the boot device here
94 *
95 * Currently supported are:
96 * SPL_BOOT_SPI_NOR_FLASH - Booting via SPI NOR flash
97 * SPL_BOOT_SDIO_MMC_CARD - Booting via SDIO/MMC card (partition 1)
98 */
99#define SPL_BOOT_SPI_NOR_FLASH 1
100#define SPL_BOOT_SDIO_MMC_CARD 2
101#define CONFIG_SPL_BOOT_DEVICE SPL_BOOT_SDIO_MMC_CARD
102
103/* Defines for SPL */
104#define CONFIG_SPL_FRAMEWORK
105#define CONFIG_SPL_SIZE (140 << 10)
106#define CONFIG_SPL_TEXT_BASE 0x40000030
107#define CONFIG_SPL_MAX_SIZE (CONFIG_SPL_SIZE - 0x0030)
108
109#define CONFIG_SPL_BSS_START_ADDR (0x40000000 + CONFIG_SPL_SIZE)
110#define CONFIG_SPL_BSS_MAX_SIZE (16 << 10)
111
112#ifdef CONFIG_SPL_BUILD
113#define CONFIG_SYS_MALLOC_SIMPLE
114#endif
115
116#define CONFIG_SPL_STACK (0x40000000 + ((192 - 16) << 10))
117#define CONFIG_SPL_BOOTROM_SAVE (CONFIG_SPL_STACK + 4)
118
Stefan Roese0299c902015-10-20 15:14:47 +0200119#if CONFIG_SPL_BOOT_DEVICE == SPL_BOOT_SPI_NOR_FLASH
120/* SPL related SPI defines */
Stefan Roese0299c902015-10-20 15:14:47 +0200121#define CONFIG_SPL_SPI_LOAD
Stefan Roese0299c902015-10-20 15:14:47 +0200122#define CONFIG_SYS_SPI_U_BOOT_OFFS 0x20000
123#define CONFIG_SYS_U_BOOT_OFFS CONFIG_SYS_SPI_U_BOOT_OFFS
124#endif
125
126#if CONFIG_SPL_BOOT_DEVICE == SPL_BOOT_SDIO_MMC_CARD
127/* SPL related MMC defines */
Stefan Roese0299c902015-10-20 15:14:47 +0200128#define CONFIG_SYS_MMC_U_BOOT_OFFS (160 << 10)
129#define CONFIG_SYS_U_BOOT_OFFS CONFIG_SYS_MMC_U_BOOT_OFFS
Stefan Roese0299c902015-10-20 15:14:47 +0200130#ifdef CONFIG_SPL_BUILD
131#define CONFIG_FIXED_SDHCI_ALIGNED_BUFFER 0x00180000 /* in SDRAM */
132#endif
133#endif
134
Stefan Roese0299c902015-10-20 15:14:47 +0200135/*
136 * mv-common.h should be defined after CMD configs since it used them
137 * to enable certain macros
138 */
139#include "mv-common.h"
140
141#endif /* _CONFIG_CLEARFOG_H */