[[bc10]]
- Contents
#CONTENTS
* Create bootable SD card [#ica4404a]
>
- Prepare the pre-build SD card image. which can directly boot into Android. The image is downloaded form the URL shown below.~
%%[[http://sourceforge.jp/projects/bc10-dev/releases/49211:http://sourceforge.jp/projects/bc10-dev/releases/49211]]%%~
http://sourceforge.jp/projects/bc10-dev/releases/49362~
>
Extract the downloaded file, %%'''bc10-boot-sd-image--release20101001.tar.gz'''%%, '''bc10-boot-sd-image--release20101013.tar.gz''', there are~
two archives inside the directory.~
fat32.tar.gz
ext3.tar.gz
These files, '''fat32.tar.gz''' and '''ext3.tar.gz''', are written into the FAT32 partition and EXT3 partition of the SD card, respectively.~
This section explains the instructions of how to place these files into the SD card.
** Unmount SD card [#sb9042b7]
>
To partition and format the SD card, the SD card is unmounted if it is mounted.~
Assume that a SD card is mounted in the way defined below.~
$ [df -h]
Filesystem Size Used Avail Use% Mounted on
...
/dev/sdc1 400M 94M 307M 24% /media/disk
...
Unmount the SD card~
$ [umount /media/disk]
** Initialize and configure partitions [#n2af5c0a]
>
Execute '''fdisk''' command. The device file of the SD card is used for the parameter of the command. The location of SD card differ~
and it depends on the working environment. Please check up the directories before start working on this process.~
$ [sudo fdisk /dev/sdc]
Command (m for help): [p]
Disk /dev/sdc: 2021 MB, 2021654528 bytes
255 heads, 63 sectors/track, 245 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/sdc1 * 1 246 1974240+ c W95 FAT32 (LBA)
Partition 1 has different physical/logical endings:
phys=(244, 254, 63) logical=(245, 200, 19)
Write down the number of bytes on the SD card. The number will use later. (In this example 2021654528)~
Remove all existing partitions in the SD card.~
Command (m for help): [d]
Selected partition 1
Shift the mode to the expert mode.~
Command (m for help): [x]
The number of headers is selected as 255.~
Expert Command (m for help): [h]
Number of heads (1-256, default xxx): [255]
The number of sectors is chosen as 63.~
Expert Command (m for help): [s]
Number of sectors (1-63, default xxx): [63]
The cylinder number is depending on SD cards, By the figure shown below, calculate the number of cylinders.~
(Round toward zero below (omit dismals))~
#cylinders = FLOOR (the number of Bytes on the SD Card (from above) / #heads / #sectors / 512 )
For this example SD card, the number of cylinders is defined as below.~
2021654528 / 255 / 63 / 512 = 245.79
-> 245
Enter the number of cylinders. In this example, the number is 245.~
Expert Command (m for help): [c]
Number of cylinders (1-256, default xxx):
Turn to the normal mode.~
Expert Command (m for help): [r]
Create FAT32 partition.~
Command (m for help): [n]
Command action
e extended
p primary partition (1-4)
[p]
Partition number (1-4): [1]
First cylinder (1-245, default 1): [(press Enter)]
Using default value 1
Last cylinder or +size or +sizeM or +sizeK (1-245, default 245): [+50]
Command (m for help): [t]
Selected partition 1
Hex code (type L to list codes): [c]
Changed system type of partition 1 to c (W95 FAT32 (LBA))
Configure boot flag.
Command (m for help): [a]
Partition number (1-4): [1]
Create EXT3 partition.
Command (m for help): [n]
Command action
e extended
p primary partition (1-4)
[p]
Partition number (1-4): [2]
First cylinder (52-245, default 52): [(press Enter)]
Using default value 52
Last cylinder or +size or +sizeM or +sizeK (52-245, default 245): [(press Enter)]
Using default value 245
Check the configuration of partition.
Command (m for help): [p]
Disk /dev/sdc: 2021 MB, 2021654528 bytes
255 heads, 63 sectors/track, 245 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/sdc1 * 1 51 409626 c W95 FAT32 (LBA)
/dev/sdc2 52 245 1558305 83 Linux
Save the changes in the partition table.
Command (m for help): [w]
The partition table has been altered!
Calling ioctl() to re-read partition table.
WARNING: Re-reading the partition table failed with error 16: Device or resource busy.
The kernel still uses the old table.
The new table will be used at the next reboot.
WARNING: If you have created or modified any DOS 6.x
partitions, please see the fdisk manual page for additional
information.
Syncing disks.
** Format file system [#mfe70e5d]
>
Format FAT32 and EXT3 partitions. In the process of formatting, the name of partition is asked. Please enter the names of these~
partitions, and the names will be used for the levels of the partitions.~
$ [sudo mkfs.msdos -F 32 /dev/sdc1 -n FAT32]
mkfs.msdos 2.11 (12 Mar 2005)
$ [sudo mkfs.ext3 -L EXT3 /dev/sdc2]
mke2fs 1.40-WIP (14-Nov-2006)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
195072 inodes, 389576 blocks
19478 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=402653184
12 block groups
32768 blocks per group, 32768 fragments per group
16256 inodes per group
Superblock backups stored on blocks:
32768, 98304, 163840, 229376, 294912
Writing inode tables: done
Creating journal (8192 blocks): done
Writing superblocks and filesystem accounting information:
** Place files [#a5785859]
>
These image files are placed into the SD card. Gently pushing the SD card, Mount the SD card again. The mount point of~
SD card may differ, depending on system. Change the mounting point which is suitable to your system most.~
*** Place FAT32 partition [#r9ace422]
>
There are strict rules for placing files on FAT32 partition. Extract the archive and put the files in the working directory,~
temporarily.
$ [tar xvfz fat32.tar.gz]
Extract the archive, and these files are included.~
$ ls fat32
MLO boot.scr u-boot.bin uImage
MOL is the first bootloader, X-Loader, and there are rules for placing MOL. Please follow these rules listed below.~
- MOL is first file to be placed right after the formatting process of FAT32 is completed.~
- Put the file on the top directly.~
>
$ [cp MLO /media/FAT32/]
Other files do not have any rules and restrictions as being placed on the SD card. Copy the files to the SD card.~
$ [cp u-boot.bin boot.scr uImage /media/FAT32/u-boot.bin]
$ [cp u-boot.bin boot.scr uImage /media/FAT32/]
If mistake to the order of placing file or the work order, restart from the FAT32 partition format for sure.~
*** Put files on EXT 3partition. [#m1be017c]
>
There are no rules and/or restrictions on writing files into ext3. Extract the archive directly inside SD card.~
$ [sudo tar xvfz ext3.tar.gz -C /media/EXT3]
This is the end of placing pre-build image on the SD card.~
Execute '''sync''', then unmount the SD card.~
$ [sudo sync]
$ [umount /media/EXT3]
$ [umount /media/FAT32]
* Boot from SD card. [#b63f2f5e]
>
Insert the SD card, in which the image files have already been placed, and turn on the power supply. At the first boot,~
Android takes extra time to create the DB for configuring SQLite3 and '''Dalvik EXecutable (.dex)''' file and writes in some~
information. The initial boot takes longer than usual.~
* Revision History[#qfc33a24]
>
- 2010/10/08 The article is initially uploaded.~
- 2010/10/28 The pre-build image is updated.~