Template:Booting Android
From OMAPpedia
To boot Android, you should have flashed the bootloader, kernel and filesystem based on your choice among the flashing options under "Flashing Android" at the main page.
While booting, the bootloader loads MLO and u-boot.bin. On most Android distros, an additional set of boot args are necessary to bring up Android. These boot args can vary depending on your customizations. This page also lists the common bootargs used based on the Android filesystem release used.
[edit] Booting instructions
If the target device is not setup, refer "Target Device configuration" at the main page.
Insert the SD card into the device and reboot or hit the reset button. From Hyperterminal/Teraterm on the PC, you should see a boot prompt. Please type the following commands to boot the device:
Note: If the device does not boot up with your SDHC card, try partitioning the same SDHC card again. If still the device does not boot up try another SDHC card. Many times changing the SDHC card solves the boot up problems. For more details, see "Flashing Android" at the main page.
Below are boot args for SD card (see the list below to find the specific boot args that match your release). The contents between /* and */ are for information only.
/* check the list below for release specific 'setenv bootargs' and 'setenv bootcmd'. */ /* The lines that follow are a sample for releases prior to L25.9 and may not be relevant to your release. */ #nand unlock #nand ecc sw #setenv bootargs 'console=ttyS3,115200n8 root=/dev/mmcblk0p2 rw rootdelay=1 mem=256M init=/init' #setenv bootcmd 'mmcinit 0; fatload mmc 0 0x80c00000 uImage; bootm 0x80c00000' #saveenv #boot
Now, you should see Android booting on your device.... Congratulations!
[edit] Release specific bootargs to be used
[edit] Note
- All the other changes listed below apply depending on the release
- On Zoom2, if there is a debug board installed, to see the console output, change ttyS2 to ttyS3.
- Android boots slowly when running over NFS. Expect to wait for the system to boot.
- Always check Bootargs listed in release notes, they always take precedence
[edit] PandaBoard - To boot kernel and filesystem from SD Card
# setenv bootargs 'console=ttyO2,115200n8 root=/dev/mmcblk0p2 rw rootdelay=3 mem=463M init=/init omapfb.vram="0:4M"' # mmcinit 0; fatload mmc 0 0x80000000 uImage;bootm 80000000'
Add "ip=dhcp" to bootargs within the single quotes at the end to enable ethernet port.
[edit] L27.x - Blaze/OMAP4430 - To boot kernel and filesystem from SD Card
# setenv bootargs console=ttyO2,115200n8 root=/dev/mmcblk0p2 rw rootdelay=2 mem=463M init=/init # setenv bootcmd 'mmcinit 0; fatload mmc 0 0x80000000 uImage; bootm 0x80000000' # boot
Add "ip=dhcp" to bootargs to enable ethernet port.
FROM LINK IN RELEASE NOTES
- The following command line is for 1GB support
setenv bootargs androidboot.console=ttyO2 console=ttyO2,115200n8 mem=456M@0x80000000 mem=512M@0xA0000000 root=/dev/mmcblk1p2 rw rootdelay=2 init=/init vram="10M" omapfb.vram="0:4M" setenv bootcmd 'mmcinit 0; fatload mmc 0 0x80000000 uImage;bootm 80000000' saveenv run bootcmd # For 512MB Support: use the following bootargs setenv bootargs 'console=ttyO2,115200n8 root=/dev/mmcblk1p2 rw rootdelay=2 init=/init androidboot.console=ttyO2 mem=460M ip=dhcp'
[edit] L25.9 - Addition of videoout=omap24xxvout
#setenv bootargs ‘console=ttyS3,115200n8 root=/dev/mmcblk0p2 rw rootdelay=1 init=/init mem=256M videoout=omap24xxvout’
[edit] L25.10 - Change in memory location
#setenv bootcmd 'mmcinit; fatload mmc 0 0x81c00000 uImage; bootm 0x81c00000'
[edit] L25.11 - Inclusion of boot arg for Frame Buffer
#setenv bootargs console=ttyS3,115200n8 root=/dev/mmcblk0p2 rw rootdelay=1 mem=256M init=/init \ videoout=omap24xxvout omap_vout.vid1_static_vrfb_alloc=y #setenv bootcmd 'mmcinit; fatload mmc 0 0x81c00000 uImage; bootm 0x81c00000'
[edit] L25.12 - New bootarg to enable video
#setenv bootargs console=ttyS3,115200n8 root=/dev/mmcblk0p2 rw rootdelay=1 mem=256M init=/init \ videoout=omap24xxvout omap_vout.video1_numbuffers=4 omap_vout.vid1_static_vrfb_alloc=y #setenv bootcmd 'mmcinit; fatload mmc 0 0x81c00000 uImage; bootm 0x81c00000'
[edit] L25.13, L25.14 & L25.14M1- New bootarg to enable video
#setenv bootargs console=ttyS3,115200n8 root=/dev/mmcblk0p2 rw rootdelay=1 mem=256M init=/init \ videoout=omap24xxvout omap_vout.video1_numbuffers=6 omap_vout.vid1_static_vrfb_alloc=y #setenv bootcmd 'mmcinit; fatload mmc 0 0x81c00000 uImage; bootm 0x81c00000'
[edit] L25E.16
#setenv bootargs console=ttyS3,115200n8 root=/dev/mmcblk0p2 rw rootdelay=1 mem=256M init=/init \ videoout=omap24xxvout omap_vout.video1_numbuffers=6 omap_vout.vid1_static_vrfb_alloc=y omapfb.vram=“0:4M” #setenv bootcmd 'mmcinit 0; fatload mmc 0 0x81c00000 uImage; bootm 0x81c00000'
[edit] L25inc2.2
#setenv bootargs console=ttyS3,115200n8 root=/dev/mmcblk0p2 rw rootdelay=1 mem=256M init=/init \ videoout=omap24xxvout omap_vout.video1_numbuffers=6 omap_vout.vid1_static_vrfb_alloc=y omapfb.vram=“0:4M” #setenv bootcmd 'mmcinit; fatload mmc 0 0x81c00000 uImage; bootm 0x81c00000'
[edit] L25inc2.3 - Change in bootcmd and ecc
* mmcinit is now "mmcinit 0" or "mmc init 0" * we are now using hw ecc for all partitions #nand unlock #nand ecc hw #setenv bootargs console=ttyS3,115200n8 root=/dev/mmcblk0p2 rw rootdelay=1 mem=256M init=/init \ videoout=omap24xxvout omap_vout.video1_numbuffers=6 omap_vout.vid1_static_vrfb_alloc=y omapfb.vram=“0:4M” #setenv bootcmd 'mmcinit 0; fatload mmc 0 0x81c00000 uImage; bootm 0x81c00000' #saveenv #boot
[edit] L25inc2.5 - Change in bootargs
* Frame buffer size removed for 3630. For 3430 add mem=256M in bootargs #nand unlock #nand ecc hw #setenv bootargs console=ttyS3,115200n8 root=/dev/mmcblk0p2 rw rootdelay=1 init=/init \ videoout=omap24xxvout omap_vout.video1_numbuffers=6 omap_vout.vid1_static_vrfb_alloc=y omapfb.vram=“0:4M” #setenv bootcmd 'mmcinit 0; fatload mmc 0 0x81c00000 uImage; bootm 0x81c00000' #saveenv #boot
[edit] L23.I3x - mmcinit command requires parameter '0'
#set bootargs 'console=ttyS3,115200n8 root=/dev/mmcblk0p2 rw rootdelay=1 mem=256M init=/init \ stdin=serial stdout=serial stderr=serial omap_vout.vid1_static_vrfb_alloc=y omapfb.vram="0:4M" ' #set bootcmd 'mmcinit 0;fatload mmc 0 0x80300000 uImage;bootm 0x80300000'
[edit] For NFS Boot
root=/dev/mmcblk0p2 option would change to root=/dev/nfs rw nfsroot=: /,nolock,wsize=1024,rsize=1024 ip=dhcp e.g. root=/dev/nfs rw nfsroot=128.247.77.43:/home/user/l25.7/myfs/,nolock,wsize=1024,rsize=1024 ip=dhcp
[edit] Finally
Check under "Resources" at the main page for more help at any stage.