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.

Bringing EZSDK 5.02.02.60 prebuild binaries to life

Hello,

I'm using the DM8168 EMV Rev B (with DDR2 RAM and no extension board) and try to bring the latest EZSDK (version 5.02.02.60) to life. My self-compiled kernel doesn't boot, so I copied the kernel and the rootfs from the filesystem folder (ezsdk-dm816x-evm-rootfs.tar.gz) to my board - it is working:

Linux version 2.6.37 (x0029463@swubn01) (gcc version 4.3.3 (Sourcery G++ Lite 2009q1-203) ) #1 Thu Sep 8 11:27:49 IST 2011
CPU: ARMv7 Processor [413fc082] revision 2 (ARMv7), cr=10c53c7f
CPU: VIPT nonaliasing data cache, VIPT aliasing instruction cache
Machine: ti8168evm

After that I loaded the load-hdvpss-firmware.sh by hand, and get the following output:

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

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

Arago 2011.05 dm816x-evm ttyO2

dm816x-evm login: root
root@dm816x-evm:~#
root@dm816x-evm:~# modprobe syslink
SysLink version : 2.00.02.80
SysLink module created on Date:Sep  8 2011 Time:12:18:39
root@dm816x-evm:~# sleep 1
root@dm816x-evm:~# firmware_loader 2 /usr/share/ti/ti-media-controller-utils/dm8
16x_hdvpss.xem3 start

FIRMWARE: Memory map bin file not passed
Usage : firmware_loader <Processor Id> <Location of Firmware> <start|stop> [Location of Mem map bin file]
FIRMWARE: Default memory configuration is used
MemCfg: DCMM (Dynamically Configurable Memory Map) Version :  2.1.1.1
FIRMWARE: Could not open tmp file: -1
FIRMWARE: Memory Configuration status : In Progress
FIRMWARE: 2 start Successful
root@dm816x-evm:~# sleep 1
root@dm816x-evm:~# modprobe vpss sbufaddr=0xBFB00000 mode=hdmi:1080p-60,dvo2:108
0p-60,hdcomp:1080p-60 debug=1 i2c_mode=1

notify_shm_drv_sendevent failed! status = 0xfffffff0
notify_send_event failed! status = 0xfffffff0
notify_shm_drv_sendevent failed! status = 0xfffffff0
notify_send_event failed! status = 0xfffffff0
[...]
notify_shm_drv_sendevent failed! status = 0xfffffff0
notify_send_event failed! status = 0xfffffff0
notify_shm_drv_sendevent failed! status = 0xfffffff0
notify_send_event failed! status = 0xfffffff0
VPSS_CORE : Failed to init fvid2 interface,
vpss: probe of vpss failed with error -22

root@dm816x-evm:~#

Did I forget a step, to get the prebuild binaries running on the DDR2 EMV? I only read that the uboot needs modifications and the 5.01.xx.xx does only work on the DDR3 boards. I read in the VPSS guide to use the address 0xA0200000 ("The sharing buffer address is changed to 0xA0200000 and it is valid for DM816X/C6A816X/AM389X platforms.") - but the error still exists.

Best regards,

