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.

Linux/DRA74: Surface will not be rendered when screen rotates;

Part Number: DRA74


Tool/software: Linux

Surface will not be rendered when screen rotates;

when our app run in android 8.1, there are some errors which can be found in log:

12-21 03:30:38.567 211 211 I ti_hwc : Setting up plane 37 and connecting connector 36 to crtc 38
12-21 03:30:38.576 211 211 E ti_hwc : cannot set CRTC for connector 36 (-22): m
12-21 03:30:38.576 211 211 E ti_hwc : Failed to update display 1
12-21 03:30:39.610 211 211 E ti_hwc : cannot set CRTC for connector 36 (-22): m
12-21 03:30:39.610 211 211 E ti_hwc : Failed to update display 1
12-21 03:30:39.610 211 211 E SurfaceFlinger: [SurfaceView - com.singulato.surfaceviewtest/com.singulato.surfaceviewtest.MainActivity#0] rejecting buffer: bufWidth=150, bufHeight=300, front.active.{w=300, h=150}
12-21 03:30:39.617 211 211 I ti_hwc : Setting up plane 37 and connecting connector 36 to crtc 38
12-21 03:30:39.629 211 211 E ti_hwc : cannot set CRTC for connector 36 (-22): m
12-21 03:30:39.629 211 211 E ti_hwc : Failed to update display 1
12-21 03:30:39.629 211 211 E SurfaceFlinger: [SurfaceView - com.singulato.surfaceviewtest/com.singulato.surfaceviewtest.MainActivity#0] rejecting buffer: bufWidth=150, bufHeight=300, front.active.{w=300, h=150}

The attached files is our test codes and full running log; It looks like there are some bugs.app.1.logSurfaceViewTest.zip

  • Hi,

    Couple of questions

      - What TI release is being used here?
      - Do you see the issue only when screen is rotated? I see `display 1` in
        logs, is it dual display configuration. If so do you see same error if
        posted to other display as well.
      - Could you post the output of `dumpsys SurfaceFlinger` for both the cases of
        no-rotation and rotation.

    Rotation necessiates change in the surface and viewport, what I suspect is that
    in your test the surface and viewport are not adjusted post the rotation
    request.

    Thanks,
    Gowtham

  • four_dumpsys.logHi,

    - What TI release is being used here?
    The release infos as following:

    Linux® 4.4.117
    Android: Android™ Oreo™ MR1 8.1 (OPM1.171019.021)
    Toolchain: Android linux-x86 toolchain android-eabi-4.9
    Supported J6 Platforms: J6 EVM (REV H), J6 Eco EVM (Rev C), J6 Entry EVM, and J6 Plus EVM
    IPC Version: 3.47.01.00
    Build Host OS: Ubuntu 64 bit with Java8
    Daily Build Version: JACINTO6_O_DB build 185

    processors.wiki.ti.com/.../6AO.1.1_Release_Notes

    - Do you see the issue only when screen is rotated? I see `display 1` in
    logs, is it dual display configuration. If so do you see same error if
    posted to other display as well.

    This issue only happens when the orientation of screen change from portrait to landscape;
    It is not dual display configuration.

    Compare to the Android™ 8.0 Oreo™ (OPR6.170623.023) , when the screen orientation change from portrait to landscape, the system of Android 8.0 will invoke the method setBuffersDimensions from vendor’s egl lib; But the system of Android 8.1 will not invoke this method;

    - Could you post the output of `dumpsys SurfaceFlinger` for both the cases of
    no-rotation and rotation.
    The attached file is the outputs of `dumpsys SurfaceFlinger`. Corresponding to outpus, the screen orientation changes as follow:landscape -> landscape -> portrait -> landscape. The issue happened when portrait -> landscape.

    The same app can work very well with Android™ 8.0 Oreo™ (OPR6.170623.023) in Dra745.
    We also test the app in mobile with Android 8.1, it work very well too;

  • > This issue only happens when the orientation of screen change from portrait
    > to landscape; It is not dual display configuration.

    Are you using both the displays? `dumpsys` log is indicating two displays being
    used. Can you confirm if you are using two displays.

    If you are using two displays, can you disable the second display. The log
    indicates error with the second display. I want to see if it indeed is issue
    with second display.

    If you are not using two displays, then we need to see why the second display
    is getting configured in your setup.

    > when the screen orientation change from portrait to landscape, the system of
    > Android 8.0 will invoke the method setBuffersDimensions from vendor’s egl
    > lib; But the system of Android 8.1 will not invoke this method;

    It could be that the surface is not adjusted for the new dims. To confirm that
    suspicion you can try changing the width and height to 300, and see if that
    works fine.

    Thanks,
    Gowtham

  • Hi Gowtham:

    Now we disable the second display. The issue happened too. There are more information in the attached files.

    if we change the width and height to 300, It works fine.

    four_dumpsys_close_hdmi.log

    serial_logcat_close_hdmi.log

  • Hi Guangyu,

    Thanks for trying those runs. Below are some comments and observations.

    -0-
    In the logcat I am not seeing any errors. What do you see on the display - a blank region on where 150x300 surface should be?

    -1-
    I see below from the dumpsys

    **no rotation case**

    ```
    Hardware Composer state (version 01010000):
      mDebugForceFakeVSync=0
      Display[0] configurations (* current):
        * 0: 1280x800, xdpi=150.000000, ydpi=150.000000, refresh=16666666, colorMode=0
      numHwLayers=5, flags=00000000
        type   |  handle  | hint | flag | tr | blnd |   format    |     source crop (l,t,r,b)      |          frame         | name
    -----------+----------+------+------+----+------+-------------+--------------------------------+------------------------+------
          GLES | b12a41c0 | 0000 | 0000 | 00 | 0100 | RGBx_8888   |      0,      0,    300,    150 |  454,  156,  754,  306 | SurfaceView - com.singulato.surfaceviewtest/com.singulato.surfaceviewtest.MainActivity#0
          GLES | b12a4100 | 0000 | 0000 | 00 | 0105 | RGBA_8888   |      0,      0,   1280,    800 |    0,    0, 1280,  800 | com.singulato.surfaceviewtest/com.singulato.surfaceviewtest.MainActivity#0
           HWC | b12a3f80 | 0000 | 0000 | 00 | 0105 | RGBA_8888   |      0,      0,   1280,     84 |    0,    0, 1280,   84 | StatusBar#0
           HWC | b12a39e0 | 0000 | 0000 | 00 | 0105 | RGBA_8888   |      0,      0,     72,    800 | 1208,    0, 1280,  800 | CarNavigationBar#0
     FB TARGET | b12a3740 | 0000 | 0000 | 00 | 0105 | RGBA_8888   |      0,      0,   1280,    800 |    0,    0, 1280,  800 | HWC_FRAMEBUFFER_TARGET
    ```

    **rotation case**

    ```
    Hardware Composer state (version 01010000):
      mDebugForceFakeVSync=0
      Display[0] configurations (* current):
        * 0: 1280x800, xdpi=150.000000, ydpi=150.000000, refresh=16666666, colorMode=0
      numHwLayers=5, flags=00000000
        type   |  handle  | hint | flag | tr | blnd |   format    |     source crop (l,t,r,b)      |          frame         | name
    -----------+----------+------+------+----+------+-------------+--------------------------------+------------------------+------
          GLES | b0f987e0 | 0000 | 0000 | 00 | 0100 | RGBx_8888   |      0,      0,    150,    300 |  156,  250,  306,  550 | SurfaceView - com.singulato.surfaceviewtest/com.singulato.surfaceviewtest.MainActivity#0
          GLES | b0f98480 | 0000 | 0000 | 00 | 0105 | RGBA_8888   |      0,      0,   1280,    800 |    0,    0, 1280,  800 | com.singulato.surfaceviewtest/com.singulato.surfaceviewtest.MainActivity#0
           HWC | b0f981e0 | 0000 | 0000 | 00 | 0105 | RGBA_8888   |      0,      0,     84,    800 |    0,    0,   84,  800 | StatusBar#0
           HWC | b0f98ba0 | 0000 | 0000 | 00 | 0105 | RGBA_8888   |      0,      0,     72,    800 | 1208,    0, 1280,  800 | CarNavigationBar#0
     FB TARGET | b12a3740 | 0000 | 0000 | 00 | 0105 | RGBA_8888   |      0,      0,   1280,    800 |    0,    0, 1280,  800 | HWC_FRAMEBUFFER_TARGET
    ```

    Apart from your test app, I see *StatusBar#0* getting rotated as well. Do you
    see the *StatusBar#0* rotated on the display? If you do see *StatusBar#0*
    getting rotated on the display, it might be that the surface is not getting
    reconfigured for the changed in rotation, but would want to confirm on the
    StatusBar first.

    Thanks,
    Gowtham

  • -0-
    In the logcat I am not seeing any errors. What do you see on the display - a blank region on where 150x300 surface should be?

    You can see some errors in logcat, just like this:

    18-Serial-COM404-11 05:41:46.749   205   205 E SurfaceFlinger: [SurfaceView - com.singulato.surfaceviewtest/com.singulato.surfaceviewtest.MainActivity#0] rejecting buffer: bufWidth=150, bufHeight=300, front.active.{w=300, h=150}

    when you click the SurfaceView, our app will change the its color every seconds, when issue happen, the color of SurfaceView will not change;

    -1-

    Yes, I see  *StatusBar#0* getting rotated on the display. The issue only happen when you use SurfaceView, native surface or EGLSurface to show something for example movie;

  • -0-

    > You can see some errors in logcat, just like this:
    >
    >18-Serial-COM404-11 05:41:46.749   205   205 E SurfaceFlinger: [SurfaceView - com.singulato.surfaceviewtest/com.singulato.surfaceviewtest.MainActivity#0] rejecting buffer: bufWidth=150, bufHeight=300, front.active.{w=300, h=150}

    I was mainly looking for the errors in `ti_hwc` as they are getting reported
    earlier. Missed this, but this ones to be along the suspicion lines. The buffer
    dimensions are not matching up with the transformation setting to the surface.

    In the case of 300x300 buffer try, the dimensions are matching in rotation and
    hence no errors.

    I see transform setting to be set for rotation in dumpsys log.
        - `mCurrentTransform=0x4` and `transform-hint=07`

    It is likely that the app is doing rotation and as well as the framework.

    > when you click the SurfaceView, our app will change the its color every
    > seconds, when issue happen, the color of SurfaceView will not change;

    This is because, the updates are not happening from SurfaceFlinger due to
    dimensions mismatch (app is assuming one and SF is expecting another), and its
    using the previously updated one.

    -1-

    > Yes, I see  *StatusBar#0* getting rotated on the display. The issue only
    > happen when you use SurfaceView, native surface or EGLSurface to show
    > something for example movie;

    What is the intent of the experiment, are you rotating only the test app or the
    entire UI. Why is `StatusBar#0` getting rotated, when you are rotating the
    application.

    Thanks,
    Gowtham

  • Hi Gowtham:

    Become the issue also happen in our video app, but it is a little complex. So I write a simple one to reproduce the issue.

    In our test app, we use the method "setRequestedOrientation" to rotate entire UI.

    There is some errors in my description about the issue; The issue only happens when you use OpenGL ES to render something; In our test app, we use the GLSurfaceView; 

    The attached file "surface81.txt" is a new log in which you can see some log about Surface (in libgui).  Obviously after the screen orientation change from port to landscape, you can see the method setBuffersDimensions not be invoked to Surface(0x8b6d8800) . In log you can search the text "ClearGLSurfaceView: to LANDSCAPE " which means the method "setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE)" be invoked.

    The attached file "surface80.txt" is a new log of Android 8.0 with the same operation like in android 8.1. 

    Anyway, the same test app can work very well in Android™ 8.0 Oreo™ (OPR6.170623.023). So I think there are some bugs in libpvrANDROID_WSEGL , libIMGegl or libGLESv1_CM_POWERVR_SGX544_116.

    Thanks

    surface81.txt

    1942.txt

    surface80.txt

  • Hi,

    > The attached file "surface81.txt" is a new log in which you can see some log
    > about Surface (in libgui).  Obviously after the screen orientation change
    > from port to landscape, you can see the method setBuffersDimensions not be
    > invoked to Surface(0x8b6d8800)

    Want to confirm we are seeing the same logs. I see below `setBuffersDimensions`
    being called in both the files.

    In `surface80.txt`
    ```
    01-01 08:05:10.815  3835  3890 D ClearGLSurfaceView: to LANDSCAPE
    01-01 08:05:10.815  3835  3890 V Surface : Surface::query
    01-01 08:05:10.816  3835  3890 I chatty  : uid=10069(u0_a69) GLThread 194 identical 1 line
    01-01 08:05:10.816  3835  3890 V Surface : Surface::query
    01-01 08:05:10.816  3835  3890 V Surface : Surface::setBuffersDimensions width = 200 height = 400 t = 4 0x8c617800
    01-01 08:05:10.820   176   176 V Surface : Surface::query
    01-01 08:05:10.820   176   176 I chatty  : uid=1000(system) /system/bin/surfaceflinger identical 1 line
    01-01 08:05:10.820   176   176 V Surface : Surface::query
    01-01 08:05:10.820   176   176 V Surface : Surface::setBuffersDimensions width = 1920 height = 1080 t = 0 0xa5df8000
    ```

    In `surface81.txt`
    ```
    01-15 14:29:05.231  1868  1942 D ClearGLSurfaceView: to LANDSCAPE
    01-15 14:29:05.231  1868  1942 V Surface : Surface::query
    01-15 14:29:05.231  1868  1942 I chatty  : uid=10070(com.singulato.surfaceviewtest) GLThread 158 identical 1 line
    01-15 14:29:05.231  1868  1942 V Surface : Surface::query
    01-15 14:29:05.231  1868  1942 V Surface : Surface::setBuffersDimensionsi w=200 h=400 0x8b6d8800
    01-15 14:29:05.234   287   407 I InputReader: Reconfiguring input devices.  changes=0x00000004
    01-15 14:29:05.234   287   407 I InputReader: Device reconfigured: id=3, name='Atmel maXTouch Touchscreen', size 1920x1080, orientation 0, mode 1, display id 0
    ```

    > Anyway, the same test app can work very well in Android™ 8.0 Oreo™
    > (OPR6.170623.023). So I think there are some bugs in libpvrANDROID_WSEGL ,
    > libIMGegl or libGLESv1_CM_POWERVR_SGX544_116.

    I am not sure if there is in general a bug for rotation per se, I tested the
    screen UI orientation changes again on 6AO1.1 that works as expected and you
    noticed the `StatusBar#0` being rotated as well in the test.

    I think the issue is likely how the framework is being used to achieve
    rotation. There could have been a API change, as you are suspecting, between
    8.0 and 8.1 that made 8.0 to work. Could you take a look at the rotation sample
    in the AOSP ApiDemos.

        development/samples/ApiDemos/src/com/example/android/apis/app/ScreenOrientation.java

    If you install the ApiDemos.apk, you can find the orientation section in
    `App/Activity/ScreenOrientation.

    Thanks,
    Gowtham

  • Hi Gowtham:

    In `surface80.txt`, we can see "setBuffersDimensions" be invoked several times (mark as red color) , at last width = 400, height = 200. (btw. GLSurfaceView render thread id is 3890, pid = 3835)

    01-01 08:05:10.815 3835 3890 D ClearGLSurfaceView: to LANDSCAPE
    01-01 08:05:10.815 3835 3890 V Surface : Surface::query
    01-01 08:05:10.816 3835 3890 I chatty : uid=10069(u0_a69) GLThread 194 identical 1 line
    01-01 08:05:10.816 3835 3890 V Surface : Surface::query
    01-01 08:05:10.816 3835 3890 V Surface : Surface::setBuffersDimensions width = 200 height = 400 t = 4 0x8c617800
    01-01 08:05:10.944 3835 3890 D setBuffersDimensions: #00 pc 00061f9b /system/lib/libgui.so (_ZN7android7Surface20setBuffersDimensionsEjj+82)
    01-01 08:05:10.944 3835 3890 D setBuffersDimensions: #01 pc 0005f0bd /system/lib/libgui.so (_ZN7android7Surface12hook_performEP13ANativeWindowiz+40)
    01-01 08:05:10.944 3835 3890 D setBuffersDimensions: #02 pc 00001431 /vendor/lib/libpvrANDROID_WSEGL.so
    01-01 08:05:10.944 3835 3890 D setBuffersDimensions: #03 pc 00005143 /vendor/lib/libIMGegl.so (KEGLGetDrawableParameters+86)
    01-01 08:05:10.944 3835 3890 D setBuffersDimensions: #04 pc 00026b4b /vendor/lib/egl/libGLESv1_CM_POWERVR_SGX544_116.so
    01-01 08:05:10.944 3835 3890 D setBuffersDimensions: #05 pc 000124f1 /vendor/lib/egl/libGLESv1_CM_POWERVR_SGX544_116.so (glClear+128)
    01-01 08:05:10.944 3835 3890 D setBuffersDimensions: #06 pc 003dfc4f /system/framework/arm/boot-framework.oat (offset 0x5c2000)
    01-01 08:05:10.944 3835 3890 V Surface : Surface::dequeueBuffer mReqWidth=200 mReqHeight=400 mUserWidth=0 mUserHeight=0
    01-01 08:05:10.948 3835 3890 V Surface : Surface::setBuffersTransform
    01-01 08:05:10.948 3835 3890 V Surface : Surface::queueBuffer
    01-01 08:05:10.948 3835 3890 V Surface : Surface::queueBuffer making up timestamp: 312427.51 ms
    01-01 08:05:10.949 3835 3890 V Surface : Surface::query
    01-01 08:05:10.949 3835 3890 I chatty : uid=10069(u0_a69) GLThread 194 identical 1 line
    01-01 08:05:10.949 3835 3890 V Surface : Surface::query
    01-01 08:05:10.949 3835 3890 V Surface : Surface::setBuffersDimensions width = 400 height = 200 t = 4 0x8c617800
    01-01 08:05:11.181 3835 3890 D setBuffersDimensions: #00 pc 00061f9b /system/lib/libgui.so (_ZN7android7Surface20setBuffersDimensionsEjj+82)
    01-01 08:05:11.181 3835 3890 D setBuffersDimensions: #01 pc 0005f0bd /system/lib/libgui.so (_ZN7android7Surface12hook_performEP13ANativeWindowiz+40)
    01-01 08:05:11.181 3835 3890 D setBuffersDimensions: #02 pc 00001431 /vendor/lib/libpvrANDROID_WSEGL.so
    01-01 08:05:11.181 3835 3890 D setBuffersDimensions: #03 pc 00005143 /vendor/lib/libIMGegl.so (KEGLGetDrawableParameters+86)
    01-01 08:05:11.181 3835 3890 D setBuffersDimensions: #04 pc 00026b4b /vendor/lib/egl/libGLESv1_CM_POWERVR_SGX544_116.so
    01-01 08:05:11.181 3835 3890 D setBuffersDimensions: #05 pc 000124f1 /vendor/lib/egl/libGLESv1_CM_POWERVR_SGX544_116.so (glClear+128)
    01-01 08:05:11.181 3835 3890 D setBuffersDimensions: #06 pc 003dfc4f /system/framework/arm/boot-framework.oat (offset 0x5c2000)
    01-01 08:05:11.181 3835 3890 V Surface : Surface::dequeueBuffer mReqWidth=400 mReqHeight=200 mUserWidth=0 mUserHeight=0
    01-01 08:05:11.234 3835 3890 V Surface : Surface::setBuffersTransform
    01-01 08:05:11.234 3835 3890 V Surface : Surface::queueBuffer
    01-01 08:05:11.234 3835 3890 V Surface : Surface::queueBuffer making up timestamp: 312713.36 ms
    01-01 08:05:11.235 3835 3890 V Surface : Surface::query
    01-01 08:05:11.235 3835 3890 I chatty : uid=10069(u0_a69) GLThread 194 identical 1 line
    01-01 08:05:11.235 3835 3890 V Surface : Surface::query
    01-01 08:05:11.235 3835 3890 V Surface : Surface::setBuffersDimensions width = 400 height = 200 t = 0 0x8c617800
    01-01 08:05:11.371 3835 3890 D setBuffersDimensions: #00 pc 00061f9b /system/lib/libgui.so (_ZN7android7Surface20setBuffersDimensionsEjj+82)
    01-01 08:05:11.371 3835 3890 D setBuffersDimensions: #01 pc 0005f0bd /system/lib/libgui.so (_ZN7android7Surface12hook_performEP13ANativeWindowiz+40)
    01-01 08:05:11.371 3835 3890 D setBuffersDimensions: #02 pc 00001431 /vendor/lib/libpvrANDROID_WSEGL.so
    01-01 08:05:11.371 3835 3890 D setBuffersDimensions: #03 pc 00005143 /vendor/lib/libIMGegl.so (KEGLGetDrawableParameters+86)
    01-01 08:05:11.371 3835 3890 D setBuffersDimensions: #04 pc 00026b4b /vendor/lib/egl/libGLESv1_CM_POWERVR_SGX544_116.so
    01-01 08:05:11.371 3835 3890 D setBuffersDimensions: #05 pc 000124f1 /vendor/lib/egl/libGLESv1_CM_POWERVR_SGX544_116.so (glClear+128)
    01-01 08:05:11.371 3835 3890 D setBuffersDimensions: #06 pc 003dfc4f /system/framework/arm/boot-framework.oat (offset 0x5c2000)

    In "surface81.txt" "setBuffersDimensionsi" only be invoked one time. (btw. GLSurfaceView render thread id is 1942, pid = 1868)

    01-15 14:29:05.231 1868 1942 D ClearGLSurfaceView: to LANDSCAPE
    01-15 14:29:05.231 1868 1942 V Surface : Surface::query
    01-15 14:29:05.231 1868 1942 I chatty : uid=10070(com.singulato.surfaceviewtest) GLThread 158 identical 1 line
    01-15 14:29:05.231 1868 1942 V Surface : Surface::query
    01-15 14:29:05.231 1868 1942 V Surface : Surface::setBuffersDimensionsi w=200 h=400 0x8b6d8800
    01-15 14:29:05.339 1868 1942 D setBuffersDimensions: #00 pc 00055be7 /system/lib/libgui.so (android::Surface::setBuffersDimensions(unsigned int, unsigned int)+74)
    01-15 14:29:05.339 1868 1942 D setBuffersDimensions: #01 pc 00052c2f /system/lib/libgui.so (android::Surface::hook_perform(ANativeWindow*, int, ...)+42)
    01-15 14:29:05.339 1868 1942 D setBuffersDimensions: #02 pc 0000117d /vendor/lib/libpvrANDROID_WSEGL.so
    01-15 14:29:05.339 1868 1942 D setBuffersDimensions: #03 pc 000053c3 /vendor/lib/libIMGegl.so (KEGLGetDrawableParameters+90)
    01-15 14:29:05.339 1868 1942 D setBuffersDimensions: #04 pc 00023bd1 /vendor/lib/egl/libGLESv1_CM_POWERVR_SGX544_116.so
    01-15 14:29:05.339 1868 1942 D setBuffersDimensions: #05 pc 0000eb79 /vendor/lib/egl/libGLESv1_CM_POWERVR_SGX544_116.so (glClear+128)
    01-15 14:29:05.339 1868 1942 D setBuffersDimensions: #06 pc 003a4cef /system/framework/arm/boot-framework.oat (offset 0x5d2000)
    01-15 14:29:05.339 1868 1942 V Surface : Surface::dequeueBuffer
    01-15 14:29:05.350 1868 1942 V Surface : Surface::setBuffersTransform
    01-15 14:29:05.350 1868 1942 V Surface : Surface::queueBuffer
    01-15 14:29:05.350 1868 1942 V Surface : Surface::queueBuffer making up timestamp: 55653.64 ms
    01-15 14:29:05.351 1868 1942 V Surface : Surface::query
    01-15 14:29:05.351 1868 1942 V Surface : Surface::dequeueBuffer
    01-15 14:29:05.406 1868 1942 V Surface : Surface::setBuffersTransform
    01-15 14:29:05.408 1868 1942 V Surface : Surface::queueBuffer
    01-15 14:29:05.408 1868 1942 V Surface : Surface::queueBuffer making up timestamp: 55711.48 ms

    Yes,  ApiDemos.apk can work because it do not use GLSurfaceView. I set a breakpoint in onDrawFrame(), this method be invoked normally, but I don't know why "glClear" in Android 8.1 not invokes setBuffersDimensions when the screen orientation changes from portrait to landscape;

    @Override
    public void onDrawFrame(GL10 gl) {
    gl.glClearColor(mRed, mGreen, mBlue, 1.0f);
    gl.glClear(GL10.GL_COLOR_BUFFER_BIT | GL10.GL_DEPTH_BUFFER_BIT);
    }

  • Hi Gowtham,

    The test I mentioned previously was done on dra7-evm board with prebuilt binary image. The only modification I did is to remove the HDMI node from device-tree.

    So, if you have a dra7-evm board in hand, you could install our apk (app-debug.apk) and have a runtime debug.

    Thanks & Best Regards,

    Guangyu

  • Hi Guangyu,

    Just wanted to update you that we are still looking into this issue. I noticed
    few discrepancies that I am trying to resolve. I don't have the complete
    picture yet, and will update you when I decipher more details.

    Thanks,
    Gowtham

    Note: Please feel free to create a new ticket, if you happen to see that the
    thread is locked for any updates.

  • Hi Guangyu,

    Wanted to updated that the debug is still in progress and will update here when
    we have the fix and corresponding patch ready. I bought up an older version of
    the driver against OMR1 and noticed no issues, and at the moment its likely
    that the issue appears to be isolated to the GLSurfaceView with the latest
    driver.

    Thanks,
    Gowtham

  • Hi Gowtham,

    I really appreciate your kind help!

    Waiting for the good news.

    Best Regards,

    Guangyu

  • Hi Guangyu,

    This is still in progress, and is taking longer than expected. Will update you when the fix is ready.

    Thanks,
    Gowtham
  • Hi Guangyu,

    We dont have a fix yet. Meanwhile, If you would like binaries for the older version which resolves the issue do let me know.

    Thanks,
    Gowtham
  • Hi Guangyu,

    We rootcaused the issue and have the fix. You can pick up the updated bins from the below change.

    review.omapzoom.org/

    This should resolve the issue. Please let me know if you see any issues.

    Thanks,
    Gowtham