新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 怎樣將Android移植到FS2410開發板上

        怎樣將Android移植到FS2410開發板上

        作者: 時間:2010-06-22 來源:網絡 收藏

        一、目前進展
        1.已經可以通過NFS在板上運行

        本文引用地址:http://www.104case.com/article/151779.htm

        二、目前缺陷
        1.觸摸屏沒有校準
        2.中時鐘停止,結束zygote進程,系統重啟,時鐘更新,但再次停止不動
        3.串口無法與GPRS模塊通訊

        三、步驟
        一、內核到板上
        1、下載linux-2.6.25-android-1.0_r1.tar.gz

        2、將內核解壓到用戶目錄,如/home/wangan/kernel.git

        3、進入kernel.git文件夾,如cd ~/kernel.git/

        4、修改arch/arm/plat-s3c24xx/common-smdk.c文件中的nand flash分區設置,如gedit arch/arm/plat-s3c24xx/common-smdk.c
        修改static struct mtd_partition smdk_default_nand_part[]結構體為:
        static struct mtd_partition smdk_default_nand_part[] = {
        [0] = {
        .name = Boot Agent,
        .size = SZ_256K,
        .offset = 0,
        },
        [1] = {
        .name = Linux Kernel,
        .offset = SZ_256K,
        .size = SZ_2M - SZ_256K,
        },
        [2] = {
        .name = File System,
        .offset = SZ_2M,
        .size = SZ_32M - SZ_2M,
        },
        [3] = {
        .name = Other,
        .offset = SZ_32M,
        .size = SZ_32M,
        }
        };

        5、在網站上下載IA32 GNU/Linux TAR。

        6、將文件解壓到用戶目錄,如/home/wangan/arm-2008q3

        7、進入arm-2008q3/bin文件夾,如cd ~/arm-2008q3/bin/

        8、添加當前路徑進入環境變量,如export PATH=$PWD:$PATH,或修改~/.bashrc文件并重新登錄

        9、進入內核文件夾,如cd ~/kernel.git/

        10、修改Makefile文件,如gedit Makefile
        更改ARCH和CROSS_COMPILE
        #ARCH ?= $(SUBARCH)
        ARCH ?= arm
        #CROSS_COMPILE ?= arm-eabi-
        CROSS_COMPILE ?= arm-none-eabi-

        11、從華清遠見Linux-2.6.8.1內核壓縮包中提取.config文件(注意:config前面有個“.”)放入kernel.git文件夾

        12、運行make menuconfig
        (1) 確保System Type ---> ARM system type ()中的內容為Samsung S3C2410, S3C2412, S3C2413, S3C2440, S3C2442, S3C2443
        (2) 確保System Type ---> S3C2410 Machines ---> [*] SMDK2410/A9M2410被勾選
        (3) 取消選擇與Goldfish相關的內容
        Device Drivers ---> Character devices ---> > Goldfish TTY Driver
        Device Drivers ---> Power supply class support ---> > Goldfish battery driver (NEW)
        Device Drivers ---> Real Time Clock ---> > GOLDFISH (NEW)
        Device Drivers ---> Graphics support ---> Support for frame buffer devices ---> > Goldfish Framebuffer
        (4) 選擇S3C2410 LCD相關的內容
        Device Drivers ---> Graphics support ---> Support for frame buffer devices ---> *> S3C2410 LCD framebuffer support
        Device Drivers ---> Graphics support ---> [*] Bootup logo ---> [*] Standard black and white Linux logo
        Device Drivers ---> Graphics support ---> [*] Bootup logo ---> [*] Standard 16-color Linux logo
        Device Drivers ---> Graphics support ---> [*] Bootup logo ---> [*] Standard 224-color Linux logo
        (5) 選中Android內核必須選項
        Kernel Features ---> [*] Use the ARM EABI to compile the kernel
        General setup ---> [*] Use full shmem filesystem
        General setup ---> [*] Enable Android's Shared Memory Subsystem
        System Type ---> [*] Support Thumb user binaries
        Device Drivers ---> Android ---> [*] Android log driver
        Device Drivers ---> Android ---> *> Binder IPC Driver
        (6) 盡量選中Android內核可選選項
        Device Drivers ---> Android ---> [*] RAM buffer console
        Device Drivers ---> Android ---> [*] Android timed gpio driver
        Device Drivers ---> Android ---> [*] Only allow certain groups to create sockets
        (7) 其余CONFIG選項,如系統支持請一并選擇
        CONFIG_ANDROID_POWER =y
        CONFIG_ANDROID_POWER_STAT =y
        CONFIG_ANDROID_POWER_ALARM =y
        (可以在Kconfig文件中查找ANDROID_POWER等字段進行選擇,或者直接修改.config文件)

        13、退出并保存.config


        上一頁 1 2 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 驻马店市| 固安县| 灵台县| 安陆市| 安化县| 阜平县| 郓城县| 西和县| 屯留县| 上思县| 日喀则市| 阜平县| 卢氏县| 祁东县| 和平县| 南华县| 尖扎县| 巩留县| 班玛县| 江达县| 黔西县| 徐汇区| 浮山县| 家居| 墨竹工卡县| 水富县| 樟树市| 天祝| 常宁市| 新巴尔虎右旗| 溧水县| 荣昌县| 泰兴市| 钟山县| 襄汾县| 滁州市| 临桂县| 嵩明县| 镇原县| 沧州市| 滦南县|