dsp renderer unit test fails to setup the XAF renderer component on i.MX8QM-MEK

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

dsp renderer unit test fails to setup the XAF renderer component on i.MX8QM-MEK

994 Views
Dusan_Stojkovic
Contributor I

Hi,

We are trying to execute unit_tests from UG10167 i.MX DSP User's Guide - Rev. LF6.6.36_2.1.0, but we are facing difficulties. Namely, we've been able to download and compile the dsp_framework with tensilica toolchain. Booting up the hifi4.bin works as expected:

 

# echo start > /sys/class/remoteproc/remoteproc2/state
# dmesg
...
[ 2003.327475] remoteproc remoteproc2: powering up imx-dsp-rproc
[ 2003.328807] remoteproc remoteproc2: Booting fw image imx/dsp/hifi4.bin, size 881668
[ 2003.352398] rproc-virtio rproc-virtio.2.auto: assigned reserved memory node vdev0buffer@94300000
[ 2003.353925] virtio_rpmsg_bus virtio0: rpmsg host is online
[ 2003.353997] rproc-virtio rproc-virtio.2.auto: registered virtio0 (type 7)
[ 2003.354014] remoteproc remoteproc2: remote processor imx-dsp-rproc is now up
[ 2003.354255] virtio_rpmsg_bus virtio0: creating channel rpmsg-raw addr 0x1
[ 2003.354938] virtio_rpmsg_bus virtio0: creating channel rpmsg-raw addr 0x2

 

But attempting to execute the mp3 renderer test times out:

# /unit_tests/DSP/dsp_rend_test.out -f10 -itest.mp3
****************************************************************
Cadence Audio Framework (Hostless) : 'Decoder + Renderer'
Build: NON_XTENSA, RTOS: Linux, On: May  6 2026 13:02:32
Copyright (c) 2015-2020 Cadence Design Systems, Inc.
Lib Name        : Audio Framework (Hostless)
Lib Version     : 2.6
API Version     : 2.0
****************************************************************
Audio Device Ready
get samplerate 44100, channel 2, width 16
renderer_setup failed, Error code : -110

 

We've tried to enable DEBUG, but as per the DSP documentation that doesn't work for i.MX8QM-MEK. 
Another thing was that the memory allocation adderss for the HiFi4 firmawe was the same i.MX8 QuadXPlus and i.MX8 QuadMax MEK until this commit in linux-imx repository:
https://github.com/nxp-imx/linux-imx/commit/01440e5d67c873caccd06e0fc0498ddc70c0f15a 

Here, dsp node moved from:

  • dsp: dsp@596e8000 <- same as QuadXPlus
  • dsp: dsp@556e8000 <- changed after said commit

We were able to revert the dsp node to the previous address and boot the imx8qm-mek-rpmsg.dtb:

 

# find /sys/firmware/devicetree/base/ -name "*dsp*"
/sys/firmware/devicetree/base/bus@5d000000/mailbox@5d280000/fsl,dsp_ap_mu_id
/sys/firmware/devicetree/base/__symbols__/dsp_reserved_heap
/sys/firmware/devicetree/base/__symbols__/dsp_lpcg
/sys/firmware/devicetree/base/__symbols__/dsp_ram_lpcg
/sys/firmware/devicetree/base/__symbols__/dsp_vdev0vring1
/sys/firmware/devicetree/base/__symbols__/dsp_reserved
/sys/firmware/devicetree/base/__symbols__/dsp_vdev0buffer
/sys/firmware/devicetree/base/__symbols__/dsp
/sys/firmware/devicetree/base/__symbols__/vpu_subsys_dsp
/sys/firmware/devicetree/base/__symbols__/dsp_vdev0vring0
/sys/firmware/devicetree/base/reserved-memory/dsp_reserved_heap@93400000
/sys/firmware/devicetree/base/reserved-memory/dsp@92400000
/sys/firmware/devicetree/base/bus@59000000/dsp@596e8000

 

