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.

Need new HDVPSS firmware binary (dm816x_hdvpss.xem3)

Guru 10685 points

I am using the latest build of Linux as obtained from the Arago Linux source tree. The VPSS module code has changed so that it only claims compatibility with a newer version of dm816x_hdvpss.xem3 than is supplied in the EZSDK.

In linux-custom/drivers/video/ti81xx/vpss/fvid2.c we have a change made by Hardik Shah (who is hopefully reading!):

#define CURRENT_VPS_FIRMWARE_VERSION        (0x01000137)

This corresponds to a newer version of the dm816x_hdvpss.xem3 binary blob than we have. Our version at the moment (in EZSDK 5.03.01.15) is 0x1000133.

Here's the Git link that describes the change TI made:

http://arago-project.org/git/projects/?p=linux-omap3.git;a=history;f=drivers/video/ti81xx/vpss/fvid2.c;h=c4b44600cf037cadf27c257e637cab58eeecff05;hb=HEAD

Please can someone from TI (Hardik maybe?) post the latest HDVPSS firmware, version 0x01000137?

Thanks,

Ralph

  • Hi,

    Latest firmware version with PSP is released. You can get it @ https://e2e.ti.com/support/embedded/int-embedded_software/int-linux/f/118/t/178390.aspx . EZSDK is also getting out with HDVPSS01.00.01.37 in this week or at most next week end.

    Regards,

    Hardik

  • Hi Hardik,

    I tried that link but all it says is:

    "Group Not Found

    The requested Group cannot be found."
    Ralph
  • Hi,

    Release could be found at http://software-dl.ti.com/dsps/dsps_public_sw/psp/LinuxPSP/TI81XX_04_04/04_04_00_01/index_FDS.html

    Above link seems to be TI internal link.

    Regards,

    Hardik Shah

  • I tried loading the firmware binary (as part of the load-firmware-start.sh script) but there is a problem:

    # /usr/local/share/ti/ti-media-controller-utils/load-hd-firmware.sh start
    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 : 0x0001114c Data : 0x48180600
                            AW Phy Addr : 0x00000000 Data : 0x48180600
                            Phy Addr : 0x0001114c Data : 0x48180c04
                            BW Phy Addr : 0x0001114c Data : 0x48180620
                            AW Phy Addr : 0x00000000 Data : 0x48180620
                            BW Phy Addr : 0x0001114c Data : 0x48180624
                            AW Phy Addr : 0x00000000 Data : 0x48180624
                            Phy Addr : 0x0001114c Data : 0x48180600
                            BW Phy Addr : 0x0001114c Data : 0x48180c10
                            AW Phy Addr : 0x00000000 Data : 0x48180c10
                            Phy Addr : 0x0001114c Data : 0x48180c14
                            BW Phy Addr : 0x0001114c Data : 0x58088000
                            AW Phy Addr : 0x00000000 Data : 0x58088000
                            BW Phy Addr : 0x0001114c Data : 0x58098000
                            AW Phy Addr : 0x00000000 Data : 0x58098000
                            BW Phy Addr : 0x0001114c Data : 0x48180c10
                            AW Phy Addr : 0x00000000 Data : 0x48180c10
                            Phy Addr : 0x0001114c Data : 0x48180c14
            PRCM for IVHD0 is Done Successfully
            PRCM for IVHD1 is in Progress, Please wait.....
                            BW Phy Addr : 0x0001114c Data : 0x48180700
                            AW Phy Addr : 0x00000000 Data : 0x48180700
                            Phy Addr : 0x0001114c Data : 0x48180d04
                            BW Phy Addr : 0x0001114c Data : 0x48180720
                            AW Phy Addr : 0x00000000 Data : 0x48180720
                            BW Phy Addr : 0x0001114c Data : 0x48180724
                            AW Phy Addr : 0x00000000 Data : 0x48180724
                            Phy Addr : 0x0001114c Data : 0x48180700
                            BW Phy Addr : 0x0001114c Data : 0x48180d10
                            AW Phy Addr : 0x00000000 Data : 0x48180d10
                            Phy Addr : 0x0001114c Data : 0x48180d14
                            BW Phy Addr : 0x0001114c Data : 0x5a088000
                            AW Phy Addr : 0x00000000 Data : 0x5a088000
                            BW Phy Addr : 0x0001114c Data : 0x5a098000
                            AW Phy Addr : 0x00000000 Data : 0x5a098000
                            BW Phy Addr : 0x0001114c Data : 0x48180d10
                            AW Phy Addr : 0x00000000 Data : 0x48180d10
                            Phy Addr : 0x0001114c Data : 0x48180d14
            PRCM for IVHD1 is Done Successfully
            PRCM for IVHD2 is in Progress, Please wait.....
                            BW Phy Addr : 0x0001114c Data : 0x48180800
                            AW Phy Addr : 0x00000000 Data : 0x48180800
                            Phy Addr : 0x0001114c Data : 0x48180e04
                            BW Phy Addr : 0x0001114c Data : 0x48180820
                            AW Phy Addr : 0x00000000 Data : 0x48180820
                            BW Phy Addr : 0x0001114c Data : 0x48180824
                            AW Phy Addr : 0x00000000 Data : 0x48180824
                            Phy Addr : 0x0001114c Data : 0x48180800
                            BW Phy Addr : 0x0001114c Data : 0x48180e10
                            AW Phy Addr : 0x00000000 Data : 0x48180e10
                            Phy Addr : 0x0001114c Data : 0x48180e14
                            BW Phy Addr : 0x0001114c Data : 0x53088000
                            AW Phy Addr : 0x00000000 Data : 0x53088000
                            BW Phy Addr : 0x0001114c Data : 0x53098000
                            AW Phy Addr : 0x00000000 Data : 0x53098000
                            BW Phy Addr : 0x0001114c Data : 0x48180e10
                            AW Phy Addr : 0x00000000 Data : 0x48180e10
                            Phy Addr : 0x0001114c Data : 0x48180e14
            PRCM for IVHD2 is Done Successfully
    PRCM Initialization completed
    SysLink version : 2.00.05.85
    SysLink module created on Date:Apr  3 2012 Time:10:42:44
    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: Memory Configuration status : In Progress
    FIRMWARE: 1 start Successful
    Loading HDVPSS Firmware
    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
    BUG: Your driver calls ioremap() on system memory.  This leads
    to architecturally unpredictable behaviour on ARMv6+, and ioremap()
    will fail in the next kernel release.  Please fix your driver.
    ------------[ cut here ]------------
    WARNING: at arch/arm/mm/ioremap.c:211 __arm_ioremap_pfn_caller+0x58/0x190()
    Modules linked in: syslink
    Backtrace:
    [<c003dfe0>] (dump_backtrace+0x0/0x110) from [<c02ed9c8>] (dump_stack+0x18/0x1c)
     r7:00000000 r6:c0040f9c r5:c038acb1 r4:000000d3
    [<c02ed9b0>] (dump_stack+0x0/0x1c) from [<c006264c>] (warn_slowpath_common+0x54/0x6c)
    [<c00625f8>] (warn_slowpath_common+0x0/0x6c) from [<c0062688>] (warn_slowpath_null+0x24/0x2c)
     r9:00000002 r8:00000000 r7:bf035ba8 r6:000a0500 r5:001ff060
    r4:00000000
    [<c0062664>] (warn_slowpath_null+0x0/0x2c) from [<c0040f9c>] (__arm_ioremap_pfn_caller+0x58/0x190)
    [<c0040f44>] (__arm_ioremap_pfn_caller+0x0/0x190) from [<c0041158>] (__arm_ioremap_caller+0x64/0x6c)
    [<c00410f4>] (__arm_ioremap_caller+0x0/0x6c) from [<c0053f9c>] (omap_ioremap+0x60/0x64)
     r6:00000000 r5:001ff060 r4:a0500000
    [<c0053f3c>] (omap_ioremap+0x0/0x64) from [<bf035ba8>] (MemoryOS_map+0x1e0/0x398 [syslink])
     r7:d5d7fcd8 r6:00000000 r5:d5d7fc70 r4:d703d000
    [<bf0359c8>] (MemoryOS_map+0x0/0x398 [syslink]) from [<bf0044d4>] (_ProcMgr_map+0x1cc/0x4a0 [syslink])
     r8:00000002 r7:d5d7fcd8 r6:00000000 r5:06a85000 r4:d5d7fd54
    [<bf004308>] (_ProcMgr_map+0x0/0x4a0 [syslink]) from [<bf012874>] (ElfLoaderTrgWrite_copy+0x13c/0x3a0 [syslink])
    [<bf012738>] (ElfLoaderTrgWrite_copy+0x0/0x3a0 [syslink]) from [<bf015bf8>] (DLIF_copy+0x18/0x24 [syslink])
    [<bf015be0>] (DLIF_copy+0x0/0x24 [syslink]) from [<bf014914>] (DLOAD_load+0x834/0xaa8 [syslink])
    [<bf0140e0>] (DLOAD_load+0x0/0xaa8 [syslink]) from [<bf011ac4>] (ElfLoader_load+0x270/0x330 [syslink])
    [<bf011854>] (ElfLoader_load+0x0/0x330 [syslink]) from [<bf0022d0>] (Loader_load+0xec/0x164 [syslink])
    [<bf0021e4>] (Loader_load+0x0/0x164 [syslink]) from [<bf0068f4>] (ProcMgr_load+0x21c/0x2f8 [syslink])
    [<bf0066d8>] (ProcMgr_load+0x0/0x2f8 [syslink]) from [<bf0089b0>] (ProcMgrDrv_ioctl+0xc8c/0x1d78 [syslink])
    [<bf007d24>] (ProcMgrDrv_ioctl+0x0/0x1d78 [syslink]) from [<c00d1f80>] (vfs_ioctl+0x28/0x44)
     r8:bec4cb18 r7:00000008 r6:00000008 r5:d5d66e80 r4:d67eaae0
    [<c00d1f58>] (vfs_ioctl+0x0/0x44) from [<c00d2714>] (do_vfs_ioctl+0x558/0x5a0)
    [<c00d21bc>] (do_vfs_ioctl+0x0/0x5a0) from [<c00d27b4>] (sys_ioctl+0x58/0x7c)
    [<c00d275c>] (sys_ioctl+0x0/0x7c) from [<c003a700>] (ret_fast_syscall+0x0/0x30)
     r8:c003a884 r7:00000036 r6:00091d20 r5:00000000 r4:00000002
    ---[ end trace e1898dc89613d504 ]---

    Do you know what is going wrong? Maybe I need newer Syslink code too....

    Thanks,
    Ralph

  • Hi,

    Please wait for EZSDK release. New binary and PSP may not work with old OMX components straight away.

    Regards,

    Hardik Shah

  • Hi Hardik,


    I've updated Syslink and IPC components. I am not using OMX yet, just trying to get the graphics up and running without an application.

    I have a problem while trying to load the new HDVPSS firmware - which I just downloaded - as part of the firmware loader script (however there are no problems loading the HDVICP binary prior to this):

    # firmware_loader $HDVPSS_ID /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
    BUG: Your driver calls ioremap() on system memory.  This leads
    to architecturally unpredictable behaviour on ARMv6+, and ioremap()
    will fail in the next kernel release.  Please fix your driver.
    ------------[ cut here ]------------
    WARNING: at arch/arm/mm/ioremap.c:211 __arm_ioremap_pfn_caller+0x58/0x190()
    Modules linked in: syslink
    Backtrace:
    [<c003dfe0>] (dump_backtrace+0x0/0x110) from [<c02ea6b0>] (dump_stack+0x18/0x1c)
     r7:00000000 r6:c0040f9c r5:c0386c41 r4:000000d3
    [<c02ea698>] (dump_stack+0x0/0x1c) from [<c006264c>] (warn_slowpath_common+0x54/0x6c)
    [<c00625f8>] (warn_slowpath_common+0x0/0x6c) from [<c0062688>] (warn_slowpath_null+0x24/0x2c)
     r9:00000002 r8:00000000 r7:bf035ba8 r6:000a0500 r5:001ff060
    r4:00000000
    [<c0062664>] (warn_slowpath_null+0x0/0x2c) from [<c0040f9c>] (__arm_ioremap_pfn_caller+0x58/0x190)
    [<c0040f44>] (__arm_ioremap_pfn_caller+0x0/0x190) from [<c0041158>] (__arm_ioremap_caller+0x64/0x6c)
    [<c00410f4>] (__arm_ioremap_caller+0x0/0x6c) from [<c0053f9c>] (omap_ioremap+0x60/0x64)
     r6:00000000 r5:001ff060 r4:a0500000
    [<c0053f3c>] (omap_ioremap+0x0/0x64) from [<bf035ba8>] (MemoryOS_map+0x1e0/0x398 [syslink])
     r7:d6779cd8 r6:00000000 r5:d6779c70 r4:d705e000
    [<bf0359c8>] (MemoryOS_map+0x0/0x398 [syslink]) from [<bf0044d4>] (_ProcMgr_map+0x1cc/0x4a0 [syslink])
     r8:00000002 r7:d6779cd8 r6:00000000 r5:06a85000 r4:d6779d54
    [<bf004308>] (_ProcMgr_map+0x0/0x4a0 [syslink]) from [<bf012874>] (ElfLoaderTrgWrite_copy+0x13c/0x3a0 [syslink])
    [<bf012738>] (ElfLoaderTrgWrite_copy+0x0/0x3a0 [syslink]) from [<bf015bf8>] (DLIF_copy+0x18/0x24 [syslink])
    [<bf015be0>] (DLIF_copy+0x0/0x24 [syslink]) from [<bf014914>] (DLOAD_load+0x834/0xaa8 [syslink])
    [<bf0140e0>] (DLOAD_load+0x0/0xaa8 [syslink]) from [<bf011ac4>] (ElfLoader_load+0x270/0x330 [syslink])
    [<bf011854>] (ElfLoader_load+0x0/0x330 [syslink]) from [<bf0022d0>] (Loader_load+0xec/0x164 [syslink])
    [<bf0021e4>] (Loader_load+0x0/0x164 [syslink]) from [<bf0068f4>] (ProcMgr_load+0x21c/0x2f8 [syslink])
    [<bf0066d8>] (ProcMgr_load+0x0/0x2f8 [syslink]) from [<bf0089b0>] (ProcMgrDrv_ioctl+0xc8c/0x1d78 [syslink])
    [<bf007d24>] (ProcMgrDrv_ioctl+0x0/0x1d78 [syslink]) from [<c00d1f80>] (vfs_ioctl+0x28/0x44)
     r8:bec50b18 r7:00000008 r6:00000008 r5:d5d3de80 r4:d67e14e0
    [<c00d1f58>] (vfs_ioctl+0x0/0x44) from [<c00d2714>] (do_vfs_ioctl+0x558/0x5a0)
    [<c00d21bc>] (do_vfs_ioctl+0x0/0x5a0) from [<c00d27b4>] (sys_ioctl+0x58/0x7c)
    [<c00d275c>] (sys_ioctl+0x0/0x7c) from [<c003a700>] (ret_fast_syscall+0x0/0x30)
     r8:c003a884 r7:00000036 r6:00091d60 r5:00000000 r4:00000002
    ---[ end trace a006f65a5e7730b3 ]---

    There is also the possible issue that the size of the old HDVPSS binary was 16486746 bytes (i.e. 16 meg) and the size of the new one that I downloaded from the link you gave above is 8562112 bytes (i.e. 8 meg) - half the size.

    Surely something is wrong here? I would have thought the binary to increase in size rather than decrease after a version upgrade?

    Thanks,

    Ralph

  • Ralph,

    do not use firmware_loader, please use slaverslaver with coming with PSP HDVPSS package.

    Regards

    yihe

  • I have noticed that this forum doesn't seem to let people create direct links to another conversation.
    This would be nice to have added.

    Tony