blob: f2aa21a43e5fe068b3f53970080c02dd5d9b2f37 [file] [log] [blame]
Tom Rini83d290c2018-05-06 17:58:06 -04001/* SPDX-License-Identifier: GPL-2.0+ */
Stefan Roese2bae75a2015-04-25 06:29:56 +02002/*
3 * Copyright (C) 2014 Stefan Roese <sr@denx.de>
Stefan Roese2bae75a2015-04-25 06:29:56 +02004 */
5
6#ifndef _CONFIG_DB_88F6820_GP_H
7#define _CONFIG_DB_88F6820_GP_H
8
9/*
10 * High Level Configuration Options (easy to change)
11 */
Stefan Roese2bae75a2015-04-25 06:29:56 +020012
Stefan Roese2923c2d2015-08-06 14:27:36 +020013/*
14 * TEXT_BASE needs to be below 16MiB, since this area is scrubbed
15 * for DDR ECC byte filling in the SPL before loading the main
16 * U-Boot into it.
17 */
Stefan Roese2bae75a2015-04-25 06:29:56 +020018#define CONFIG_SYS_TCLK 250000000 /* 250MHz */
19
20/*
21 * Commands configuration
22 */
Stefan Roese2bae75a2015-04-25 06:29:56 +020023
24/* I2C */
25#define CONFIG_SYS_I2C
26#define CONFIG_SYS_I2C_MVTWSI
27#define CONFIG_I2C_MVTWSI_BASE0 MVEBU_TWSI_BASE
28#define CONFIG_SYS_I2C_SLAVE 0x0
29#define CONFIG_SYS_I2C_SPEED 100000
30
Konstantin Porotchkind3c72c52018-08-29 16:34:53 +030031/*
32 * SPI Flash configuration for the environemnt access
33 */
34#define CONFIG_ENV_SPI_BUS 0
35#define CONFIG_ENV_SPI_CS 0
36
Stefan Roese2bae75a2015-04-25 06:29:56 +020037/* SPI NOR flash default params, used by sf commands */
38#define CONFIG_SF_DEFAULT_SPEED 1000000
39#define CONFIG_SF_DEFAULT_MODE SPI_MODE_3
Stefan Roese2bae75a2015-04-25 06:29:56 +020040
Stefan Roesee80f1e82015-06-29 14:58:11 +020041/*
42 * SDIO/MMC Card Configuration
43 */
Stefan Roesee80f1e82015-06-29 14:58:11 +020044#define CONFIG_SYS_MMC_BASE MVEBU_SDIO_BASE
45
Stefan Roese7cbaff92015-06-29 14:58:14 +020046/*
47 * SATA/SCSI/AHCI configuration
48 */
Stefan Roese7cbaff92015-06-29 14:58:14 +020049#define CONFIG_SCSI_AHCI_PLAT
50#define CONFIG_SYS_SCSI_MAX_SCSI_ID 2
51#define CONFIG_SYS_SCSI_MAX_LUN 1
52#define CONFIG_SYS_SCSI_MAX_DEVICE (CONFIG_SYS_SCSI_MAX_SCSI_ID * \
53 CONFIG_SYS_SCSI_MAX_LUN)
54
Stefan Roese59565732015-06-29 14:58:16 +020055/* USB/EHCI configuration */
Stefan Roese59565732015-06-29 14:58:16 +020056#define CONFIG_EHCI_IS_TDI
57
Stefan Roese2bae75a2015-04-25 06:29:56 +020058/* Environment in SPI NOR flash */
Stefan Roese2bae75a2015-04-25 06:29:56 +020059#define CONFIG_ENV_OFFSET (1 << 20) /* 1MiB in */
60#define CONFIG_ENV_SIZE (64 << 10) /* 64KiB */
61#define CONFIG_ENV_SECT_SIZE (256 << 10) /* 256KiB sectors */
62
Stefan Roese2bae75a2015-04-25 06:29:56 +020063#define PHY_ANEG_TIMEOUT 8000 /* PHY needs a longer aneg time */
64
Stefan Roesece2cb1d2015-08-11 12:50:58 +020065/* PCIe support */
Stefan Roese64512232015-11-25 07:37:00 +010066#ifndef CONFIG_SPL_BUILD
Stefan Roesece2cb1d2015-08-11 12:50:58 +020067#define CONFIG_PCI_MVEBU
Stefan Roesece2cb1d2015-08-11 12:50:58 +020068#define CONFIG_PCI_SCAN_SHOW
Stefan Roese64512232015-11-25 07:37:00 +010069#endif
Stefan Roesece2cb1d2015-08-11 12:50:58 +020070
Kevin Smith3fd38af2015-05-18 16:09:46 +000071/* Keep device tree and initrd in lower memory so the kernel can access them */
72#define CONFIG_EXTRA_ENV_SETTINGS \
73 "fdt_high=0x10000000\0" \
74 "initrd_high=0x10000000\0"
75
Stefan Roese9e30b312015-03-25 13:35:15 +010076/* SPL */
Stefan Roese7853c502015-07-20 11:20:40 +020077/*
78 * Select the boot device here
79 *
80 * Currently supported are:
81 * SPL_BOOT_SPI_NOR_FLASH - Booting via SPI NOR flash
82 * SPL_BOOT_SDIO_MMC_CARD - Booting via SDIO/MMC card (partition 1)
83 */
84#define SPL_BOOT_SPI_NOR_FLASH 1
85#define SPL_BOOT_SDIO_MMC_CARD 2
86#define CONFIG_SPL_BOOT_DEVICE SPL_BOOT_SPI_NOR_FLASH
87
Stefan Roese9e30b312015-03-25 13:35:15 +010088/* Defines for SPL */
Stefan Roese9e30b312015-03-25 13:35:15 +010089#define CONFIG_SPL_SIZE (140 << 10)
90#define CONFIG_SPL_TEXT_BASE 0x40000030
91#define CONFIG_SPL_MAX_SIZE (CONFIG_SPL_SIZE - 0x0030)
92
93#define CONFIG_SPL_BSS_START_ADDR (0x40000000 + CONFIG_SPL_SIZE)
94#define CONFIG_SPL_BSS_MAX_SIZE (16 << 10)
95
Stefan Roese64512232015-11-25 07:37:00 +010096#ifdef CONFIG_SPL_BUILD
97#define CONFIG_SYS_MALLOC_SIMPLE
98#endif
Stefan Roese9e30b312015-03-25 13:35:15 +010099
100#define CONFIG_SPL_STACK (0x40000000 + ((192 - 16) << 10))
101#define CONFIG_SPL_BOOTROM_SAVE (CONFIG_SPL_STACK + 4)
102
Stefan Roese7853c502015-07-20 11:20:40 +0200103#if CONFIG_SPL_BOOT_DEVICE == SPL_BOOT_SPI_NOR_FLASH
Stefan Roese9e30b312015-03-25 13:35:15 +0100104/* SPL related SPI defines */
Stefan Roese09a54c02015-11-20 13:51:57 +0100105#define CONFIG_SYS_SPI_U_BOOT_OFFS 0x24000
Stefan Roese7853c502015-07-20 11:20:40 +0200106#define CONFIG_SYS_U_BOOT_OFFS CONFIG_SYS_SPI_U_BOOT_OFFS
107#endif
108
109#if CONFIG_SPL_BOOT_DEVICE == SPL_BOOT_SDIO_MMC_CARD
110/* SPL related MMC defines */
Stefan Roese7853c502015-07-20 11:20:40 +0200111#define CONFIG_SYS_MMC_U_BOOT_OFFS (160 << 10)
112#define CONFIG_SYS_U_BOOT_OFFS CONFIG_SYS_MMC_U_BOOT_OFFS
Stefan Roese7853c502015-07-20 11:20:40 +0200113#ifdef CONFIG_SPL_BUILD
114#define CONFIG_FIXED_SDHCI_ALIGNED_BUFFER 0x00180000 /* in SDRAM */
115#endif
116#endif
Stefan Roese9e30b312015-03-25 13:35:15 +0100117
Stefan Roese2bae75a2015-04-25 06:29:56 +0200118/*
119 * mv-common.h should be defined after CMD configs since it used them
120 * to enable certain macros
121 */
122#include "mv-common.h"
123
124#endif /* _CONFIG_DB_88F6820_GP_H */