急!!!!!!好几天了,求指教!
我们板子参照sabresd设计的。之前使用系统android4.2.2,现在移植官网BSP android4.4.3
目前surfaceflinger导致系统启动失败。一直打印如下红色显示的信息。
request_suspend_state: wakeup (3->0) at 7437213333 (1970-01-01 00:00:04.592911333 UTC)
130|root@sabresd_6dq:/ # request_suspend_state: wakeup (0->0) at 956991823113 (1970-01-01 00:15:54.147520447 UTC)
init: untracked pid 6193 exited
request_suspend_state: wakeup (0->0) at 961401889447 (1970-01-01 00:15:58.557587114 UTC)
init: untracked pid 6221 exited
uboot环境变量设置setenv bootargs console=ttymxc0,115200 init=/init video=mxcfb0:dev=ldb,bpp=32 video=mxcfb1:dev=off video=mxcfb2:off video=mxcfb3:off vmalloc=400M androidboot.console=ttymxc0 consoleblank=0 androidboot.hardware=freescale cma=384M androidboot.serialno=110ea1d4df646307
Logcat中:
I/SurfaceFlinger( 119): SurfaceFlinger is starting
I/SurfaceFlinger( 119): SurfaceFlinger's main thread ready to run. Initializing graphics H/W...
D/libEGL ( 119): loaded /system/lib/egl/libEGL_VIVANTE.so
D/libEGL ( 119): loaded /system/lib/egl/libGLESv1_CM_VIVANTE.so
D/libEGL ( 119): loaded /system/lib/egl/libGLESv2_VIVANTE.so
I/imx6.gralloc( 119): fb_device_open dispid:0, fb:0
I/imx6.gralloc( 119): 32bpp setting of Framebuffer with RGBA8888 format!
W/imx6.gralloc( 119): using (fd=18)
W/imx6.gralloc( 119): id = DISP3 BG - DI1
W/imx6.gralloc( 119): xres = 1024 px
W/imx6.gralloc( 119): yres = 768 px
W/imx6.gralloc( 119): xres_virtual = 1024 px
W/imx6.gralloc( 119): yres_virtual = 2304 px
W/imx6.gralloc( 119): bpp = 32
W/imx6.gralloc( 119): r = 0:8
W/imx6.gralloc( 119): g = 8:8
W/imx6.gralloc( 119): b = 16:8
W/imx6.gralloc( 119): width = 163 mm (159.568100 dpi)
W/imx6.gralloc( 119): height = 122 mm (159.895081 dpi)
W/imx6.gralloc( 119): refresh rate = 60.01 Hz
I/FslHwcomposer( 119): using fsl hwc!!!
I/FslHwcomposer( 119): int hwc_device_open(const hw_module_t*, const char*, hw_device_t**),553
I/FslHwcomposer( 119): using fsl hwc!
I/FslHwcomposer( 119): fb0 is ldb
I/FslHwcomposer( 119): device
I/FslHwcomposer( 119): fb1 is overlay device
W/FslHwcomposer( 119): open /sys/class/graphics/fb2 failed
W/FslHwcomposer( 119): open /sys/class/graphics/fb3 failed
W/FslHwcomposer( 119): open /sys/class/graphics/fb4 failed
W/FslHwcomposer( 119): open /sys/class/graphics/fb5 failed
I/FslHwcomposer( 119): hwcomposer: open framebuffer fb0
由于新内核使用dts。我跟Android4.2.2的内核相比较如下:
1、4.4.3时,使用LVDS接口,不知道是不是这么配置就可以了????
①kernel_imx/arch/arm/boot/dts/imx6qdl-sabresd.dtsi
mxcfb1: fb@0 {
compatible = "fsl,mxc_sdc_fb";
disp_dev = "ldb";
interface_pix_fmt = "RGB666";
mode_str ="1024x600M@60";
default_bpp = <32>;
int_clk = <0>;
late_init = <0>;
status = "okay";
};
2、4.2.2时,我们使用LVDS接口,值修改添加了两个文件,是OK的。
①kernel_imx/drivers/video/mxc/ldb.c
· 在ldb.c文件中staticstruct fb_videomode ldb_modedb[]数组中添加lvds参数,如下 { "BT101IW01", 60, 1024, 600, 21553, 62, 62, 13, 13, 62, 12, 0, FB_VMODE_NONINTERLACED, FB_MODE_IS_DETAILED, },
②kernel_imx/arch/arm/mach-mx6/board-mx6q_sabresd.c 在board-mx6q_sabresd.c文件中添加BT101IW01模式,如下: { /*fb0*/ .disp_dev = "ldb", .interface_pix_fmt = IPU_PIX_FMT_RGB666, .mode_str = "BT101IW01", .default_bpp = 32, .int_clk = false, .late_init = false, },
|