This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

AM5728: AAC codecs

Part Number: AM5728


I have got some audio codecs from this link: 

software-dl.ti.com/.../index_FDS.html

I also need AAC codec for C66 DSP on AM5728.

I try to use AAC codec for C674X DSP on DM8168 from DVR_RDK packages.

But I meet fatal error after processing almost 364 or 366 audio frame data(48KHz 1024 samples per-frame).

The error messages are like these:

[   65.765366] omap-iommu 40d01000.mmu: iommu fault: da 0xc46c0640 flags 0x0
[   65.830434]  remoteproc2: crash detected in 40800000.dsp: type mmufault
[   65.837091] omap-iommu 40d01000.mmu: 40d01000.mmu: errs:0x00000002 da:0xc46c0640 pgd:0xec893118 *pgd:px00000000
[   65.847678]  remoteproc2: handling crash #1 in 40800000.dsp
[   65.871506]  remoteproc2: recovering 40800000.dsp
[   65.906090] omap_hwmod: mmu1_dsp1: _wait_target_disable failed
SigNO 11 Segment Fault In TID 1079
backtrace size = 7 frame 0: ./encoder() [0x15f30]
frame 1: ./encoder() [0x16006]
frame 2: /lib/libc.so.6(+0x250a0) [0xb6a390a0]
frame 3: /usr/lib/libOpenCL.so.1(_ZN8MBoxMsgQ4readEPhPjS0_+0x5c) [0xb6d42fe8]
frame 4: /usr/lib/libOpenCL.so.1(_ZN4Coal9DSPDevice9mail_fromEv+0x30) [0xb6d2cc6c]
frame 5: /usr/lib/libOpenCL.so.1(_Z23handle_event_completionPN4Coal9DSPDeviceE+0xb4) [0xb6d30b48]
frame 6: /usr/lib/libOpenCL.so.1(_Z27dsp_worker_event_completionPv+0x98) [0xb6d31dc8]
[   65.919134] omap_hwmod: mmu0_dsp1: _wait_target_disable failed
[   66.041223]  remoteproc2: stopped remote processor 40800000.dsp
[   66.082194]  remoteproc2: powering up 40800000.dsp
[   66.087019]  remoteproc2: Booting fw image dra7-dsp1-fw.xe66, size 22103432
[   66.109575] omap_hwmod: mmu0_dsp1: _wait_target_disable failed
[   66.115471] omap-iommu 40d01000.mmu: 40d01000.mmu: version 3.0
[   66.121410] omap-iommu 40d02000.mmu: 40d02000.mmu: version 3.0
[   66.140877]  remoteproc2: remote processor 40800000.dsp is now up
[   66.147500] virtio_rpmsg_bus virtio6: rpmsg host is online
[   66.153269]  remoteproc2: registered virtio6 (type 7)
[   66.161234] virtio_rpmsg_bus virtio6: creating channel rpmsg-proto addr 0x3d
[   66.168510] omap-rproc 40800000.dsp: received echo reply from 40800000.dsp
[   76.168741] omap_hwmod: mmu1_dsp1: _wait_target_disable failed
[   76.182815] omap_hwmod: mmu0_dsp1: _wait_target_disable failed

If I just process 363 audio frames(48K 1024 samples per frame), there isn't any error and the result are correct.

I have no idea to find the root cause. Maybe it was something about DSP's stack or the AAC codec from DM8168 isn't suit for for am5728.

Any help will be appreciated.