summaryrefslogtreecommitdiff
path: root/recipes/images/files/colibri-vf/colibri-vf_bin/flash_eth.scr
blob: 36da10b5eceabd2fd2d223f30b0b6e3fb92c1154 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
setenv create_bcb 'nand erase.part vf-bcb && writebcb 0x20000 0x20000'
setenv update_configblock 'tftpboot ${loadaddr} configblock.bin && nand write ${loadaddr} 0x800 ${filesize}'

setenv prepare_rootfs 'ubi part ubi && ubi check rootfs || ubi create rootfs'
setenv update_uboot 'tftpboot ${loadaddr} u-boot-nand.imx && nand erase.part u-boot && nand erase.part u-boot-env && nand write ${loadaddr} u-boot'
setenv update_rootfs 'tftpboot ${loadaddr} ubifs.img && run prepare_rootfs && ubi write ${loadaddr} rootfs ${filesize}'

setenv update_new 'run update_uboot; run update_rootfs; reset'

# Upgrade part 1, write new U-Boot, but with old ECC format still...
# Store config block temporarly in memory at kernel_addr_r.
setenv upgrade_part1 'run update_uboot && nand read ${kernel_addr_r} 0x800 0x20 && echo "successfully updated U-Boot, enter \"reset\", interrupt boot process and enter \"run setupdate\; run upgrade_part2\" to complete upgrade"'

# Upgrade part 2, use new ECC format for the whole device...
setenv upgrade_part2 'run create_bcb && nand write ${kernel_addr_r} 0x800 0x20 && \
run update_uboot && nand erase.part ubi && run update_rootfs'

# fsl_nfc indicates old NAND format (24-bit ECC), start migration process
setenv update 'mtdparts default && if test "${mtdids}" = "nand0=fsl_nfc"; then; run upgrade_part1; else run update_new; fi'

echo 'enter "run update" to update the entire module'