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.

syslink failing when executing gstreamer pipelines

Other Parts Discussed in Thread: TUSB7340, PMP, TVP7002

Hello,

We are using a custom board with an DM8168 processor, Arago's software stack (Arago v2.6.37 kernel, Arago oe/bitbake and components from ti-ezsdk_dm816x-evm_5_05_01_04 and Graphics_SDK_4_08_00_01) and TI's gstreamer version 0.10.32.

When executing some gstramer pipelines the syslink kernel driver is failing consistently the second time we execute it and it doesn't work until you reboot the board.

To reproduce it just use the rootfs from ti-ezsdk_dm816x-evm_5_04_00_11 and run the first pipeline from http://processors.wiki.ti.com/index.php/DM81xx_Gstreamer_Pipelines. Hit Ctrl-C and then run the same pipeline again. The error we get is:

root@dm816x-evm:~# gst-launch -v filesrc location=sample.264 ! 'video/x-h264' !
h264parse access-unit=true ! omx_h264dec ! omx_scaler ! omx_ctrl display-mode=OM
X_DC_MODE_1080P_60 ! omx_videosink sync=false
Setting pipeline to PAUSED ...
Pipeline is PREROLLING ...
/GstPipeline:pipeline0/GstCapsFilter:capsfilter0.GstPad:src: caps = video/x-h264, framed=(boolean)false
/GstPipeline:pipeline0/GstH264Parse:h264parse0.GstPad:sink: caps = video/x-h264, framed=(boolean)false
/GstPipeline:pipeline0/GstH264Parse:h264parse0.GstPad:src: caps = video/x-h264, framed=(boolean)false, stream-format=(string)byte-stream, alignment=(string)au, width=(int)320, height=(int)240
/GstPipeline:pipeline0/GstOmxH264Dec:omxh264dec0.GstPad:sink: caps = video/x-h264, framed=(boolean)false, stream-format=(string)byte-stream, alignment=(string)au, width=(int)320, height=(int)240
/GstPipeline:pipeline0/GstOmxH264Dec:omxh264dec0.GstPad:sink: caps = video/x-h264, framed=(boolean)false, stream-format=(string)byte-stream, alignment=(string)au, width=(int)320, height=(int)240
/GstPipeline:pipeline0/GstOmxH264Dec:omxh264dec0.GstPad:src: caps = video/x-raw-yuv-strided, width=(int)320, height=(int)240, format=(fourcc)NV12, rowstride=(int)384, interlaced=(boolean)false, framerate=(fraction)0/1

