zoukankan      html  css  js  c++  java
  • Pandaboard ES编译bootloader、xloader、内核、以及安卓系统

    http://blog.csdn.net/moonlight_in_bluesky/article/details/7745920

    注意:本文引用www.pandaboard.ord 里面getting started的启动内容。按需要编译自己的系统。

     

    Building bootloader and kernel

    Bootloader

    Startwith building the bootloader. To learn more about the bootloader process or toclarify details, lookin here

    Usethe link above for commands on how to build u-boot and MLO. Use the parametersprovided below with those commands

    Onceyou have cloned a git source, you will need to switch to a branch indicatedbelow (for bootloader or kernel).

    /*This command lists the various branches to switch to and the current branchon*/

    gitbranch -a

    /*Thiscommand switches HEAD to a particular branch*/

    gitcheckout -b <some-local-branch-name-here><branch-name-mentioned-below>

     

    u-boot

    source:git://gitorious.org/pandaboard/u-boot.git

    branch:origin/omap4_panda_es2.0

    boardconfig: omap4430panda_config

     

    xloader

    source:git://gitorious.org/pandaboard/x-loader.git

    branch:origin/omap4_panda_L24.9

    boardconfig: omap4430panda_config

     

    Kernel

    Oncedone building the bootloader, copy u-boot.bin and mkimage to a PATH folder andbuild the kernel. (Additional details can be found at here)

    source:git://gitorious.org/pandroid/kernel-omap

    branch:origin/L27.5.2_panda

    boardconfig: android_4430panda_defconfig

     

    Latest release

    source:git://gitorious.org/pandroid/kernel-omap

    branch:origin/L27.8.2_panda

    boardconfig: android_panda_defconfig

     

    Android filesystem

    Thefilesystem that is being used on PandaBoard is the reference file system fromTI OMAP4 releases. These are referred with L27x tags. Pandroid releases arerebased almost once a month. Please refer to the Pandroidproject page for latest update on releases.

    Thebelow example shows the instructions for the Froyo release from L27.5.2. Youcan refer to the details on the release and the build instructions from http://omappedia.org/wiki/L27.INC1.5.2_Froyo_ES2_Release_Notes

     

    Get Reference Source

    Youcan get the Android source for this release by doing:

    gitclone git://git.omapzoom.org/platform/omapmanifest.git

    cdomapmanifest

    gitreset --hard RLS27.5.2_Froyo

    exportMANIFEST=`pwd`

    mkdir-p 27.5.2/mydroid; cd 27.5.2/mydroid

    exportMYDROID=`pwd`

    repoinit -u $MANIFEST

    reposync

     

    Note:The manifest for some releases also contains the Bootloader. Ignore these asthey are meant for the Blaze platform. Build them from the PandaBoard projetcin gitorious.

     

    Add Pandroid features

    Pandroidprovides a desktop like environment with the use of HDMI display and USBkeyboard and mouse. To enable mouse cursor support and some PandaBoard specificfeatures, please apply the following patches on top of your filesystem source.

    Thanksto rowboat project from where we can cherry pick these patches.

    Addrowboat git tree as a remote to cherry pick the patches. The patches are to beapplied in frameworks/base.

    Aftercloning (repo sync) the TI Blaze release, perform the following.

     cd frameworks/base

     git remote add rowboatgit://gitorious.org/rowboat/frameworks-base.git

     git fetch rowboat

     git branch -a

     git cherry-pick24117ce3ae32c40798d2d9bda80675814f76730d

     git cherry-pick ac82681dffdba3ad0b93ed3558365bac1dacbcd1

     git cherry-pick b0f60c6

     git cherry-pick afee303

     git cherry-pick 64d7c77

     

    Building Android Filesystem(AFS)

     

    cd$MYDROID

    cp-Rfp device/ti/blaze/buildspec.mk.default buildspec.mk

     

    Building AFS with Android Codecs Edit: “device/ti/blaze/BoardConfig.mk”: Uncomment “USE_CAMERA_STUB:= true” Comment “BOARD_USES_TI_CAMERA_HAL := true” Comment "HARDWARE_OMX:= true”

    Note: No change inBoardConfig.mk to use TI Codecs

    Onstep below use the number of cores you have available; i.e. -j4 or -j12:

    makeclean (required for rebuild only) make -j4 2>&1 |tee$MYDROID/logs/android_make.out

     

    Preparing Android binaries

    ForGingerbread and onwards, the default build system generates eMMC basedbinaries, making AndroideMMC Booting as default.

    Thefollowing steps will prepare a directory, called myfs, containing all necessaryAndroid files that you must include within your SD card.

    cd$YOUR_PATH

    mkdirmyfs

    cdmyfs

     

    cp-Rfp $MYDROID/out/target/product/blaze/root/* .

    cp-Rfp $MYDROID/out/target/product/blaze/system/ .

    cp-Rfp $MYDROID/out/target/product/blaze/data/ .

    cp-Rfp $MYDROID/device/ti/blaze/init.omap4sdp.rc init.rc

     

    ====Copy BT drivers and firmware ====

    cp-Rfp <Path_To_Your_Kernel>/drivers/misc/ti-st/bt_drv.ko .

    cp-Rfp <Path_To_Your_Kernel>/drivers/misc/ti-st/st_drv.ko .

    cp-Rfp TIInit_7.2.31.bts system/etc/firmware

     

    ====Copy WLAN drivers and firmware ===

    cp-Rfp $MYDROID/hardware/ti/wlan/wl1271/platforms/os/linux/tiwlan_drv.kosystem/etc/wifi

    cp-Rfp firmware.bin system/etc/wifi

     

     

    Next,modify the following file in the android file system created - tiwlan.ini filein directory system/etc/wifi.

        Change the line 193

        FROM:

           STRFRefClock = 1 # Unit: Options5'bXX000 : Bit 0,1,2 - (0: 19.2MHz; 1: 26MHz; 2: 38.4MHz  (Default); 3: 52MHz;  4: 38.4MHz XTAL) ;

         TO:

           STRFRefClock = 2 # Unit: Options5'bXX000 : Bit 0,1,2 - (0: 19.2MHz; 1: 26MHz; 2: 38.4MHz  (Default); 3: 52MHz;  4: 38.4MHz XTAL) ;

     

    Onlychange the STRFRefClock value from 1 to 2. The default tiwlan.ini is preset forthe Blaze and the Pandaboard requires a different value.

     

    Additional Changes

    Onceyou have created the Android filesystem (AFS), please make the below changes.Currently, PandaBoard is using the product spec from Blaze (another OMAP4 devplatform) and hence some changes are needed.

    In"init.rc" file, diable the secondary display (comment out the below 4lines)

    #Enable secondary display on Blaze

     #  write/sys/devices/platform/omapdss/display1/enabled 1

     #  write/sys/devices/platform/omapdss/overlay1/enabled 0

     #  write/sys/devices/platform/omapdss/overlay1/manager "2lcd"

     #  write/sys/devices/platform/omapdss/overlay1/enabled 1

     

    Tomount the SD card, update "vold.fstab" file in system/etc/ toindicate 'mmc1' instead of 'mmc0'

    ##Example of a standard sdcard mount for the emulator / Dream

    #Mounts the first usable partition of the specified device

     Change

     dev_mount sdcard /mnt/sdcard auto/devices/platform/mmci-omap-hs.0/mmc_host/mmc1

     To

     dev_mount sdcard /mnt/sdcard auto/devices/platform/mmci-omap-hs.0/mmc_host/mmc0

     

    Note:Media clips are copied in the 1st partition (boot) for them to be detected byGallery app. If your SD card is not getting mounted, you could try through"Media Scanner" app.

     

    A minimal FileSystem

    Youcould also try the following minimal filesystem.

    wgethttp://www.elinux.org/images/b/bd/Minimal-rootfs.tar.gz

    addinit=/linuxrc to the bootargs

  • 相关阅读:
    ActiveMQ消息队列的使用及应用
    Spring的事务配置详解
    Spring容器与SpringMVC容器的区别与联系
    理解java的三大特性之多态
    构造方法是静态还是非静态?
    java 中类初始化,构造方法,静态成员变量,静态块的加载顺序
    window.onerror的总结
    git 合并分支到master
    swiper实现匀速无缝滚动
    针对vue中请求数据对象新添加的属性不能响应式的解决方法
  • 原文地址:https://www.cnblogs.com/spinsoft/p/2597674.html
Copyright © 2011-2022 走看看