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.

Compiler/TDA2PXEVM: dce Engine_open failed after using vdrm

Part Number: TDA2PXEVM
Other Parts Discussed in Thread: OPA362, TFP410, TPD12S015

Tool/software: TI C/C++ Compiler

Hi experts,

       I am working on the j6p evm board with vision sdk 3.04.   Vision sdk runs OK. 

      And now I want to support IPUMM on IPU2.  after the build, firmware of ipumm loads success, but I can see the below error with logcat.  Digging deeper, I found dce use drm interface, and in kernel we use vdrm. 

so my question, how to make dce support vdrm?

Engine_open DEBUG: START Engine_open ipc_mutex 0xa6535048
dce_ipc_init DEBUG: >> dce_ipc_init
dce_ipc_init DEBUG: open(/dev/rpmsg-dce]) -> 0xa642fe70
Engine_open INFO: >> Engine_open Params::name = ivahd_vidsvr size = 12
Engine_open ERROR: Failed engine_open_msg != NULL error val -2
Engine_open DEBUG: END Engine_open ipc_mutex 0xa6535048

  • Hi yang,

    Gstreamer based Video playback with vdrm has been tested in vision-SDK 3.05. 

    Are you trying to use gstreamer here?

    Please check if your dmesg shows logs for omapdrm. omapdrm is must for video playback.

    It looks like vision-sdk 3.04 , linux kernel needs these two patches.

    https://git.ti.com/glsdk/infoadas-kernel/commit/b71c8c58d8a236c9da48dfa04fdee492ae6d710d

    https://git.ti.com/glsdk/infoadas-kernel/commit/a0735426f874209214170dc04e7f156c444aa0e3

    Please apply these changes and try to enable omapdrm in presence of vdrm.

    Thanks

    RamPrasad

  • Hi Ramprasad,

       Thansk for your help. I add the two patches, and enable omap_drm in the kernel, but the error still existed. I pasted the change and kernel log below:

    change for config:

    @@ -2261,8 +2261,8 @@ CONFIG_TOUCHSCREEN_CYPRESS_CYTTSP6_DEVICETREE_SUPPORT=y
    # CONFIG_TOUCHSCREEN_CYPRESS_CYTTSP6_DEBUG is not set
    CONFIG_TOUCHSCREEN_CYPRESS_CYTTSP6_I2C=m
    # CONFIG_TOUCHSCREEN_CYPRESS_CYTTSP6_SPI is not set
    -# CONFIG_TOUCHSCREEN_CYPRESS_CYTTSP6_MT_B is not set
    CONFIG_TOUCHSCREEN_CYPRESS_CYTTSP6_MT_A=y
    +# CONFIG_TOUCHSCREEN_CYPRESS_CYTTSP6_MT_B is not set
    # CONFIG_TOUCHSCREEN_CYPRESS_CYTTSP6_BUTTON is not set
    CONFIG_TOUCHSCREEN_CYPRESS_CYTTSP6_PROXIMITY=y
    # CONFIG_TOUCHSCREEN_CYPRESS_CYTTSP6_DEVICE_ACCESS is not set
    @@ -3321,7 +3321,34 @@ CONFIG_DRM_VDRM=y
    # CONFIG_DRM_MGAG200 is not set
    # CONFIG_DRM_CIRRUS_QEMU is not set
    # CONFIG_DRM_ARMADA is not set
    -# CONFIG_DRM_OMAP is not set
    +CONFIG_DRM_OMAP=y
    +CONFIG_DRM_OMAP_NUM_CRTCS=2
    +# CONFIG_DRM_OMAP_WB is not set
    +CONFIG_OMAP2_DSS_INIT=y
    +CONFIG_OMAP_DSS_BASE=y
    +# CONFIG_OMAP2_DSS is not set
    +CONFIG_TI_DSS6=y
    +
    +#
    +# OMAPDRM External Display Device Drivers
    +#
    +# CONFIG_DISPLAY_ENCODER_OPA362 is not set
    +# CONFIG_DISPLAY_ENCODER_TFP410 is not set
    +# CONFIG_DISPLAY_ENCODER_TPD12S015 is not set
    +# CONFIG_DISPLAY_DRA7EVM_ENCODER_TPD12S015 is not set
    +# CONFIG_DISPLAY_ENCODER_SII9022 is not set
    +# CONFIG_DISPLAY_ENCODER_TC358768 is not set
    +# CONFIG_DISPLAY_CONNECTOR_DVI is not set
    +# CONFIG_DISPLAY_CONNECTOR_HDMI is not set
    +# CONFIG_DISPLAY_CONNECTOR_ANALOG_TV is not set
    +# CONFIG_DISPLAY_PANEL_DPI is not set
    +# CONFIG_DISPLAY_PANEL_DSI_CM is not set
    +# CONFIG_DISPLAY_PANEL_SONY_ACX565AKM is not set
    +# CONFIG_DISPLAY_PANEL_LGPHILIPS_LB035Q02 is not set
    +# CONFIG_DISPLAY_PANEL_SHARP_LS037V7DW01 is not set
    +# CONFIG_DISPLAY_PANEL_TPO_TD028TTEC1 is not set
    +# CONFIG_DISPLAY_PANEL_TPO_TD043MTEA1 is not set
    +# CONFIG_DISPLAY_PANEL_NEC_NL8048HL11 is not set
    # CONFIG_DRM_TILCDC is not set
    # CONFIG_DRM_QXL is not set
    # CONFIG_DRM_BOCHS is not set
    @@ -3399,7 +3426,6 @@ CONFIG_FB_BACKLIGHT=y
    # CONFIG_FB_BROADSHEET is not set
    # CONFIG_FB_AUO_K190X is not set
    CONFIG_FB_SIMPLE=y
    -# CONFIG_FB_OMAP2 is not set
    CONFIG_FB_SSD1307=y
    # CONFIG_FB_SM712 is not set
    CONFIG_BACKLIGHT_LCD_SUPPORT=y
    @@ -3425,6 +3451,7 @@ CONFIG_BACKLIGHT_LED=m
    #
    CONFIG_VIDEO_TI_FPD3_SERDES=m
    # CONFIG_VGASTATE is not set
    +CONFIG_VIDEOMODE_HELPERS=y
    CONFIG_HDMI=y
    # CONFIG_LOGO is not set
    CONFIG_SOUND=y
    @@ -3583,6 +3610,7 @@ CONFIG_SND_SOC_I2C_AND_SPI=y
    # CONFIG_SND_SOC_AK4613 is not set
    CONFIG_SND_SOC_AK4616=y
    CONFIG_SND_SOC_AK7738=y
    +# CONFIG_SND_SOC_AK4642 is not set
    # CONFIG_SND_SOC_AK5386 is not set
    # CONFIG_SND_SOC_ALC5623 is not set
    # CONFIG_SND_SOC_CS35L32 is not set

    kernel log:

    [ 0.732630] [drm] Initialized drm 1.1.0 20060810
    [ 0.733278] [drm] Supports vblank timestamp caching Rev 2 (21.10.2013).
    [ 0.733283] [drm] No driver support for vblank timestamp query.
    [ 0.733291] vdrm_setup_probe enter <<
    [ 0.733295] vdrm_setup_probe each connector!
    [ 0.733399] dev_load vdrm driver load succeed!
    [ 0.733406] [drm] Initialized vdrm 1.0.0 20110917 on minor 0
    [ 0.733902] [drm] Supports vblank timestamp caching Rev 2 (21.10.2013).
    [ 0.733907] [drm] No driver support for vblank timestamp query.
    [ 0.733914] vdrm_setup_probe enter <<
    [ 0.733918] vdrm_setup_probe each connector!
    [ 0.734002] dev_load vdrm driver load succeed!
    [ 0.734009] [drm] Initialized vdrm 1.0.0 20110917 on minor 1
    [ 0.734490] [drm] Supports vblank timestamp caching Rev 2 (21.10.2013).
    [ 0.734495] [drm] No driver support for vblank timestamp query.
    [ 0.734501] vdrm_setup_probe enter <<
    [ 0.734506] vdrm_setup_probe each connector!
    [ 0.734588] dev_load vdrm driver load succeed!
    [ 0.734595] [drm] Initialized vdrm 1.0.0 20110917 on minor 2
    [ 1.298984] [drm] Initialized omapdrm 1.0.0 20110917 on minor 3
    [ 1.536666] init: Parsing file /system/etc/init/drmserver.rc...
    [ 1.541872] init: Parsing file /system/etc/init/mediadrmserver.rc...
    [ 1.553967] init: Parsing file /vendor/etc/init/android.hardware.drm@1.0-service.rc...
    [ 5.363703] init: starting service 'drm-hal-1-0'...
    [ 5.723316] init: starting service 'drm'...
    [ 5.726336] init: starting service 'mediadrm'...
    [ 6.380649] [drm] CRTC[1] CONNECTORS[1] ENCODERS[1]
    [ 6.380665] [drm] CRTC[1] CONNECTORS[1] ENCODERS[1]
    [ 6.433962] [drm] CRTC[1] CONNECTORS[1] ENCODERS[1]
    [ 6.434004] [drm] CRTC[1] CONNECTORS[1] ENCODERS[1]
    [ 13.181528] [drm]invalid ioctl: pid=242, dev=0xe280, auth=0, cmd=0xc0106443, nr=0x43
    [ 13.213670] [drm]DRM_COMMAND_BASE=0x40, DRM_COMMAND_END=0xa0, dev->driver->num_ioctls=0x0
    [ 13.243492] [drm]invalid ioctl: pid=242, dev=0xe280, auth=0, cmd=0xc0106443, nr=0x43
    [ 13.267081] [drm]DRM_COMMAND_BASE=0x40, DRM_COMMAND_END=0xa0, dev->driver->num_ioctls=0x0
    [ 14.643180] [drm]invalid ioctl: pid=638, dev=0xe280, auth=0, cmd=0xc0106443, nr=0x43
    [ 14.643433] [drm]DRM_COMMAND_BASE=0x40, DRM_COMMAND_END=0xa0, dev->driver->num_ioctls=0x0
    [ 14.643434] [drm]invalid ioctl: pid=638, dev=0xe280, auth=0, cmd=0xc0106443, nr=0x43
    [ 14.669208] [drm]DRM_COMMAND_BASE=0x40, DRM_COMMAND_END=0xa0, dev->driver->num_ioctls=0x0

  • Hi yang,

    Which application you are trying to use now to invoke Engine_open?

    You don't need add this application is /etc/powervr.ini. 

    From the dmesg logs, omapdrm is probed now. 

    Can you check if you can see this sysfs

    cat /sys/kernel/debug/dri/1/tiler_map 

  • Hi Ramprasad,

             Now the android media process invoke the Engine_open.  I did nothing about /etc/powervr.ini.

     and I can not see the sysfs:

    jacinto6evm:/ # cat /sys/kernel/debug/dri/1/tiler_map
    cat: /sys/kernel/debug/dri/1/tiler_map: No such file or directory

  • Hi yang,

    ENgine_open is not able to get handle here.

    Can you share this trace?

    cat /sys/kernel/debug/remoteproc/remoteproc1/trace0

    Want to check if remoteproc is loaded without any issue.

    Also check this in dmesg

    dmesg | grep remoteproc

    RamPrasad

  • Hi Ramprasad,

    the log is listed below:

    at /sys/kernel/debug/remoteproc/remoteproc0/trace0 <
    [0][ 0.000] 17 Resource entries at 0x3000
    [0][ 0.000] Watchdog disabled: TimerBase = 0x6803e000 ClkCtrl = 0x6a009750
    [0][ 0.000] Watchdog disabled: TimerBase = 0x68036000 ClkCtrl = 0x6a009748
    [0][ 0.000] Watchdog_restore registered as a resume callback
    [0][ 0.000] IPU2 starting..
    [0][ 0.000] dce.c:1624: dce_init INFO: Creating DCE server and DCE callback server thread...
    [0][ 0.000]
    [0][ 0.000]
    [0][ 0.000] **** IPUMM VERSION INFO ****
    [0][ 0.000]
    [0][ 0.000] Compile DATE Sep 4 2019 TIME 08:52:30
    [0][ 0.000] GIT IPUMM
    [0][ 0.000] BRANCH : master
    [0][ 0.000] TAG : IPUMM commit e4872a8 version MMIP 3_00_15_00 IPC 3_50_01_00
    [0][ 0.000] COMMIT-ID : e4872a8
    [0][ 0.000] CODEC-VER BEGIN:
    [0][ 0.000] H264D-02.00.22.01
    [0][ 0.000] MPEG4D-01.00.17.01
    [0][ 0.000] MPEG2D-01.00.18.01
    [0][ 0.000] VC1D-01.00.02.08
    [0][ 0.000] MJPEGD-01.00.16.01
    [0][ 0.000]
    [0][ 0.000] H264E-02.00.09.01
    [0][ 0.000] MPEG4E-01.00.02.01
    [0][ 0.000] MJPEGE-01.00.17.01
    [0][ 0.000] CODEC-VER END:
    [0][ 0.000]
    [0][ 0.000] ** IPUMM VERSION INFO END **
    [0][ 0.000] Trace level PA 0x997532f0 Trace Level 3
    [0][ 0.000] Trace Usage: level:[0-4: 0-no trace, 1-err, 2-debug, 3-info, 4-CE,FC,IPC traces]
    [0][ 0.000]
    [0][ 0.000] Trace Buffer PA 0x9c200000 kpi_control (PA 0x9974f784 value 0x0)
    [0][ 0.000] Watchdog disabled: TimerBase = 0x6803e000 ClkCtrl = 0x6a009750
    [0][ 0.000] Watchdog disabled: TimerBase = 0x68036000 ClkCtrl = 0x6a009748
    [0][ 0.000] dce.c:438: connect DEBUG: >> chipset_id=0x5436, debug=3
    [1][ 0.000] dce.c:1597: dce_callback_main DEBUG: REGISTER dce-callback
    [1][ 0.000]
    [0][ 0.000] ivahd.c:511: ivahd_init DEBUG: ivahd_base=6ae06f00
    [1][ 0.000] OMAPRPC: registered channel: dce-callback
    [0][ 0.000] ivahd.c:520: ivahd_init DEBUG: ivahd_cm_base=6a000000
    [0][ 0.000] ivahd.c:415: ivahd_acquire DEBUG: ivahd acquire
    [1][ 0.000] OMAPRPC: Returning Object @80209300
    [1][ 0.000] dce.c:1604: dce_callback_main DEBUG: dce-callback running through MmServiceMgr
    [1][ 0.000] dce.c:1609: dce_callback_main DEBUG: deleted dce-callback
    [1][ 0.001] loadTask: started
    [1][ 0.001] SLEEP_TICKS: 1000
    [1][ 0.001] Load_hwiEnabled: 0
    [1][ 0.001] Load_swiEnabled: 0
    [1][ 0.001] Load_taskEnabled: 1
    [1][ 0.001] Load_updateInIdle: 1
    [1][ 0.001] Load_windowInMs: 11
    [1][ 0.001] OMAPRPC: connecting from local endpoint 101 to port 101
    [1][ 0.001] registering rpmsg-rpc:dce-callback service on 101 with HOST
    [1][ 0.001] OMAPRPC: started channel dce-callback on port: 101
    [0][ 0.001] ivahd.c:178: ivahd_boot DEBUG: Booting IVAHD...
    [0][ 0.002] ivahd.c:223: ivahd_boot DEBUG: Putting [ICONTI ICONT2]: RESET and SL2:OutOfRESET...
    [0][ 0.002] ivahd.c:252: ivahd_boot DEBUG: Waiting for IVAHD to go out of reset
    [0][ 0.002]
    [0][ 0.002] ivahd.c:258: ivahd_boot DEBUG: ivahd_boot() CM_IVAHD_CLKCTRL 0x40001 CM_IVAHD_CLKSTCTRL 0x102
    [0][ 0.002] ivahd.c:572: ivahd_init DEBUG: RMAN_register() for HDVICP is successful
    [0][ 0.002] ivahd.c:428: ivahd_release DEBUG: ivahd release
    [0][ 0.002] dce.c:467: connect DEBUG: <<
    [0][ 0.002] dce.c:1562: dce_main DEBUG: REGISTER rpmsg-dce
    [0][ 0.002]
    [0][ 0.002] OMAPRPC: registered channel: rpmsg-dce
    [0][ 0.003] OMAPRPC: Returning Object @8020c3a0
    [1][ 0.003] OMAPRPC: connecting from local endpoint 102 to port 102
    [0][ 0.003] dce.c:1569: dce_main DEBUG: rpmsg-dce running through MmServiceMgr
    [1][ 0.003] registering rpmsg-rpc:rpmsg-dce service on 102 with HOST
    [0][ 0.003] dce.c:1574: dce_main DEBUG: deleted rpmsg-dce
    [1][ 0.003] OMAPRPC: started channel rpmsg-dce on port: 102
    [0][ 2.644] OMAPRPC: received msg type: 0 len: 8 from addr: 1024
    [0][ 2.645] OMAPRPC: channel info query - name dce-callback fxns 4
    [0][ 2.645] OMAPRPC: Replying with msg type: 1 to addr: 1024 from: 101 len: 12
    [0][ 2.664] OMAPRPC: received msg type: 0 len: 8 from addr: 1025
    [0][ 2.665] OMAPRPC: channel info query - name rpmsg-dce fxns 9
    [0][ 2.665] OMAPRPC: Replying with msg type: 1 to addr: 1025 from: 102 len: 12
    [0][ 2.683] OMAPRPC: received msg type: 2 len: 216 from addr: 1024
    [0][ 2.684] OMAPRPC: function query of type 1
    [0][ 2.684] OMAPRPC: Replying with msg type: 3 to addr: 1024 from: 101 len: 216
    [0][ 2.702] OMAPRPC: received msg type: 2 len: 216 from addr: 1025
    [0][ 2.702] OMAPRPC: function query of type 1
    [0][ 2.702] OMAPRPC: Replying with msg type: 3 to addr: 1025 from: 102 len: 216
    [0][ 2.721] OMAPRPC: received msg type: 2 len: 216 from addr: 1024
    [0][ 2.721] OMAPRPC: function query of type 1
    [0][ 2.721] OMAPRPC: Replying with msg type: 3 to addr: 1024 from: 101 len: 216
    [0][ 2.739] OMAPRPC: received msg type: 2 len: 216 from addr: 1025
    [0][ 2.739] OMAPRPC: function query of type 1
    [0][ 2.739] OMAPRPC: Replying with msg type: 3 to addr: 1025 from: 102 len: 216
    [0][ 2.758] OMAPRPC: received msg type: 2 len: 216 from addr: 1024
    [0][ 2.758] OMAPRPC: function query of type 1
    [0][ 2.758] OMAPRPC: Replying with msg type: 3 to addr: 1024 from: 101 len: 216
    [0][ 2.776] OMAPRPC: received msg type: 2 len: 216 from addr: 1025
    [0][ 2.777] OMAPRPC: function query of type 1
    [0][ 2.777] OMAPRPC: Replying with msg type: 3 to addr: 1025 from: 102 len: 216
    [0][ 2.795] OMAPRPC: received msg type: 2 len: 216 from addr: 1024
    [0][ 2.795] OMAPRPC: function query of type 1
    [0][ 2.795] OMAPRPC: Replying with msg type: 3 to addr: 1024 from: 101 len: 216
    [0][ 2.814] OMAPRPC: received msg type: 2 len: 216 from addr: 1025
    [0][ 2.814] OMAPRPC: function query of type 1
    [0][ 2.814] OMAPRPC: Replying with msg type: 3 to addr: 1025 from: 102 len: 216
    [0][ 2.842] OMAPRPC: received msg type: 2 len: 216 from addr: 1025
    [0][ 2.842] OMAPRPC: function query of type 1
    [0][ 2.842] OMAPRPC: Replying with msg type: 3 to addr: 1025 from: 102 len: 216
    [0][ 2.861] OMAPRPC: received msg type: 2 len: 216 from addr: 1025
    [0][ 2.861] OMAPRPC: function query of type 1
    [0][ 2.861] OMAPRPC: Replying with msg type: 3 to addr: 1025 from: 102 len: 216
    [0][ 2.880] OMAPRPC: received msg type: 2 len: 216 from addr: 1025
    [0][ 2.880] OMAPRPC: function query of type 1
    [0][ 2.880] OMAPRPC: Replying with msg type: 3 to addr: 1025 from: 102 len: 216
    [0][ 2.899] OMAPRPC: received msg type: 2 len: 216 from addr: 1025
    [0][ 2.899] OMAPRPC: function query of type 1
    [0][ 2.899] OMAPRPC: Replying with msg type: 3 to addr: 1025 from: 102 len: 216
    [0][ 2.918] OMAPRPC: received msg type: 2 len: 216 from addr: 1025
    [0][ 2.918] OMAPRPC: function query of type 1
    [0][ 2.918] OMAPRPC: Replying with msg type: 3 to addr: 1025 from: 102 len: 216
    [0][ 3.001] loadTask: cpu load = 24%
    [0][ 4.001] loadTask: cpu load = 21%
    [0][ 5.001] loadTask: cpu load = 0%
    [0][ 11.660] OMAPRPC: received msg type: 6 len: 56 from addr: 1026
    [0][ 11.660] createService: new OMX Service at endpoint: 103
    [0][ 11.661] OMAPRPC: created service instance named: rpmsg-dce (status=0) addr: 103
    [0][ 11.661] OMAPRPC: Replying with msg type: 8 to addr: 1026 from: 102 len: 16
    [0][ 12.001] loadTask: cpu load = 8%
    [0][ 12.070] OMAPRPC: received msg type: 4 len: 12 from addr: 1026
    [0][ 12.070] dce.c:1444: dce_SrvDelNotification DEBUG: dce_SrvDelNotification: cleanup existing codec and engine
    [0][ 12.070]
    [0][ 12.070] dce.c:1447: dce_SrvDelNotification DEBUG: cleanup: mm_serv_id=0x67
    [0][ 12.070] dce.c:1521: dce_SrvDelNotification DEBUG: dce_SrvDelNotification: COMPLETE exit function
    [0][ 12.070]
    [0][ 12.071] OMAPRPC: destroying instance addr: 103
    [1][ 12.071] RcmServer_serverThrFxn_P: Exiting thread.
    [0][ 12.071] deleteService: removed RcmServer at endpoint: 103
    [0][ 12.071] OMAPRPC: Replying with msg type: 7 to addr: 1026 from: 102 len: 16
    [0][ 13.001] loadTask: cpu load = 10%
    [0][ 13.168] OMAPRPC: received msg type: 6 len: 56 from addr: 1026
    [0][ 13.168] createService: new OMX Service at endpoint: 103
    [0][ 13.168] OMAPRPC: created service instance named: rpmsg-dce (status=0) addr: 103
    [0][ 13.168] OMAPRPC: Replying with msg type: 8 to addr: 1026 from: 102 len: 16
    [0][ 13.304] OMAPRPC: received msg type: 4 len: 12 from addr: 1026
    [0][ 13.305] dce.c:1444: dce_SrvDelNotification DEBUG: dce_SrvDelNotification: cleanup existing codec and engine
    [0][ 13.305]
    [0][ 13.305] dce.c:1447: dce_SrvDelNotification DEBUG: cleanup: mm_serv_id=0x67
    [0][ 13.305] dce.c:1521: dce_SrvDelNotification DEBUG: dce_SrvDelNotification: COMPLETE exit function
    [0][ 13.305]
    [0][ 13.305] OMAPRPC: destroying instance addr: 103
    [1][ 13.305] RcmServer_serverThrFxn_P: Exiting thread.
    [0][ 13.305] deleteService: removed RcmServer at endpoint: 103
    [0][ 13.306] OMAPRPC: Replying with msg type: 7 to addr: 1026 from: 102 len: 16
    [0][ 14.001] loadTask: cpu load = 19%
    [0][ 15.001] loadTask: cpu load = 1%
    [0][ 17.274] OMAPRPC: received msg type: 6 len: 56 from addr: 1026
    [0][ 17.274] createService: new OMX Service at endpoint: 103
    [0][ 17.274] OMAPRPC: created service instance named: rpmsg-dce (status=0) addr: 103
    [0][ 17.274] OMAPRPC: Replying with msg type: 8 to addr: 1026 from: 102 len: 16
    [0][ 17.342] OMAPRPC: received msg type: 4 len: 12 from addr: 1026
    [0][ 17.343] dce.c:1444: dce_SrvDelNotification DEBUG: dce_SrvDelNotification: cleanup existing codec and engine
    [0][ 17.343]
    [0][ 17.343] dce.c:1447: dce_SrvDelNotification DEBUG: cleanup: mm_serv_id=0x67
    [0][ 17.343] dce.c:1521: dce_SrvDelNotification DEBUG: dce_SrvDelNotification: COMPLETE exit function
    [0][ 17.343]
    [0][ 17.343] OMAPRPC: destroying instance addr: 103
    [1][ 17.343] RcmServer_serverThrFxn_P: Exiting thread.
    [0][ 17.343] deleteService: removed RcmServer at endpoint: 103
    [0][ 17.343] OMAPRPC: Replying with msg type: 7 to addr: 1026 from: 102 len: 16
    [0][ 18.001] loadTask: cpu load = 16%
    [0][ 19.001] loadTask: cpu load = 0%
    [0][ 22.220] OMAPRPC: received msg type: 6 len: 56 from addr: 1026
    [0][ 22.221] createService: new OMX Service at endpoint: 103
    [0][ 22.221] OMAPRPC: created service instance named: rpmsg-dce (status=0) addr: 103
    [0][ 22.221] OMAPRPC: Replying with msg type: 8 to addr: 1026 from: 102 len: 16
    [0][ 22.252] OMAPRPC: received msg type: 4 len: 12 from addr: 1026
    [0][ 22.252] dce.c:1444: dce_SrvDelNotification DEBUG: dce_SrvDelNotification: cleanup existing codec and engine
    [0][ 22.252]
    [0][ 22.253] dce.c:1447: dce_SrvDelNotification DEBUG: cleanup: mm_serv_id=0x67
    [0][ 22.253] dce.c:1521: dce_SrvDelNotification DEBUG: dce_SrvDelNotification: COMPLETE exit function
    [0][ 22.253]
    [0][ 22.253] OMAPRPC: destroying instance addr: 103
    [1][ 22.253] RcmServer_serverThrFxn_P: Exiting thread.
    [0][ 22.253] deleteService: removed RcmServer at endpoint: 103
    [0][ 22.253] OMAPRPC: Replying with msg type: 7 to addr: 1026 from: 102 len: 16
    [0][ 23.001] loadTask: cpu load = 17%
    [0][ 24.001] loadTask: cpu load = 1%
    [0][ 32.245] dce.c:221: dce_suspend INFO: Preparing for suspend...

    jacinto6evm:/ # dmesg | grep remoteproc
    [ 1.421523] remoteproc0: 55020000.ipu is available
    [ 1.421529] remoteproc0: Note: remoteproc is still under development and considered experimental.
    [ 1.421534] remoteproc0: THE BINARY FORMAT IS NOT YET FINALIZED, and backward compatibility isn't yet guaranteed.
    [ 1.421637] remoteproc0: Direct firmware load for dra7-ipu2-fw.xem4 failed with error -2
    [ 1.421642] remoteproc0: Falling back to user helper
    [ 1.820718] ueventd: firmware: loading 'dra7-ipu2-fw.xem4' for '/devices/platform/44000000.ocp/55020000.ipu/remoteproc0/firmware/dra7-ipu2-fw.xem4'
    [ 1.869427] ueventd: loading /devices/platform/44000000.ocp/55020000.ipu/remoteproc0/firmware/dra7-ipu2-fw.xem4 took 48ms
    [ 1.879270] remoteproc0: vring0: va f1c00000 qsz 256 notifyid 0
    [ 1.895817] ueventd: firmware: loading 'dra7-ipu2-fw.xem4' for '/devices/platform/44000000.ocp/55020000.ipu/remoteproc0/firmware/dra7-ipu2-fw.xem4'
    [ 1.896017] remoteproc0: vring1: va f1c04000 qsz 256 notifyid 1
    [ 1.896025] remoteproc0: powering up 55020000.ipu
    [ 1.896031] remoteproc0: Booting fw image dra7-ipu2-fw.xem4, size 3755368
    [ 1.948309] remoteproc0: remote processor 55020000.ipu is now up
    [ 1.949321] remoteproc0: registered virtio0 (type 7)
    [ 4.563548] ueventd: loading /devices/platform/44000000.ocp/55020000.ipu/remoteproc0/firmware/dra7-ipu2-fw.xem4 took 2667ms

  • Hi Yang,

    Which Android SDK is being used here. TI's Android SDK did not have the support for IPUMM with vDRM.

    But this was supported with Linux + VisionSDK 3.04 onwrards. 

    Thanks

    RamPrasad

  • Hi Ramprasad,

    We use Android 8.1 & 6AO1.1. 

    And for this error,  I found in dce   the origin code use /dev/dri/renderD128,  but this is vdrm device, so I change it to /dev/dri/renderD131 which is omapdrm device, and this error can be fixed.  But there is other issue, list below.  when I check the the whole code, I found /dev/dri/renderD128 many times, and no /dev/dri/renderD131.  Should I change all /dev/dri/renderD128 to /dev/dri/renderD131? 

    [ 154.830362] rpmsg_rpc rpmsg-dce: replacing UVA ad52e500 at KVA d1622024 prt_idx = 3 pg_offset = 0x24 fd = 46
    [ 154.840269] rpmsg_rpc rpmsg-dce: buva = ad52e500 uva = ad52e500 offset = 0 [0x0000000000000000] fd = 46
    [ 154.849929] rpmsg_rpc rpmsg-dce: error from rproc_pa_to_da, rproc = ee278800, pa = 0x00000000f0600000 ret = -22 pid=1368, name=HwBinder:218_3
    [ 154.862718] rpmsg_rpc rpmsg-dce: host uva ad52e500 == host pa 0x00000000f0600000 => remote da (null) (fd 46)
    [ 154.872791] rpmsg_rpc rpmsg-dce: unwinding UVA to RDA translations! translation = 1
    [ 154.880507] rpmsg_rpc rpmsg-dce: starting translation 0 of -1 by -1

     

  • Hi yang,

    Render nodes are not supported by TI's SDK.  For drm devices /dev/dri/cardX will be used and for ipumm , /dev/rpmsg-dce node will be used.