]>
Commit | Line | Data |
---|---|---|
14d5aeff IO |
1 | /* SPDX-License-Identifier: GPL-2.0+ */ |
2 | /* | |
41d4b002 | 3 | * Copyright 2020-2021 Toradex |
14d5aeff IO |
4 | */ |
5 | ||
6 | #ifndef __VERDIN_IMX8MM_H | |
7 | #define __VERDIN_IMX8MM_H | |
8 | ||
9 | #include <asm/arch/imx-regs.h> | |
10 | #include <linux/sizes.h> | |
11 | ||
14d5aeff IO |
12 | #define CONFIG_SPL_MAX_SIZE (148 * 1024) |
13 | #define CONFIG_SYS_MONITOR_LEN SZ_512K | |
14d5aeff IO |
14 | #define CONFIG_SYS_UBOOT_BASE \ |
15 | (QSPI0_AMBA_BASE + CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR * 512) | |
16 | ||
e2017ef6 MV |
17 | #define CONFIG_SYS_BOOTM_LEN SZ_64M |
18 | ||
14d5aeff IO |
19 | #ifdef CONFIG_SPL_BUILD |
20 | #define CONFIG_SPL_STACK 0x920000 | |
21 | #define CONFIG_SPL_BSS_START_ADDR 0x910000 | |
22 | #define CONFIG_SPL_BSS_MAX_SIZE SZ_8K /* 8 KB */ | |
23 | #define CONFIG_SYS_SPL_MALLOC_START 0x42200000 | |
24 | #define CONFIG_SYS_SPL_MALLOC_SIZE SZ_512K /* 512 KB */ | |
25 | ||
26 | /* malloc f used before GD_FLG_FULL_MALLOC_INIT set */ | |
27 | #define CONFIG_MALLOC_F_ADDR 0x930000 | |
28 | /* For RAW image gives a error info not panic */ | |
29 | #define CONFIG_SPL_ABORT_ON_RAW_IMAGE | |
30 | #endif | |
31 | ||
32 | #define MEM_LAYOUT_ENV_SETTINGS \ | |
33 | "fdt_addr_r=0x44000000\0" \ | |
34 | "kernel_addr_r=0x42000000\0" \ | |
35 | "ramdisk_addr_r=0x46400000\0" \ | |
36 | "scriptaddr=0x46000000\0" | |
37 | ||
14d5aeff IO |
38 | /* Enable Distro Boot */ |
39 | #ifndef CONFIG_SPL_BUILD | |
40 | #define BOOT_TARGET_DEVICES(func) \ | |
41 | func(MMC, mmc, 1) \ | |
42 | func(MMC, mmc, 0) \ | |
43 | func(DHCP, dhcp, na) | |
44 | #include <config_distro_bootcmd.h> | |
45 | #undef CONFIG_ISO_PARTITION | |
46 | #else | |
47 | #define BOOTENV | |
48 | #endif | |
49 | ||
50 | /* Initial environment variables */ | |
51 | #define CONFIG_EXTRA_ENV_SETTINGS \ | |
52 | BOOTENV \ | |
53 | MEM_LAYOUT_ENV_SETTINGS \ | |
54 | "bootcmd_mfg=fastboot 0\0" \ | |
41d4b002 | 55 | "boot_file=Image\0" \ |
14d5aeff IO |
56 | "console=ttymxc0\0" \ |
57 | "fdt_addr=0x43000000\0" \ | |
41d4b002 | 58 | "fdt_board=dev\0" \ |
14d5aeff IO |
59 | "initrd_addr=0x43800000\0" \ |
60 | "initrd_high=0xffffffffffffffff\0" \ | |
2c28c4a2 IO |
61 | "netargs=setenv bootargs console=${console},${baudrate} " \ |
62 | "root=/dev/nfs ip=dhcp nfsroot=${serverip}:${nfsroot},v3,tcp" \ | |
63 | "\0" \ | |
41d4b002 | 64 | "nfsboot=run netargs; dhcp ${loadaddr} ${boot_file}; " \ |
2c28c4a2 IO |
65 | "tftp ${fdt_addr} verdin/${fdtfile}; " \ |
66 | "booti ${loadaddr} - ${fdt_addr}\0" \ | |
14d5aeff IO |
67 | "setup=setenv setupargs console=${console},${baudrate} " \ |
68 | "console=tty1 consoleblank=0 earlycon\0" \ | |
69 | "update_uboot=askenv confirm Did you load flash.bin (y/N)?; " \ | |
70 | "if test \"$confirm\" = \"y\"; then " \ | |
71 | "setexpr blkcnt ${filesize} + 0x1ff && setexpr blkcnt " \ | |
72 | "${blkcnt} / 0x200; mmc dev 0 1; mmc write ${loadaddr} 0x2 " \ | |
73 | "${blkcnt}; fi\0" | |
74 | ||
75 | #define CONFIG_SYS_INIT_RAM_ADDR 0x40000000 | |
76 | #define CONFIG_SYS_INIT_RAM_SIZE SZ_2M | |
77 | #define CONFIG_SYS_INIT_SP_OFFSET \ | |
78 | (CONFIG_SYS_INIT_RAM_SIZE - GENERATED_GBL_DATA_SIZE) | |
79 | #define CONFIG_SYS_INIT_SP_ADDR \ | |
80 | (CONFIG_SYS_INIT_RAM_ADDR + CONFIG_SYS_INIT_SP_OFFSET) | |
81 | ||
14d5aeff IO |
82 | #if defined(CONFIG_ENV_IS_IN_MMC) |
83 | /* Environment in eMMC, before config block at the end of 1st "boot sector" */ | |
14d5aeff IO |
84 | #endif |
85 | ||
14d5aeff IO |
86 | #define CONFIG_SYS_SDRAM_BASE 0x40000000 |
87 | ||
88 | /* SDRAM configuration */ | |
89 | #define PHYS_SDRAM 0x40000000 | |
90 | #define PHYS_SDRAM_SIZE SZ_2G /* 2GB DDR */ | |
91 | ||
14d5aeff IO |
92 | /* UART */ |
93 | #define CONFIG_MXC_UART_BASE UART1_BASE_ADDR | |
94 | ||
95 | /* Monitor Command Prompt */ | |
14d5aeff IO |
96 | #define CONFIG_SYS_CBSIZE SZ_2K |
97 | #define CONFIG_SYS_MAXARGS 64 | |
98 | #define CONFIG_SYS_BARGSIZE CONFIG_SYS_CBSIZE | |
99 | #define CONFIG_SYS_PBSIZE (CONFIG_SYS_CBSIZE + \ | |
100 | sizeof(CONFIG_SYS_PROMPT) + 16) | |
101 | /* USDHC */ | |
14d5aeff IO |
102 | #define CONFIG_SYS_FSL_USDHC_NUM 2 |
103 | #define CONFIG_SYS_FSL_ESDHC_ADDR 0 | |
104 | #define CONFIG_SYS_MMC_IMG_LOAD_PART 1 | |
14d5aeff IO |
105 | |
106 | /* ENET */ | |
107 | #define CONFIG_ETHPRIME "FEC" | |
108 | #define CONFIG_FEC_XCV_TYPE RGMII | |
109 | #define CONFIG_FEC_MXC_PHYADDR 7 | |
110 | #define FEC_QUIRK_ENET_MAC | |
111 | #define IMX_FEC_BASE 0x30BE0000 | |
112 | ||
d08cdc22 MV |
113 | /* USB Configs */ |
114 | #define CONFIG_EHCI_HCD_INIT_AFTER_RESET | |
115 | #define CONFIG_MXC_USB_PORTSC (PORT_PTS_UTMI | PORT_PTS_PTW) | |
116 | #define CONFIG_USB_MAX_CONTROLLER_COUNT 2 | |
117 | ||
41d4b002 | 118 | #endif /* __VERDIN_IMX8MM_H */ |