12ee67178SXianjun Jiao#!/bin/bash 2a6085186SLina Ceballos 37be237bdSJiao Xianjun# Author: Xianjun Jiao 47be237bdSJiao Xianjun# SPDX-FileCopyrightText: 2019 UGent 5a6085186SLina Ceballos# SPDX-License-Identifier: AGPL-3.0-or-later 6a6085186SLina Ceballos 7b73660adSXianjun Jiaoif [ "$#" -ne 1 ]; then 8b73660adSXianjun Jiao echo "You must enter the \$BOARD_NAME as argument" 9*a47b55e6SJiao Xianjun echo "Like: sdrpi antsdr antsdr_e200 e310v2 adrv9364z7020 adrv9361z7035 zc706_fmcs2 zed_fmcs2 zc702_fmcs2 zcu102_fmcs2 zcu102_9371 neptunesdr" 10b73660adSXianjun Jiao exit 1 11b73660adSXianjun Jiaofi 12b73660adSXianjun JiaoBOARD_NAME=$1 13b73660adSXianjun Jiao 14*a47b55e6SJiao Xianjunif [ "$BOARD_NAME" != "neptunesdr" ] && [ "$BOARD_NAME" != "antsdr" ] && [ "$BOARD_NAME" != "antsdr_e200" ] && [ "$BOARD_NAME" != "e310v2" ] && [ "$BOARD_NAME" != "sdrpi" ] && [ "$BOARD_NAME" != "zc706_fmcs2" ] && [ "$BOARD_NAME" != "zc702_fmcs2" ] && [ "$BOARD_NAME" != "zed_fmcs2" ] && [ "$BOARD_NAME" != "adrv9361z7035" ] && [ "$BOARD_NAME" != "adrv9364z7020" ] && [ "$BOARD_NAME" != "zcu102_fmcs2" ] && [ "$BOARD_NAME" != "zcu102_9371" ]; then 15febc5adfSXianjun Jiao echo "\$BOARD_NAME is not correct. Please check!" 16febc5adfSXianjun Jiao exit 1 17febc5adfSXianjun Jiaoelse 18febc5adfSXianjun Jiao echo "\$BOARD_NAME is found!" 19febc5adfSXianjun Jiaofi 20febc5adfSXianjun Jiao 21febc5adfSXianjun Jiaoif [ "$BOARD_NAME" == "zcu102_fmcs2" ] || [ "$BOARD_NAME" == "zcu102_9371" ]; then 22febc5adfSXianjun Jiao dtb_filename="system.dtb" 23febc5adfSXianjun Jiao image_filepath="arch/arm64/boot/" 24febc5adfSXianjun Jiao image_filename="Image" 25febc5adfSXianjun Jiao LINUX_KERNEL_SRC_DIR_NAME=adi-linux-64 26febc5adfSXianjun Jiaoelse 27febc5adfSXianjun Jiao dtb_filename="devicetree.dtb" 28febc5adfSXianjun Jiao image_filepath="arch/arm/boot/" 29febc5adfSXianjun Jiao image_filename="uImage" 30febc5adfSXianjun Jiao LINUX_KERNEL_SRC_DIR_NAME=adi-linux 31febc5adfSXianjun Jiaofi 32febc5adfSXianjun Jiaoecho $dtb_filename 33febc5adfSXianjun Jiaoecho $image_filepath 34febc5adfSXianjun Jiaoecho $image_filename 35febc5adfSXianjun Jiao 362ee67178SXianjun Jiaoset -x 372ee67178SXianjun Jiao 38266e9566SXianjun Jiaomv BOOT.BIN BOOT.BIN.bak 392ee67178SXianjun Jiaosync 40b73660adSXianjun Jiaowget ftp://192.168.10.1/kernel_boot/boards/$BOARD_NAME/output_boot_bin/BOOT.BIN 41266e9566SXianjun Jiaoif [ -f "./BOOT.BIN" ]; then 42266e9566SXianjun Jiao echo "BOOT.BIN downloaded!" 43266e9566SXianjun Jiaoelse 440a172722SXianjun Jiao echo "WARNING! BOOT.BIN not downloaded! Old file used!" 45266e9566SXianjun Jiao mv BOOT.BIN.bak BOOT.BIN 460a172722SXianjun Jiao# exit 1 47266e9566SXianjun Jiaofi 482ee67178SXianjun Jiaosync 49266e9566SXianjun Jiao 50266e9566SXianjun Jiaomv $image_filename $image_filename.bak 512ee67178SXianjun Jiaosync 52febc5adfSXianjun Jiaowget ftp://192.168.10.1/$LINUX_KERNEL_SRC_DIR_NAME/$image_filepath/$image_filename 53266e9566SXianjun Jiaoif [ -f "./$image_filename" ]; then 54266e9566SXianjun Jiao echo "$image_filename downloaded!" 55266e9566SXianjun Jiaoelse 560a172722SXianjun Jiao echo "WARNING! $image_filename not downloaded! Old file used!" 57266e9566SXianjun Jiao mv $image_filename.bak $image_filename 580a172722SXianjun Jiao# exit 1 59266e9566SXianjun Jiaofi 602ee67178SXianjun Jiaosync 61266e9566SXianjun Jiao 62266e9566SXianjun Jiaomv $dtb_filename $dtb_filename.bak 632ee67178SXianjun Jiaosync 64febc5adfSXianjun Jiaowget ftp://192.168.10.1/kernel_boot/boards/$BOARD_NAME/$dtb_filename 65266e9566SXianjun Jiaoif [ -f "./$dtb_filename" ]; then 66266e9566SXianjun Jiao echo "$dtb_filename downloaded!" 67266e9566SXianjun Jiaoelse 680a172722SXianjun Jiao echo "WARNING! $dtb_filename not downloaded! Old file used!" 69266e9566SXianjun Jiao mv $dtb_filename.bak $dtb_filename 700a172722SXianjun Jiao# exit 1 71266e9566SXianjun Jiaofi 722ee67178SXianjun Jiaosync 73266e9566SXianjun Jiao 742ee67178SXianjun Jiao#slepp 0.5 75266e9566SXianjun Jiao 76b73660adSXianjun Jiaomount /dev/mmcblk0p1 /mnt 772ee67178SXianjun Jiaosync 782ee67178SXianjun Jiao#sleep 0.5 79b73660adSXianjun Jiaocp BOOT.BIN /mnt/ -f 80febc5adfSXianjun Jiaorm /mnt/Image -f 81febc5adfSXianjun Jiaorm /mnt/uImage -f 82febc5adfSXianjun Jiaocp $image_filename /mnt/ -f 83febc5adfSXianjun Jiaorm /mnt/*.dtb -f 84febc5adfSXianjun Jiaocp $dtb_filename /mnt/ -f 85febc5adfSXianjun Jiaocd /mnt/ 862ee67178SXianjun Jiaosync 87febc5adfSXianjun Jiaocd ~ 882ee67178SXianjun Jiao#sleep 0.5 89b73660adSXianjun Jiaoumount /mnt 902ee67178SXianjun Jiaosync 912ee67178SXianjun Jiao#sleep 3 922ee67178SXianjun Jiaosudo reboot now 93