![Android移植到FS2410開發(fā)板分析_第1頁](http://file4.renrendoc.com/view/108ef2e05982c3f98ad542623b52b533/108ef2e05982c3f98ad542623b52b5331.gif)
![Android移植到FS2410開發(fā)板分析_第2頁](http://file4.renrendoc.com/view/108ef2e05982c3f98ad542623b52b533/108ef2e05982c3f98ad542623b52b5332.gif)
![Android移植到FS2410開發(fā)板分析_第3頁](http://file4.renrendoc.com/view/108ef2e05982c3f98ad542623b52b533/108ef2e05982c3f98ad542623b52b5333.gif)
![Android移植到FS2410開發(fā)板分析_第4頁](http://file4.renrendoc.com/view/108ef2e05982c3f98ad542623b52b533/108ef2e05982c3f98ad542623b52b5334.gif)
![Android移植到FS2410開發(fā)板分析_第5頁](http://file4.renrendoc.com/view/108ef2e05982c3f98ad542623b52b533/108ef2e05982c3f98ad542623b52b5335.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
精品文檔-下載后可編輯Android移植到FS2410開發(fā)板分析一、目前進(jìn)展
1.Android已經(jīng)可以通過NFS在FS2410開發(fā)板上運(yùn)行
二、目前缺陷
1.觸摸屏沒有校準(zhǔn)
2.Android中時(shí)鐘停止,結(jié)束zygote進(jìn)程,系統(tǒng)重啟,時(shí)鐘更新,但再次停止不動(dòng)
3.串口無法與GPRS模塊通訊
三、移植步驟
一、移植Android內(nèi)核到FS2410開發(fā)板上
1、linux-2.6.25-android-1.0_r1.tar.gz
2、將內(nèi)核解壓到用戶目錄,如/home/wangan/kernel.git
3、進(jìn)入kernel.git文件夾,如cd~/kernel.git/
4、修改arch/arm/plat-s3c24xx/common-smdk.c文件中的nandflash分區(qū)設(shè)置,如geditarch/arm/plat-s3c24xx/common-smdk.c
修改staticstructmtd_partitionsmdk_default_nand_part[]結(jié)構(gòu)體為:
staticstructmtd_partitionsmdk_default_nand_part[]={
[0]={
.name="BootAgent",
.size=SZ_256K,
.offset=0,
},
[1]={
.name="LinuxKernel",
.offset=SZ_256K,
.size=SZ_2M-SZ_256K,
},
[2]={
.name="FileSystem",
.offset=SZ_2M,
.size=SZ_32M-SZ_2M,
},
[3]={
.name="Other",
.offset=SZ_32M,
.size=SZ_32M,
}
};
5、在網(wǎng)站上IA32GNU/LinuxTAR。
6、將文件解壓到用戶目錄,如/home/wangan/arm-2022q3
7、進(jìn)入arm-2022q3/bin文件夾,如cd~/arm-2022q3/bin/
8、添加當(dāng)前路徑進(jìn)入環(huán)境變量,如exportPATH=$PWD:$PATH,或修改~/.bashrc文件并重新登錄
9、進(jìn)入內(nèi)核文件夾,如cd~/kernel.git/
10、修改Makefile文件,如geditMakefile
更改ARCH和CROSS_COMPILE
#ARCH?=$(SUBARCH)
ARCH?=arm
#CROSS_COMPILE?=arm-eabi-
CROSS_COMPILE?=arm-none-eabi-
11、從華清遠(yuǎn)見Linux-內(nèi)核壓縮包中提取。config文件(注意:config前面有個(gè)“?!保┓湃雓ernel.git文件夾
12、運(yùn)行makemenuconfig
(1)確保SystemTypeARMsystemtype()中的內(nèi)容為SamsungS3C2410,S3C2412,S3C2413,S3C2440,S3C2442,S3C2443
(2)確保SystemTypeS3C2410Machines[*]SMDK2410/A9M2410被勾選
(3)取消選擇與Goldfish相關(guān)的內(nèi)容
DeviceDriversCharacterdevicesGoldfishTTYDriver
DeviceDriversPowersupplyclasssupportGoldfishbatterydriver(NEW)
DeviceDriversRealTimeClockGOLDFISH(NEW)
DeviceDriversGraphicssupportSupportforframebufferdevicesGoldfishFramebuffer
(4)選擇S3C2410LCD相關(guān)的內(nèi)容
S3C2410處理器是Samsung公司基于ARM公司的ARM920T處理器核,采用0.18um制造工藝的32位微控制器。該處理器擁有:獨(dú)立的16KB指令Cache和16KB數(shù)據(jù)Cache,MMU,支持TFT的LCD控制器,NAND閃存控制器,3路UART,4路DMA,4路帶PWM的Timer,I/O口,RTC,8路10位ADC,TouchScreen接口,IIC-BUS接口,IIS-BUS接口,2個(gè)USB主機(jī),1個(gè)USB設(shè)備,SD主機(jī)和MMC接口,2路SPI。S3C2410處理器可運(yùn)行在203MHz。
DeviceDriversGraphicssupportSupportforframebufferdevices*S3C2410LCDframebuffersupport
DeviceDriversGraphicssupport[*]Bootuplogo[*]StandardblackandwhiteLinuxlogo
DeviceDriversGraphicssupport[*]Bootuplogo[*]Standard16-colorLinuxlogo
DeviceDriversGraphicssupport[*]Bootuplogo[*]Standard224-colorLinuxlogo
(5)選中Android內(nèi)核必須選項(xiàng)
KernelFeatures[*]UsetheARMEABItocompilethekernel
Generalsetup[*]Usefullshmemfilesystem
Generalsetup[*]EnableAndroid'sSharedMemorySubsystem
SystemType[*]SupportThumbuserbinaries
DeviceDriversAndroid[*]Androidlogdriver
DeviceDriversAndroid*BinderIPCDriver
(6)盡量選中Android內(nèi)核可選選項(xiàng)
DeviceDriversAndroid[*]RAMbufferconsole
DeviceDriversAndroid[*]Androidtimedgpiodriver
DeviceDriversAndroid[*]Onlyallowcertaingroupstocreatesockets
(7)其余CONFIG選項(xiàng),如系統(tǒng)支持請(qǐng)一并選擇
CONFIG_ANDROID_POWER=y
CONFIG_ANDROID_POWER_STAT=y
CONFIG_ANDROID_POWER_ALARM=y
(可以在Kconfig文件中查找ANDROID_POWER等字段進(jìn)行選擇,或者直接修改。config文件)
13、退出并保存。config
二、移植LCD驅(qū)動(dòng)到Linux-2.6.25內(nèi)核
Linux是的自由電腦操作系統(tǒng)內(nèi)核。它是一個(gè)用C語言寫成,符合POSIX標(biāo)準(zhǔn)的類Unix操作系統(tǒng)。Linux早是由芬蘭黑客LinusTorvalds為嘗試在英特爾x86架構(gòu)上提供自由的類Unix操作系統(tǒng)而開發(fā)的。該計(jì)劃開始于1991年,在計(jì)劃的早期有一些Minix黑客提供了協(xié)助,而今天無數(shù)程序員正在為該計(jì)劃無償提供幫助。技術(shù)上說Linux是一個(gè)內(nèi)核?!皟?nèi)核”指的是一個(gè)提供硬件抽象層、磁盤及文件系統(tǒng)控制、多任務(wù)等功能的系統(tǒng)軟件。一個(gè)內(nèi)核不是一套完整的操作系統(tǒng)。
如果Linux內(nèi)核的可移植性和效率還不夠好,Linux還提供了其他一些特性,它們無法劃分到上面的分類中。作為一個(gè)生產(chǎn)操作系統(tǒng)和開源軟件,Linux是測(cè)試新協(xié)議及其增強(qiáng)的良好平臺(tái)。Linux支持大量網(wǎng)絡(luò)協(xié)議,包括典型的TCP/IP,以及高速網(wǎng)絡(luò)的擴(kuò)展(大于1GigabitEthernet[GbE]和10GbE)。Linux也可以支持諸如流控制傳輸協(xié)議(SCTP)之類的協(xié)議,它提供了很多比TCP更的特性(是傳輸層協(xié)議的接替者)。
Linux還是一個(gè)動(dòng)態(tài)內(nèi)核,支持動(dòng)態(tài)添加或刪除軟件組件。被稱為動(dòng)態(tài)可加載內(nèi)核模塊,它們可以在引導(dǎo)時(shí)根據(jù)需要(當(dāng)前特定設(shè)備需要這個(gè)模塊)或在任何時(shí)候由用戶插入。Linux的一個(gè)增強(qiáng)是可以用作其他操作系統(tǒng)的操作系統(tǒng)(稱為系統(tǒng)管理程序)。近,對(duì)內(nèi)核進(jìn)行了修改,稱為基于內(nèi)核的虛擬機(jī)(KVM)。這個(gè)修改為用戶空間啟用了一個(gè)新的接口,它可以允許其他操作系統(tǒng)在啟用了KVM的內(nèi)核之上運(yùn)行。除了運(yùn)行Linux的其他實(shí)例之外,Microsoft?Windows?也可以進(jìn)行虛擬化。惟一的限制是底層處理器必須支持新的虛擬化指令
1、進(jìn)入kernel.git文件夾,如cd~/kernel.git/
2、修改arch/arm/mach-s3c2410/mach-smdk2410.c文件,如geditarch/arm/mach-s3c2410/mach-smdk2410.c
(1)增加頭文件#includeasm/arch/fb.h
(2)增加兩給結(jié)構(gòu)體
staticstructs3c2410fb_displaysmdk2410_lcd_cfg__initdata={
.lcdcon5=S3C2410_LCDCON5_FRM565|
S3C2410_LCDCON5_INVVLINE|
S3C2410_LCDCON5_INVVFRAME|
S3C2410_LCDCON5_PWREN|
S3C2410_LCDCON5_HWSWP,
.type=S3C2410_LCDCON1_TFT,
.width=320,
.height=240,
.pixclock=174757,
.xres=320,
.yres=240,
.bpp=16,
.left_margin=16,
.right_margin=59,
.hsync_len=9,
.upper_margin=2,
.lower_margin=6,
.vsync_len=16,
};
staticstructs3c2410fb_mach_infosmdk2410_fb_info__initdata={
.displays=smdk2410_lcd_cfg,
.num_displays=1,
.default_display=0,
.gpccon=0xaa955699,
.gpccon_mask=0xffc003cc,
.gpcup=0x0000ffff,
.gpcup_mask=0xffffffff,
.gpdcon=0xaa95aaa1,
.gpdcon_mask=0xffc0fff0,
.gpdup=0x0000faff,
.gpdup_mask=0xffffffff,
.lpcsel=0xf82,
};
(3)在smdk2410_ini
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 華三IT售前專家認(rèn)證GB10-125 H3CE考試通關(guān)試題庫(含答案)
- 2025年山西職教高考《職業(yè)適應(yīng)性測(cè)試》考前沖刺模擬試題庫(附答案)
- 專題05 名句名篇默寫
- 專題07 中國開始淪為半殖民地半封建社會(huì)(練習(xí))
- 質(zhì)押借款合同格式
- 融資擔(dān)保服務(wù)合同
- 航空貨運(yùn)物流運(yùn)輸合同
- 承包的合同范本
- 年互聯(lián)網(wǎng)技術(shù)服務(wù)合同
- 房產(chǎn)銷售分銷合同模板
- 醫(yī)院消防安全培訓(xùn)課件
- 質(zhì)保管理制度
- 《00541語言學(xué)概論》自考復(fù)習(xí)題庫(含答案)
- 2025年機(jī)關(guān)工會(huì)個(gè)人工作計(jì)劃
- 江蘇省南京市、鹽城市2023-2024學(xué)年高三上學(xué)期期末調(diào)研測(cè)試+英語+ 含答案
- 2024護(hù)理不良事件分析
- 光伏項(xiàng)目的投資估算設(shè)計(jì)概算以及財(cái)務(wù)評(píng)價(jià)介紹
- 糧油廠食品安全培訓(xùn)
- 電力安全工作規(guī)程(完整版)
- 2024年湖南省公務(wù)員錄用考試《行測(cè)》試題及答案解析
- 借名買車的協(xié)議書范文范本
評(píng)論
0/150
提交評(píng)論