@stelistcristi
I have been trying to make Nameless HWC work on our device (again). JB HWC is out of the question since it implements the 0.3 API which is not supported since Android 4.3.
- Pushed hw/hwcomposer.exynos4.so, libcec.so, libddc.so, libedid.so, libExynosHWCService.so, libExynosIPService.so, libhdmi.so, libhdmiclient.so, libTVOut.so to my Note.
- At this point there's a crash in libfimg.so because HWC calls stretchFimgApi but we only have the 3X API and not 4X, so the parameters are invalid. I asked @bauner to recompile libfimg.so so that function does nothing and returns successfully. No more crash, but that might cause display garbage later
- HWC then complains with "s5p-smem open error!". /dev/s5p-smem is created by the kernel when CONFIG_EXYNOS_CONTENT_PATH_PROTECTION is set. Unfortunately this config depends on CONFIG_ARM_TRUSTZONE that makes the kernel bootloop when enabled... So I removed the dependency. Maybe it's not even used, who knows.
- Permissions errors on /dev/s5p-smem then happen so a 'chmod 0777 /dev/s5p-smem' is required.
- HWC then crashes with the backtrace:
Here's a logcat.
EDIT:
Tried to replace the sw_csc_YuvToRgb call with NOPs but it crashes later in compose_rgb_overlay_layer so it might be better to find the cause.
I have been trying to make Nameless HWC work on our device (again). JB HWC is out of the question since it implements the 0.3 API which is not supported since Android 4.3.
- Pushed hw/hwcomposer.exynos4.so, libcec.so, libddc.so, libedid.so, libExynosHWCService.so, libExynosIPService.so, libhdmi.so, libhdmiclient.so, libTVOut.so to my Note.
- At this point there's a crash in libfimg.so because HWC calls stretchFimgApi but we only have the 3X API and not 4X, so the parameters are invalid. I asked @bauner to recompile libfimg.so so that function does nothing and returns successfully. No more crash, but that might cause display garbage later
- HWC then complains with "s5p-smem open error!". /dev/s5p-smem is created by the kernel when CONFIG_EXYNOS_CONTENT_PATH_PROTECTION is set. Unfortunately this config depends on CONFIG_ARM_TRUSTZONE that makes the kernel bootloop when enabled... So I removed the dependency. Maybe it's not even used, who knows.
- Permissions errors on /dev/s5p-smem then happen so a 'chmod 0777 /dev/s5p-smem' is required.
- HWC then crashes with the backtrace:
Code:
#0 _Z15sw_csc_YuvToRgbPjP7sec_imgP8sec_rectj
#1 _Z25compose_rgb_overlay_layerP13hwc_context_tP11hwc_layer_1P14hwc_win_info_ti
#2 _Z15hwc_fence_clearP22hwc_display_contents_1
EDIT:
Tried to replace the sw_csc_YuvToRgb call with NOPs but it crashes later in compose_rgb_overlay_layer so it might be better to find the cause.
Last edited: