Android 文件系统移植到 2440 未完

转载 2012年03月30日 22:23:25

对于2440, 目前android并未完全支持armv4t。 如要运行在2440上需要修改一些汇编相关的代码。 所幸已有很多人做过这个工作,目前我是在freerunner这个基础上做的。

主页是http://code.google.com/p/android-on-freerunner/, 可以用git下载代码(这个网站上有地址),这里的wiki上就关于如何build的文档。

 

目前的一些问题:

1:运行无法执行linuxrc。 因为我原来移植的是busybox, kernel上的参数是init=/linuxrc.可以参照上一篇blog制作android和busybox在一起的文件系统。

2:init 上有个servicemanager error, 这是因为kernel没有编译到相应驱动。 编译内核时 device drivers->staging driver->android全选。

3:闪屏。 lcd驱动问题, 在framebuffer.cpp 中修改

mIndex = 1 - mIndex;
mInfo.activate = FB_ACTIVATE_VBL;
mInfo.yoffset = mIndex ? mInfo.yres : 0;
- if (ioctl(egl_native_window_t::fd, FBIOPUT_VSCREENINFO, &mInfo)
== -1) {
- LOGE("FBIOPUT_VSCREENINFO failed");
+ if (ioctl(egl_native_window_t::fd, FBIOPAN_DISPLAY, &mInfo) ==
-1) {
+ LOGE("FBIOPAN_DISPLAY failed");
return 0;
}


@@ -395,10 +395,10 @@ status_t EGLDisplaySurface::mapFrameBuffer()
info.activate = FB_ACTIVATE_NOW;

uint32_t flags = PAGE_FLIP;
- if (ioctl(fd, FBIOPUT_VSCREENINFO, &info) == -1) {
+ if (ioctl(fd, FBIOPAN_DISPLAY, &info) == -1) {
info.yres_virtual = info.yres;
flags &= ~PAGE_FLIP;
- LOGW("FBIOPUT_VSCREENINFO failed, page flipping not
supported");
+ LOGW("FBIOPAN_DISPLAY failed, page flipping not supported");
}

4: 在init.rc中有一句  mount rootfs rootfs / ro remount,改为mount rootfs rootfs / rw remount。 应为目前用的好似nfs,而用ro的话data文件夹只读,init会出错。

 

目前已可以用logcat > a.txt &。 慢慢分析错误中,还只能跑到android几个字出来。 卡在一个音频的地方。

W/AudioHardwareALSA( 1179): Unable to attach mixer to device AndroidOut: No such file or directory
E/AudioHardwareALSA( 1179): Unable to attach mixer to device default: No such file or directory
W/AudioHardwareALSA( 1179): Unable to attach mixer to device AndroidIn: No such file or directory
E/AudioHardwareALSA( 1179): Unable to attach mixer to device default: No such file or directory

 

这个问题是声卡驱动的问题。板子上的是uda1341,在内核配置中打开device driver->sound card->alsa driver->Alsa for soc support,还要打开oss驱动,因为alsa驱动不会建立dsp节点。

打开for samsung s3c24xx chip 和uda134x chip。  其中最后一项build all soc driver,如果打开会报一个oops的错误,所以就关掉了。

 

system uids inconsistent错误, 删掉data文件夹,修改了一下init.rc  删了一些蓝牙等相关的服务。

 

 

现在已经可以进去了,然后就是触摸屏了。

Android 文件系统移植到 2440 未完

对于2440, 目前android并未完全支持armv4t。 如要运行在2440上需要修改一些汇编相关的代码。 所幸已有很多人做过这个工作,目前我是在freerunner这个基础上做的。主页是http...
  • hnmsky
  • hnmsky
  • 2010年10月10日 20:11
  • 2484

u-boot-2010.12移植到2440(yaffs2文件系统移植)

本文转自:http://my.chinaunix.net/space.php?uid=24319701&do=blog&id=152161    Yaffs2 文件系统的移植主要涉及到u-boot 对...
  • wsm123
  • wsm123
  • 2011年06月10日 22:42
  • 504

ntfs在android平台上的移植

/***************************************************************** *version:android4.2 *author...
  • jiangbei_lengyu
  • jiangbei_lengyu
  • 2013年05月27日 22:41
  • 1409

Android系统移植(一)

摘要:移植Android4.2.2到TINY4412上
  • u014770862
  • u014770862
  • 2016年01月27日 13:27
  • 1805

android源代码编译和到s3c2440的移植

1,到官网www.android.com下载源代码的过程,就是按照官网的提示一步一步地做就可以了。http://source.android.com/source/initializing.html上...
  • samantha_sun
  • samantha_sun
  • 2011年05月18日 17:38
  • 4443

移植、裁减及配置Linux内核到s3c2440开发板

一、准备工作(使用tar xjvf命令解压linux-2.6.22.6.tar.bz2后,cd /work/system/linux-2.6.22.6) 1、修改顶层Makefile的185和1...
  • hushup
  • hushup
  • 2014年03月25日 14:38
  • 1938

移植Android 到mini2440

1 移植环境: Target:友善之臂mini2440 HOST OS:Fedora 8 kernel Version:Linux-2.6.25 编译器:mini2440光盘所提供的编译器 ...
  • wavemcu
  • wavemcu
  • 2012年02月18日 12:44
  • 2371

深入浅出 - Android系统移植与平台开发(一)

+-------------------------------------------------+ +      本系列为连载,不定期会更新       +  +---------------...
  • easyer2012
  • easyer2012
  • 2016年03月16日 11:27
  • 962

u-boot-2010.12移植到2440(六,yaffs2文件系统移植)

本文转自:http://my.chinaunix.net/space.php?uid=24319701&do=blog&id=152161本文转自:http://my.chinaunix.net/sp...
  • samantha_sun
  • samantha_sun
  • 2011年03月04日 11:33
  • 1688

基于S3C2440的Linux-3.6.6移植——QT的编译与安装

 我PC上的系统是Fedora 17,32位的。它自带了Qt,版本是4.8.4,因此嵌入式Qt我也选择相同的版本。   从官网下载qt-everywhere-opensour...
  • zhaocj
  • zhaocj
  • 2014年07月23日 16:05
  • 2985
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Android 文件系统移植到 2440 未完
举报原因:
原因补充:

(最多只允许输入30个字)