Making a little progress. I've got our AOSP tree, TI's kernel and our toolchain. After changing the name of init.omap4.rc to init.omap4430.rc I got through the first issue: E/FramebufferNativeWindow( 1293): couldn't open framebuffer HAL (No such device) Since init.omap4430.rc runs /system/bin/pvrsrvinit and /system/etc/init.omap4.sh run (still need to check that init.omap4.sh actually runs) I get to my second issue (no overlay): I/SurfaceFlinger( 1326): SurfaceFlinger is starting I/SurfaceFlinger( 1326): SurfaceFlinger's main thread ready to run. Initializing graphics H/W... E/SurfaceFlinger( 1326): Couldn't open /sys/power/wait_for_fb_sleep or /sys/power/wait_for_fb_wake D/FramebufferNativeWindow( 1326): frameworks/base/libs/ui/FramebufferNativeWindow.cpp:84: call hw_get_module(-1416 445233) I/HAL ( 1326): checking for /system/lib/hw/gralloc.omap4430.so I/HAL ( 1326): checking for /vendor/lib/hw/gralloc.omap4430.so I/HAL ( 1326): checking for /system/vendor/lib/hw/gralloc.omap4430.so I/HAL ( 1326): hardware/libhardware/hardware.c,165 access returns -1 I/HAL ( 1326): checking for /system/lib/hw/gralloc.omap4.so I/HAL ( 1326): checking for /vendor/lib/hw/gralloc.omap4.so I/HAL ( 1326): checking for /system/vendor/lib/hw/gralloc.omap4.so I/HAL ( 1326): hardware/libhardware/hardware.c,165 access returns 0 I/HAL ( 1326): hardware/libhardware/hardware.c,179 I/HAL ( 1326): hardware/libhardware/hardware.c,184 I/HAL ( 1326): hardware/libhardware/hardware.c,187 load(-1416445233, /system/vendor/lib/hw/gralloc.omap4.so) r eturns 0 D/FramebufferNativeWindow( 1326): frameworks/base/libs/ui/FramebufferNativeWindow.cpp:88 at framebuffer_open D/FramebufferNativeWindow( 1326): Again! D/SurfaceFlinger( 1326): -1403884864: call hw_get_module(109) I/HAL ( 1326): checking for /system/lib/hw/overlay.omap4430.so I/HAL ( 1326): checking for /vendor/lib/hw/overlay.omap4430.so I/HAL ( 1326): checking for /system/vendor/lib/hw/overlay.omap4430.so I/HAL ( 1326): hardware/libhardware/hardware.c,165 access returns -1 I/HAL ( 1326): checking for /system/lib/hw/overlay.omap4.so I/HAL ( 1326): checking for /vendor/lib/hw/overlay.omap4.so I/HAL ( 1326): checking for /system/vendor/lib/hw/overlay.omap4.so I/HAL ( 1326): hardware/libhardware/hardware.c,165 access returns -1 I/HAL ( 1326): checking for /system/lib/hw/overlay.default.so I/HAL ( 1326): hardware/libhardware/hardware.c,179 D/libEGL ( 1326): loaded /system/lib/egl/libGLES_android.so D/EGLUtils( 1326): frameworks/base/libs/ui/EGLUtils.cpp:128 D/EGLUtils( 1326): frameworks/base/libs/ui/EGLUtils.cpp:133 window->query = ab91a8e5 D/EGLUtils( 1326): frameworks/base/libs/ui/EGLUtils.cpp:139 D/EGLUtils( 1326): frameworks/base/libs/ui/EGLUtils.cpp:63 D/EGLUtils( 1326): frameworks/base/libs/ui/EGLUtils.cpp:68 D/EGLUtils( 1326): frameworks/base/libs/ui/EGLUtils.cpp:73 D/EGLUtils( 1326): frameworks/base/libs/ui/EGLUtils.cpp:79 D/EGLUtils( 1326): frameworks/base/libs/ui/EGLUtils.cpp:87 D/EGLUtils( 1326): frameworks/base/libs/ui/EGLUtils.cpp:94 i = 0 D/EGLUtils( 1326): frameworks/base/libs/ui/EGLUtils.cpp:94 i = 1 D/EGLUtils( 1326): frameworks/base/libs/ui/EGLUtils.cpp:94 i = 2 D/EGLUtils( 1326): frameworks/base/libs/ui/EGLUtils.cpp:94 i = 3 D/EGLUtils( 1326): frameworks/base/libs/ui/EGLUtils.cpp:94 i = 4 D/EGLUtils( 1326): frameworks/base/libs/ui/EGLUtils.cpp:94 i = 5 D/EGLUtils( 1326): frameworks/base/libs/ui/EGLUtils.cpp:94 i = 6 D/EGLUtils( 1326): frameworks/base/libs/ui/EGLUtils.cpp:94 i = 7 D/EGLUtils( 1326): frameworks/base/libs/ui/EGLUtils.cpp:103 D/EGLUtils( 1326): frameworks/base/libs/ui/EGLUtils.cpp:107 D/EGLUtils( 1326): frameworks/base/libs/ui/EGLUtils.cpp:114 E/SurfaceFlinger( 1326): couldn't find an EGLConfig matching the screen format E/libEGL ( 1326): validate_display_config:501 error 3005 (EGL_BAD_CONFIG) E/libEGL ( 1326): eglQuerySurface:1075 error 300d (EGL_BAD_SURFACE) W/SurfaceFlinger( 1326): ro.sf.lcd_density not defined, using 160 dpi by default. E/libEGL ( 1326): validate_display_config:501 error 3005 (EGL_BAD_CONFIG) E/libEGL ( 1326): call to OpenGL ES API with no current context (logged once per thread) I/DEBUG ( 1239): *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** I/DEBUG ( 1239): Build fingerprint: 'pandaboard/pandaboard/pandaboard:2.3.3/GRI40/eng.zpfeffer.20110514.063202:e ng/test-keys' I/DEBUG ( 1239): pid: 1326, tid: 1335 >>> system_server <<< I/DEBUG ( 1239): signal 11 (SIGSEGV), code 1 (SEGV_MAPERR), fault addr 00000000 I/DEBUG ( 1239): r0 00000000 r1 00000000 r2 80808080 r3 00000000 I/DEBUG ( 1239): r4 001dc61c r5 00000000 r6 00000000 r7 00000000 I/DEBUG ( 1239): r8 00100000 r9 a811d82d 10 4328d000 fp 00192ea0 I/DEBUG ( 1239): ip a8128cf0 sp 4338cd10 lr a811bb71 pc afd119b4 cpsr 40000110 I/DEBUG ( 1239): d0 6e65704f206f7420 d1 5041205345204c47 I/DEBUG ( 1239): d2 6e20687469772049 d3 6e6572727563206f I made sure I'm using the same cmdline that panda from TI is: # cat /proc/cmdline console=tty0 console=ttyO2,115200n8 rootwait ro earlyprintk fixrtc nocompcache vram=32M omapfb.vram=0:8M mem=456M80000000 mem=512M@0xA0000000 init=/init androidboot.console=ttyO2 omapfb.vram=0:8M omapdss.def_disp=hdmi consoleblank=0 omapdss.debug=y omapfb.debug=y I copied overlay.omap4.so from TIs panda build (build using instructions from http://www.omappedia.org/wiki/PandaBoard_L27.12.1-P2_Release_Notes) which doesn't have any of these problems. adb push ../2_panda_from_ti/out/target/product/pandaboard/system/lib/hw/overlay.omap4.so /system/lib/hw/ And I get to here: (extra debug) I/SurfaceFlinger( 4639): SurfaceFlinger is starting I/SurfaceFlinger( 4639): SurfaceFlinger's main thread ready to run. Initializing graphics H/W... E/SurfaceFlinger( 4639): Couldn't open /sys/power/wait_for_fb_sleep or /sys/power/wait_for_fb_wake D/FramebufferNativeWindow( 4639): frameworks/base/libs/ui/FramebufferNativeWindow.cpp:84: call hw_get_module(-1416 445233) I/HAL ( 4639): checking for /system/lib/hw/gralloc.omap4430.so I/HAL ( 4639): checking for /vendor/lib/hw/gralloc.omap4430.so I/HAL ( 4639): checking for /system/vendor/lib/hw/gralloc.omap4430.so I/HAL ( 4639): hardware/libhardware/hardware.c,165 access returns -1 I/HAL ( 4639): checking for /system/lib/hw/gralloc.omap4.so I/HAL ( 4639): checking for /vendor/lib/hw/gralloc.omap4.so I/HAL ( 4639): checking for /system/vendor/lib/hw/gralloc.omap4.so I/HAL ( 4639): hardware/libhardware/hardware.c,165 access returns 0 I/HAL ( 4639): hardware/libhardware/hardware.c,179 I/HAL ( 4639): hardware/libhardware/hardware.c,184 I/HAL ( 4639): hardware/libhardware/hardware.c,187 load(-1416445233, /system/vendor/lib/hw/gralloc.omap4.so) r eturns 0 D/FramebufferNativeWindow( 4639): frameworks/base/libs/ui/FramebufferNativeWindow.cpp:88 at framebuffer_open D/FramebufferNativeWindow( 4639): Again! D/SurfaceFlinger( 4639): -1403884864: call hw_get_module(109) I/HAL ( 4639): checking for /system/lib/hw/overlay.omap4430.so I/HAL ( 4639): checking for /vendor/lib/hw/overlay.omap4430.so I/HAL ( 4639): checking for /system/vendor/lib/hw/overlay.omap4430.so I/HAL ( 4639): hardware/libhardware/hardware.c,165 access returns -1 I/HAL ( 4639): checking for /system/lib/hw/overlay.omap4.so I/HAL ( 4639): hardware/libhardware/hardware.c,179 I/HAL ( 4639): hardware/libhardware/hardware.c,184 I/HAL ( 4639): hardware/libhardware/hardware.c,187 load(-1403884788, /system/lib/hw/overlay.omap4.so) returns 0 D/TIOverlay( 4639): LCD[0] NAME[hdmi] D/TIOverlay( 4639): LCD[0] PATH[/sys/devices/platform/omapdss/display0/enabled] D/TIOverlay( 4639): LCD[0] timings[25175,640/16/48/96,480/10/33/2 D/TIOverlay( 4639): ] E/TIOverlay( 4639): Can't open the file[/sys/devices/platform/omapdss/display1/name] E/TIOverlay( 4639): lcd name get failed D/libEGL ( 4639): loaded /system/lib/egl/libGLES_android.so D/EGLUtils( 4639): frameworks/base/libs/ui/EGLUtils.cpp:128 D/EGLUtils( 4639): frameworks/base/libs/ui/EGLUtils.cpp:133 window->query = ab91a8e5 D/EGLUtils( 4639): frameworks/base/libs/ui/EGLUtils.cpp:139 D/EGLUtils( 4639): frameworks/base/libs/ui/EGLUtils.cpp:63 D/EGLUtils( 4639): frameworks/base/libs/ui/EGLUtils.cpp:68 D/EGLUtils( 4639): frameworks/base/libs/ui/EGLUtils.cpp:73 D/EGLUtils( 4639): frameworks/base/libs/ui/EGLUtils.cpp:79 D/EGLUtils( 4639): frameworks/base/libs/ui/EGLUtils.cpp:87 D/EGLUtils( 4639): frameworks/base/libs/ui/EGLUtils.cpp:94 i = 0 D/EGLUtils( 4639): frameworks/base/libs/ui/EGLUtils.cpp:94 i = 1 D/EGLUtils( 4639): frameworks/base/libs/ui/EGLUtils.cpp:94 i = 2 D/EGLUtils( 4639): frameworks/base/libs/ui/EGLUtils.cpp:94 i = 3 D/EGLUtils( 4639): frameworks/base/libs/ui/EGLUtils.cpp:94 i = 4 D/EGLUtils( 4639): frameworks/base/libs/ui/EGLUtils.cpp:94 i = 5 D/EGLUtils( 4639): frameworks/base/libs/ui/EGLUtils.cpp:94 i = 6 D/EGLUtils( 4639): frameworks/base/libs/ui/EGLUtils.cpp:94 i = 7 D/EGLUtils( 4639): frameworks/base/libs/ui/EGLUtils.cpp:103 D/EGLUtils( 4639): frameworks/base/libs/ui/EGLUtils.cpp:107 D/EGLUtils( 4639): frameworks/base/libs/ui/EGLUtils.cpp:114 E/SurfaceFlinger( 4639): couldn't find an EGLConfig matching the screen format E/libEGL ( 4639): validate_display_config:501 error 3005 (EGL_BAD_CONFIG) E/libEGL ( 4639): eglQuerySurface:1075 error 300d (EGL_BAD_SURFACE) W/SurfaceFlinger( 4639): ro.sf.lcd_density not defined, using 160 dpi by default. E/libEGL ( 4639): validate_display_config:501 error 3005 (EGL_BAD_CONFIG) E/libEGL ( 4639): call to OpenGL ES API with no current context (logged once per thread) I/DEBUG ( 1239): *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** I/DEBUG ( 1239): Build fingerprint: 'pandaboard/pandaboard/pandaboard:2.3.3/GRI40/eng.zpfeffer.20110514.063202:e ng/test-keys' I/DEBUG ( 1239): pid: 4639, tid: 4647 >>> system_server <<< I/DEBUG ( 1239): signal 11 (SIGSEGV), code 1 (SEGV_MAPERR), fault addr 00000000 I/DEBUG ( 1239): r0 00000000 r1 00000000 r2 80808080 r3 00000000 I/DEBUG ( 1239): r4 001dc6ac r5 00000000 r6 00000000 r7 00000000 I/DEBUG ( 1239): r8 00100000 r9 a811d82d 10 4328d000 fp 00192ea0 I/DEBUG ( 1239): ip a8128cf0 sp 4338cd10 lr a811bb71 pc afd119b4 cpsr 40000110 I/DEBUG ( 1239): d0 6e65704f206f7420 d1 5041205345204c47 With the extra debug on The kernel reads out: <7>OMAPFB: setcmap <7>omapdss MANAGER: configure manager wb->shadow_dirty = 0 <7>omapdss OVERLAY: check_overlay 0: (0,0 640x480 -> 640x480) disp (640x480) <7>omapdss MANAGER: omap_dss_mgr_apply(tv) <7>omapdss OVERLAY: check_overlay 0: (0,0 640x480 -> 640x480) disp (640x480) <7>omapdss MANAGER: configure_overlay(0) <7>omapdss DISPC: dispc_setup_plane 0, pa 8162b000, sw 640, 0,0, 640x480 -> 640x480, ilace 0, decim 1x1, 5-tap, cm ode 800, rot 0, mir 0 chan 1 <7>omapdss DISPC: calc_rot(0): scrw 640, 640x480 <7>omapdss DISPC: offset0 0, offset1 0, row_inc 1, pix_inc 1 <7>omapdss DISPC: 0,0 640*1x480*1 -> 640x480 <7>omapdss DISPC: fifo(0) low/high old 303/1279, new 303/1279 <7>omapdss DISPC: dispc_enable_plane 0, 1 <7>omapdss WRITEBACK: ovl=0,mgr=-1,srcty=0(OMAP_WB_SOURCE_OVERLAY),src=0 <7>omapdss MANAGER: configure manager wb->shadow_dirty = 0 <7>omapdss DISPC: GO DIGIT <7>omapdss MANAGER: configure manager wb->shadow_dirty = 0 <6>request_suspend_state: wakeup (0->0) at 2063705139494 (2000-01-01 00:34:22.528961515 UTC) <3>init: untracked pid 9893 exited <3>init: untracked pid 9894 exited <7>OMAPFB: check_var(0) <7>OMAPFB: check_fb_var 0 <7>OMAPFB: max frame size 8388608, line size 2560 <7>OMAPFB: xres = 640, yres = 480, vxres = 640, vyres = 480 <7>OMAPFB: set_par(0) <7>OMAPFB: set_fb_fix <7>OMAPFB: apply_changes, fb 0, ovl 0 <7>OMAPFB: setup_overlay 0, posx 0, posy 0, outw 640, outh 480 <7>OMAPFB: paddr 8162b000, vaddr f2000000 <7>omapdss OVERLAY: check_overlay 0: (0,0 640x480 -> 640x480) disp (640x480) <7>omapdss MANAGER: omap_dss_mgr_apply(tv) <7>omapdss OVERLAY: check_overlay 0: (0,0 640x480 -> 640x480) disp (640x480) <7>omapdss MANAGER: configure_overlay(0) <7>omapdss DISPC: dispc_setup_plane 0, pa 8162b000, sw 640, 0,0, 640x480 -> 640x480, ilace 0, decim 1x1, 5-tap, cm ode 800, rot 0, mir 0 chan 1 <7>omapdss DISPC: calc_rot(0): scrw 640, 640x480 <7>omapdss DISPC: offset0 0, offset1 0, row_inc 1, pix_inc 1 <7>omapdss DISPC: 0,0 640*1x480*1 -> 640x480 <7>omapdss DISPC: fifo(0) low/high old 303/1279, new 303/1279 <7>omapdss DISPC: dispc_enable_plane 0, 1 <7>omapdss WRITEBACK: ovl=0,mgr=-1,srcty=0(OMAP_WB_SOURCE_OVERLAY),src=0 <7>omapdss MANAGER: configure manager wb->shadow_dirty = 0 <7>omapdss DISPC: GO DIGIT <7>OMAPFB: pan_display(0) <7>OMAPFB: setcmap <7>OMAPFB: pan_display(0) <7>OMAPFB: setcmap <7>OMAPFB: setcmap <7>OMAPFB: setcmap Been going through: http://www.omappedia.org/wiki/Bootargs_for_enabling_display and http://www.omappedia.org/wiki/Display_Drivers_Domain_Wiki