AnsweredAssumed Answered

E/v_hwc: open /dev/graphics/fb0 failed - android jb 4.2.2

Question asked by varsmolta on Jul 13, 2014
Latest reply on Jul 21, 2014 by Bio_TICFSL

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!

Outcomes