hello,
i can load IPU2 firmware by bootlader and run very well, now i want to load DSP1 too,
but encounter an error of out memroy:
[TICK 00252] Trying to boot from MMC1
spl: loading remote core image dra7-ipu2-fw.xem4
[TICK 00260] spl_mmc_find_device: mmc_initialize cost 0
load_elf_image_phdr_rproc : found resource table
rsc: type 3
vdev rsc: id 7, dfeatures 1, cfg len 0, 2 vrings
vdev rsc: vring0: da 60000000, qsz 256, align 4096
alloc_mem(0x3000, 1): 99000000
vdev rsc: vring1: da 60004000, qsz 256, align 4096
alloc_mem(0x3000, 1): 99004000
vring buffer alloc_mem(0x40000, 6): 99040000
rsc: type 0
carveout rsc: da 0, pa 0, len 100000, flags 0
carveout mapped 0x0 to 0x99100000
rsc: type 0
carveout rsc: da a0440000, pa 0, len f0000, flags 0
carveout mapped 0xa0440000 to 0x99200000
rsc: type 0
carveout rsc: da 99000000, pa 0, len 1c00000, flags 0
carveout mapped 0x99000000 to 0x9b000000
rsc: type 2
trace rsc: da 0xa0440000, len 0x8000
rsc: type 1
devmem rsc: pa 0x99000000, da 0x60000000, len 0x100000
mapped devmem pa 0x99000000, da 0x60000000, len 0x100000
rsc: type 1
devmem rsc: pa 0x60000000, da 0xa0000000, len 0x100000
mapped devmem pa 0x60000000, da 0xa0000000, len 0x100000
rsc: type 1
devmem rsc: pa 0x70000000, da 0xb0000000, len 0x8000000
mapped devmem pa 0x70000000, da 0xb0000000, len 0x8000000
rsc: type 1
devmem rsc: pa 0x78000000, da 0xb8000000, len 0x8000000
mapped devmem pa 0x78000000, da 0xb8000000, len 0x8000000
rsc: type 1
devmem rsc: pa 0x40100000, da 0x60100000, len 0x1ff00000
mapped devmem pa 0x40100000, da 0x60100000, len 0x1ff00000
rsc: type 1
devmem rsc: pa 0x40000000, da 0x40000000, len 0x20000000
mapped devmem pa 0x40000000, da 0x40000000, len 0x20000000
rsc: type 1
devmem rsc: pa 0x54000000, da 0x74000000, len 0x1000000
mapped devmem pa 0x54000000, da 0x74000000, len 0x1000000
rsc: type 1
devmem rsc: pa 0x5a000000, da 0x5a000000, len 0x1000000
mapped devmem pa 0x5a000000, da 0x5a000000, len 0x1000000
rsc: type 1
devmem rsc: pa 0x5b000000, da 0x5b000000, len 0x1000000
mapped devmem pa 0x5b000000, da 0x5b000000, len 0x1000000
rsc: type 1
devmem rsc: pa 0xa0100000, da 0xa0100000, len 0x340000
mapped devmem pa 0xa0100000, da 0xa0100000, len 0x340000
rsc: type 1
devmem rsc: pa 0x84203000, da 0x84203000, len 0x7a00000
mapped devmem pa 0x84203000, da 0x84203000, len 0x7a00000
rsc: type 1
devmem rsc: pa 0x84000000, da 0x84000000, len 0x200000
mapped devmem pa 0x84000000, da 0x84000000, len 0x200000
rsc: type 1
devmem rsc: pa 0xa9000000, da 0xa9000000, len 0x4000000
mapped devmem pa 0xa9000000, da 0xa9000000, len 0x4000000
rsc: type 1
devmem rsc: pa 0xa6000000, da 0xa6000000, len 0x1000000
mapped devmem pa 0xa6000000, da 0xa6000000, len 0x1000000
rsc: type 1
devmem rsc: pa 0xa7000000, da 0xa7000000, len 0x800000
mapped devmem pa 0xa7000000, da 0xa7000000, len 0x800000
rsc: type 1
devmem rsc: pa 0xa7800000, da 0xa7800000, len 0x800000
mapped devmem pa 0xa7800000, da 0xa7800000, len 0x800000
Loading phdr 0 to 0x99100000 (68 bytes)
Loading phdr 1 to 0x99100400 (320 bytes)
Loading phdr 2 to 0x9b000000 (1280 bytes)
Loading phdr 3 to 0x9b000500 (1612666 bytes)
Loading phdr 4 to 0x9b800000 (0 bytes)
Loading phdr 5 to 0x9be9cca0 (1418998 bytes)
Loading phdr 6 to 0x9bffb398 (100 bytes)
Loading phdr 7 to 0x99200000 (0 bytes)
loading remote core IPU2 successful
spl: loading remote core image dra7-dsp1-fw.xe66
[TICK 00724] spl_mmc_find_device: mmc_initialize cost 0
load_elf_image_phdr_rproc : found resource table
rsc: type 3
vdev rsc: id 7, dfeatures 1, cfg len 0, 2 vrings
vdev rsc: vring0: da a0000000, qsz 256, align 4096
alloc_mem(0x3000, 1): a1000000
vdev rsc: vring1: da a0004000, qsz 256, align 4096
alloc_mem(0x3000, 1): a1004000
vring buffer alloc_mem(0x40000, 6): a1040000
rsc: type 0
carveout rsc: da a1000000, pa 0, len 200000, flags 0
carveout mapped 0xa1000000 to 0xa1200000
rsc: type 0
carveout rsc: da a1200000, pa 0, len 1800000, flags 0
failed to allocate carveout rsc: da a1200000, pa 0, len 1800000, flags 0
handle_resources failed: -12
load_elf_image_phdr returned error for core DSP1
Error loading remotecore DSP1!,Continuing with boot ...
[TICK 00872] spl_mmc_find_device: mmc_initialize cost 0
[TICK 00877] spl_mmc_load_image: mmc_init cost 0
spl: mmc boot mode: fs
[TICK 00914] spl_mmc_do_fs_boot: load u-boot.img err 0 cost 31
Jumping to U-Boot
loaded - jumping to U-Boot...
[TICK 00924] image entry point: 0x80800000
[TICK 00927] uboot init
[TICK 01020] serial cost 85
[TICK 01024] DRAM: 2 GiB
[TICK 01038] begin init r
[TICK 01060] initr_dm cost 10
MMC: OMAP SD/MMC: 0, OMAP SD/MMC: 1
you can see that IPU2 was loaded success, but DSP1 can not be loaded as out of memroy?
i use tool print_macros_for_mlo to dump the CMA pool of DSP1 form my DTS as following:
#define DRA7_RPROC_CMA_BASE_IPU2 0x99000000
#define DRA7_RPROC_CMA_BASE_DSP1 0xa1000000
#define DRA7_RPROC_CMA_SIZE_IPU2 0x05000000
#define DRA7_RPROC_CMA_SIZE_DSP1 0x02000000
reg = <0x0 0xa1000000 0x0 0x2000000>;
};
handle_resources failed: -12