This shows you the differences between two versions of the page.
| Next revision | Previous revision | ||
|
products:sbc:common:development:create-bootable-tf-card [2022/07/05 03:13] nick created |
products:sbc:common:development:create-bootable-tf-card [2024/01/11 05:52] (current) nick |
||
|---|---|---|---|
| Line 1: | Line 1: | ||
| ====== Create Bootable TF Card ====== | ====== Create Bootable TF Card ====== | ||
| + | |||
| + | What is a bootable TF card? | ||
| + | |||
| + | * A bootable TF card is an TF card that has a bootloader installed on it. | ||
| + | * A bootable TF card is also known as a boot disk, which your SBC can boot-up from. | ||
| + | |||
| + | Why do we need a bootable TF card? | ||
| + | |||
| + | * You can release your custom ROM as a bootable TF card, in order to speed up the testing and development process. | ||
| + | * You can use a bootable TF card to do system/file recovery, in the event that your SBC is unable to boot from the eMMC. | ||
| + | |||
| + | <WRAP important > | ||
| + | The process for VIM1, VIM2, VIM3, VIM3L, VIM1S and VIM4 is similar, so we will use VIM1 as an example. | ||
| + | </ | ||
| + | |||
| + | |||
| + | ===== Download boot images ===== | ||
| + | |||
| + | Download U-Boot for ([[dl> | ||
| + | |||
| + | <tabbox VIM1/ | ||
| + | |||
| + | * '' | ||
| + | * '' | ||
| + | |||
| + | <tabbox VIM1S/ | ||
| + | |||
| + | * '' | ||
| + | * '' | ||
| + | |||
| + | </ | ||
| + | |||
| + | ===== Linux command line usage examples ===== | ||
| + | |||
| + | Insert the TF card into your PC, and unmount it: | ||
| + | |||
| + | ```shell | ||
| + | $ sudo umount /dev/sdX1 | ||
| + | ``` | ||
| + | |||
| + | Format the TF card as FAT32: | ||
| + | |||
| + | ```shell | ||
| + | $ sudo mkfs.vfat /dev/sdX1 | ||
| + | ``` | ||
| + | |||
| + | Run '' | ||
| + | |||
| + | <tabbox VIM1/ | ||
| + | |||
| + | ```shell | ||
| + | $ sudo dd if=u-boot.bin.sd.bin of=/dev/sdX conv=fsync, | ||
| + | $ sudo dd if=u-boot.bin.sd.bin of=/dev/sdX conv=fsync, | ||
| + | ``` | ||
| + | |||
| + | <tabbox VIM1S/ | ||
| + | |||
| + | ```shell | ||
| + | $ sudo dd if=u-boot.bin.sd.bin.signed of=/dev/sdX conv=fsync, | ||
| + | $ sudo dd if=u-boot.bin.sd.bin.signed of=/dev/sdX conv=fsync, | ||
| + | ``` | ||
| + | |||
| + | </ | ||
| + | |||
| + | Eject the TF card from your PC: | ||
| + | |||
| + | ```shell | ||
| + | $ sudo eject /dev/sdX | ||
| + | ``` | ||
| + | |||
| + | <WRAP important > | ||
| + | Replace '' | ||
| + | </ | ||
| + | |||
| + | |||
| + | ===== Bootable TF Card logs ===== | ||
| + | |||
| + | You need to [[products: | ||
| + | |||
| + | If your SBC has successfully booted from the TF card, you should get this Terminal print-out: | ||
| + | |||
| + | ```txt | ||
| + | GXL: | ||
| + | no sdio debug board detected | ||
| + | TE: 194208 | ||
| + | |||
| + | BL2 Built : 13:48:56, Sep 23 2016. | ||
| + | gxl g7459bd4 - jianxin.pan@droid06 | ||
| + | |||
| + | set vcck to 1120 mv | ||
| + | set vddee to 1000 mv | ||
| + | Board ID = 6 | ||
| + | CPU clk: 1200MHz | ||
| + | DQS-corr enabled | ||
| + | DDR scramble enabled | ||
| + | DDR3 chl: Rank0+1 @ 792MHz - PASS | ||
| + | Rank0: 1024MB(auto)-2T-11 | ||
| + | Rank1: 1024MB(auto)-2T-11 | ||
| + | DataBus test pass! | ||
| + | AddrBus test pass! | ||
| + | Load fip header from SD, src: 0x0000c200, des: 0x01400000, size: 0x00004000 | ||
| + | New fip structure! | ||
| + | Load bl30 from SD, src: 0x00010200, des: 0x01100000, size: 0x0000d600 | ||
| + | Load bl31 from SD, src: 0x00020200, des: 0x10100000, size: 0x00015400 | ||
| + | Load bl33 from SD, src: 0x00038200, des: 0x01000000, size: 0x000a3400 | ||
| + | NOTICE: | ||
| + | ... | ||
| + | |||
| + | ``` | ||
| + | |||
| + | |||
| + | <WRAP tip > | ||
| + | In rare cases, you may need to erase eMMC in order to boot from an TF card. | ||
| + | </ | ||
| + | |||