IPC on B4860QDS faild to load SDOS image "error in init_hugetlb frm pre_load_B4"

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

IPC on B4860QDS faild to load SDOS image "error in init_hugetlb frm pre_load_B4"

995 Views
dotuan
Contributor I

Dear,

I try using IPC between PA and DSP on B4860QDS.

i'am using Freescale QoriQ SDK 1.6

and setup follow the IPC instruction in the QoriQ-SDK-1.6-IC-RevB.pdf (9.9 and 9.10)

Thank for held

root@b4860qds:/ipc# ./dsp_bt -h 1 -c 0 -i c0.bin

===B4860QDS DSP boot Application (3.0.0) ===

SYSTEM MAP

DSP PrivArea: Addr=80000000 Size=7ff00000

Shared CtrlArea: Addr=fff00000 Size=100000

DSP Core0 M2: Addr=0 Size=0

DSP Core1 M2: Addr=0 Size=0

DSP M3: Addr=c40000000 Size=8000

PA CCSRBAR: Addr =ffe000000 Size=1000000

DSP CCSRBAR: Addr =ffe000000 Size=1000000

shmget: Cannot allocate memory

error in init_hugetlb frm pre_load_B4

0 Kudos
3 Replies

631 Views
lunminliang
NXP Employee
NXP Employee

Hi,

What SDOS image are you using?

Can you please try the image in SDK1.6 to check if it's IPC or DSP image problem?

The image is under the path as below:

freescale@freescale-sdk:~/SDK/QorIQ-SDK-V1.6-20140619-yocto/meta-fsl-networking/recipes-bsp/ipc/sdos-demo-1.0$ ls

sdos-demo_1.0.tar.gz

You could also refer to the similar thread  IPC and DSP boot Application in Linux SDK v1.5


Have a great day,
Lunmin

-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------

0 Kudos

631 Views
bassemscander
Contributor I

Any resolution on this?

I'm using the SDK v1.8 and running into a similar problem if not the same. I followed all the instructions specified in the Info center pdf. Here is what I'm doing, please let me know if I'm missing something.

uboot args:

bootm_size=0x70000000

othbootargs=default_hugepagesz=256m hugepagesz=256m hugepages=1 rapidio.hdid=1,-1

I rebuilt the kernel to disable the the DMA Engine support and enabled the Freescale DMA support as indicated in the info center pdf.

Here is the output from my board

b4860qds login: root

root@b4860qds:~# insmod /usr/driver/IPC/single_rat/hetmgr.ko

[   37.747732] Het Mgr 248 0

[   37.750378] IPC: dsp_shared_size - 0x1000000

[   37.754659] IPC: dsp_private_addr - 0x80000000

[   37.759115] IPC: dsp_private_size - 0x7ff00000

[   37.763570] IPC: shared_ctrl_addr - 0xfff00000

[   37.768024] IPC: shared_ctrl_size - 0x100000

[   37.772756] IPC: max_num_ipc_channels  64

[   37.776778] IPC: max_channel_depth  16

root@b4860qds:~# insmod /usr/driver/IPC/single_rat/shm.ko

[   42.809952] fsl_shm module installed successfully withmajor num : 247

root@b4860qds:~# insmod /usr/driver/IPC/single_rat/l1d.ko

[   47.801536] fsl_l1d Major=246 Minor=0

root@b4860qds:~# mknod /dev/fsl_shm c 247 0

root@b4860qds:~# mknod /dev/het_mgr c 248 0

root@b4860qds:~# mknod /dev/fsl_l1d c 246 0

root@b4860qds:~# echo 0x10000000 > /proc/sys/kernel/shmmax

root@b4860qds:~# cd /ipc

root@b4860qds:/ipc# ./dsp_bt -h 0 -c 0 -i ipc_demo_b4860_singlemode_sc0.bin

===B4860QDS DSP boot Application (3.0.0) ===

SYSTEM MAP

DSP [   72.438862] in func fsl_shm_get_paddr ret = (-14)

PrivArea: Addr=80000000 Size=7ff00000

Shared CtrlArea: Addr=fff00000 Size=100000

DSP Core0 M2: Addr=0 Size=0

DSP Core1 M2: Addr=0 Size=0

DSP M3: Addr=c40000000 Size=8000

PA CCSRBAR: Addr =ffe000000 Size=1000000

DSP CCSRBAR: Addr =ffe000000 Size=1000000

error in init_hugetlb frm pre_load_B4

root@b4860qds:/ipc#

0 Kudos

631 Views
bassemscander
Contributor I

Figured out the issue...

dsp_bt must be built using the 32bit toolchain not 64bit. The kernel and the 3 kernel modules will need to be in 64bit.... very inconvenient 

0 Kudos