1/* SPDX-License-Identifier: GPL-2.0+ */ 2/* 3 * Copyright (C) 2015 Stefan Roese <sr@denx.de> 4 */ 5 6#ifndef _CONFIG_CLEARFOG_H 7#define _CONFIG_CLEARFOG_H 8 9/* 10 * High Level Configuration Options (easy to change) 11 */ 12 13/* 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 */ 18#define CONFIG_SYS_TCLK 250000000 /* 250MHz */ 19 20/* 21 * Commands configuration 22 */ 23 24/* 25 * SDIO/MMC Card Configuration 26 */ 27#define CONFIG_SYS_MMC_BASE MVEBU_SDIO_BASE 28 29/* USB/EHCI configuration */ 30#define CONFIG_EHCI_IS_TDI 31 32#define CONFIG_ENV_MIN_ENTRIES 128 33 34/* Environment in MMC */ 35#define CONFIG_SYS_MMC_ENV_DEV 0 36#define CONFIG_ENV_SECT_SIZE 0x200 37#define CONFIG_ENV_SIZE 0x10000 38/* 39 * For SD - reserve 1 LBA for MBR + 1M for u-boot image. The MMC/eMMC 40 * boot image starts @ LBA-0. 41 * As result in MMC/eMMC case it will be a 1 sector gap between u-boot 42 * image and environment 43 */ 44#define CONFIG_ENV_OFFSET 0xf0000 45#define CONFIG_ENV_ADDR CONFIG_ENV_OFFSET 46 47#define PHY_ANEG_TIMEOUT 8000 /* PHY needs a longer aneg time */ 48 49/* PCIe support */ 50#ifndef CONFIG_SPL_BUILD 51#define CONFIG_PCI_SCAN_SHOW 52#endif 53 54/* SATA support */ 55#ifdef CONFIG_SCSI 56#define CONFIG_SCSI_AHCI_PLAT 57#define CONFIG_SYS_SCSI_MAX_SCSI_ID 1 58#define CONFIG_SYS_SCSI_MAX_LUN 1 59#define CONFIG_SYS_SCSI_MAX_DEVICE (CONFIG_SYS_SCSI_MAX_SCSI_ID * \ 60 CONFIG_SYS_SCSI_MAX_LUN) 61#endif 62 63/* Keep device tree and initrd in lower memory so the kernel can access them */ 64#define RELOCATION_LIMITS_ENV_SETTINGS \ 65 "fdt_high=0x10000000\0" \ 66 "initrd_high=0x10000000\0" 67 68/* SPL */ 69 70/* Defines for SPL */ 71#define CONFIG_SPL_SIZE (140 << 10) 72#define CONFIG_SPL_MAX_SIZE (CONFIG_SPL_SIZE - 0x0030) 73 74#define CONFIG_SPL_BSS_START_ADDR (0x40000000 + CONFIG_SPL_SIZE) 75#define CONFIG_SPL_BSS_MAX_SIZE (16 << 10) 76 77#ifdef CONFIG_SPL_BUILD 78#define CONFIG_SYS_MALLOC_SIMPLE 79#endif 80 81#define CONFIG_SPL_STACK (0x40000000 + ((192 - 16) << 10)) 82#define CONFIG_SPL_BOOTROM_SAVE (CONFIG_SPL_STACK + 4) 83 84#if defined(CONFIG_MVEBU_SPL_BOOT_DEVICE_SPI) 85/* SPL related SPI defines */ 86#define CONFIG_SYS_SPI_U_BOOT_OFFS 0x20000 87#define CONFIG_SYS_U_BOOT_OFFS CONFIG_SYS_SPI_U_BOOT_OFFS 88#elif defined(CONFIG_MVEBU_SPL_BOOT_DEVICE_MMC) 89/* SPL related MMC defines */ 90#define CONFIG_SYS_MMC_U_BOOT_OFFS (160 << 10) 91#define CONFIG_SYS_U_BOOT_OFFS CONFIG_SYS_MMC_U_BOOT_OFFS 92#ifdef CONFIG_SPL_BUILD 93#define CONFIG_FIXED_SDHCI_ALIGNED_BUFFER 0x00180000 /* in SDRAM */ 94#endif 95#endif 96 97/* 98 * mv-common.h should be defined after CMD configs since it used them 99 * to enable certain macros 100 */ 101#include "mv-common.h" 102 103/* Include the common distro boot environment */ 104#ifndef CONFIG_SPL_BUILD 105 106#ifdef CONFIG_MMC 107#define BOOT_TARGET_DEVICES_MMC(func) func(MMC, mmc, 0) 108#else 109#define BOOT_TARGET_DEVICES_MMC(func) 110#endif 111 112#ifdef CONFIG_USB_STORAGE 113#define BOOT_TARGET_DEVICES_USB(func) func(USB, usb, 0) 114#else 115#define BOOT_TARGET_DEVICES_USB(func) 116#endif 117 118#define BOOT_TARGET_DEVICES(func) \ 119 BOOT_TARGET_DEVICES_MMC(func) \ 120 BOOT_TARGET_DEVICES_USB(func) \ 121 func(PXE, pxe, na) \ 122 func(DHCP, dhcp, na) 123 124#define KERNEL_ADDR_R __stringify(0x800000) 125#define FDT_ADDR_R __stringify(0x100000) 126#define RAMDISK_ADDR_R __stringify(0x1800000) 127#define SCRIPT_ADDR_R __stringify(0x200000) 128#define PXEFILE_ADDR_R __stringify(0x300000) 129 130#define LOAD_ADDRESS_ENV_SETTINGS \ 131 "kernel_addr_r=" KERNEL_ADDR_R "\0" \ 132 "fdt_addr_r=" FDT_ADDR_R "\0" \ 133 "ramdisk_addr_r=" RAMDISK_ADDR_R "\0" \ 134 "scriptaddr=" SCRIPT_ADDR_R "\0" \ 135 "pxefile_addr_r=" PXEFILE_ADDR_R "\0" 136 137#include <config_distro_bootcmd.h> 138 139#define CONFIG_EXTRA_ENV_SETTINGS \ 140 RELOCATION_LIMITS_ENV_SETTINGS \ 141 LOAD_ADDRESS_ENV_SETTINGS \ 142 "fdtfile=" CONFIG_DEFAULT_DEVICE_TREE ".dtb\0" \ 143 "console=ttyS0,115200\0" \ 144 BOOTENV 145 146#endif /* CONFIG_SPL_BUILD */ 147 148#endif /* _CONFIG_CLEARFOG_H */ 149