daa5cdf5b26bbcbd566f96b9d85063a390936790
[platform/kernel/u-boot.git] / include / configs / ax25-ae350.h
1 /* SPDX-License-Identifier: GPL-2.0+ */
2 /*
3  * Copyright (C) 2017 Andes Technology Corporation
4  * Rick Chen, Andes Technology Corporation <rick@andestech.com>
5  */
6
7 #ifndef __CONFIG_H
8 #define __CONFIG_H
9
10 #define RISCV_MMODE_TIMERBASE           0xe6000000
11 #define RISCV_MMODE_TIMER_FREQ          60000000
12
13 #define RISCV_SMODE_TIMER_FREQ          60000000
14
15 /*
16  * CPU and Board Configuration Options
17  */
18
19 /*
20  * Miscellaneous configurable options
21  */
22
23 /*
24  * Physical Memory Map
25  */
26 #define PHYS_SDRAM_0    0x00000000              /* SDRAM Bank #1 */
27 #define PHYS_SDRAM_1    \
28         (PHYS_SDRAM_0 + PHYS_SDRAM_0_SIZE)      /* SDRAM Bank #2 */
29 #define PHYS_SDRAM_0_SIZE       0x20000000      /* 512 MB */
30 #define PHYS_SDRAM_1_SIZE       0x20000000      /* 512 MB */
31 #define CONFIG_SYS_SDRAM_BASE   PHYS_SDRAM_0
32
33 /*
34  * Serial console configuration
35  */
36 #define CONFIG_SYS_NS16550_SERIAL
37 #ifndef CONFIG_DM_SERIAL
38 #define CONFIG_SYS_NS16550_REG_SIZE     -4
39 #endif
40 #define CONFIG_SYS_NS16550_CLK          19660800
41
42 /* Init Stack Pointer */
43
44 /* support JEDEC */
45 #define PHYS_FLASH_1                    0x88000000      /* BANK 0 */
46 #define CONFIG_SYS_FLASH_BASE           PHYS_FLASH_1
47 #define CONFIG_SYS_FLASH_BANKS_LIST     { PHYS_FLASH_1, }
48
49 #define CONFIG_SYS_FLASH_ERASE_TOUT     120000  /* TO for Flash Erase (ms) */
50 #define CONFIG_SYS_FLASH_WRITE_TOUT     500     /* TO for Flash Write (ms) */
51
52 /* max number of memory banks */
53 /*
54  * There are 4 banks supported for this Controller,
55  * but we have only 1 bank connected to flash on board
56 */
57 #define CONFIG_SYS_FLASH_BANKS_SIZES {0x4000000}
58
59 /* max number of sectors on one chip */
60 #define CONFIG_FLASH_SECTOR_SIZE        (0x10000*2)
61 #define CONFIG_SYS_MAX_FLASH_SECT       512
62
63 /* environments */
64
65 /* SPI FLASH */
66
67 /*
68  * For booting Linux, the board info and command line data
69  * have to be in the first 16 MB of memory, since this is
70  * the maximum mapped by the Linux kernel during initialization.
71  */
72
73 /* Initial Memory map for Linux*/
74 #define CONFIG_SYS_BOOTMAPSZ    (64 << 20)
75 /* Increase max gunzip size */
76
77 /* Support autoboot from RAM (kernel image is loaded via debug port) */
78 #define KERNEL_IMAGE_ADDR       "0x2000000 "
79 #define BOOTENV_DEV_NAME_RAM(devtypeu, devtypel, instance) \
80         "ram "
81 #define BOOTENV_DEV_RAM(devtypeu, devtypel, instance) \
82         "bootcmd_ram=" \
83         "booti " \
84         KERNEL_IMAGE_ADDR \
85         "- $fdtcontroladdr\0"
86
87 /* When we use RAM as ENV */
88
89 /* Enable distro boot */
90 #define BOOT_TARGET_DEVICES(func) \
91         func(MMC, mmc, 0) \
92         func(DHCP, dhcp, na) \
93         func(RAM, ram, na)
94 #include <config_distro_bootcmd.h>
95
96 #define CONFIG_EXTRA_ENV_SETTINGS       \
97                                 "kernel_addr_r=0x00080000\0" \
98                                 "pxefile_addr_r=0x01f00000\0" \
99                                 "scriptaddr=0x01f00000\0" \
100                                 "fdt_addr_r=0x02000000\0" \
101                                 "ramdisk_addr_r=0x02800000\0" \
102                                 BOOTENV
103
104 #endif /* __CONFIG_H */