设为首页 加入收藏

TOP

移植Andorid4.0.4到FS100开发板 - 步骤及问题汇总
2014-11-24 11:52:44 来源: 作者: 【 】 浏览:1
Tags:移植 Andorid4.0.4 FS100 开发 步骤 问题 汇总

开发板: FS_S5PC100


CPU: S5PC100,800Mhz,A8


MEM:256Mb


NAND: 256Mb


LCD:4.3


linaro-android-12.06-release for origen


由于s5pc100官方只给出Android2.1的release版本,没有最新版本的,所以只能自己移植。


-------------------------------------------------------------------------------


1. 通过git下载源码


2. 设置编译环境为origen-eng


3. 修改device里的BoardConfig.mk


# 不编译内核和Uboot(默认编译会将Uboot和zImage一起编译出来)


# 去掉支持SMP(A8是单核)


# 去掉硬件加速和Gator的arm调试服务


4. 编译


由于android4.0.4 for origen是使用的CPUExynos 4210的猎户座CPU,该CPU是A9的,支持SMP和Mali-400 GPU,所以内核我们要自己进行重新编译针对S5PC100。


5. 编译内核


使用s5pc100的默认配置,编译内核,注意加上android的必要驱动。


Android驱动:
# Android Binder:基于openBinder框架的驱动,进程间通信底层主要驱动,没有了它,android无法工作。
# Andorid Logger:是一个轻量级的日志系统,在内核里是misc设备驱动,它与logcat配合实现调试。
代码:driver/staging/android/logger.c
# Andorid Lowmemorykiller:低内存管理器,是linux标准OOM(Out Of Memory)改进版,当系统内存不足时,会杀掉一些不重要的进程,释放空间。
代码:driver/staging/android/lowmemorykiller.c
# Android Ram Console ram_console:辅助调试的内核机制,它用一段物理内存虚拟一个console设备,这样printk的时候会把调试信息写一份到这块ram,最后通过/proc文件系统输出。
#Android Timed Device timed_gpio:基于platform driver 实现的一个增强的gpio驱动,它与内核定时器绑定在了一起,实现了一种时钟控制的gpio
通过sysfs操作gpio,可以让gpio输出高、低电平,同时也可以指定一个定时器过期时间,当超时的时候,会去执行一个callback函数。目前支持vibrator和LED设备
对应代码:driver/staging/android/timed_gpio, time_output,对应文件系统(sys/class/timed_output//enable)
# Androd Switch:它是android新引进的驱动,用于检查一些开关量,如耳机插入,USB设备插入,在sysfs里创建对应的entry(sys/class/switch//stat),用户通过sysfs与之进行交互,同时,也可以使用uevent机制与其交互。
设备文件没有读写权限,没有加载对应的uevent.rc启动脚本文件(该脚本 文件为android的设备进行权限设置的)
对应代码:driver/switch/*
# Android Power Manager:基于标准linux电源管理系统的轻量级电源管理驱动
代码:kernel/power/*
# Android Ashmem:匿名共享内存,为进程间提供大块共享内存,同时为内核提供回收和管理这些内存的机制。
代码:mm/ashmem.c
# Android PMEM:用于向用户空间提供连续的物理内存,DSP和其它需要连续物理内存的设备需要它的提供服务。
代码:driver/misc/pmem.c
# Android alarm:提供一个定时器用于把设备从睡眠状态唤醒,同时它也提供了一个即使在设备睡眠时也会运行的时钟基准。
代码:driver/rtc/alarm.c
# USB Gadget:一个基于标准Linux USB gadget驱动框架的设备驱动,Android的USB驱动是基于gadget框架的。
代码:driver/usb/gadget/
# Yaffs2文件系统:Android采用Yaffs2作为 MTD Nandflash文件系统。


平台设备


网卡:dm9000


LCD:显示


编译出内核来,将其放到tftp目录下,等待使用。


】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇linaro Android 4.0.4 for FS100 .. 下一篇Android 拷贝数据库文件

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容:

·Redis on AWS:Elast (2025-12-27 04:19:30)
·在 Spring Boot 项目 (2025-12-27 04:19:27)
·使用华为开发者空间 (2025-12-27 04:19:24)
·Getting Started wit (2025-12-27 03:49:24)
·Ubuntu 上最好用的中 (2025-12-27 03:49:20)