We did this since the tensilica toolchain linker data is configured for the i.MX8 QuadXPlus addresses. But this didn't help either, error stayed the same.

Both

gplay-1.0 test.mp3

as well as

aplay test.wav 

work once we've changed the output to be the 3.5mm jack.

 

Could it be that we are missing codec binaries?

# ls /usr/lib/imx-mm/audio-codec/dsp/
lib_aacd_wrap_dsp.so lib_dsp_voice_process_dummy.so lib_nbamrd_wrap_dsp.so lib_vorbisd_wrap_dsp.so.3
lib_aacd_wrap_dsp.so.3 lib_mp3d_wrap_dsp.so lib_nbamrd_wrap_dsp.so.1 lib_wbamrd_wrap_dsp.so
lib_mp3d_wrap_dsp.so.3 lib_vorbisd_wrap_dsp.so lib_wbamrd_wrap_dsp.so.1


Enabling XAF with audio rendering is a must-have for our use case, so any help would be appreciated.

 

Thanks,

Dusan

0 Kudos
Reply
4 Replies

964 Views
JorgeCas
NXP TechSupport
NXP TechSupport

Hello,

We not support playback and capturer on i.MX8QM & i.MX8QXP platform, this case only support for i.MX8MP.

Best regards.

0 Kudos
Reply

915 Views
Dusan_Stojkovic
Contributor I

Thanks for the quick reply.

 

Could you please specify why this is the case, is it something to do with the hardware, DSP firmware or unit test application?

 

Regards,

Dusan

0 Kudos
Reply

906 Views
JorgeCas
NXP TechSupport
NXP TechSupport

Hello,

According to internal team, i.MX8QM/i.MX8QXP boards were removed since needs additional configuration as occurs with i.MX8MP with a dedicated device tree.

Same issue as you reported.

Best regards.

0 Kudos
Reply

688 Views
Dusan_Stojkovic
Contributor I

Thanks for the info,

So I think I digged up the commit which removes this custom dts as you mentioned:
https://github.com/nxp-imx/linux-imx/commit/0ba5556c6fc3249a1973f57697d740ba0e4c3681 

And based on this created one with adjustments. It's attached. However, the issue still persists.

I would like to do some more digging in the DSP firmware but for some reason I can't enable debug from the firmware over UART. Here is my setup:

  1. Made a firmware for the particular kernel version with DEBUG=1 as per documentation with modified LPUART_BASE address to UART2.
  2. Added the UART2 (DBG) in DSP node
  3. There is this comment in the documentation:
    The debug information cannot print on the i.MX 8QuadMax board, because the UART is
    taken.
    So I updated the bootloader to imx-boot-imx8qmmek-sd.bin-flash_spl which allows the UART1,2 or 3 to be assigned to DSP node. Without it, the DSP node would not be parsed during boot.

Linux side the UART clocks are enabled and owned by the DSP node once the start command is echoed to the DSP over rproc. The behavior doesn't change, but there is no UART output.

How do I enable DSP Debug over UART, is it possible? Is the issue regarding the UART being taken due to the SCU firmware or something else? 

Thanks,

Dusan

 

