1 /* SPDX-License-Identifier: GPL-2.0+ */
3 * Copyright (C) 2020 Synopsys, Inc. All rights reserved.
7 #ifndef _CONFIG_HSDK_H_
8 #define _CONFIG_HSDK_H_
10 #include <linux/sizes.h>
16 #define ARC_PERIPHERAL_BASE 0xF0000000
17 #define ARC_DWMMC_BASE (ARC_PERIPHERAL_BASE + 0xA000)
18 #define ARC_DWGMAC_BASE (ARC_PERIPHERAL_BASE + 0x18000)
21 * Memory configuration
24 #define CONFIG_SYS_DDR_SDRAM_BASE 0x80000000
25 #define CONFIG_SYS_SDRAM_BASE CONFIG_SYS_DDR_SDRAM_BASE
26 #define CONFIG_SYS_SDRAM_SIZE SZ_1G
28 #define CONFIG_SYS_BOOTM_LEN SZ_128M
33 #define CONFIG_SYS_NS16550_SERIAL
34 #define CONFIG_SYS_NS16550_CLK 33330000
35 #define CONFIG_SYS_NS16550_MEM32
38 * Ethernet PHY configuration
42 * Environment settings
44 #define CONFIG_EXTRA_ENV_SETTINGS \
45 "upgrade=if mmc rescan && " \
46 "fatload mmc 0:1 ${loadaddr} u-boot-update.scr && " \
47 "iminfo ${loadaddr} && source ${loadaddr}; then; else echo " \
48 "\"Fail to upgrade.\n" \
49 "Do you have u-boot-update.scr and u-boot.head on first (FAT) SD card partition?\"" \
52 "hsdk_hs45d=setenv core_mask 0x2; setenv haps_apb_location 0x1; \
53 setenv l2_cache_ena 0x0; setenv icache_ena 0x0; setenv csm_location 0x10; \
54 setenv dcache_ena 0x0; setenv core_iccm_1 0x7; \
55 setenv core_dccm_1 0x8; setenv non_volatile_limit 0xF;\0" \
56 "hsdk_hs47d=setenv core_mask 0x1; setenv haps_apb_location 0x1; \
57 setenv l2_cache_ena 0x0; setenv icache_ena 0x1; setenv csm_location 0x10; \
58 setenv dcache_ena 0x1; setenv core_iccm_0 0x10; \
59 setenv core_dccm_0 0x10; setenv non_volatile_limit 0xF;\0" \
60 "hsdk_hs47d_ccm=setenv core_mask 0x2; setenv haps_apb_location 0x1; \
61 setenv l2_cache_ena 0x0; setenv icache_ena 0x1; setenv csm_location 0x10; \
62 setenv dcache_ena 0x1; setenv core_iccm_1 0x7; \
63 setenv core_dccm_1 0x8; setenv non_volatile_limit 0xF;\0" \
64 "hsdk_hs48=setenv core_mask 0x1; setenv haps_apb_location 0x1; \
65 setenv l2_cache_ena 0x1; setenv icache_ena 0x1; setenv csm_location 0x10; \
66 setenv dcache_ena 0x1; setenv core_iccm_0 0x10; \
67 setenv core_dccm_0 0x10; setenv non_volatile_limit 0xF;\0" \
68 "hsdk_hs48_ccm=setenv core_mask 0x2; setenv haps_apb_location 0x1; \
69 setenv l2_cache_ena 0x1; setenv icache_ena 0x1; setenv csm_location 0x10; \
70 setenv dcache_ena 0x1; setenv core_iccm_1 0x7; \
71 setenv core_dccm_1 0x8; setenv non_volatile_limit 0xF;\0" \
72 "hsdk_hs48x2=run hsdk_hs47dx2;\0" \
73 "hsdk_hs47dx2=setenv core_mask 0x3; setenv haps_apb_location 0x1; \
74 setenv l2_cache_ena 0x1; setenv icache_ena 0x1; setenv csm_location 0x10; \
75 setenv dcache_ena 0x1; setenv core_iccm_0 0x10; \
76 setenv core_dccm_0 0x10; setenv non_volatile_limit 0xF; \
77 setenv core_iccm_1 0x6; setenv core_dccm_1 0x6;\0" \
78 "hsdk_hs48x3=run hsdk_hs47dx3;\0" \
79 "hsdk_hs47dx3=setenv core_mask 0x7; setenv haps_apb_location 0x1; \
80 setenv l2_cache_ena 0x1; setenv icache_ena 0x1; setenv csm_location 0x10; \
81 setenv dcache_ena 0x1; setenv core_iccm_0 0x10; \
82 setenv core_dccm_0 0x10; setenv non_volatile_limit 0xF; \
83 setenv core_iccm_1 0x6; setenv core_dccm_1 0x6; \
84 setenv core_iccm_2 0x10; setenv core_dccm_2 0x10;\0" \
85 "hsdk_hs48x4=run hsdk_hs47dx4;\0" \
86 "hsdk_hs47dx4=setenv core_mask 0xF; setenv haps_apb_location 0x1; \
87 setenv l2_cache_ena 0x1; setenv icache_ena 0x1; setenv csm_location 0x10; \
88 setenv dcache_ena 0x1; setenv core_iccm_0 0x10; \
89 setenv core_dccm_0 0x10; setenv non_volatile_limit 0xF; \
90 setenv core_iccm_1 0x6; setenv core_dccm_1 0x6; \
91 setenv core_iccm_2 0x10; setenv core_dccm_2 0x10; \
92 setenv core_iccm_3 0x6; setenv core_dccm_3 0x6;\0"
95 * Environment configuration
98 /* Cli configuration */
101 * Callback configuration
104 #endif /* _CONFIG_HSDK_H_ */