Charly

  • Hi Charly,

    Did you boot with new bootargs parameter is required to use notify driver in kernel. This address is different based on the firmware 

     For ti814x_hdvpss_512M.xem3
    $ notifyk.vpssm3_sva=0x8DB00000

    For ti814x_hdvpss_1G.xem3
    $ notifyk.vpssm3_sva=0xA0000000

    http://processors.wiki.ti.com/index.php/DM814X_C6A814X_AM387X_VPSS_Video_Driver_User_Guide_PSP_04.01.00.05 

    Thanks!!

    Regards
    Sathish

  • Hello Sathish,

    thanks for your fast reply! But also with the notifyk.vpssm3_sva argument it is not working:

    Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 38068
    Kernel command line: console=ttyO2,115200n8 root=/dev/mmcblk0p6 rw mem=166M earlyprink vram=16M ti816xfb.vram=0:16M notifyk.vpssm3_sva=0xA0000000 ip=off noinitrd
    PID hash table entries: 1024 (order: 0, 4096 bytes)

    I tried both - first the original address and second the address from the VPSS Guide:

    root@dm816x-evm:~# modprobe vpss sbufaddr=0xBFB00000 mode=hdmi:1080p-60,dvo2:108
    0p-60,hdcomp:1080p-60 debug=1 i2c_mode=1
    notify_shm_drv_sendevent failed! status = 0xfffffff0
    notify_send_event failed! status = 0xfffffff0
    [...]
    notify_shm_drv_sendevent failed! status = 0xfffffff0
    notify_send_event failed! status = 0xfffffff0
    VPSS_CORE : Failed to init fvid2 interface,
    vpss: probe of vpss failed with error -22

    root@dm816x-evm:~# modprobe vpss sbufaddr=0xA0200000 mode=hdmi:1080p-60,dvo2:108
    0p-60,hdcomp:1080p-60 debug=1 i2c_mode=1
    notify_shm_drv_sendevent failed! status = 0xfffffff0
    notify_send_event failed! status = 0xfffffff0
    [...]
    notify_shm_drv_sendevent failed! status = 0xfffffff0
    notify_send_event failed! status = 0xfffffff0
    VPSS_CORE : Failed to init fvid2 interface,
    vpss: probe of vpss failed with error -22

    --
    Charly

     

     

  • Hi Charly,

    Can you please try notifyk.vpssm3_sva=0xBF900000
    notifyk.vpssm3_sva=<addr of MC_HDVPSS_NOTIFY_MEM>

    vpss.ko sbufaddr=<addr of MC_HDVPSS_V4L2_FBDEF_MEM> 

    http://processors.wiki.ti.com/index.php/EZSDK_Memory_Map

    Thanks!!

    Regards
    Sathish

  • Thanks, that's the trick. So this is my uboot command line:

    # Resetting PCI bus via I2C - needs register replacement
    i2c mw 0x20 ff ef;
    i2c mw 0x20 ff ff;

    # setting machine ID (needed for newer kernels to run with older uboot versions)
    setenv machid af0

    # Starting from partition #6    // using 2.6.37 kernel (ttyO2)
    setenv bootargs 'console=ttyO2,115200n8 root=/dev/mmcblk0p6 rw mem=166M earlyprink vram=16M ti816xfb.vram=0:16M notifyk.vpssm3_sva=0xBF900000 ip=off noinitrd'
    fatload mmc 1 0x80009000 p6/uImage
    bootm 0x80009000

    and these are the linux commands:

    root@dm816x-evm:~# modprobe syslink
    SysLink version : 2.00.02.80
    SysLink module created on Date:Sep  8 2011 Time:12:18:39
    root@dm816x-evm:~# firmware_loader 2 /usr/share/ti/ti-media-controller-utils/dm816x_hdvpss.xem3 start
    FIRMWARE: Memory map bin file not passed
    Usage : firmware_loader <Processor Id> <Location of Firmware> <start|stop> [Location of Mem map bin file]
    FIRMWARE: Default memory configuration is used
    MemCfg: DCMM (Dynamically Configurable Memory Map) Version :  2.1.1.1
    FIRMWARE: Could not open tmp file: -1
    FIRMWARE: Memory Configuration status : In Progress
    FIRMWARE: 2 start Successful
    root@dm816x-evm:~# modprobe vpss sbufaddr=0xBFB00000 mode=hdmi:1080p-60,dvo2:1080p-60,hdcomp:1080p-60 debug=1 i2c_mode=1

    root@dm816x-evm:~# modprobe ti81xxfb vram=0:16M

    root@dm816x-evm:~# fbset -depth 32 -rgba 8/16,8/8,8/0,0/0
    root@dm816x-evm:~# cat /dev/zero > /dev/fb0
    cat: write error: No space left on device
    root@dm816x-evm:~# modprobe ti81xxhdmi
    HDMI W1 rev 2.0
    root@dm816x-evm:~# cat /dev/zero > /dev/fb0
    cat: write error: No space left on device
    root@dm816x-evm:~# fbset

    mode "1920x1080-60"
        # D: 148.500 MHz, H: 67.500 kHz, V: 60.000 Hz
        geometry 1920 1080 1920 1080 32
        timings 6734 148 88 36 4 44 5
        rgba 8/16,8/8,8/0,8/24
    endmode

    root@dm816x-evm:~# cd /usr/bin
    root@dm816x-evm:/usr/bin# ./qtdemoE -qws
    QSqlDatabase: QSQLITE driver not loaded
    QSqlDatabase: available drivers:

    Now a small QT app is shown on the HDMI display :-)

    Best regards,

    Charly