0 Kudos
Reply
%3CLINGO-SUB%20id%3D%22lingo-sub-2361265%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3Edsp%20renderer%20unit%20test%20fails%20to%20setup%20the%20XAF%20renderer%20component%20on%20i.MX8QM-MEK%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2361265%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3EHi%2C%3C%2FP%3E%3CP%3EWe%20are%20trying%20to%20execute%20%3CEM%3Eunit_tests%26nbsp%3B%3C%2FEM%3Efrom%26nbsp%3BUG10167%20i.MX%20DSP%20User's%20Guide%20-%26nbsp%3BRev.%20LF6.6.36_2.1.0%2C%20but%20we%20are%20facing%20difficulties.%20Namely%2C%20we've%26nbsp%3Bbeen%20able%20to%20download%20and%20compile%20the%20dsp_framework%20with%20tensilica%20toolchain.%20Booting%20up%20the%20hifi4.bin%20works%20as%20expected%3A%3C%2FP%3E%3CBR%20%2F%3E%3CPRE%20class%3D%22lia-code-sample%20language-markup%22%3E%3CCODE%3E%23%20echo%20start%20%26gt%3B%20%2Fsys%2Fclass%2Fremoteproc%2Fremoteproc2%2Fstate%0A%23%20dmesg%0A...%0A%5B%202003.327475%5D%20remoteproc%20remoteproc2%3A%20powering%20up%20imx-dsp-rproc%0A%5B%202003.328807%5D%20remoteproc%20remoteproc2%3A%20Booting%20fw%20image%20imx%2Fdsp%2Fhifi4.bin%2C%20size%20881668%0A%5B%202003.352398%5D%20rproc-virtio%20rproc-virtio.2.auto%3A%20assigned%20reserved%20memory%20node%20vdev0buffer%4094300000%0A%5B%202003.353925%5D%20virtio_rpmsg_bus%20virtio0%3A%20rpmsg%20host%20is%20online%0A%5B%202003.353997%5D%20rproc-virtio%20rproc-virtio.2.auto%3A%20registered%20virtio0%20(type%207)%0A%5B%202003.354014%5D%20remoteproc%20remoteproc2%3A%20remote%20processor%20imx-dsp-rproc%20is%20now%20up%0A%5B%202003.354255%5D%20virtio_rpmsg_bus%20virtio0%3A%20creating%20channel%20rpmsg-raw%20addr%200x1%0A%5B%202003.354938%5D%20virtio_rpmsg_bus%20virtio0%3A%20creating%20channel%20rpmsg-raw%20addr%200x2%3C%2FCODE%3E%3C%2FPRE%3E%3CBR%20%2F%3E%3CP%3EBut%20attempting%20to%20execute%20the%20mp3%20renderer%20test%20times%20out%3A%3C%2FP%3E%3CPRE%20class%3D%22lia-code-sample%20language-markup%22%3E%3CCODE%3E%23%20%2Funit_tests%2FDSP%2Fdsp_rend_test.out%20-f10%20-itest.mp3%0A****************************************************************%0ACadence%20Audio%20Framework%20(Hostless)%20%3A%20'Decoder%20%2B%20Renderer'%0ABuild%3A%20NON_XTENSA%2C%20RTOS%3A%20Linux%2C%20On%3A%20May%20%206%202026%2013%3A02%3A32%0ACopyright%20(c)%202015-2020%20Cadence%20Design%20Systems%2C%20Inc.%0ALib%20Name%20%20%20%20%20%20%20%20%3A%20Audio%20Framework%20(Hostless)%0ALib%20Version%20%20%20%20%20%3A%202.6%0AAPI%20Version%20%20%20%20%20%3A%202.0%0A****************************************************************%0AAudio%20Device%20Ready%0Aget%20samplerate%2044100%2C%20channel%202%2C%20width%2016%0Arenderer_setup%20failed%2C%20Error%20code%20%3A%20-110%3C%2FCODE%3E%3C%2FPRE%3E%3CBR%20%2F%3E%3CP%3EWe've%20tried%20to%20enable%20DEBUG%2C%20but%20as%20per%20the%20DSP%20documentation%20that%20doesn't%20work%20for%20i.MX8QM-MEK.%26nbsp%3B%3CBR%20%2F%3EAnother%20thing%20was%20that%20the%20memory%20allocation%20adderss%20for%20the%20HiFi4%20firmawe%20was%20the%20same%20i.MX8%20QuadXPlus%20and%20i.MX8%20QuadMax%20MEK%20until%20this%20commit%20in%20linux-imx%20repository%3A%3CBR%20%2F%3E%3CA%20href%3D%22https%3A%2F%2Fgithub.com%2Fnxp-imx%2Flinux-imx%2Fcommit%2F01440e5d67c873caccd06e0fc0498ddc70c0f15a%22%20target%3D%22_blank%22%20rel%3D%22nofollow%20noopener%20noreferrer%22%3Ehttps%3A%2F%2Fgithub.com%2Fnxp-imx%2Flinux-imx%2Fcommit%2F01440e5d67c873caccd06e0fc0498ddc70c0f15a%3C%2FA%3E%26nbsp%3B%3CBR%20%2F%3E%3CBR%20%2F%3E%3C%2FP%3E%3CP%3EHere%2C%20dsp%20node%20moved%20from%3A%3C%2FP%3E%3CUL%3E%3CLI%3Edsp%3A%20dsp%40596e8000%20%26lt%3B-%20same%20as%20QuadXPlus%3C%2FLI%3E%3CLI%3Edsp%3A%20dsp%40556e8000%20%26lt%3B-%20changed%20after%20said%20commit%3C%2FLI%3E%3C%2FUL%3E%3CP%3EWe%20were%20able%20to%20revert%20the%20dsp%20node%20to%20the%20previous%20address%20and%20boot%20the%20%3CEM%3Eimx8qm-mek-rpmsg.dtb%3C%2FEM%3E%3A%3C%2FP%3E%3CBR%20%2F%3E%3CPRE%20class%3D%22lia-code-sample%20language-markup%22%3E%3CCODE%3E%23%20find%20%2Fsys%2Ffirmware%2Fdevicetree%2Fbase%2F%20-name%20%22*dsp*%22%0A%2Fsys%2Ffirmware%2Fdevicetree%2Fbase%2Fbus%405d000000%2Fmailbox%405d280000%2Ffsl%2Cdsp_ap_mu_id%0A%2Fsys%2Ffirmware%2Fdevicetree%2Fbase%2F__symbols__%2Fdsp_reserved_heap%0A%2Fsys%2Ffirmware%2Fdevicetree%2Fbase%2F__symbols__%2Fdsp_lpcg%0A%2Fsys%2Ffirmware%2Fdevicetree%2Fbase%2F__symbols__%2Fdsp_ram_lpcg%0A%2Fsys%2Ffirmware%2Fdevicetree%2Fbase%2F__symbols__%2Fdsp_vdev0vring1%0A%2Fsys%2Ffirmware%2Fdevicetree%2Fbase%2F__symbols__%2Fdsp_reserved%0A%2Fsys%2Ffirmware%2Fdevicetree%2Fbase%2F__symbols__%2Fdsp_vdev0buffer%0A%2Fsys%2Ffirmware%2Fdevicetree%2Fbase%2F__symbols__%2Fdsp%0A%2Fsys%2Ffirmware%2Fdevicetree%2Fbase%2F__symbols__%2Fvpu_subsys_dsp%0A%2Fsys%2Ffirmware%2Fdevicetree%2Fbase%2F__symbols__%2Fdsp_vdev0vring0%0A%2Fsys%2Ffirmware%2Fdevicetree%2Fbase%2Freserved-memory%2Fdsp_reserved_heap%4093400000%0A%2Fsys%2Ffirmware%2Fdevicetree%2Fbase%2Freserved-memory%2Fdsp%4092400000%0A%2Fsys%2Ffirmware%2Fdevicetree%2Fbase%2Fbus%4059000000%2Fdsp%40596e8000%3C%2FCODE%3E%3C%2FPRE%3E%3CBR%20%2F%3E%3CP%3EWe%20did%20this%20since%20the%20tensilica%20toolchain%20linker%20data%20is%20configured%20for%20the%26nbsp%3Bi.MX8%20QuadXPlus%20addresses.%20But%20this%20didn't%20help%20either%2C%20error%20stayed%20the%20same.%3C%2FP%3E%3CP%3EBoth%3C%2FP%3E%3CPRE%20class%3D%22lia-code-sample%20language-markup%22%3E%3CCODE%3Egplay-1.0%20test.mp3%3C%2FCODE%3E%3C%2FPRE%3E%3CP%3Eas%20well%20as%3C%2FP%3E%3CPRE%20class%3D%22lia-code-sample%20language-markup%22%3E%3CCODE%3Eaplay%20test.wav%20%3C%2FCODE%3E%3C%2FPRE%3E%3CP%3Ework%20once%20we've%20changed%20the%20output%20to%20be%20the%203.5mm%20jack.%3C%2FP%3E%3CBR%20%2F%3E%3CP%3ECould%20it%20be%20that%20we%20are%20missing%20codec%20binaries%3F%3C%2FP%3E%3CPRE%20class%3D%22lia-code-sample%20language-markup%22%3E%3CCODE%3E%23%20ls%20%2Fusr%2Flib%2Fimx-mm%2Faudio-codec%2Fdsp%2F%0Alib_aacd_wrap_dsp.so%20lib_dsp_voice_process_dummy.so%20lib_nbamrd_wrap_dsp.so%20lib_vorbisd_wrap_dsp.so.3%0Alib_aacd_wrap_dsp.so.3%20lib_mp3d_wrap_dsp.so%20lib_nbamrd_wrap_dsp.so.1%20lib_wbamrd_wrap_dsp.so%0Alib_mp3d_wrap_dsp.so.3%20lib_vorbisd_wrap_dsp.so%20lib_wbamrd_wrap_dsp.so.1%3C%2FCODE%3E%3C%2FPRE%3E%3CP%3E%3CBR%20%2F%3EEnabling%20XAF%20with%20audio%20rendering%20is%20a%20must-have%20for%20our%20use%20case%2C%20so%20any%20help%20would%20be%20appreciated.%3C%2FP%3E%3CBR%20%2F%3E%3CP%3EThanks%2C%3C%2FP%3E%3CP%3EDusan%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-LABS%20id%3D%22lingo-labs-2361265%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CLINGO-LABEL%3Ei.MX%208%20Family%20%7C%20i.MX%208QuadMax%20(8QM)%20%7C%208QuadPlus%3C%2FLINGO-LABEL%3E%3CLINGO-LABEL%3EMultimedia%3C%2FLINGO-LABEL%3E%3C%2FLINGO-LABS%3E%3CLINGO-SUB%20id%3D%22lingo-sub-2361341%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%20translate%3D%22no%22%3ERe%3A%20dsp%20renderer%20unit%20test%20fails%20to%20setup%20the%20XAF%20renderer%20component%20on%20i.MX8QM-MEK%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2361341%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3EHello%2C%3C%2FP%3E%0A%3CP%3EWe%20not%20support%20playback%20and%20capturer%20on%20i.MX8QM%20%26amp%3B%20i.MX8QXP%20platform%2C%26nbsp%3Bthis%20case%20only%20support%20for%20i.MX8MP.%3C%2FP%3E%0A%3CP%3EBest%20regards.%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-2362065%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%20translate%3D%22no%22%3ERe%3A%20dsp%20renderer%20unit%20test%20fails%20to%20setup%20the%20XAF%20renderer%20component%20on%20i.MX8QM-MEK%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2362065%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3EHello%2C%3C%2FP%3E%0A%3CP%3EAccording%20to%20internal%20team%2C%20i.MX8QM%2Fi.MX8QXP%20boards%20were%20removed%20since%20needs%20additional%20configuration%20as%20occurs%20with%20i.MX8MP%20with%20a%20dedicated%20device%20tree.%3C%2FP%3E%0A%3CP%3ESame%20issue%20as%20you%20reported.%3C%2FP%3E%0A%3CP%3EBest%20regards.%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-2362015%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%20translate%3D%22no%22%3ERe%3A%20dsp%20renderer%20unit%20test%20fails%20to%20setup%20the%20XAF%20renderer%20component%20on%20i.MX8QM-MEK%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2362015%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3EThanks%20for%20the%20quick%20reply.%3C%2FP%3E%3CBR%20%2F%3E%3CP%3ECould%20you%20please%20specify%20why%20this%20is%20the%20case%2C%20is%20it%20something%20to%20do%20with%20the%20hardware%2C%20DSP%20firmware%20or%20unit%20test%20application%3F%3C%2FP%3E%3CBR%20%2F%3E%3CP%3ERegards%2C%3C%2FP%3E%3CP%3EDusan%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-2366240%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%20translate%3D%22no%22%3ERe%3A%20dsp%20renderer%20unit%20test%20fails%20to%20setup%20the%20XAF%20renderer%20component%20on%20i.MX8QM-MEK%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2366240%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3EThanks%20for%20the%20info%2C%3C%2FP%3E%3CP%3ESo%20I%20think%20I%20digged%20up%20the%20commit%20which%20removes%20this%20custom%20dts%20as%20you%20mentioned%3A%3CBR%20%2F%3E%3CA%20href%3D%22https%3A%2F%2Fgithub.com%2Fnxp-imx%2Flinux-imx%2Fcommit%2F0ba5556c6fc3249a1973f57697d740ba0e4c3681%22%20target%3D%22_blank%22%20rel%3D%22nofollow%20noopener%20noreferrer%22%3Ehttps%3A%2F%2Fgithub.com%2Fnxp-imx%2Flinux-imx%2Fcommit%2F0ba5556c6fc3249a1973f57697d740ba0e4c3681%3C%2FA%3E%26nbsp%3B%3C%2FP%3E%3CP%3EAnd%20based%20on%20this%20created%20one%20with%20adjustments.%20It's%20attached.%20However%2C%20the%20issue%20still%20persists.%3C%2FP%3E%3CP%3EI%20would%20like%20to%20do%20some%20more%20digging%20in%20the%20DSP%20firmware%20but%20for%20some%20reason%20I%20can't%20enable%20debug%20from%20the%20firmware%20over%20UART.%20Here%20is%20my%20setup%3A%3C%2FP%3E%3COL%3E%3CLI%3EMade%20a%20firmware%20for%20the%20particular%20kernel%20version%20with%20%3CSTRONG%3EDEBUG%3D1%26nbsp%3B%3C%2FSTRONG%3Eas%20per%20documentation%20with%20modified%20LPUART_BASE%20address%20to%20UART2.%3C%2FLI%3E%3CLI%3EAdded%20the%20UART2%20(DBG)%20in%20DSP%20node%3C%2FLI%3E%3CLI%3EThere%20is%20this%20comment%20in%20the%20documentation%3A%3CBR%20%2F%3E%3CEM%3EThe%20debug%20information%20cannot%20print%20on%20the%20i.MX%208QuadMax%20board%2C%20because%20the%20UART%20is%3C%2FEM%3E%3CBR%20%2F%3E%3CEM%3Etaken.%3C%2FEM%3E%3CBR%20%2F%3ESo%20I%20updated%20the%20bootloader%20to%26nbsp%3B%3CEM%3Eimx-boot-imx8qmmek-sd.bin-flash_spl%26nbsp%3B%3C%2FEM%3Ewhich%20allows%20the%20UART1%2C2%20or%203%20to%20be%20assigned%20to%20DSP%20node.%20Without%20it%2C%20the%20DSP%20node%20would%20not%20be%20parsed%20during%20boot.%3C%2FLI%3E%3C%2FOL%3E%3CP%3ELinux%20side%20the%20UART%20clocks%20are%20enabled%20and%20owned%20by%20the%20DSP%20node%20once%20the%20start%20command%20is%20echoed%20to%20the%20DSP%20over%20rproc.%20The%20behavior%20doesn't%20change%2C%20but%20there%20is%20no%20UART%20output.%3C%2FP%3E%3CP%3EHow%20do%20I%20enable%20DSP%20Debug%20over%20UART%2C%20is%20it%20possible%3F%20Is%20the%20issue%20regarding%20the%20UART%20being%20taken%20due%20to%20the%20SCU%20firmware%20or%20something%20else%3F%26nbsp%3B%3C%2FP%3E%3CP%3EThanks%2C%3C%2FP%3E%3CP%3EDusan%3C%2FP%3E%3CBR%20%2F%3E%3C%2FLINGO-BODY%3E