I am trying to use and lcd output for a android 4.2 build. I've confirmed that hdmi works, but then I switch to another reboot where I try to use only the lcd. After rebooting when I try to use the mouse, I see the lcd flicker as though the backlight is working but I only see a bright backlight on the lcd (and the flickering when I'm moving the mouse). I have confirmed that my spi initialiazation of the lcd is working becuase it works with a non-android os (yocto linux)
In logcat, I get the following:
I/SurfaceFlinger( 2420): SurfaceFlinger is starting
I/SurfaceFlinger( 2420): SurfaceFlinger's main thread ready to run. Initializing graphics H/W...
D/libEGL ( 2420): loaded /system/lib/egl/libEGL_VIVANTE.so
D/libEGL ( 2420): loaded /system/lib/egl/libGLESv1_CM_VIVANTE.so
D/libEGL ( 2420): loaded /system/lib/egl/libGLESv2_VIVANTE.so
W/imx6.gralloc( 2420): 32bpp setting of Framebuffer catched!
W/imx6.gralloc( 2420): using (fd=15)
W/imx6.gralloc( 2420): id = DISP3 BG
W/imx6.gralloc( 2420): xres = 240 px
W/imx6.gralloc( 2420): yres = 320 px
W/imx6.gralloc( 2420): xres_virtual = 256 px
W/imx6.gralloc( 2420): yres_virtual = 1152 px
W/imx6.gralloc( 2420): bpp = 32
W/imx6.gralloc( 2420): r = 0:8
W/imx6.gralloc( 2420): g = 8:8
W/imx6.gralloc( 2420): b = 16:8
W/imx6.gralloc( 2420): width = 38 mm (160.421051 dpi)
W/imx6.gralloc( 2420): height = 51 mm (159.372543 dpi)
W/imx6.gralloc( 2420): refresh rate = 54.66 Hz
I/FslHwcomposer( 2420): fb0 is lcd
I/FslHwcomposer( 2420): device
I/FslHwcomposer( 2420): fb1 is overlay device
W/FslHwcomposer( 2420): open /sys/class/graphics/fb2 failed
W/FslHwcomposer( 2420): open /sys/class/graphics/fb3 failed
W/FslHwcomposer( 2420): open /sys/class/graphics/fb4 failed
W/FslHwcomposer( 2420): open /sys/class/graphics/fb5 failed
I/FslHwcomposer( 2420): hwcomposer: open framebuffer fb0
I/v_hwc ( 2420): Detected display /dev/graphics/fb0
I/v_hwc ( 2420): xres = 240 px
I/v_hwc ( 2420): yres = 320 px
I/v_hwc ( 2420): xres_virtual = 256 px
I/v_hwc ( 2420): yres_virtual = 1152 px
I/v_hwc ( 2420): width = -1 mm (0.0 dpi)
I/v_hwc ( 2420): height = -1 mm (0.0 dpi)
I/v_hwc ( 2420): refresh rate = 54.0 Hz
E/v_hwc ( 2420): open /dev/graphics/fb0 failed
I/v_hwc ( 2420): Vivante HWComposer v2.4
I/v_hwc ( 2420): Device: 0x413d2290
I/v_hwc ( 2420): Separated 2D: YES
I/v_hwc ( 2420): 2D PE20: YES
I/v_hwc ( 2420): Multi-source blit: NO
I/v_hwc ( 2420): Multi-source blit Ex: NO
I/v_hwc ( 2420): OPF/YUV blit/Tiling : NO
I/v_hwc ( 2420): Filter stretch : YES
I/FslHwcomposer( 2420): hwc_device_open,367
I/SurfaceFlinger( 2420): Using composer version 1.1
W/SurfaceFlinger( 2420): no suitable EGLConfig found, trying without EGL_FRAMEBUFFER_TARGET_ANDROID
E/SurfaceFlinger( 2420): HWComposer: framebufferTarget is null
E/SurfaceFlinger( 2420): HWComposer: framebufferTarget is null
E/SurfaceFlinger( 2420): HWComposer: framebufferTarget is null
E/SurfaceFlinger( 2420): HWComposer: framebufferTarget is null
D/MDnsDS ( 2418): MDnsSdListener::Hander starting up
D/MDnsDS ( 2418): MDnsSdListener starting to monitor
D/MDnsDS ( 2418): Going to poll with pollCount 1
I/SurfaceFlinger( 2420): EGL informations:
I/SurfaceFlinger( 2420): vendor : Android
I/SurfaceFlinger( 2420): version : 1.4 Android META-EGL
I/SurfaceFlinger( 2420): extensions: EGL_KHR_image EGL_KHR_image_base EGL_KHR_image_pixmap EGL_KHR_gl_texture_2D_image EGL_KHR_gl_renderbuffer_image EGL_KHR_fence_sync EGL_ANDROID_image_native_buffer
I/SurfaceFlinger( 2420): Client API: OpenGL_ES
I/SurfaceFlinger( 2420): EGLSurface: 8-8-8-8, config=0x4088f138
I/SurfaceFlinger( 2420): OpenGL ES informations:
I/SurfaceFlinger( 2420): vendor : Vivante Corporation
I/SurfaceFlinger( 2420): renderer : GC2000 Graphics Engine
I/SurfaceFlinger( 2420): version : OpenGL ES-CM 1.1
I/SurfaceFlinger( 2420): extensions: GL_EXT_debug_marker GL_OES_blend_equation_separate GL_OES_blend_func_separate GL_OES_blend_subtract GL_OES_byte_coordinates GL_OES_compressed_ETC1_RGB8_texture GL_OES_compressed_paletted_texture GL_OES_draw_texture GL_OES_extended_matrix_palette GL_OES_fixed_point GL_OES_framebuffer_object GL_OES_matrix_get GL_OES_matrix_palette GL_OES_point_size_array GL_OES_point_sprite GL_OES_query_matrix GL_OES_read_format GL_OES_single_precision GL_OES_stencil_wrap GL_OES_texture_cube_map GL_OES_texture_mirrored_repeat GL_OES_EGL_image GL_OES_depth24 GL_OES_element_index_uint GL_OES_fbo_render_mipmap GL_OES_mapbuffer GL_OES_rgb8_rgba8 GL_OES_stencil1 GL_OES_stencil4 GL_OES_stencil8 GL_OES_texture_npot GL_OES_vertex_half_float GL_OES_packed_depth_stencil GL_EXT_texture_format_BGRA8888 GL_IMG_read_format GL_IMG_user_clip_plane GL_APPLE_texture_2D_limited_npot GL_EXT_texture_lod_bias GL_EXT_blend_minmax GL_EXT_read_format_bgra GL_EXT_multi_draw_arrays GL_OES_EGL_sync GL_APPLE_texture_format_BGRA8888 GL_APPLE_te
I/SurfaceFlinger( 2420): GL_MAX_TEXTURE_SIZE = 8192
I/SurfaceFlinger( 2420): GL_MAX_VIEWPORT_DIMS = 8192 x 8192
What is the difference between these two lines?
I/FslHwcomposer( 2420): hwcomposer: open framebuffer fb0
and
E/v_hwc ( 2420): open /dev/graphics/fb0 failed
and why are the two statements conficting?
Also I cannot seem to cat to the fb0 file directly:
127|root@android:/data/local # busybox cat Wwpoker3.raw > /dev/graphics/fb0
cat: write error: Operation not permitted
Here are my fbset params:
mode "240x320-55"
# D: 5.510 MHz, H: 18.367 kHz, V: 54.663 Hz
geometry 240 320 256 1152 32
timings 181488 49 1 4 10 10 2
accel false
rgba 8/0,8/8,8/16,8/24
endmode
and here is the kernel cmdline
root@android:/data/local # cat /proc/cmdline
enable_wait_mode=off console=ttymxc0,115200 vmalloc=400M consoleblank=0 video=mxcfb0:dev=lcd,DTECH,bpp=32 fbmem=10M fb0base=0x27b00000 androidboot.bootdev=sdhci-esdhc-imx.0 androidboot.hardware=freescale androidboot.console=ttymxc0
where DTECH is the name of my lcd and i've also added this to the mxc_lcdif.c file along with the lcd timings.
Thanks for your help!
Please check these links as possible solution to your issue:
https://community.freescale.com/docs/DOC-95283
https://community.freescale.com/message/347949
Hope this helps