f68d7d7676f2ea6f39c5c7ffbba50899757a7e42
[platform/kernel/u-boot.git] / include / configs / sifive-unmatched.h
1 /* SPDX-License-Identifier: GPL-2.0+ */
2 /*
3  * Copyright (c) 2020-2021 SiFive, Inc
4  *
5  * Authors:
6  *   Pragnesh Patel <pragnesh.patel@sifive.com>
7  */
8
9 #ifndef __SIFIVE_UNMATCHED_H
10 #define __SIFIVE_UNMATCHED_H
11
12 #include <linux/sizes.h>
13
14 #ifdef CONFIG_SPL
15
16 #define CONFIG_SPL_MAX_SIZE             0x00100000
17 #define CONFIG_SPL_BSS_START_ADDR       0x85000000
18 #define CONFIG_SPL_BSS_MAX_SIZE         0x00100000
19 #define CONFIG_SYS_SPL_MALLOC_START     (CONFIG_SPL_BSS_START_ADDR + \
20                                          CONFIG_SPL_BSS_MAX_SIZE)
21 #define CONFIG_SYS_SPL_MALLOC_SIZE      0x00100000
22
23 #define CONFIG_SPL_STACK        (0x08000000 + 0x001D0000 - \
24                                  GENERATED_GBL_DATA_SIZE)
25
26 #endif
27
28 #define CONFIG_SYS_SDRAM_BASE           0x80000000
29 #define CONFIG_SYS_INIT_SP_ADDR         (CONFIG_SYS_SDRAM_BASE + SZ_2M)
30
31 #define CONFIG_SYS_BOOTM_LEN            SZ_64M
32
33 #define CONFIG_STANDALONE_LOAD_ADDR     0x80200000
34
35 #define CONFIG_SYS_PCI_64BIT            1       /* enable 64-bit resources */
36
37 #define CONFIG_SYS_SCSI_MAX_SCSI_ID     4
38
39 /* Environment options */
40
41 #ifndef CONFIG_SPL_BUILD
42 #define BOOT_TARGET_DEVICES(func) \
43         func(NVME, nvme, 0) \
44         func(USB, usb, 0) \
45         func(MMC, mmc, 0) \
46         func(SCSI, scsi, 0) \
47         func(PXE, pxe, na) \
48         func(DHCP, dhcp, na)
49
50 #include <config_distro_bootcmd.h>
51
52 #define TYPE_GUID_LOADER1       "5B193300-FC78-40CD-8002-E86C45580B47"
53 #define TYPE_GUID_LOADER2       "2E54B353-1271-4842-806F-E436D6AF6985"
54 #define TYPE_GUID_SYSTEM        "0FC63DAF-8483-4772-8E79-3D69D8477DE4"
55
56 #define PARTS_DEFAULT \
57         "name=loader1,start=17K,size=1M,type=${type_guid_gpt_loader1};" \
58         "name=loader2,size=4MB,type=${type_guid_gpt_loader2};" \
59         "name=system,size=-,bootable,type=${type_guid_gpt_system};"
60
61 #define CONFIG_EXTRA_ENV_SETTINGS \
62         "kernel_addr_r=0x84000000\0" \
63         "fdt_addr_r=0x88000000\0" \
64         "scriptaddr=0x88100000\0" \
65         "pxefile_addr_r=0x88200000\0" \
66         "ramdisk_addr_r=0x88300000\0" \
67         "kernel_comp_addr_r=0x90000000\0" \
68         "kernel_comp_size=0x4000000\0" \
69         "type_guid_gpt_loader1=" TYPE_GUID_LOADER1 "\0" \
70         "type_guid_gpt_loader2=" TYPE_GUID_LOADER2 "\0" \
71         "type_guid_gpt_system=" TYPE_GUID_SYSTEM "\0" \
72         "partitions=" PARTS_DEFAULT "\0" \
73         "fdtfile=" CONFIG_DEFAULT_FDT_FILE "\0" \
74         BOOTENV
75
76 #define CONFIG_PREBOOT \
77         "setenv fdt_addr ${fdtcontroladdr};" \
78         "fdt addr ${fdtcontroladdr};"
79 #endif /* CONFIG_SPL_BUILD */
80
81 #define CONFIG_SYS_EEPROM_BUS_NUM               0
82
83 #endif /* __SIFIVE_UNMATCHED_H */