blob: b371a9baf4f0a5d4f94154d4242fc5c79cccd2f2 [file] [log] [blame]
Dinh Nguyenc3364da2015-09-01 17:41:52 -05001/*
2 * Copyright (C) 2015 Marek Vasut <marex@denx.de>
3 *
4 * SPDX-License-Identifier: GPL-2.0+
5 */
6#ifndef __CONFIG_TERASIC_DE0_H__
7#define __CONFIG_TERASIC_DE0_H__
8
Dinh Nguyeneca8b5c2015-11-23 17:27:17 -06009#include <asm/arch/base_addr_ac5.h>
Dinh Nguyenc3364da2015-09-01 17:41:52 -050010
11/* U-Boot Commands */
12#define CONFIG_SYS_NO_FLASH
13#define CONFIG_DOS_PARTITION
14#define CONFIG_FAT_WRITE
15#define CONFIG_HW_WATCHDOG
16
17#define CONFIG_CMD_ASKENV
18#define CONFIG_CMD_BOOTZ
19#define CONFIG_CMD_CACHE
20#define CONFIG_CMD_DFU
21#define CONFIG_CMD_DHCP
22#define CONFIG_CMD_EXT4
23#define CONFIG_CMD_EXT4_WRITE
24#define CONFIG_CMD_FAT
25#define CONFIG_CMD_FS_GENERIC
Dinh Nguyenc3364da2015-09-01 17:41:52 -050026#define CONFIG_CMD_GREPENV
27#define CONFIG_CMD_MII
28#define CONFIG_CMD_MMC
29#define CONFIG_CMD_PING
30#define CONFIG_CMD_USB
31#define CONFIG_CMD_USB_MASS_STORAGE
32
33/* Memory configurations */
34#define PHYS_SDRAM_1_SIZE 0x40000000 /* 1GiB */
35
36/* Booting Linux */
37#define CONFIG_BOOTDELAY 3
38#define CONFIG_BOOTFILE "fitImage"
39#define CONFIG_BOOTARGS "console=ttyS0," __stringify(CONFIG_BAUDRATE)
40#ifdef CONFIG_SOCFPGA_VIRTUAL_TARGET
41#define CONFIG_BOOTCOMMAND "run ramboot"
42#else
43#define CONFIG_BOOTCOMMAND "run mmcload; run mmcboot"
44#endif
45#define CONFIG_LOADADDR 0x01000000
46#define CONFIG_SYS_LOAD_ADDR CONFIG_LOADADDR
47
48/* Ethernet on SoC (EMAC) */
49#if defined(CONFIG_CMD_NET)
50
51/* PHY */
52#define CONFIG_PHY_MICREL
53#define CONFIG_PHY_MICREL_KSZ9031
54
55#endif
56
Dinh Nguyen813e7e62015-09-23 15:38:01 -050057#define CONFIG_ENV_IS_IN_MMC
58#define CONFIG_SYS_MMC_ENV_DEV 0 /* device 0 */
59#define CONFIG_ENV_OFFSET 512 /* just after the MBR */
60
Dinh Nguyenc3364da2015-09-01 17:41:52 -050061/* USB */
62#ifdef CONFIG_CMD_USB
63#define CONFIG_USB_DWC2_REG_ADDR SOCFPGA_USB1_ADDRESS
64#endif
65#define CONFIG_G_DNL_MANUFACTURER "Terasic"
66
67/* Extra Environment */
68#define CONFIG_HOSTNAME socfpga_de0_nano_soc
69
70#define CONFIG_EXTRA_ENV_SETTINGS \
71 "loadaddr= " __stringify(CONFIG_SYS_LOAD_ADDR) "\0" \
72 "ramboot=setenv bootargs " CONFIG_BOOTARGS ";" \
73 "bootm ${loadaddr} - ${fdt_addr}\0" \
74 "bootimage=zImage\0" \
75 "fdt_addr=100\0" \
76 "fdtimage=socfpga.dtb\0" \
77 "fsloadcmd=ext2load\0" \
78 "bootm ${loadaddr} - ${fdt_addr}\0" \
79 "mmcroot=/dev/mmcblk0p2\0" \
80 "mmcboot=setenv bootargs " CONFIG_BOOTARGS \
81 " root=${mmcroot} rw rootwait;" \
82 "bootz ${loadaddr} - ${fdt_addr}\0" \
83 "mmcload=mmc rescan;" \
84 "load mmc 0:1 ${loadaddr} ${bootimage};" \
85 "load mmc 0:1 ${fdt_addr} ${fdtimage}\0" \
86
87/* The rest of the configuration is shared */
88#include <configs/socfpga_common.h>
89
90#endif /* __CONFIG_TERASIC_DE0_H__ */