(gst-launch-0.10:1464): GStreamer-CRITICAL **: _gst_util_uint64_scale_int: assertion `denom > 0' failed
/GstPipeline:pipeline0/GstOmxScaler:omxscaler0.GstPad:sink: caps = video/x-raw-yuv-strided, width=(int)320, height=(int)240, format=(fourcc)NV12, rowstride=(int)384, interlaced=(boolean)false, framerate=(fraction)0/1
/GstPipeline:pipeline0/GstOmxScaler:omxscaler0.GstPad:sink: caps = video/x-raw-yuv-strided, width=(int)320, height=(int)240, format=(fourcc)NV12, rowstride=(int)384, interlaced=(boolean)false, framerate=(fraction)0/1
/GstPipeline:pipeline0/GstOmxScaler:omxscaler0.GstPad:src: caps = video/x-raw-yuv, width=(int)320, height=(int)240, format=(fourcc)YUY2, framerate=(fraction)0/1, interlaced=(boolean)false
/GstPipeline:pipeline0/GstOmxBaseCtrl:omxbasectrl0.GstPad:src: caps = video/x-raw-yuv, width=(int)320, height=(int)240, format=(fourcc)YUY2, framerate=(fraction)0/1, interlaced=(boolean)false
/GstPipeline:pipeline0/GstOmxBaseCtrl:omxbasectrl0.GstPad:sink: caps = video/x-raw-yuv, width=(int)320, height=(int)240, format=(fourcc)YUY2, framerate=(fraction)0/1, interlaced=(boolean)false
/GstPipeline:pipeline0/GstOmxVideoSink:omxvideosink0.GstPad:sink: caps = video/x-raw-yuv, width=(int)320, height=(int)240, format=(fourcc)YUY2, framerate=(fraction)0/1, interlaced=(boolean)false
Pipeline is PREROLLED ...
Setting pipeline to PLAYING ...
New clock: GstSystemClock
Caught interrupt -- handling interrupt.
Interrupt: Stopping pipeline ...
Execution ended after 5241623148 ns.
Setting pipeline to PAUSED ...
Setting pipeline to READY ...
/GstPipeline:pipeline0/GstOmxVideoSink:omxvideosink0.GstPad:sink: caps = NULL
unrecoverable error: There were insufficient resources to perform the requested operation (0x80001000)
Recieved EOS event, press <CTRL+C> to terminate pipeline.
Recieved EOS event, press <CTRL+C> to terminate pipeline.
unrecoverable error: There were insufficient resources to perform the requested operation (0x80001000)
/GstPipeline:pipeline0/GstOmxBaseCtrl:omxbasectrl0.GstPad:src: caps = NULL
/GstPipeline:pipeline0/GstOmxBaseCtrl:omxbasectrl0.GstPad:sink: caps = NULL
/GstPipeline:pipeline0/GstOmxScaler:omxscaler0.GstPad:src: caps = NULL
/GstPipeline:pipeline0/GstOmxScaler:omxscaler0.GstPad:sink: caps = NULL
/GstPipeline:pipeline0/GstOmxH264Dec:omxh264dec0.GstPad:src: caps = NULL
/GstPipeline:pipeline0/GstOmxH264Dec:omxh264dec0.GstPad:sink: caps = NULL
Setting pipeline to NULL ...
Freeing pipeline ...
root@dm816x-evm:~# gst-launch -v filesrc location=sample.264 ! 'video/x-h264' !
h264parse access-unit=true ! omx_h264dec ! omx_scaler ! omx_ctrl display-mode=OM
X_DC_MODE_1080P_60 ! omx_videosink sync=false
Assertion at Line no: 419 in /home/javier/collabora/tpg/tools/ti-ezsdk_dm816x-evm_5_04_00_11/component-sources/syslink_2_10_03_20/packages/ti/syslink/utils/hlos/knl/Linux/../../../../../../ti/syslink/ipc/hlos/knl/Linux/MessageQDrv.c: (cargs.args.create.handle != NULL) : failed
Assertion at Line no: 419 in /home/javier/collabora/tpg/tools/ti-ezsdk_dm816x-evm_5_04_00_11/component-sources/syslink_2_10_03_20/packages/ti/syslink/utils/hlos/knl/Linux/../../../../../../ti/syslink/ipc/hlos/knl/Linux/MessageQDrv.c: (cargs.args.create.handle != NULL) : failed
Assertion at Line no: 419 in /home/javier/collabora/tpg/tools/ti-ezsdk_dm816x-evm_5_04_00_11/component-sources/syslink_2_10_03_20/packages/ti/syslink/utils/hlos/knl/Linux/../../../../../../ti/syslink/ipc/hlos/knl/Linux/MessageQDrv.c: (cargs.args.create.handle != NULL) : failed
Assertion at Line no: 1244 in /swcoe/sdk/cm/netra/arago-tmp/work/dm816x-evm-none-linux-gnueabi/ti-syslink-2_10_03_20-r4j/syslink_2_10_03_20/packages/ti/syslink/ipc/hlos/usr/MessageQ.c: (handle != NULL) : failed
Assertion at Line no: 700 in /swcoe/sdk/cm/netra/arago-tmp/work/dm816x-evm-none-linux-gnueabi/ti-syslink-2_10_03_20-r4j/syslink_2_10_03_20/packages/ti/syslink/ipc/hlos/usr/MessageQ.c: (queueId != MessageQ_INVALIDMESSAGEQ) : failed
ServiceMgr_prime: MessageQ_put failed: status = 0xfffffffe
Assertion at Line no: 1244 in /swcoe/sdk/cm/netra/arago-tmp/work/dm816x-evm-none-linux-gnueabi/ti-syslink-2_10_03_20-r4j/syslink_2_10_03_20/packages/ti/syslink/ipc/hlos/usr/MessageQ.c: (handle != NULL) : failed
Assertion at Line no: 700 in /swcoe/sdk/cm/netra/arago-tmp/work/dm816x-evm-none-linux-gnueabi/ti-syslink-2_10_03_20-r4j/syslink_2_10_03_20/packages/ti/syslink/ipc/hlos/usr/MessageQ.c: (queueId != MessageQ_INVALIDMESSAGEQ) : failed
ServiceMgr_prime: MessageQ_put failed: status = 0xfffffffe
Assertion at Line no: 1244 in /swcoe/sdk/cm/netra/arago-tmp/work/dm816x-evm-none-linux-gnueabi/ti-syslink-2_10_03_20-r4j/syslink_2_10_03_20/packages/ti/syslink/ipc/hlos/usr/MessageQ.c: (handle != NULL) : failed
Assertion at Line no: 700 in /swcoe/sdk/cm/netra/arago-tmp/work/dm816x-evm-none-linux-gnueabi/ti-syslink-2_10_03_20-r4j/syslink_2_10_03_20/packages/ti/syslink/ipc/hlos/usr/MessageQ.c: (queueId != MessageQ_INVALIDMESSAGEQ) : failed
ServiceMgr_prime: MessageQ_put failed: status = 0xfffffffe
Assertion at Line no: 1244 in /swcoe/sdk/cm/netra/arago-tmp/work/dm816x-evm-none-linux-gnueabi/ti-syslink-2_10_03_20-r4j/syslink_2_10_03_20/packages/ti/syslink/ipc/hlos/usr/MessageQ.c: (handle != NULL) : failed
Assertion at Line no: 700 in /swcoe/sdk/cm/netra/arago-tmp/work/dm816x-evm-none-linux-gnueabi/ti-syslink-2_10_03_20-r4j/syslink_2_10_03_20/packages/ti/syslink/ipc/hlos/usr/MessageQ.c: (queueId != MessageQ_INVALIDMESSAGEQ) : failed
ServiceMgr_prime: MessageQ_put failed: status = 0xfffffffe
Assertion at Line no: 1244 in /swcoe/sdk/cm/netra/arago-tmp/work/dm816x-evm-none-linux-gnueabi/ti-syslink-2_10_03_20-r4j/syslink_2_10_03_20/packages/ti/syslink/ipc/hlos/usr/MessageQ.c: (handle != NULL) : failed
Assertion at Line no: 700 in /swcoe/sdk/cm/netra/arago-tmp/work/dm816x-evm-none-linux-gnueabi/ti-syslink-2_10_03_20-r4j/syslink_2_10_03_20/packages/ti/syslink/ipc/hlos/usr/MessageQ.c: (queueId != MessageQ_INVALIDMESSAGEQ) : failed
ServiceMgr_prime: MessageQ_put failed: status = 0xfffffffe
Assertion at Line no: 1244 in /swcoe/sdk/cm/netra/arago-tmp/work/dm816x-evm-none-linux-gnueabi/ti-syslink-2_10_03_20-r4j/syslink_2_10_03_20/packages/ti/syslink/ipc/hlos/usr/MessageQ.c: (handle != NULL) : failed
Assertion at Line no: 766 in /swcoe/sdk/cm/netra/arago-tmp/work/dm816x-evm-none-linux-gnueabi/ti-syslink-2_10_03_20-r4j/syslink_2_10_03_20/packages/ti/syslink/ipc/hlos/usr/MessageQ.c: (handle != NULL) : failed
Caught SIGSEGV accessing address 0xe
Spinning. Please run 'gdb gst-launch 1476' to continue debugging, Ctrl-C to quit, or Ctrl-\ to dump core.
Assertion at Line no: 419 in /home/javier/collabora/tpg/tools/ti-ezsdk_dm816x-evm_5_04_00_11/component-sources/syslink_2_10_03_20/packages/ti/syslink/utils/hlos/knl/Linux/../../../../../../ti/syslink/ipc/hlos/knl/Linux/MessageQDrv.c: (cargs.args.create.handle != NULL) : failed
Assertion at Line no: 700 in /swcoe/sdk/cm/netra/arago-tmp/work/dm816x-evm-none-linux-gnueabi/ti-syslink-2_10_03_20-r4j/syslink_2_10_03_20/packages/ti/syslink/ipc/hlos/usr/MessageQ.c: (queueId != MessageQ_INVALIDMESSAGEQ) : failed
ServiceMgr_stop: MessageQ_put failed: status = 0xfffffffe

---------------------------------------

I did some debugging and found that the issue is that the syslink driver fails because is trying to add a value for an existing
key in a hash ti-ezsdk_dm816x-evm_5_04_00_11/component-sources/syslink_2_10_03_20/packages/ti/syslink/ipc/hlos/knl/NameServer.c line 1047
I added this debug info:

diff --git a/utils/hlos/knl/NameServer.c b/utils/hlos/knl/NameServer.c
index 6264ead..d50a318 100755
--- a/utils/hlos/knl/NameServer.c
+++ b/utils/hlos/knl/NameServer.c
@@ -1053,6 +1053,7 @@ NameServer_add (NameServer_Handle handle, String name, Ptr buf, 
                                              "NameServer_add",
                                              status,
                                              "duplicate entry found!");
+                       printk("%s debug: duplicate entry found for name %s\n", __func__, name);
                         break;
                     }
                 }

and I got => NameServer_add debug: duplicate entry found for name ServiceMgr_inMsgs

I don't know what this hash is about nor what ServiceMgr_inMsgs means but I guess the syslink driver is not cleaning all its data structures correctly or a check is missing to not try to insert the same value twice.

------------------------------------------------------------------

Here is our boot log:

U-Boot 2010.06 (Jul 19 2012 - 11:02:00)

dram_init
DRAM: 2 GiB
MMC: OMAP SD/MMC: 0
Using default environment

Hit any key to stop autoboot: 0
reading u-boot.bin

141024 bytes read
## Starting application at 0x80800000 ...


U-Boot 2010.06 (Jul 19 2012 - 11:02:47)

TI8168-GP rev 2.0

ARM clk: 987MHz
DDR clk: 531MHz

I2C: ready
dram_init
DRAM: 2 GiB
MMC: OMAP SD/MMC: 0
*** Warning - bad CRC or MMC, using default environment

:,;;:;:;;;;;;;;r;;:,;;:;:;;;;;;;;:,;;:;:;;;;;;;;:,;;:;:;;;;;;;;:;;;;;;;;:,;;:;:
;,;:::;;;;r;;;rssiSiS552X5252525259GX2X9hX9X9XX2325S55252i5:,;;:;:;;;;;;;;:,;;:
;:;;;;;;;rrssSsS52S22h52299GGAAMHMM#BBH#B#HMM#HMBA&&XX2255S2S5Si:,;;:;:;;;;;;;;
;:;;r;;rsrrriiXS5S329&A&MH#BMB#A&9XXA252GXiSXX39AAMMMBB&G22S5i2SSiiiisi:,;;:;:;
;;;;;r;rr2iisiih393HB#B#AA99i22irrrX3X52AGsisss2Xii2299HBMA&X2S5S5iSiisSsi:,;;:
r:r;rrsrsihXSi2&##MHB&Ahh3AGHGA9G9h&#H##@@@##MAMMXXX9SSS29&&HGGX2i5iisiiisisi:,
;;rrrrsSiiiA&ABH&A9GAGhAhBAMHA9HM@@@@@@@@@@@@@@@@@@@HHhAh2S2SX9&Gh22SSiisiiisii
r:rrssisiS2XM##&h3AGAX&3GG3Ssr5H@M#HM2; ;2X&&&MHMB###GBB#B&XXSSs529XX55iSsisisi
r;rsrisSi2XHAhX99A3XXG&&XS;:,rH#HGhAS @@@@3rs2XBM@@A552&&AHA2XiisSS252SSsisSs
r;issi5S22&&3iSSX292&hXsr;;:;h@&G339&S9@@@@2@MA&9&HB##Xris29ABMAAX2ir;rsSi5iss5
rrsSi2XhG&9GXh399&X99i;;;;;;r#H&293H9X#@@@@@@@B&9GhAH@XrrsrsiXABHB&HG2rr;rrSiSi
;:rsisS599&AA9XG&3A35r;:::;,;BMh&&2iX5A@@@@@@@&392X5GB2;;;r;iSX393A##A&Xi:::rsi
;:rss552222X553&XHMhir;;::,:,h#HhGSXhG3#@@@@#AXXS2XAHA;::;;;;ss55XShBA3239r:,;;
r;ii2S5SSi2i53hirsh2srr::,,,,;MMXX359&Ah3h&Si59SX99A#i:,::::;;sri2,.2r;:SGAr;,:
;:;rrrrssiriXGSi::shs;;;,,,:,,rBBA9h5s5h5iS5isi2SAHB5:,,,:::;rrs5&SrisSX5Srrr:,
;,r;;;;rsriSSrrrr;;5Xrr;;,:,,.,;9AA2SsisS5323XXXG9&i:.,,::;;r;;;srrrrrr;;:;::::
:,;r;r;rrissrrr;:;::;s;;;;,:,,..,r293h222hXXAAGGGX;:,,,:,:,::;:;::,:,,,,...,,,,
;,;;;;rrrrrrrrirr;,.,,:::::::,,,,.,;SX&ABAB2hhXir:,,.,,.,,:,,,,..,,,..,..,,,..:
:.:;:;;;:;;;;r;rrs;:.. ,,:::::,:,:,,.::rrsrr;;,,.......,..,....,,,,,,,...,.,,:,
:.:::,::::::;;r;rrr;:.......,.,.,,:::,,...............,,::.,,,,:,::,,:,:,,,:,;:
,.::,:,,,,,;;;;;;;;r;;::,..............................;;;:;::::,:::::::,:,:,,,
: ,,:,,,,,,,,,,,,,:;rrr;;:;,,,,,,,::,.,.:.,.,;s,:;;;;:;:;;;;;::::,:::,:::,:,:,:
,.,,,,,,,...,,.,,....................................:,............:,,,:,:,,,,,

Net: <ethaddr> not set. Reading from E-fuse
Detected MACID:40:5f:c2:38:87:ec
Ethernet PHY: GENERIC @ 0x01
DaVinci EMAC
Hit any key to stop autoboot: 0
reading boot.scr

305 bytes read
Running bootscript from MMC/SD to set the ENV...
## Executing script at 80900000
reading uImage

2413040 bytes read
## Booting kernel from Legacy Image at 80009000 ...
Image Name: Arago/2.6.37/tpgrambler
Image Type: ARM Linux Kernel Image (uncompressed)
Data Size: 2412976 Bytes = 2.3 MiB
Load Address: 80008000
Entry Point: 80008000
Verifying Checksum ... OK
Loading Kernel Image ... OK
OK

Starting kernel ...

Linux version 2.6.37 (javier@munra) (gcc version 4.3.3 (Sourcery G++ Lite 2009q1-203) ) #1 Tue Jul 17 15:23:36 UTC 2012
CPU: ARMv7 Processor [413fc082] revision 2 (ARMv7), cr=10c53c7f
CPU: VIPT nonaliasing data cache, VIPT aliasing instruction cache
Machine: tpg-rambler
reserved size = 52428800 at 0x0
FB: Reserving 52428800 bytes SDRAM for VRAM
Memory policy: ECC disabled, Data cache writeback
OMAP chip is TI8168 2.0
Built 1 zonelists in Zone order, mobility grouping on. Total pages: 161670
Kernel command line: console=ttyO2,115200n8 rootwait root=/dev/mmcblk0p2 rw mem=364M@0x80000000 mem=324M@0x9F900000 vmalloc=500M notifyk.vpssm3_sva=0xBF900000 ip=off earlyprink noinitrd
PID hash table entries: 2048 (order: 1, 8192 bytes)
Dentry cache hash table entries: 65536 (order: 6, 262144 bytes)
Inode-cache hash table entries: 32768 (order: 5, 131072 bytes)
Memory: 364MB 274MB = 638MB total
Memory: 642156k/642156k available, 62356k reserved, 280576K highmem
Virtual kernel memory layout:
vector : 0xffff0000 - 0xffff1000 ( 4 kB)
fixmap : 0xfff00000 - 0xfffe0000 ( 896 kB)
DMA : 0xffc00000 - 0xffe00000 ( 2 MB)
vmalloc : 0xd7000000 - 0xf8000000 ( 528 MB)
lowmem : 0xc0000000 - 0xd6c00000 ( 364 MB)
pkmap : 0xbfe00000 - 0xc0000000 ( 2 MB)
modules : 0xbf000000 - 0xbfe00000 ( 14 MB)
.init : 0xc0008000 - 0xc003a000 ( 200 kB)
.text : 0xc003a000 - 0xc0492000 (4448 kB)
.data : 0xc0492000 - 0xc04d6ec0 ( 276 kB)
SLUB: Genslabs=11, HWalign=64, Order=0-3, MinObjects=0, CPUs=1, Nodes=1
NR_IRQS:375
IRQ: Found an INTC at 0xfa200000 (revision 5.0) with 128 interrupts
Total of 128 interrupts on 1 active controller
GPMC revision 6.0
Trying to install interrupt handler for IRQ368
Trying to install interrupt handler for IRQ369
Trying to install interrupt handler for IRQ370
Trying to install interrupt handler for IRQ371
Trying to install interrupt handler for IRQ372
Trying to install interrupt handler for IRQ373
Trying to install interrupt handler for IRQ374
Trying to install type control for IRQ375
Trying to set irq flags for IRQ375
OMAP clockevent source: GPTIMER1 at 27000000 Hz
Console: colour dummy device 80x30
Calibrating delay loop... 986.31 BogoMIPS (lpj=4931584)
pid_max: default: 32768 minimum: 301
Security Framework initialized
Mount-cache hash table entries: 512
CPU: Testing write buffer coherency: ok
devtmpfs: initialized
omap_voltage_early_init: voltage driver support not added
regulator: core version 0.5
regulator: dummy:
NET: Registered protocol family 16
omap_voltage_domain_lookup: Voltage driver init not yet happened.Faulting!
omap_voltage_add_dev: VDD specified does not exist!
OMAP GPIO hardware version 0.1
OMAP GPIO hardware version 0.1
omap_mux_init: Add partition: #1: core, flags: 0
registered ti816x_gpio_vr device
registered ti816x_sr device
pm_dbg_init: only OMAP3 supported
registered ti81xx_vpss device
registered ti81xx_vidout device
registered ti81xx on-chip HDMI device
registered ti81xx_fb device
registered ti81xx_vin device
ti81xx_pcie: Invoking PCI BIOS...
ti81xx_pcie: Setting up Host Controller...
ti81xx_pcie: Register base mapped @0xd7020000
ti81xx_pcie: MSI info not available, disabled
ti81xx_pcie: Starting PCI scan...
PCI: bus0: Fast back to back transfers disabled
Fixup TUSB7340
PCI: bus1: Fast back to back transfers enabled
pci 0000:00:00.0: BAR 8: assigned [mem 0x20000000-0x200fffff]
pci 0000:01:00.0: BAR 0: assigned [mem 0x20000000-0x2000ffff 64bit]
pci 0000:01:00.0: BAR 0: set to [mem 0x20000000-0x2000ffff 64bit] (PCI address [0x20000000-0x2000ffff])
pci 0000:01:00.0: BAR 2: assigned [mem 0x20010000-0x20011fff 64bit]
pci 0000:01:00.0: BAR 2: set to [mem 0x20010000-0x20011fff 64bit] (PCI address [0x20010000-0x20011fff])
pci 0000:00:00.0: PCI bridge to [bus 01-01]
pci 0000:00:00.0: bridge window [io disabled]
pci 0000:00:00.0: bridge window [mem 0x20000000-0x200fffff]
pci 0000:00:00.0: bridge window [mem pref disabled]
PCI: enabling device 0000:00:00.0 (0140 -> 0143)
bio: create slab <bio-0> at 0
regulator: VFB: 800 <--> 1025 mV at 1010 mV
vgaarb: loaded
SCSI subsystem initialized
usbcore: registered new interface driver usbfs
usbcore: registered new interface driver hub
usbcore: registered new device driver usb
USBSS revision 4ea20809
registerd cppi-dma Intr @ IRQ 17
Cppi41 Init Done
omap_i2c omap_i2c.1: bus 1 rev4.0 at 100 kHz
omap_i2c omap_i2c.2: bus 2 rev4.0 at 100 kHz
Advanced Linux Sound Architecture Driver Version 1.0.23.
Switching to clocksource gp timer
musb-hdrc: version 6.0, otg (peripheral+host), debug=0
musb-hdrc musb-hdrc.0: dma type: dma-cppi41
MUSB controller-0 revision 4ea20800
musb-hdrc musb-hdrc.0: USB OTG mode controller at d701e000 using DMA, IRQ 18
musb-hdrc musb-hdrc.1: dma type: dma-cppi41
MUSB controller-1 revision 4ea20800
musb-hdrc musb-hdrc.1: USB OTG mode controller at d7026800 using DMA, IRQ 19
NET: Registered protocol family 2
IP route cache hash table entries: 16384 (order: 4, 65536 bytes)
TCP established hash table entries: 65536 (order: 7, 524288 bytes)
TCP bind hash table entries: 65536 (order: 6, 262144 bytes)
TCP: Hash tables configured (established 65536 bind 65536)
TCP reno registered
UDP hash table entries: 256 (order: 0, 4096 bytes)
UDP-Lite hash table entries: 256 (order: 0, 4096 bytes)
NET: Registered protocol family 1
RPC: Registered udp transport module.
RPC: Registered tcp transport module.
RPC: Registered tcp NFSv4.1 backchannel transport module.
NetWinder Floating Point Emulator V0.97 (double precision)
PMU: registered new PMU device of type 0
omap-iommu omap-iommu.0: ducati registered
omap-iommu omap-iommu.1: sys registered
highmem bounce pool size: 64 pages
JFFS2 version 2.2. (NAND) © 2001-2006 Red Hat, Inc.
msgmni has been set to 706
io scheduler noop registered
io scheduler deadline registered
io scheduler cfq registered (default)
Serial: 8250/16550 driver, 4 ports, IRQ sharing enabled
omap_uart.0: ttyO0 at MMIO 0x48020000 (irq = 72) is a OMAP UART0
omap_uart.1: ttyO1 at MMIO 0x48022000 (irq = 73) is a OMAP UART1
omap_uart.2: ttyO2 at MMIO 0x48024000 (irq = 74) is a OMAP UART2
console [ttyO2] enabled
brd: module loaded
loop: module loaded
m25p80 spi1.0: sst25vf032b (4096 Kbytes)
Creating 4 MTD partitions on "spi_flash":
0x000000000000-0x000000040000 : "U-Boot"
0x000000040000-0x000000042000 : "U-Boot Env"
0x000000042000-0x0000002c2000 : "Kernel"
0x0000002c2000-0x000000400000 : "File System"
davinci_mdio davinci_mdio.0: davinci mdio revision 1.6
davinci_mdio davinci_mdio.0: detected phy mask fffffff5
Fixup phy 0:01
Fixup phy 0:03
davinci_mdio.0: probed
davinci_mdio davinci_mdio.0: phy[1]: device 0:01, driver unknown
davinci_mdio davinci_mdio.0: phy[3]: device 0:03, driver unknown
usbcore: registered new interface driver cdc_ether
usbcore: registered new interface driver dm9601
Initializing USB Mass Storage driver...
usbcore: registered new interface driver usb-storage
USB Mass Storage support registered.
mice: PS/2 mouse device common for all mice
omap_rtc omap_rtc: rtc core: registered omap_rtc as rtc0
i2c /dev entries driver
Linux video capture interface: v2.00
usbcore: registered new interface driver uvcvideo
USB Video Class driver (v1.0.0)
OMAP Watchdog Timer Rev 0x00: initial timeout 60 sec
usbcore: registered new interface driver usbhid
usbhid: USB HID core driver
notify_init : notify drivercreated for remote proc id 2 at physical Address 0xbf900000
usbcore: registered new interface driver snd-usb-audio
asoc: tlv320aic3x-hifi <-> davinci-mcasp.2 mapping ok
ALSA device list:
#0: TPG Rambler
TCP cubic registered
NET: Registered protocol family 17
VFP support v0.3: implementor 41 architecture 3 part 30 variant c rev 3
omap_voltage_late_init: Voltage driver support not added
Power Management for TI81XX.
smartreflex smartreflex: Driver initialized
omap_rtc omap_rtc: setting system clock to 2000-01-01 00:00:01 UTC (946684801)
Waiting for root device /dev/mmcblk0p2...
mmc0: new SDHC card at address e624
mmcblk0: mmc0:e624 SD08G 7.40 GiB
mmcblk0: p1 p2 p3
EXT3-fs: barriers not enabled
kjournald starting. Commit interval 5 seconds
EXT3-fs (mmcblk0p2): warning: maximal mount count reached, running e2fsck is recommended
EXT3-fs (mmcblk0p2): using internal journal
EXT3-fs (mmcblk0p2): mounted filesystem with writeback data mode
VFS: Mounted root (ext3 filesystem) on device 179:2.
devtmpfs: mounted
Freeing init memory: 200K
INIT: version 2.86 booting
Error opening /dev/fb0: No such file or directory
Please wait: booting...
Starting udev
udevd (64): /proc/64/oom_adj is deprecated, please use /proc/64/oom_score_adj instead.
ahci ahci.0: forcing PORTS_IMPL to 0x3
ahci ahci.0: AHCI 0001.0100 32 slots 2 ports 3 Gbps 0x3 impl platform mode
ahci ahci.0: flags: ncq sntf pm led clo only pmp pio slum part ccc
PCI: enabling device 0000:01:00.0 (0000 -> 0002)
xhci_hcd 0000:01:00.0: xHCI Host Controller
xhci_hcd 0000:01:00.0: new USB bus registered, assigned bus number 1
xhci_hcd 0000:01:00.0: irq 48, io mem 0x20000000
xhci_hcd 0000:01:00.0: Failed to enable MSI-X
xhci_hcd 0000:01:00.0: failed to allocate MSI entry
usb usb1: No SuperSpeed endpoint companion for config 1 interface 0 altsetting 0 ep 129: using minimum values
usb usb1: New USB device found, idVendor=1d6b, idProduct=0003
usb usb1: New USB device strings: Mfr=3, Product=2, SerialNumber=1
usb usb1: Product: xHCI Host Controller
usb usb1: Manufacturer: Linux 2.6.37 xhci_hcd
usb usb1: SerialNumber: 0000:01:00.0
hub 1-0:1.0: USB hub found
hub 1-0:1.0: 8 ports detected
scsi0 : ahci_platform
scsi1 : ahci_platform
ata1: SATA max UDMA/133 mmio [mem 0x4a140000-0x4a150fff] port 0x100 irq 16
ata2: SATA max UDMA/133 mmio [mem 0x4a140000-0x4a150fff] port 0x180 irq 16
usb 1-1: new high speed USB device using xhci_hcd and address 2
usb 1-1: New USB device found, idVendor=0424, idProduct=2517
usb 1-1: New USB device strings: Mfr=0, Product=0, SerialNumber=0
usb 1-1: ep 0x81 - rounding interval to 2048 microframes
hub 1-1:1.0: USB hub found
xhci_hcd 0000:01:00.0: WARN: short transfer on control ep
hub 1-1:1.0: 7 ports detected
usb 1-1: ep 0x81 - rounding interval to 2048 microframes
ata1: SATA link down (SStatus 0 SControl 300)
ata2: SATA link down (SStatus 0 SControl 300)
usb 1-1.4: new full speed USB device using xhci_hcd and address 3
xhci_hcd 0000:01:00.0: WARN: Stalled endpoint
xhci_hcd 0000:01:00.0: WARN: Stalled endpoint
xhci_hcd 0000:01:00.0: WARN: Stalled endpoint
usb 1-1.4: New USB device found, idVendor=04e2, idProduct=1414
usb 1-1.4: New USB device strings: Mfr=0, Product=0, SerialNumber=0
usb 1-1.5: new full speed USB device using xhci_hcd and address 4
xhci_hcd 0000:01:00.0: WARN: Stalled endpoint
xhci_hcd 0000:01:00.0: WARN: Stalled endpoint
xhci_hcd 0000:01:00.0: WARN: Stalled endpoint
usb 1-1.5: New USB device found, idVendor=04e2, idProduct=1414
usb 1-1.5: New USB device strings: Mfr=0, Product=0, SerialNumber=0
usb 1-1.6: new full speed USB device using xhci_hcd and address 5
xhci_hcd 0000:01:00.0: WARN: Stalled endpoint
xhci_hcd 0000:01:00.0: WARN: Stalled endpoint
xhci_hcd 0000:01:00.0: WARN: Stalled endpoint
usb 1-1.6: New USB device found, idVendor=04e2, idProduct=1414
usb 1-1.6: New USB device strings: Mfr=0, Product=0, SerialNumber=0
usb 1-1.7: new full speed USB device using xhci_hcd and address 6
xhci_hcd 0000:01:00.0: WARN: Stalled endpoint
xhci_hcd 0000:01:00.0: WARN: Stalled endpoint
xhci_hcd 0000:01:00.0: WARN: Stalled endpoint
usb 1-1.7: New USB device found, idVendor=04e2, idProduct=1414
usb 1-1.7: New USB device strings: Mfr=0, Product=0, SerialNumber=0
Remounting root file system...
Caching udev devnodes
NET: Registered protocol family 10
ALSA: Restoring mixer settings...
Configuring network interfaces... Fixup phy 0:01
davinci_mdio davinci_mdio.0: resetting idled controller
net eth0: attached PHY driver [Generic PHY] (mii_bus:phy_addr=0:01, id=282f014)
ADDRCONF(NETDEV_UP): eth0: link is not ready
udhcpc (v1.13.2) started
Sending discover...
Sending discover...
Sending discover...
No lease, forking to background
done.
Setting up IP spoofing protection: rp_filter.
Tue May 1 14:17:00 UTC 2012
INIT: Entering runlevel: 5
Loading HDVICP2 Firmware
DM816X prcm_config_app version: 2.0.0.1
Doing PRCM settings...
PRCM for IVHD0 is in Progress, Please wait.....
BW Phy Addr : 0x48180600 Data : 0x00000002
AW Phy Addr : 0x48180600 Data : 0x00000002
Phy Addr : 0x48180c04 Data : 0x00000037
BW Phy Addr : 0x48180620 Data : 0x00070000
AW Phy Addr : 0x48180620 Data : 0x00070002
BW Phy Addr : 0x48180624 Data : 0x00030000
AW Phy Addr : 0x48180624 Data : 0x00010002
Phy Addr : 0x48180600 Data : 0x00000102
BW Phy Addr : 0x48180c10 Data : 0x00000007
AW Phy Addr : 0x48180c10 Data : 0x00000003
Phy Addr : 0x48180c14 Data : 0x00000004
BW Phy Addr : 0x58088000 Data : 0xea00107d
AW Phy Addr : 0x58088000 Data : 0xeafffffe
BW Phy Addr : 0x58098000 Data : 0xea00115a
AW Phy Addr : 0x58098000 Data : 0xeafffffe
BW Phy Addr : 0x48180c10 Data : 0x00000003
AW Phy Addr : 0x48180c10 Data : 0x00000000
Phy Addr : 0x48180c14 Data : 0x00000007
PRCM for IVHD0 is Done Successfully
PRCM for IVHD1 is in Progress, Please wait.....
BW Phy Addr : 0x48180700 Data : 0x00000002
AW Phy Addr : 0x48180700 Data : 0x00000002
Phy Addr : 0x48180d04 Data : 0x00000037
BW Phy Addr : 0x48180720 Data : 0x00070000
AW Phy Addr : 0x48180720 Data : 0x00050002
BW Phy Addr : 0x48180724 Data : 0x00030000
AW Phy Addr : 0x48180724 Data : 0x00010002
Phy Addr : 0x48180700 Data : 0x00000102
BW Phy Addr : 0x48180d10 Data : 0x00000007
AW Phy Addr : 0x48180d10 Data : 0x00000003
Phy Addr : 0x48180d14 Data : 0x00000004
BW Phy Addr : 0x5a088000 Data : 0xeafffffe
AW Phy Addr : 0x5a088000 Data : 0xeafffffe
BW Phy Addr : 0x5a098000 Data : 0xeafffffe
AW Phy Addr : 0x5a098000 Data : 0xeafffffe
BW Phy Addr : 0x48180d10 Data : 0x00000003
AW Phy Addr : 0x48180d10 Data : 0x00000000
Phy Addr : 0x48180d14 Data : 0x00000007
PRCM for IVHD1 is Done Successfully
PRCM for IVHD2 is in Progress, Please wait.....
BW Phy Addr : 0x48180800 Data : 0x00000002
AW Phy Addr : 0x48180800 Data : 0x00000002
Phy Addr : 0x48180e04 Data : 0x00000037
BW Phy Addr : 0x48180820 Data : 0x00070000
AW Phy Addr : 0x48180820 Data : 0x00050002
BW Phy Addr : 0x48180824 Data : 0x00030000
AW Phy Addr : 0x48180824 Data : 0x00010002
Phy Addr : 0x48180800 Data : 0x00000102
BW Phy Addr : 0x48180e10 Data : 0x00000007
AW Phy Addr : 0x48180e10 Data : 0x00000003
Phy Addr : 0x48180e14 Data : 0x00000004
BW Phy Addr : 0x53088000 Data : 0xeafffffe
AW Phy Addr : 0x53088000 Data : 0xeafffffe
BW Phy Addr : 0x53098000 Data : 0xeafffffe
AW Phy Addr : 0x53098000 Data : 0xeafffffe
BW Phy Addr : 0x48180e10 Data : 0x00000003
AW Phy Addr : 0x48180e10 Data : 0x00000000
Phy Addr : 0x48180e14 Data : 0x00000007
PRCM for IVHD2 is Done Successfully
PRCM Initialization completed
SysLink version : 2.10.03.20
SysLink module created on Date:Jul 9 2012 Time:11:52:34
FIRMWARE: I2cInit will be done by M3
FIRMWARE: Memory map bin file not passed
Usage : firmware_loader <Processor Id> <Location of Firmware> <start|stop> [-mmap <memory_map_file>] [-i2c <0|1>]
===Mandatory arguments===
<Processor Id> 0: DSP, 1: Video-M3, 2: Vpss-M3
<Location of Firmware> firmware binary file
<start|stop> to start/stop the firmware
===Optional arguments===
-mmap input memory map bin file name
-i2c 0: i2c init not done by M3, 1(default): i2c init done by M3
FIRMWARE: isI2cInitRequiredOnM3: 1
FIRMWARE: Default memory configuration is used
MemCfg: DCMM (Dynamically Configurable Memory Map) Version : 2.1.2.1
FIRMWARE: Memory Configuration status : In Progress
FIRMWARE: 1 start Successful
Loading HDVPSS (V4L2) Firmware
FIRMWARE: Memory map bin file not passed
Usage : firmware_loader <Processor Id> <Location of Firmware> <start|stop> [-mmap <memory_map_file>] [-i2c <0|1>]
===Mandatory arguments===
<Processor Id> 0: DSP, 1: Video-M3, 2: Vpss-M3
<Location of Firmware> firmware binary file
<start|stop> to start/stop the firmware
===Optional arguments===
-mmap input memory map bin file name
-i2c 0: i2c init not done by M3, 1(default): i2c init done by M3
FIRMWARE: isI2cInitRequiredOnM3: 0
FIRMWARE: Default memory configuration is used
MemCfg: DCMM (Dynamically Configurable Memory Map) Version : 2.1.2.1
FIRMWARE: Memory Configuration status : In Progress
FIRMWARE: 2 start Successful
tvp7002 2-005d: tvp7002 found @ 0x5d (OMAP I2C adapter)
tvp7002 2-005d: Rev. 02 detected.
ti81xxvin ti81xxvin: registered sub device tvp7002
sii1161 2-003b: sii1161 found @ 0x3b (OMAP I2C adapter)
ti81xxvin ti81xxvin: registered sub device sii1161
ti81xxvin ti81xxvin: TI81xx HDVPSS Capture driver initialized
HDMI W1 rev 2.0
Starting system message bus: dbus.
Starting telnet daemon.
Starting syslogd/klogd: done
Starting thttpd.
Starting PVR
Usage: insmod filename [args]
FATAL: Module omaplfb not found.
FATAL: Module bufferclass_ti not found.
BusyBox v1.13.2 (2012-04-29 22:45:10 IST) multi-call binary

Usage: mknod [OPTIONS] NAME TYPE MAJOR MINOR

Create a special file (block, character, or pipe)

Options:
-m Create the special file using the specified mode (default a=rw)
TYPEs include:
b: Make a block device
c or u: Make a character device
p: Make a named pipe (MAJOR and MINOR are ignored)

chmod: /dev/pvrsrvkm: No such file or directory

_____ _____ _ _
| _ |___ ___ ___ ___ | _ |___ ___ |_|___ ___| |_
| | _| .'| . | . | | __| _| . | | | -_| _| _|
|__|__|_| |__,|_ |___| |__| |_| |___|_| |___|___|_|
|___| |___|

Arago Project http://arago-project.org dm816x-evm ttyO2

Arago 2011.09 dm816x-evm ttyO2

dm816x-evm login:

----------------------------

Thanks a lot and best regards,

Javier

  • I've found a workaround to make syslink stop failing but is not a proper fix just a hack

    If we don't report the error (i.e: don't set status = NameServer_E_INVALIDARG but leave it as status = NameServer_S_SUCCESS) and mark the hash entry as found, then the error is gone and the pipelines works.

    This is the patch I've applied to syslink driver:

    diff --git a/component-sources/syslink_2_10_03_20/packages/ti/syslink/utils/hlos/knl/NameServer.c b/component-sources/syslink_2_10_03_20/packages/ti/syslink/utils/hlos/knl/NameServer.c
    index 94f289c..635e79a 100755
    --- a/component-sources/syslink_2_10_03_20/packages/ti/syslink/utils/hlos/knl/NameServer.c
    +++ b/component-sources/syslink_2_10_03_20/packages/ti/syslink/utils/hlos/knl/NameServer.c
    @@ -1047,13 +1047,13 @@ NameServer_add (NameServer_Handle handle, String name, Ptr buf, UInt len)
                     if (String_cmp (((NameServer_TableEntry *)node)->name,
                                     name) == 0){
                         if (handle->params.checkExisting == TRUE) {
    -                        status = NameServer_E_INVALIDARG;
    +//                        status = NameServer_E_INVALIDARG;
                             GT_setFailureReason (curTrace,
                                                  GT_4CLASS,
                                                  "NameServer_add",
                                                  status,
                                                  "duplicate entry found!");
    +                        found = TRUE;
                             break;
                         }
                     }
    
    
    But I don't understand the side effect of that change since I didn't have time to study the syslink driver in detail and it is very big.
    Hope it helps,
    Javier
  • I noticed this in the documention for the NameServer API, and I am wondering if it might be relevant for your use case:-

    Ptr NameServer_add ( NameServer_Handle  handle,
    String  name,
    Ptr  buf,
    UInt32  len 
    )

    Adds a variable length value into the local NameServer table.

    This function adds a variable length value into the local table. If the NameServer_Params::checkExisting flag was true on creation, this function searches the table to make sure the name does not already exist. If it does, the name/value pair is not added and the NameServer_E...


    Maybe this check just needs to be turned off ?!

  • Is this the proper fix?  Why is it that it fails the second time ran?