Tool/software: Linux
Previously I was using CMEM to create two 16M pools. When I go and change that to 128M I get an error when I try to load/start the DSP; see below. What can I do to make this work successfully?
[ 90.080869] remoteproc2: powering up 40800000.dsp
[ 90.085760] remoteproc2: Booting fw image dra7-dsp1-fw.xe66, size 16233880
[ 90.100167] omap_hwmod: mmu0_dsp1: _wait_target_disable failed
[ 90.106067] omap-iommu 40d01000.mmu: 40d01000.mmu: version 3.0
[ 90.111996] omap-iommu 40d02000.mmu: 40d02000.mmu: version 3.0
[ 90.118014] omap-rproc 40800000.dsp: dma_alloc_coherent err: 134217728
[ 90.124705] remoteproc2: Failed to process resources: -12
[ 90.137312] omap_hwmod: mmu1_dsp1: _wait_target_disable failed
[ 90.150247] omap_hwmod: mmu0_dsp1: _wait_target_disable failed
[ 90.156229] remoteproc2: rproc_boot() failed -12
[ 90.161225] virtio_rpmsg_bus: probe of virtio0 failed with error -12
[ 90.168642] remoteproc2: registered virtio0 (type 7)
CMEM Device Tree Allocation:
reserved-memory {
#address-cells = <2>;
#size-cells = <2>;
ranges;
/* 0xf000_0000 - 0xf7ffffff */
cmem_block_mem_0: cmem_block_mem@f0000000 {
reg = <0x0 0xf0000000 0x0 0x08000000>;
no-map;
status = "okay";
};
/* 0xf800_0000 - 0xffffffff */
cmem_block_mem_1: cmem_block_mem@f8000000 {
reg = <0x0 0xf8000000 0x0 0x08000000>;
no-map;
status = "okay";
};
};
cmem {
compatible = "ti,cmem";
#address-cells = <1>;
#size-cells = <0>;
#pool-size-cells = <2>;
status = "okay";
/* Pool 0 - DSP1's FPGA Buffer */
cmem_block_0: cmem_block@0 {
reg = <0>;
memory-region = <&cmem_block_mem_0>;
cmem-buf-pools = <1 0x0 0x08000000>;
};
/* Pool 1 - DSP2's FPGA Buffer */
cmem_block_1: cmem_block@1 {
reg = <1>;
memory-region = <&cmem_block_mem_1>;
cmem-buf-pools = <1 0x0 0x08000000>;
};
};
Kernel Commandline Addition:
memmap=128M$0xf0000000
memmap=128M$0xf8000000
CMEM Information:
-bash-4.3# cat /proc/cmem
Block 0: Pool 0: 1 bufs size 0x8000000 (0x8000000 requested)
Pool 0 busy bufs:
id 0: phys addr 0xf0000000 (noncached)
Pool 0 free bufs:
Pool -1 free bufs:
Block 1: Pool 0: 1 bufs size 0x8000000 (0x8000000 requested)
Pool 0 busy bufs:
id 0: phys addr 0xf8000000 (noncached)