设为首页 加入收藏

TOP

三星I8320 Linux Kernel 编译步骤
2014-11-24 03:06:07 来源: 作者: 【 】 浏览:2
Tags:三星 I8320 Linux Kernel 编译 步骤

三星I8320手机硬件配置


处理器: Texas Instruments OMAP3430 Cortex-A8 & PowerVR core;
Similar to OMAP3530 info datasheet
RAM : 256MB
PMIC : Texas Instruments TWL5030 Similar to TPS65950 info datasheet
Baseband : 高通 MSM6290
UMTS radio: 高通 RTR6285
eMMC: 三星 KLMAG8DEDD moviNAND
16GB 8x16Gb MLC NAND, 第5或6代
DPRAM : 三星 MD512256B
WLAN/BT radio: SWB-T30 WL1271 802.11 b/g/n, Bluetooth 2.1+ EDR, FM tx/rx
FM radio: Silicon Labs Si4709 FM RDS receiver, i2c 接口
加速度感应器: Kionix KXSD9-2042
后摄像头: 富士通M-4MO (MB91688) "Milbeaut", 500万像素 CMOS sensor article
前摄像头: 三星 S5KA3DFX
光感应传感器: 夏普GP2AP002A00F ,
用于检测环境光,可实现自动调整屏幕亮度和检测是否有人靠近。
例如,你正在打电话时,会关闭屏幕省电。
音频功放: 美信 MAX9877
Fuel gauge: 美信 MAX17040
屏驱动: Rohm BD2802GU-E
GPS:


在网下下载Limo源码后,一直在分析代码,希望对系统移值能打个基础吧。
昨天在mephisto大的帮助下,和参考一些资料。终于编绎linux内核成功。
全部过程如下:


第一步: Toolchain for cross compile 交叉编绎环境建立
下载地址:- http://www.codesourcery.com/sgpp/lite/arm/portal/subscription3057 这 是2007q3 version


# wget http://www.codesourcery.com/sgpp/lite/arm/portal/package1787/public/arm-none-linux-gnueabi/arm-2007q3-51-arm-none-linux-gnueabi-i686-pc-linux-gnu.tar.bz2
# tar xvjf arm-2007q3-51-arm-none-linux-gnueabi-i686-pc-linux-gnu.tar.bz2 -C /opt/


我把它解压到/opt/下。 这样toolchain的路径为:/opt/arm-2007q3/bin


/********************************************
2010q1版本试过编绎出错
/********************************************


第二步: 内核打补丁和修改:


1. 从这里下载源码.解压到Kernel目录里可看到linux-2.6.24.7.tar.bz2 和 linux-2.6.24.7-protector.patch


先解压和打上补丁:
# tar xvjf linux-2.6.24.7.tar.bz2
# patch -p1 < linux-2.6.24.7-protector.patch


2. 为了顺利编绎,需要修改代码内容如下:


修改Configuration


# cd linux-2.6.24.7
# cp arch/arm/configs/protector_defconfig .config
# vi .config 打开.config,然后修改 “CONFIG_KPL=y” 为 “CONFIG_KPL=n”.


修改下面两个文件,第个文件都要注销到这行,与 “write_force_reset_reboot_log” 相关的.


- arch/arm/kernel/traps.c, 403 行
- kernel/panic.c, 81 行


修改 linux-2.6.24.7 目录下的 Makefile 文件
- 在文件头上加上一行


export PRJROOT = ..


PRJROOT为上一级目录,也就是表示modules路径和linux-2.6.24.7是同一级。这样才能编绎到诸多的驱动程序。


- 修改 CROSS_COMPILE 路径 为/opt/arm-2007q3/bin


CROSS_COMPILE := /opt/arm-2007q3/bin/arm-none-linux-gnueabi-



/***********************************************
以下步骤我认为可能不用改。
3.进入 modules目录
修改 modules 目录下的 Makefile 文件
在文件头上加上两行
export PRJROOT = ..
export CROSS_COMPILE := /opt/arm-2007q3/bin/arm-none-linux-gnueabi-
修改wlan1271/platforms/os/linux/Makefile
注销掉 “CROSS_COMPILE” 的定义
/***********************************************


】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇RedHat Linux 9.0下Android内核的.. 下一篇三星I8320 Android 移植(1)之Linu..

评论

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

·C++ 语言社区-CSDN社 (2025-12-24 17:48:24)
·CSDN问答专区社区-CS (2025-12-24 17:48:22)
·C++中`a = b = c`与` (2025-12-24 17:48:19)
·C语言结构体怎么直接 (2025-12-24 17:19:44)
·为什么指针作为c语言 (2025-12-24 17:19:41)