1#include <config.h> 2 3#ifdef CONFIG_MACH_SUN50I_H6 4#define BL31_ADDR 0x104000 5#define SCP_ADDR 0x114000 6#elif defined(CONFIG_MACH_SUN50I_H616) 7#define BL31_ADDR 0x40000000 8#else 9#define BL31_ADDR 0x44000 10#define SCP_ADDR 0x50000 11#endif 12 13/ { 14 aliases { 15 mmc0 = &mmc0; 16 mmc1 = &mmc2; 17 }; 18 19 binman: binman { 20 multiple-images; 21 }; 22}; 23 24&binman { 25 u-boot-sunxi-with-spl { 26 filename = "u-boot-sunxi-with-spl.bin"; 27 pad-byte = <0xff>; 28 29 blob { 30 filename = "spl/sunxi-spl.bin"; 31 }; 32 33#ifdef CONFIG_ARM64 34 fit { 35 description = "Configuration to load ATF before U-Boot"; 36 #address-cells = <1>; 37 fit,fdt-list = "of-list"; 38 39 images { 40 uboot { 41 description = "U-Boot (64-bit)"; 42 type = "standalone"; 43 os = "u-boot"; 44 arch = "arm64"; 45 compression = "none"; 46 load = <CONFIG_SYS_TEXT_BASE>; 47 48 u-boot-nodtb { 49 }; 50 }; 51 52 atf { 53 description = "ARM Trusted Firmware"; 54 type = "firmware"; 55 os = "arm-trusted-firmware"; 56 arch = "arm64"; 57 compression = "none"; 58 load = <BL31_ADDR>; 59 entry = <BL31_ADDR>; 60 61 atf-bl31 { 62 filename = "bl31.bin"; 63 missing-msg = "atf-bl31-sunxi"; 64 }; 65 }; 66 67#ifndef CONFIG_MACH_SUN50I_H616 68 scp { 69 description = "SCP firmware"; 70 type = "firmware"; 71 arch = "or1k"; 72 compression = "none"; 73 load = <SCP_ADDR>; 74 75 scp { 76 filename = "scp.bin"; 77 missing-msg = "scp-sunxi"; 78 }; 79 }; 80#endif 81 82 @fdt-SEQ { 83 description = "NAME"; 84 type = "flat_dt"; 85 compression = "none"; 86 }; 87 }; 88 89 configurations { 90 default = "@config-DEFAULT-SEQ"; 91 92 @config-SEQ { 93 description = "NAME"; 94 firmware = "atf"; 95#ifdef CONFIG_MACH_SUN50I_H616 96 loadables = "uboot"; 97#else 98 loadables = "scp", "uboot"; 99#endif 100 fdt = "fdt-SEQ"; 101 }; 102 }; 103 }; 104#else 105 u-boot-img { 106 offset = <CONFIG_SPL_PAD_TO>; 107 }; 108#endif 109 }; 110}; 111