新聞中心

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

        如何將Android移植到FS2410開發板上

        作者: 時間:2012-03-29 來源:網絡 收藏

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

        本文引用地址:http://www.104case.com/article/149317.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

        linux相關文章:linux教程



        上一頁 1 2 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 离岛区| 通州市| 乐山市| 海伦市| 库尔勒市| 罗城| 新巴尔虎左旗| 铜鼓县| 瓮安县| 馆陶县| 宿州市| 驻马店市| 定安县| 长寿区| 舟曲县| 弥勒县| 越西县| 阳西县| 政和县| 铜鼓县| 彩票| 冷水江市| 宝丰县| 静乐县| 嘉峪关市| 桑植县| 赞皇县| 灵山县| 教育| 连江县| 绥江县| 安图县| 广宁县| 兴海县| 赣榆县| 明光市| 桃江县| 安顺市| 布拖县| 米脂县| 开江县|