Jacob Stiffler
2018-11-12 19:38:24 UTC
Signed-off-by: Jacob Stiffler <j-***@ti.com>
---
k3/create-sdcard.sh | 1196 ---------------------------------------------------
1 file changed, 1196 deletions(-)
delete mode 100644 k3/create-sdcard.sh
diff --git a/k3/create-sdcard.sh b/k3/create-sdcard.sh
deleted file mode 100644
index 948ca9a..0000000
--- a/k3/create-sdcard.sh
+++ /dev/null
@@ -1,1196 +0,0 @@
-#!/bin/bash
-# Authors:
-# LT Thomas <***@ti.com>
-# Chase Maupin
-# Franklin Cooper Jr.
-#
-# create-sdcard.sh v0.3
-
-# This distribution contains contributions or derivatives under copyright
-# as follows:
-#
-# Copyright (c) 2010, Texas Instruments Incorporated
-# All rights reserved.
-#
-# Redistribution and use in source and binary forms, with or without
-# modification, are permitted provided that the following conditions
-# are met:
-# - Redistributions of source code must retain the above copyright notice,
-# this list of conditions and the following disclaimer.
-# - Redistributions in binary form must reproduce the above copyright
-# notice, this list of conditions and the following disclaimer in the
-# documentation and/or other materials provided with the distribution.
-# - Neither the name of Texas Instruments nor the names of its
-# contributors may be used to endorse or promote products derived
-# from this software without specific prior written permission.
-#
-# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
-# TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
-# PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR
-# CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
-# EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
-# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
-# PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
-# LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
-# OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
-# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-# Force locale language to be set to English. This avoids issues when doing
-# text and string processing.
-export LANG=C
-
-# Determine the absolute path to the executable
-# EXE will have the PWD removed so we can concatenate with the PWD safely
-PWD=`pwd`
-EXE=`echo $0 | sed s=$PWD==`
-EXEPATH="$PWD"/"$EXE"
-clear
-cat << EOM
-
-################################################################################
-
-This script will create a bootable SD card from custom or pre-built binaries.
-
-The script must be run with root permissions and from the bin directory of
-the SDK
-
-Example:
- $ sudo ./create-sdcard.sh
-
-Formatting can be skipped if the SD card is already formatted and
-partitioned properly.
-
-################################################################################
-
-EOM
-
-AMIROOT=`whoami | awk {'print $1'}`
-if [ "$AMIROOT" != "root" ] ; then
-
- echo " **** Error *** must run script with sudo"
- echo ""
- exit
-fi
-
-THEPWD=$EXEPATH
-PARSEPATH=`echo $THEPWD | grep -o '.*ti-sdk.*.[0-9]/'`
-
-if [ "$PARSEPATH" != "" ] ; then
-PATHVALID=1
-else
-PATHVALID=0
-fi
-
-#Precentage function
-untar_progress ()
-{
- TARBALL=$1;
- DIRECTPATH=$2;
- BLOCKING_FACTOR=$(($(xz --robot --list ${TARBALL} | grep 'totals' | awk '{print $5}') / 51200 + 1));
- tar --blocking-factor=${BLOCKING_FACTOR} --checkpoint=1 --checkpoint-action='ttyout=Written %u% \r' -Jxf ${TARBALL} -C ${DIRECTPATH}
-}
-
-#copy/paste programs
-cp_progress ()
-{
- CURRENTSIZE=0
- while [ $CURRENTSIZE -lt $TOTALSIZE ]
- do
- TOTALSIZE=$1;
- TOHERE=$2;
- CURRENTSIZE=`sudo du -c $TOHERE | grep total | awk {'print $1'}`
- echo -e -n "$CURRENTSIZE / $TOTALSIZE copied \r"
- sleep 1
- done
-}
-
-check_for_sdcards()
-{
- # find the avaible SD cards
- ROOTDRIVE=`mount | grep 'on / ' | awk {'print $1'} | cut -c6-8`
- PARTITION_TEST=`cat /proc/partitions | grep -v $ROOTDRIVE | grep '\<sd.\>\|\<mmcblk.\>' | grep -n ''`
- if [ "$PARTITION_TEST" = "" ]; then
- echo -e "Please insert a SD card to continue\n"
- while [ "$PARTITION_TEST" = "" ]; do
- read -p "Type 'y' to re-detect the SD card or 'n' to exit the script: " REPLY
- if [ "$REPLY" = 'n' ]; then
- exit 1
- fi
- ROOTDRIVE=`mount | grep 'on / ' | awk {'print $1'} | cut -c6-8`
- PARTITION_TEST=`cat /proc/partitions | grep -v $ROOTDRIVE | grep '\<sd.\>\|\<mmcblk.\>' | grep -n ''`
- done
- fi
-}
-
-populate_3_partitions() {
- ENTERCORRECTLY="0"
- while [ $ENTERCORRECTLY -ne 1 ]
- do
- read -e -p 'Enter path where SD card tarballs were downloaded : ' TARBALLPATH
-
- echo ""
- ENTERCORRECTLY=1
- if [ -d $TARBALLPATH ]
- then
- echo "Directory exists"
- echo ""
- echo "This directory contains:"
- ls $TARBALLPATH
- echo ""
- read -p 'Is this correct? [y/n] : ' ISRIGHTPATH
- case $ISRIGHTPATH in
- "y" | "Y") ;;
- "n" | "N" ) ENTERCORRECTLY=0;continue;;
- *) echo "Please enter y or n";ENTERCORRECTLY=0;continue;;
- esac
- else
- echo "Invalid path make sure to include complete path"
- ENTERCORRECTLY=0
- continue
- fi
- # Check that tarballs were found
- if [ ! -e "$TARBALLPATH""/boot_partition.tar.xz" ]
- then
- echo "Could not find boot_partition.tar.xz as expected. Please"
- echo "point to the directory containing the boot_partition.tar.xz"
- ENTERCORRECTLY=0
- continue
- fi
-
- if [ ! -e "$TARBALLPATH""/rootfs_partition.tar.xz" ]
- then
- echo "Could not find rootfs_partition.tar.xz as expected. Please"
- echo "point to the directory containing the rootfs_partition.tar.xz"
- ENTERCORRECTLY=0
- continue
- fi
-
- if [ ! -e "$TARBALLPATH""/start_here_partition.tar.xz" ]
- then
- echo "Could not find start_here_partition.tar.xz as expected. Please"
- echo "point to the directory containing the start_here_partition.tar.xz"
- ENTERCORRECTLY=0
- continue
- fi
- done
-
- # Make temporary directories and untar mount the partitions
- mkdir $PWD/boot
- mkdir $PWD/rootfs
- mkdir $PWD/start_here
- mkdir $PWD/tmp
-
- mount -t vfat ${DRIVE}${P}1 boot
- mount -t ext3 ${DRIVE}${P}2 rootfs
- mount -t ext3 ${DRIVE}${P}3 start_here
-
- # Remove any existing content in case the partitions were not
- # recreated
- sudo rm -rf boot/*
- sudo rm -rf rootfs/*
- sudo rm -rf start_here/*
-
- # Extract the tarball contents.
-cat << EOM
-
-################################################################################
- Extracting boot partition tarball
-
-################################################################################
-EOM
- untar_progress $TARBALLPATH/boot_partition.tar.xz tmp/
- if [ -e "./tmp/MLO" ]
- then
- cp ./tmp/MLO boot/
- fi
- cp -rf ./tmp/* boot/
-
- touch ./boot/uEnv.txt
- sed -i -e '/^def_board_name=.*/d' ./boot/uEnv.txt
- echo "def_board_name=$board_name" >> ./boot/uEnv.txt
-
-cat << EOM
-
-################################################################################
- Extracting rootfs partition tarball
-
-################################################################################
-EOM
- untar_progress $TARBALLPATH/rootfs_partition.tar.xz rootfs/
-
-cat << EOM
-
-################################################################################
- Extracting start_here partition to temp directory
-
-################################################################################
-EOM
- rm -rf tmp/*
- untar_progress $TARBALLPATH/start_here_partition.tar.xz tmp/
-
-cat << EOM
-
-################################################################################
- Copying Contents to START_HERE
-
-################################################################################
-EOM
-
- TOTALSIZE=`sudo du -c tmp/* | grep total | awk {'print $1'}`
- cp -rf tmp/* start_here/ &
- cp_progress $TOTALSIZE start_here/
- sync;sync
- # Fix up the START_HERE partitoin permissions
- chown nobody -R start_here
- chgrp nogroup -R start_here
-
- umount boot rootfs start_here
- sync;sync
-
- # Clean up the temp directories
- rm -rf boot rootfs start_here tmp
-}
-
-
-# Ask user whether creating an SD card for EVM or IDK
-cat << EOM
-
-################################################################################
-
- Please select which AM65x board you
- intend to boot with this SD card.
-
- Note that selecting "unknown" will still boot,
- but board-specific features will not be enabled.
-
-################################################################################
-EOM
-while true;
-do
- board_name=""
- echo -e "\nAvailable boards: \n"
- echo "1: am65x_evm"
- echo "2: am65x_idk"
- echo "3: unknown"
- echo " "
- read -p 'Enter Board Number: ' BOARDNUMBER
- echo " "
-
- case $BOARDNUMBER in
- "1") board_name="am65x_evm";;
- "2") board_name="am65x_idk";;
- "3") board_name="am65x";;
- esac
-
- if [ -z "$board_name" ]
- then
- echo "Please enter a valid number."
- else
- break
- fi
-done
-
-# find the avaible SD cards
-ROOTDRIVE=`mount | grep 'on / ' | awk {'print $1'} | cut -c6-9`
-if [ "$ROOTDRIVE" = "root" ]; then
- ROOTDRIVE=`readlink /dev/root | cut -c1-3`
-else
- ROOTDRIVE=`echo $ROOTDRIVE | cut -c1-3`
-fi
-
-PARTITION_TEST=`cat /proc/partitions | grep -v $ROOTDRIVE | grep '\<sd.\>\|\<mmcblk.\>' | grep -n ''`
-
-# Check for available mounts
-check_for_sdcards
-
-echo -e "\nAvailable Drives to write images to: \n"
-echo "# major minor size name "
-cat /proc/partitions | grep -v $ROOTDRIVE | grep '\<sd.\>\|\<mmcblk.\>' | grep -n ''
-echo " "
-
-DEVICEDRIVENUMBER=
-while true;
-do
- read -p 'Enter Device Number or 'n' to exit: ' DEVICEDRIVENUMBER
- echo " "
- if [ "$DEVICEDRIVENUMBER" = 'n' ]; then
- exit 1
- fi
-
- if [ "$DEVICEDRIVENUMBER" = "" ]; then
- # Check to see if there are any changes
- check_for_sdcards
- echo -e "These are the Drives available to write images to:"
- echo "# major minor size name "
- cat /proc/partitions | grep -v $ROOTDRIVE | grep '\<sd.\>\|\<mmcblk.\>' | grep -n ''
- echo " "
- continue
- fi
-
- DEVICEDRIVENAME=`cat /proc/partitions | grep -v $ROOTDRIVE | grep '\<sd.\>\|\<mmcblk.\>' | grep -n '' | grep "${DEVICEDRIVENUMBER}:" | awk '{print $5}'`
- if [ -n "$DEVICEDRIVENAME" ]
- then
- DRIVE=/dev/$DEVICEDRIVENAME
- DEVICESIZE=`cat /proc/partitions | grep -v $ROOTDRIVE | grep '\<sd.\>\|\<mmcblk.\>' | grep -n '' | grep "${DEVICEDRIVENUMBER}:" | awk '{print $4}'`
- break
- else
- echo -e "Invalid selection!"
- # Check to see if there are any changes
- check_for_sdcards
- echo -e "These are the only Drives available to write images to: \n"
- echo "# major minor size name "
- cat /proc/partitions | grep -v $ROOTDRIVE | grep '\<sd.\>\|\<mmcblk.\>' | grep -n ''
- echo " "
- fi
-done
-
-echo "$DEVICEDRIVENAME was selected"
-#Check the size of disk to make sure its under 16GB
-if [ $DEVICESIZE -gt 17000000 ] ; then
-cat << EOM
-
-################################################################################
-
- **********WARNING**********
-
- Selected Device is greater then 16GB
- Continuing past this point will erase data from device
- Double check that this is the correct SD Card
-
-################################################################################
-
-EOM
- ENTERCORRECTLY=0
- while [ $ENTERCORRECTLY -ne 1 ]
- do
- read -p 'Would you like to continue [y/n] : ' SIZECHECK
- echo ""
- echo " "
- ENTERCORRECTLY=1
- case $SIZECHECK in
- "y") ;;
- "n") exit;;
- *) echo "Please enter y or n";ENTERCORRECTLY=0;;
- esac
- echo ""
- done
-
-fi
-echo ""
-
-DRIVE=/dev/$DEVICEDRIVENAME
-NUM_OF_DRIVES=`df | grep -c $DEVICEDRIVENAME`
-
-# This if statement will determine if we have a mounted sdX or mmcblkX device.
-# If it is mmcblkX, then we need to set an extra char in the partition names, 'p',
-# to account for /dev/mmcblkXpY labled partitions.
-if [[ ${DEVICEDRIVENAME} =~ ^sd. ]]; then
- echo "$DRIVE is an sdx device"
- P=''
-else
- echo "$DRIVE is an mmcblkx device"
- P='p'
-fi
-
-if [ "$NUM_OF_DRIVES" != "0" ]; then
- echo "Unmounting the $DEVICEDRIVENAME drives"
- for ((c=1; c<="$NUM_OF_DRIVES"; c++ ))
- do
- unmounted=`df | grep '\<'$DEVICEDRIVENAME$P$c'\>' | awk '{print $1}'`
- if [ -n "$unmounted" ]
- then
- echo " unmounted ${DRIVE}$P$c"
- sudo umount -f ${DRIVE}$P$c
- fi
-
- done
-fi
-
-# Refresh this variable as the device may not be mounted at script instantiation time
-# This will always return one more then needed
-NUM_OF_PARTS=`cat /proc/partitions | grep -v $ROOTDRIVE | grep -c $DEVICEDRIVENAME`
-for ((c=1; c<"$NUM_OF_PARTS"; c++ ))
-do
- SIZE=`cat /proc/partitions | grep -v $ROOTDRIVE | grep '\<'$DEVICEDRIVENAME$P$c'\>' | awk '{print $3}'`
- echo "Current size of $DEVICEDRIVENAME$P$c $SIZE bytes"
-done
-
-# check to see if the device is already partitioned
-for (( c=1; c<5; c++ ))
-do
- eval "SIZE$c=`cat /proc/partitions | grep -v $ROOTDRIVE | grep '\<'$DEVICEDRIVENAME$P$c'\>' | awk '{print $3}'`"
-done
-
-PARTITION="0"
-if [ -n "$SIZE1" -a -n "$SIZE2" ] ; then
- if [ "$SIZE1" -gt "72000" -a "$SIZE2" -gt "700000" ]
- then
- PARTITION=1
-
- if [ -z "$SIZE3" -a -z "$SIZE4" ]
- then
- #Detected 2 partitions
- PARTS=2
-
- elif [ "$SIZE3" -gt "1000" -a -z "$SIZE4" ]
- then
- #Detected 3 partitions
- PARTS=3
-
- else
- echo "SD Card is not correctly partitioned"
- PARTITION=0
- fi
- fi
-else
- echo "SD Card is not correctly partitioned"
- PARTITION=0
- PARTS=0
-fi
-
-
-#Partition is found
-if [ "$PARTITION" -eq "1" ]
-then
-cat << EOM
-
-################################################################################
-
- Detected device has $PARTS partitions already
-
- Re-partitioning will allow the choice of 2 or 3 partitions
-
-################################################################################
-
-EOM
-
- ENTERCORRECTLY=0
- while [ $ENTERCORRECTLY -ne 1 ]
- do
- read -p 'Would you like to re-partition the drive anyways [y/n] : ' CASEPARTITION
- echo ""
- echo " "
- ENTERCORRECTLY=1
- case $CASEPARTITION in
- "y") echo "Now partitioning $DEVICEDRIVENAME ...";PARTITION=0;;
- "n") echo "Skipping partitioning";;
- *) echo "Please enter y or n";ENTERCORRECTLY=0;;
- esac
- echo ""
- done
-
-fi
-
-#Partition is not found, choose to partition 2 or 3 segments
-if [ "$PARTITION" -eq "0" ]
-then
-cat << EOM
-
-################################################################################
-
- Select 2 partitions if only need boot and rootfs (most users).
- Select 3 partitions if need SDK & other content on SD card. This is
- usually used by device manufacturers with access to partition tarballs.
-
- ****WARNING**** continuing will erase all data on $DEVICEDRIVENAME
-
-################################################################################
-
-EOM
- ENTERCORRECTLY=0
- while [ $ENTERCORRECTLY -ne 1 ]
- do
-
- read -p 'Number of partitions needed [2/3] : ' CASEPARTITIONNUMBER
- echo ""
- echo " "
- ENTERCORRECTLY=1
- case $CASEPARTITIONNUMBER in
- "2") echo "Now partitioning $DEVICEDRIVENAME with 2 partitions...";PARTITION=2;;
- "3") echo "Now partitioning $DEVICEDRIVENAME with 3 partitions...";PARTITION=3;;
- "n") exit;;
- *) echo "Please enter 2 or 3";ENTERCORRECTLY=0;;
- esac
- echo " "
- done
-fi
-
-
-
-#Section for partitioning the drive
-
-#create 3 partitions
-if [ "$PARTITION" -eq "3" ]
-then
-
-# set the PARTS value as well
-PARTS=3
-
-cat << EOM
-
-################################################################################
-
- Now making 3 partitions
-
-################################################################################
-
-EOM
-
-dd if=/dev/zero of=$DRIVE bs=1024 count=1024
-
-SIZE=`fdisk -l $DRIVE | grep Disk | awk '{print $5}'`
-
-echo DISK SIZE - $SIZE bytes
-
-parted -s $DRIVE mklabel msdos
-parted -s $DRIVE unit cyl mkpart primary fat32 -- 0 9
-parted -s $DRIVE set 1 boot on
-parted -s $DRIVE unit cyl mkpart primary ext2 -- 9 310
-parted -s $DRIVE unit cyl mkpart primary ext2 -- 310 -2
-
-
-cat << EOM
-
-################################################################################
-
- Partitioning Boot
-
-################################################################################
-EOM
- mkfs.vfat -F 32 -n "boot" ${DRIVE}${P}1
-cat << EOM
-
-################################################################################
-
- Partitioning Rootfs
-
-################################################################################
-EOM
- mkfs.ext3 -L "rootfs" ${DRIVE}${P}2
-cat << EOM
-
-################################################################################
-
- Partitioning START_HERE
-
-################################################################################
-EOM
- mkfs.ext3 -L "START_HERE" ${DRIVE}${P}3
- sync
- sync
-
-#create only 2 partitions
-elif [ "$PARTITION" -eq "2" ]
-then
-
-# Set the PARTS value as well
-PARTS=2
-cat << EOM
-
-################################################################################
-
- Now making 2 partitions
-
-################################################################################
-
-EOM
-dd if=/dev/zero of=$DRIVE bs=1024 count=1024
-
-SIZE=`fdisk -l $DRIVE | grep Disk | awk '{print $5}'`
-
-echo DISK SIZE - $SIZE bytes
-
-parted -s $DRIVE mklabel msdos
-parted -s $DRIVE unit cyl mkpart primary fat32 -- 0 9
-parted -s $DRIVE set 1 boot on
-parted -s $DRIVE unit cyl mkpart primary ext2 -- 9 -2
-
-cat << EOM
-
-################################################################################
-
- Partitioning Boot
-
-################################################################################
-EOM
- mkfs.vfat -F 32 -n "boot" ${DRIVE}${P}1
-cat << EOM
-
-################################################################################
-
- Partitioning rootfs
-
-################################################################################
-EOM
- mkfs.ext3 -L "rootfs" ${DRIVE}${P}2
- sync
- sync
- INSTALLSTARTHERE=n
-fi
-
-
-
-#Break between partitioning and installing file system
-cat << EOM
-
-
-################################################################################
-
- Partitioning is now done
- Continue to install filesystem or select 'n' to safe exit
-
- **Warning** Continuing will erase files any files in the partitions
-
-################################################################################
-
-
-EOM
-ENTERCORRECTLY=0
-while [ $ENTERCORRECTLY -ne 1 ]
-do
- read -p 'Would you like to continue? [y/n] : ' EXITQ
- echo ""
- echo " "
- ENTERCORRECTLY=1
- case $EXITQ in
- "y") ;;
- "n") exit;;
- *) echo "Please enter y or n";ENTERCORRECTLY=0;;
- esac
-done
-
-# If this is a three partition card then we will jump to a function to
-# populate the three partitions and then exit the script. If not we
-# go on to prompt the user for input on the two partitions
-if [ "$PARTS" -eq "3" ]
-then
- populate_3_partitions
- exit 0
-fi
-
-#Add directories for images
-export START_DIR=$PWD
-mkdir $START_DIR/tmp
-export PATH_TO_SDBOOT=boot
-export PATH_TO_SDROOTFS=rootfs
-export PATH_TO_TMP_DIR=$START_DIR/tmp
-
-
-echo " "
-echo "Mount the partitions "
-mkdir $PATH_TO_SDBOOT
-mkdir $PATH_TO_SDROOTFS
-
-sudo mount -t vfat ${DRIVE}${P}1 boot/
-sudo mount -t ext3 ${DRIVE}${P}2 rootfs/
-
-
-
-echo " "
-echo "Emptying partitions "
-echo " "
-sudo rm -rf $PATH_TO_SDBOOT/*
-sudo rm -rf $PATH_TO_SDROOTFS/*
-
-echo ""
-echo "Syncing...."
-echo ""
-sync
-sync
-sync
-
-cat << EOM
-################################################################################
-
- Choose file path to install from
-
- 1 ) Install pre-built images from SDK
- 2 ) Enter in custom boot and rootfs file paths
-
-################################################################################
-
-EOM
-ENTERCORRECTLY=0
-while [ $ENTERCORRECTLY -ne 1 ]
-do
- read -p 'Choose now [1/2] : ' FILEPATHOPTION
- echo ""
- echo " "
- ENTERCORRECTLY=1
- case $FILEPATHOPTION in
- "1") echo "Will now install from SDK pre-built images";;
- "2") echo "";;
- *) echo "Please enter 1 or 2";ENTERCORRECTLY=0;;
- esac
-done
-
-# SDK DEFAULTS
-if [ $FILEPATHOPTION -eq 1 ] ; then
-
- #check that in the right directory
-
- THEEVMSDK=`echo $PARSEPATH | grep -o 'ti-sdk-.*[0-9]'`
-
- if [ $PATHVALID -eq 1 ]; then
- echo "now installing: $THEEVMSDK"
- else
- echo "no SDK PATH found"
- ENTERCORRECTLY=0
- while [ $ENTERCORRECTLY -ne 1 ]
- do
- read -e -p 'Enter path to SDK : ' SDKFILEPATH
-
- echo ""
- ENTERCORRECTLY=1
- if [ -d $SDKFILEPATH ]
- then
- echo "Directory exists"
- echo ""
- PARSEPATH=`echo $SDKFILEPATH | grep -o '.*ti-sdk.*.[0-9]/'`
- #echo $PARSEPATH
-
- if [ "$PARSEPATH" != "" ] ; then
- PATHVALID=1
- else
- PATHVALID=0
- fi
- #echo $PATHVALID
- if [ $PATHVALID -eq 1 ] ; then
-
- THEEVMSDK=`echo $SDKFILEPATH | grep -o 'ti-sdk-.*[0-9]'`
- echo "Is this the correct SDK: $THEEVMSDK"
- echo ""
- read -p 'Is this correct? [y/n] : ' ISRIGHTPATH
- case $ISRIGHTPATH in
- "y") ;;
- "n") ENTERCORRECTLY=0;;
- *) echo "Please enter y or n";ENTERCORRECTLY=0;;
- esac
- else
- echo "Invalid SDK path make sure to include ti-sdk-xxxx"
- ENTERCORRECTLY=0
- fi
-
- else
- echo "Invalid path make sure to include complete path"
-
- ENTERCORRECTLY=0
- fi
- done
- fi
-
-
-
- #check that files are in SDK
- BOOTFILEPATH="$PARSEPATH/board-support/prebuilt-images"
- MLO=`ls $BOOTFILEPATH | grep MLO | awk {'print $1'}`
- SPL_A53=`ls $BOOTFILEPATH | grep tispl | awk {'print $1'}`
- SPL_R5=`ls $BOOTFILEPATH | grep tiboot3 | awk {'print $1'}`
- KERNELIMAGE=`ls $BOOTFILEPATH | grep [uz]Image | awk {'print $1'}`
- BOOTIMG=`ls $BOOTFILEPATH | grep u-boot | grep .img | awk {'print $1'}`
- BOOTBIN=`ls $BOOTFILEPATH | grep u-boot | grep .bin | awk {'print $1'}`
- BOOTUENV=`ls $BOOTFILEPATH | grep uEnv.txt | awk {'print $1'}`
- #rootfs
- ROOTFILEPARTH="$PARSEPATH/filesystem"
- #ROOTFSTAR=`ls $ROOTFILEPARTH | grep tisdk.*rootfs | awk {'print $1'}`
-
- #Make sure there is only 1 tar
- CHECKNUMOFTAR=`ls $ROOTFILEPARTH | grep "tisdk.*rootfs" | grep 'tar.xz' | grep -n '' | grep '2:' | awk {'print $1'}`
- if [ -n "$CHECKNUMOFTAR" ]
- then
-cat << EOM
-
-################################################################################
-
- Multiple rootfs Tarballs found
-
-################################################################################
-
-EOM
- ls $ROOTFILEPARTH | grep "tisdk.*rootfs" | grep 'tar.xz' | grep -n '' | awk {'print " " , $1'}
- echo ""
- read -p "Enter Number of rootfs Tarball: " TARNUMBER
- echo " "
- FOUNDTARFILENAME=`ls $ROOTFILEPARTH | grep "rootfs" | grep 'tar.xz' | grep -n '' | grep "${TARNUMBER}:" | cut -c3- | awk {'print$1'}`
- ROOTFSTAR=$FOUNDTARFILENAME
-
- else
- ROOTFSTAR=`ls $ROOTFILEPARTH | grep "tisdk.*rootfs" | grep 'tar.xz' | awk {'print $1'}`
- fi
-
- ROOTFSUSERFILEPATH=$ROOTFILEPARTH/$ROOTFSTAR
- BOOTPATHOPTION=1
- ROOTFSPATHOPTION=2
-
-elif [ $FILEPATHOPTION -eq 2 ] ; then
-cat << EOM
-################################################################################
-
- For U-boot and MLO
-
- If files are located in Tarball write complete path including the file name.
- e.x. $: /home/user/MyCustomTars/boot.tar.xz
-
- If files are located in a directory write the directory path
- e.x. $: /ti-sdk/board-support/prebuilt-images/
-
- NOTE: Not all platforms will have an MLO file and this file can
- be ignored for platforms that do not support an MLO.
-
- Update: The proper location for the kernel image and device tree
- files have moved from the boot partition to the root filesystem.
-
-################################################################################
-
-EOM
- ENTERCORRECTLY=0
- while [ $ENTERCORRECTLY -ne 1 ]
- do
- read -e -p 'Enter path for Boot Partition : ' BOOTUSERFILEPATH
-
- echo ""
- ENTERCORRECTLY=1
- if [ -f $BOOTUSERFILEPATH ]
- then
- echo "File exists"
- echo ""
- elif [ -d $BOOTUSERFILEPATH ]
- then
- echo "Directory exists"
- echo ""
- echo "This directory contains:"
- ls $BOOTUSERFILEPATH
- echo ""
- read -p 'Is this correct? [y/n] : ' ISRIGHTPATH
- case $ISRIGHTPATH in
- "y") ;;
- "n") ENTERCORRECTLY=0;;
- *) echo "Please enter y or n";ENTERCORRECTLY=0;;
- esac
- else
- echo "Invalid path make sure to include complete path"
-
- ENTERCORRECTLY=0
- fi
- done
-
-
-cat << EOM
-
-
-################################################################################
-
- For Kernel Image and Device Trees files
-
- What would you like to do?
- 1) Reuse kernel image and device tree files found in the selected rootfs.
- 2) Provide a directory that contains the kernel image and device tree files
- to be used.
-
-################################################################################
-
-EOM
-
-ENTERCORRECTLY=0
-while [ $ENTERCORRECTLY -ne 1 ]
-do
-
- read -p 'Choose option 1 or 2 : ' CASEOPTION
- echo ""
- echo " "
- ENTERCORRECTLY=1
- case $CASEOPTION in
- "1") echo "Reusing kernel and dt files from the rootfs's boot directory";KERNELFILESOPTION=1;;
- "2") echo "Choosing a directory that contains the kernel files to be used";KERNELFILESOPTION=2;;
- "n") exit;;
- *) echo "Please enter 1 or 2";ENTERCORRECTLY=0;;
- esac
- echo " "
-done
-
-if [ $KERNELFILESOPTION == 2 ]
-then
-
-cat << EOM
-################################################################################
-
- For Kernel Image and Device Trees files
-
- The kernel image name should contain the image type uImage or zImage depending
- on which format is used.
-
- The device tree files must end with .dtb
- e.g am335x-evm.dtb am43x-gp-evm.dtb
-
-
-################################################################################
-
-EOM
- ENTERCORRECTLY=0
- while [ $ENTERCORRECTLY -ne 1 ]
- do
- read -e -p 'Enter path for kernel image and device tree files : ' KERNELUSERFILEPATH
-
- echo ""
- ENTERCORRECTLY=1
-
- if [ -d $KERNELUSERFILEPATH ]
- then
- echo "Directory exists"
- echo ""
- echo "This directory contains:"
- ls $KERNELUSERFILEPATH
- echo ""
- read -p 'Is this correct? [y/n] : ' ISRIGHTPATH
- case $ISRIGHTPATH in
- "y") ;;
- "n") ENTERCORRECTLY=0;;
- *) echo "Please enter y or n";ENTERCORRECTLY=0;;
- esac
- else
- echo "Invalid path make sure to include complete path"
- ENTERCORRECTLY=0
- fi
- done
-fi
-
-cat << EOM
-
-
-################################################################################
-
- For Rootfs partition
-
- If files are located in Tarball write complete path including the file name.
- e.x. $: /home/user/MyCustomTars/rootfs.tar.xz
-
- If files are located in a directory write the directory path
- e.x. $: /ti-sdk/targetNFS/
-
-################################################################################
-
-EOM
- ENTERCORRECTLY=0
- while [ $ENTERCORRECTLY -ne 1 ]
- do
- read -e -p 'Enter path for Rootfs Partition : ' ROOTFSUSERFILEPATH
- echo ""
- ENTERCORRECTLY=1
- if [ -f $ROOTFSUSERFILEPATH ]
- then
- echo "File exists"
- echo ""
- elif [ -d $ROOTFSUSERFILEPATH ]
- then
- echo "This directory contains:"
- ls $ROOTFSUSERFILEPATH
- echo ""
- read -p 'Is this correct? [y/n] : ' ISRIGHTPATH
- case $ISRIGHTPATH in
- "y") ;;
- "n") ENTERCORRECTLY=0;;
- *) echo "Please enter y or n";ENTERCORRECTLY=0;;
- esac
-
- else
- echo "Invalid path make sure to include complete path"
-
- ENTERCORRECTLY=0
- fi
- done
- echo ""
-
-
- # Check if user entered a tar or not for Boot
- ISBOOTTAR=`ls $BOOTUSERFILEPATH | grep .tar.xz | awk {'print $1'}`
- if [ -n "$ISBOOTTAR" ]
- then
- BOOTPATHOPTION=2
- else
- BOOTPATHOPTION=1
- BOOTFILEPATH=$BOOTUSERFILEPATH
- MLO=`ls $BOOTFILEPATH | grep MLO | awk {'print $1'}`
- SPL_A53=`ls $BOOTFILEPATH | grep tispl | awk {'print $1'}`
- SPL_R5=`ls $BOOTFILEPATH | grep tiboot3 | awk {'print $1'}`
- BOOTIMG=`ls $BOOTFILEPATH | grep u-boot | grep .img | awk {'print $1'}`
- BOOTBIN=`ls $BOOTFILEPATH | grep u-boot | grep .bin | awk {'print $1'}`
- BOOTUENV=`ls $BOOTFILEPATH | grep uEnv.txt | awk {'print $1'}`
- fi
-
-
- if [ "$KERNELFILESOPTION" == "2" ]
- then
- KERNELIMAGE=`ls $KERNELUSERFILEPATH | grep [uz]Image | awk {'print $1'}`
- DTFILES=`ls $KERNELUSERFILEPATH | grep .dtb$ | awk {'print $1'}`
- fi
-
-
- #Check if user entered a tar or not for Rootfs
- ISROOTFSTAR=`ls $ROOTFSUSERFILEPATH | grep .tar.xz | awk {'print $1'}`
- if [ -n "$ISROOTFSTAR" ]
- then
- ROOTFSPATHOPTION=2
- else
- ROOTFSPATHOPTION=1
- ROOTFSFILEPATH=$ROOTFSUSERFILEPATH
- fi
-fi
-
-cat << EOM
-################################################################################
-
- Copying files now... will take minutes
-
-################################################################################
-
-Copying boot partition
-EOM
-
-
-if [ $BOOTPATHOPTION -eq 1 ] ; then
-
- echo ""
- #copy boot files out of board support
- if [ "$MLO" == "" ] && ( [ "$SPL_R5" == "" ] || [ "$SPL_A53" == "" ] ); then
- if [ "$SPL_R5" != "" ]; then
- echo "tispl.bin file not found"
- elif [ "$SPL_A53" != "" ]; then
- echo "tiboot3.bin file not found"
- else
- echo "Boot image not found"
- fi
- fi
-
- echo ""
-
- echo ""
-
- if [ "$MLO" != "" ] ; then
- cp $BOOTFILEPATH/$MLO $PATH_TO_SDBOOT/MLO
- echo "MLO copied"
-
- echo ""
-
- echo ""
- fi
-
- #copy boot files out of board support
- if [ "$SPL_A53" != "" ] ; then
- cp $BOOTFILEPATH/$SPL_A53 $PATH_TO_SDBOOT/tispl.bin
- echo "tispl.bin copied"
-
- echo ""
-
- echo ""
- fi
-
- #copy boot files out of board support
- if [ "$SPL_R5" != "" ] ; then
- cp $BOOTFILEPATH/$SPL_R5 $PATH_TO_SDBOOT/tiboot3.bin
- echo "tiboot3.bin copied"
-
- echo ""
-
- echo ""
- fi
-
- if [ "$BOOTIMG" != "" ] ; then
- cp $BOOTFILEPATH/$BOOTIMG $PATH_TO_SDBOOT/u-boot.img
- echo "u-boot.img copied"
- elif [ "$BOOTBIN" != "" ] ; then
- cp $BOOTFILEPATH/$BOOTBIN $PATH_TO_SDBOOT/u-boot.bin
- echo "u-boot.bin copied"
- else
- echo "No U-Boot file found"
- fi
-
- echo ""
-
- if [ "$BOOTUENV" != "" ] ; then
- cp $BOOTFILEPATH/$BOOTUENV $PATH_TO_SDBOOT/uEnv.txt
- echo "uEnv.txt copied"
- fi
-
-elif [ $BOOTPATHOPTION -eq 2 ] ; then
- untar_progress $BOOTUSERFILEPATH $PATH_TO_TMP_DIR
- cp -rf $PATH_TO_TMP_DIR/* $PATH_TO_SDBOOT
- echo ""
-
-fi
-
-touch $PATH_TO_SDBOOT/uEnv.txt
-sed -i -e '/^def_board_name=.*/d' $PATH_TO_SDBOOT/uEnv.txt
-echo "def_board_name=$board_name" >> $PATH_TO_SDBOOT/uEnv.txt
-
-echo ""
-sync
-
-echo "Copying rootfs System partition"
-if [ $ROOTFSPATHOPTION -eq 1 ] ; then
- TOTALSIZE=`sudo du -c $ROOTFSUSERFILEPATH/* | grep total | awk {'print $1'}`
- sudo cp -r $ROOTFSUSERFILEPATH/* $PATH_TO_SDROOTFS & cp_progress $TOTALSIZE $PATH_TO_SDROOTFS
-
-elif [ $ROOTFSPATHOPTION -eq 2 ] ; then
- untar_progress $ROOTFSUSERFILEPATH $PATH_TO_SDROOTFS
-fi
-
-echo ""
-echo ""
-echo "Syncing..."
-sync
-sync
-sync
-sync
-sync
-sync
-sync
-sync
-
-if [ "$KERNELFILESOPTION" == "2" ]
-then
-
- mkdir -p $PATH_TO_SDROOTFS/boot
-
- if [ "$KERNELIMAGE" != "" ] ; then
-
- CLEANKERNELNAME=`ls "$BOOTFILEPATH/$KERNELIMAGE" | grep -o [uz]Image`
- cp -f $KERNELUSERFILEPATH/$KERNELIMAGE $PATH_TO_SDROOTFS/boot/$CLEANKERNELNAME
- echo "Kernel image copied"
- else
- echo "$KERNELIMAGE file not found"
- fi
-
- COPYINGDTB="false"
- for dtb in $DTFILES
- do
- if [ -f "$KERNELUSERFILEPATH/$dtb" ] ; then
- cp -f $KERNELUSERFILEPATH/$dtb $PATH_TO_SDROOTFS/boot
- echo "$dtb copied"
- COPYINGDTB="true"
- fi
- done
-
- if [ "$COPYINGDTB" == "false" ]
- then
- echo "No device tree files found"
- fi
-
-fi
-
-echo " "
-echo "Un-mount the partitions "
-sudo umount -f $PATH_TO_SDBOOT
-sudo umount -f $PATH_TO_SDROOTFS
-
-
-echo " "
-echo "Remove created temp directories "
-sudo rm -rf $PATH_TO_TMP_DIR
-sudo rm -rf $PATH_TO_SDROOTFS
-sudo rm -rf $PATH_TO_SDBOOT
-
-
-echo " "
-echo "Operation Finished"
-echo " "
---
k3/create-sdcard.sh | 1196 ---------------------------------------------------
1 file changed, 1196 deletions(-)
delete mode 100644 k3/create-sdcard.sh
diff --git a/k3/create-sdcard.sh b/k3/create-sdcard.sh
deleted file mode 100644
index 948ca9a..0000000
--- a/k3/create-sdcard.sh
+++ /dev/null
@@ -1,1196 +0,0 @@
-#!/bin/bash
-# Authors:
-# LT Thomas <***@ti.com>
-# Chase Maupin
-# Franklin Cooper Jr.
-#
-# create-sdcard.sh v0.3
-
-# This distribution contains contributions or derivatives under copyright
-# as follows:
-#
-# Copyright (c) 2010, Texas Instruments Incorporated
-# All rights reserved.
-#
-# Redistribution and use in source and binary forms, with or without
-# modification, are permitted provided that the following conditions
-# are met:
-# - Redistributions of source code must retain the above copyright notice,
-# this list of conditions and the following disclaimer.
-# - Redistributions in binary form must reproduce the above copyright
-# notice, this list of conditions and the following disclaimer in the
-# documentation and/or other materials provided with the distribution.
-# - Neither the name of Texas Instruments nor the names of its
-# contributors may be used to endorse or promote products derived
-# from this software without specific prior written permission.
-#
-# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
-# TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
-# PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR
-# CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
-# EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
-# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
-# PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
-# LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
-# OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
-# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-# Force locale language to be set to English. This avoids issues when doing
-# text and string processing.
-export LANG=C
-
-# Determine the absolute path to the executable
-# EXE will have the PWD removed so we can concatenate with the PWD safely
-PWD=`pwd`
-EXE=`echo $0 | sed s=$PWD==`
-EXEPATH="$PWD"/"$EXE"
-clear
-cat << EOM
-
-################################################################################
-
-This script will create a bootable SD card from custom or pre-built binaries.
-
-The script must be run with root permissions and from the bin directory of
-the SDK
-
-Example:
- $ sudo ./create-sdcard.sh
-
-Formatting can be skipped if the SD card is already formatted and
-partitioned properly.
-
-################################################################################
-
-EOM
-
-AMIROOT=`whoami | awk {'print $1'}`
-if [ "$AMIROOT" != "root" ] ; then
-
- echo " **** Error *** must run script with sudo"
- echo ""
- exit
-fi
-
-THEPWD=$EXEPATH
-PARSEPATH=`echo $THEPWD | grep -o '.*ti-sdk.*.[0-9]/'`
-
-if [ "$PARSEPATH" != "" ] ; then
-PATHVALID=1
-else
-PATHVALID=0
-fi
-
-#Precentage function
-untar_progress ()
-{
- TARBALL=$1;
- DIRECTPATH=$2;
- BLOCKING_FACTOR=$(($(xz --robot --list ${TARBALL} | grep 'totals' | awk '{print $5}') / 51200 + 1));
- tar --blocking-factor=${BLOCKING_FACTOR} --checkpoint=1 --checkpoint-action='ttyout=Written %u% \r' -Jxf ${TARBALL} -C ${DIRECTPATH}
-}
-
-#copy/paste programs
-cp_progress ()
-{
- CURRENTSIZE=0
- while [ $CURRENTSIZE -lt $TOTALSIZE ]
- do
- TOTALSIZE=$1;
- TOHERE=$2;
- CURRENTSIZE=`sudo du -c $TOHERE | grep total | awk {'print $1'}`
- echo -e -n "$CURRENTSIZE / $TOTALSIZE copied \r"
- sleep 1
- done
-}
-
-check_for_sdcards()
-{
- # find the avaible SD cards
- ROOTDRIVE=`mount | grep 'on / ' | awk {'print $1'} | cut -c6-8`
- PARTITION_TEST=`cat /proc/partitions | grep -v $ROOTDRIVE | grep '\<sd.\>\|\<mmcblk.\>' | grep -n ''`
- if [ "$PARTITION_TEST" = "" ]; then
- echo -e "Please insert a SD card to continue\n"
- while [ "$PARTITION_TEST" = "" ]; do
- read -p "Type 'y' to re-detect the SD card or 'n' to exit the script: " REPLY
- if [ "$REPLY" = 'n' ]; then
- exit 1
- fi
- ROOTDRIVE=`mount | grep 'on / ' | awk {'print $1'} | cut -c6-8`
- PARTITION_TEST=`cat /proc/partitions | grep -v $ROOTDRIVE | grep '\<sd.\>\|\<mmcblk.\>' | grep -n ''`
- done
- fi
-}
-
-populate_3_partitions() {
- ENTERCORRECTLY="0"
- while [ $ENTERCORRECTLY -ne 1 ]
- do
- read -e -p 'Enter path where SD card tarballs were downloaded : ' TARBALLPATH
-
- echo ""
- ENTERCORRECTLY=1
- if [ -d $TARBALLPATH ]
- then
- echo "Directory exists"
- echo ""
- echo "This directory contains:"
- ls $TARBALLPATH
- echo ""
- read -p 'Is this correct? [y/n] : ' ISRIGHTPATH
- case $ISRIGHTPATH in
- "y" | "Y") ;;
- "n" | "N" ) ENTERCORRECTLY=0;continue;;
- *) echo "Please enter y or n";ENTERCORRECTLY=0;continue;;
- esac
- else
- echo "Invalid path make sure to include complete path"
- ENTERCORRECTLY=0
- continue
- fi
- # Check that tarballs were found
- if [ ! -e "$TARBALLPATH""/boot_partition.tar.xz" ]
- then
- echo "Could not find boot_partition.tar.xz as expected. Please"
- echo "point to the directory containing the boot_partition.tar.xz"
- ENTERCORRECTLY=0
- continue
- fi
-
- if [ ! -e "$TARBALLPATH""/rootfs_partition.tar.xz" ]
- then
- echo "Could not find rootfs_partition.tar.xz as expected. Please"
- echo "point to the directory containing the rootfs_partition.tar.xz"
- ENTERCORRECTLY=0
- continue
- fi
-
- if [ ! -e "$TARBALLPATH""/start_here_partition.tar.xz" ]
- then
- echo "Could not find start_here_partition.tar.xz as expected. Please"
- echo "point to the directory containing the start_here_partition.tar.xz"
- ENTERCORRECTLY=0
- continue
- fi
- done
-
- # Make temporary directories and untar mount the partitions
- mkdir $PWD/boot
- mkdir $PWD/rootfs
- mkdir $PWD/start_here
- mkdir $PWD/tmp
-
- mount -t vfat ${DRIVE}${P}1 boot
- mount -t ext3 ${DRIVE}${P}2 rootfs
- mount -t ext3 ${DRIVE}${P}3 start_here
-
- # Remove any existing content in case the partitions were not
- # recreated
- sudo rm -rf boot/*
- sudo rm -rf rootfs/*
- sudo rm -rf start_here/*
-
- # Extract the tarball contents.
-cat << EOM
-
-################################################################################
- Extracting boot partition tarball
-
-################################################################################
-EOM
- untar_progress $TARBALLPATH/boot_partition.tar.xz tmp/
- if [ -e "./tmp/MLO" ]
- then
- cp ./tmp/MLO boot/
- fi
- cp -rf ./tmp/* boot/
-
- touch ./boot/uEnv.txt
- sed -i -e '/^def_board_name=.*/d' ./boot/uEnv.txt
- echo "def_board_name=$board_name" >> ./boot/uEnv.txt
-
-cat << EOM
-
-################################################################################
- Extracting rootfs partition tarball
-
-################################################################################
-EOM
- untar_progress $TARBALLPATH/rootfs_partition.tar.xz rootfs/
-
-cat << EOM
-
-################################################################################
- Extracting start_here partition to temp directory
-
-################################################################################
-EOM
- rm -rf tmp/*
- untar_progress $TARBALLPATH/start_here_partition.tar.xz tmp/
-
-cat << EOM
-
-################################################################################
- Copying Contents to START_HERE
-
-################################################################################
-EOM
-
- TOTALSIZE=`sudo du -c tmp/* | grep total | awk {'print $1'}`
- cp -rf tmp/* start_here/ &
- cp_progress $TOTALSIZE start_here/
- sync;sync
- # Fix up the START_HERE partitoin permissions
- chown nobody -R start_here
- chgrp nogroup -R start_here
-
- umount boot rootfs start_here
- sync;sync
-
- # Clean up the temp directories
- rm -rf boot rootfs start_here tmp
-}
-
-
-# Ask user whether creating an SD card for EVM or IDK
-cat << EOM
-
-################################################################################
-
- Please select which AM65x board you
- intend to boot with this SD card.
-
- Note that selecting "unknown" will still boot,
- but board-specific features will not be enabled.
-
-################################################################################
-EOM
-while true;
-do
- board_name=""
- echo -e "\nAvailable boards: \n"
- echo "1: am65x_evm"
- echo "2: am65x_idk"
- echo "3: unknown"
- echo " "
- read -p 'Enter Board Number: ' BOARDNUMBER
- echo " "
-
- case $BOARDNUMBER in
- "1") board_name="am65x_evm";;
- "2") board_name="am65x_idk";;
- "3") board_name="am65x";;
- esac
-
- if [ -z "$board_name" ]
- then
- echo "Please enter a valid number."
- else
- break
- fi
-done
-
-# find the avaible SD cards
-ROOTDRIVE=`mount | grep 'on / ' | awk {'print $1'} | cut -c6-9`
-if [ "$ROOTDRIVE" = "root" ]; then
- ROOTDRIVE=`readlink /dev/root | cut -c1-3`
-else
- ROOTDRIVE=`echo $ROOTDRIVE | cut -c1-3`
-fi
-
-PARTITION_TEST=`cat /proc/partitions | grep -v $ROOTDRIVE | grep '\<sd.\>\|\<mmcblk.\>' | grep -n ''`
-
-# Check for available mounts
-check_for_sdcards
-
-echo -e "\nAvailable Drives to write images to: \n"
-echo "# major minor size name "
-cat /proc/partitions | grep -v $ROOTDRIVE | grep '\<sd.\>\|\<mmcblk.\>' | grep -n ''
-echo " "
-
-DEVICEDRIVENUMBER=
-while true;
-do
- read -p 'Enter Device Number or 'n' to exit: ' DEVICEDRIVENUMBER
- echo " "
- if [ "$DEVICEDRIVENUMBER" = 'n' ]; then
- exit 1
- fi
-
- if [ "$DEVICEDRIVENUMBER" = "" ]; then
- # Check to see if there are any changes
- check_for_sdcards
- echo -e "These are the Drives available to write images to:"
- echo "# major minor size name "
- cat /proc/partitions | grep -v $ROOTDRIVE | grep '\<sd.\>\|\<mmcblk.\>' | grep -n ''
- echo " "
- continue
- fi
-
- DEVICEDRIVENAME=`cat /proc/partitions | grep -v $ROOTDRIVE | grep '\<sd.\>\|\<mmcblk.\>' | grep -n '' | grep "${DEVICEDRIVENUMBER}:" | awk '{print $5}'`
- if [ -n "$DEVICEDRIVENAME" ]
- then
- DRIVE=/dev/$DEVICEDRIVENAME
- DEVICESIZE=`cat /proc/partitions | grep -v $ROOTDRIVE | grep '\<sd.\>\|\<mmcblk.\>' | grep -n '' | grep "${DEVICEDRIVENUMBER}:" | awk '{print $4}'`
- break
- else
- echo -e "Invalid selection!"
- # Check to see if there are any changes
- check_for_sdcards
- echo -e "These are the only Drives available to write images to: \n"
- echo "# major minor size name "
- cat /proc/partitions | grep -v $ROOTDRIVE | grep '\<sd.\>\|\<mmcblk.\>' | grep -n ''
- echo " "
- fi
-done
-
-echo "$DEVICEDRIVENAME was selected"
-#Check the size of disk to make sure its under 16GB
-if [ $DEVICESIZE -gt 17000000 ] ; then
-cat << EOM
-
-################################################################################
-
- **********WARNING**********
-
- Selected Device is greater then 16GB
- Continuing past this point will erase data from device
- Double check that this is the correct SD Card
-
-################################################################################
-
-EOM
- ENTERCORRECTLY=0
- while [ $ENTERCORRECTLY -ne 1 ]
- do
- read -p 'Would you like to continue [y/n] : ' SIZECHECK
- echo ""
- echo " "
- ENTERCORRECTLY=1
- case $SIZECHECK in
- "y") ;;
- "n") exit;;
- *) echo "Please enter y or n";ENTERCORRECTLY=0;;
- esac
- echo ""
- done
-
-fi
-echo ""
-
-DRIVE=/dev/$DEVICEDRIVENAME
-NUM_OF_DRIVES=`df | grep -c $DEVICEDRIVENAME`
-
-# This if statement will determine if we have a mounted sdX or mmcblkX device.
-# If it is mmcblkX, then we need to set an extra char in the partition names, 'p',
-# to account for /dev/mmcblkXpY labled partitions.
-if [[ ${DEVICEDRIVENAME} =~ ^sd. ]]; then
- echo "$DRIVE is an sdx device"
- P=''
-else
- echo "$DRIVE is an mmcblkx device"
- P='p'
-fi
-
-if [ "$NUM_OF_DRIVES" != "0" ]; then
- echo "Unmounting the $DEVICEDRIVENAME drives"
- for ((c=1; c<="$NUM_OF_DRIVES"; c++ ))
- do
- unmounted=`df | grep '\<'$DEVICEDRIVENAME$P$c'\>' | awk '{print $1}'`
- if [ -n "$unmounted" ]
- then
- echo " unmounted ${DRIVE}$P$c"
- sudo umount -f ${DRIVE}$P$c
- fi
-
- done
-fi
-
-# Refresh this variable as the device may not be mounted at script instantiation time
-# This will always return one more then needed
-NUM_OF_PARTS=`cat /proc/partitions | grep -v $ROOTDRIVE | grep -c $DEVICEDRIVENAME`
-for ((c=1; c<"$NUM_OF_PARTS"; c++ ))
-do
- SIZE=`cat /proc/partitions | grep -v $ROOTDRIVE | grep '\<'$DEVICEDRIVENAME$P$c'\>' | awk '{print $3}'`
- echo "Current size of $DEVICEDRIVENAME$P$c $SIZE bytes"
-done
-
-# check to see if the device is already partitioned
-for (( c=1; c<5; c++ ))
-do
- eval "SIZE$c=`cat /proc/partitions | grep -v $ROOTDRIVE | grep '\<'$DEVICEDRIVENAME$P$c'\>' | awk '{print $3}'`"
-done
-
-PARTITION="0"
-if [ -n "$SIZE1" -a -n "$SIZE2" ] ; then
- if [ "$SIZE1" -gt "72000" -a "$SIZE2" -gt "700000" ]
- then
- PARTITION=1
-
- if [ -z "$SIZE3" -a -z "$SIZE4" ]
- then
- #Detected 2 partitions
- PARTS=2
-
- elif [ "$SIZE3" -gt "1000" -a -z "$SIZE4" ]
- then
- #Detected 3 partitions
- PARTS=3
-
- else
- echo "SD Card is not correctly partitioned"
- PARTITION=0
- fi
- fi
-else
- echo "SD Card is not correctly partitioned"
- PARTITION=0
- PARTS=0
-fi
-
-
-#Partition is found
-if [ "$PARTITION" -eq "1" ]
-then
-cat << EOM
-
-################################################################################
-
- Detected device has $PARTS partitions already
-
- Re-partitioning will allow the choice of 2 or 3 partitions
-
-################################################################################
-
-EOM
-
- ENTERCORRECTLY=0
- while [ $ENTERCORRECTLY -ne 1 ]
- do
- read -p 'Would you like to re-partition the drive anyways [y/n] : ' CASEPARTITION
- echo ""
- echo " "
- ENTERCORRECTLY=1
- case $CASEPARTITION in
- "y") echo "Now partitioning $DEVICEDRIVENAME ...";PARTITION=0;;
- "n") echo "Skipping partitioning";;
- *) echo "Please enter y or n";ENTERCORRECTLY=0;;
- esac
- echo ""
- done
-
-fi
-
-#Partition is not found, choose to partition 2 or 3 segments
-if [ "$PARTITION" -eq "0" ]
-then
-cat << EOM
-
-################################################################################
-
- Select 2 partitions if only need boot and rootfs (most users).
- Select 3 partitions if need SDK & other content on SD card. This is
- usually used by device manufacturers with access to partition tarballs.
-
- ****WARNING**** continuing will erase all data on $DEVICEDRIVENAME
-
-################################################################################
-
-EOM
- ENTERCORRECTLY=0
- while [ $ENTERCORRECTLY -ne 1 ]
- do
-
- read -p 'Number of partitions needed [2/3] : ' CASEPARTITIONNUMBER
- echo ""
- echo " "
- ENTERCORRECTLY=1
- case $CASEPARTITIONNUMBER in
- "2") echo "Now partitioning $DEVICEDRIVENAME with 2 partitions...";PARTITION=2;;
- "3") echo "Now partitioning $DEVICEDRIVENAME with 3 partitions...";PARTITION=3;;
- "n") exit;;
- *) echo "Please enter 2 or 3";ENTERCORRECTLY=0;;
- esac
- echo " "
- done
-fi
-
-
-
-#Section for partitioning the drive
-
-#create 3 partitions
-if [ "$PARTITION" -eq "3" ]
-then
-
-# set the PARTS value as well
-PARTS=3
-
-cat << EOM
-
-################################################################################
-
- Now making 3 partitions
-
-################################################################################
-
-EOM
-
-dd if=/dev/zero of=$DRIVE bs=1024 count=1024
-
-SIZE=`fdisk -l $DRIVE | grep Disk | awk '{print $5}'`
-
-echo DISK SIZE - $SIZE bytes
-
-parted -s $DRIVE mklabel msdos
-parted -s $DRIVE unit cyl mkpart primary fat32 -- 0 9
-parted -s $DRIVE set 1 boot on
-parted -s $DRIVE unit cyl mkpart primary ext2 -- 9 310
-parted -s $DRIVE unit cyl mkpart primary ext2 -- 310 -2
-
-
-cat << EOM
-
-################################################################################
-
- Partitioning Boot
-
-################################################################################
-EOM
- mkfs.vfat -F 32 -n "boot" ${DRIVE}${P}1
-cat << EOM
-
-################################################################################
-
- Partitioning Rootfs
-
-################################################################################
-EOM
- mkfs.ext3 -L "rootfs" ${DRIVE}${P}2
-cat << EOM
-
-################################################################################
-
- Partitioning START_HERE
-
-################################################################################
-EOM
- mkfs.ext3 -L "START_HERE" ${DRIVE}${P}3
- sync
- sync
-
-#create only 2 partitions
-elif [ "$PARTITION" -eq "2" ]
-then
-
-# Set the PARTS value as well
-PARTS=2
-cat << EOM
-
-################################################################################
-
- Now making 2 partitions
-
-################################################################################
-
-EOM
-dd if=/dev/zero of=$DRIVE bs=1024 count=1024
-
-SIZE=`fdisk -l $DRIVE | grep Disk | awk '{print $5}'`
-
-echo DISK SIZE - $SIZE bytes
-
-parted -s $DRIVE mklabel msdos
-parted -s $DRIVE unit cyl mkpart primary fat32 -- 0 9
-parted -s $DRIVE set 1 boot on
-parted -s $DRIVE unit cyl mkpart primary ext2 -- 9 -2
-
-cat << EOM
-
-################################################################################
-
- Partitioning Boot
-
-################################################################################
-EOM
- mkfs.vfat -F 32 -n "boot" ${DRIVE}${P}1
-cat << EOM
-
-################################################################################
-
- Partitioning rootfs
-
-################################################################################
-EOM
- mkfs.ext3 -L "rootfs" ${DRIVE}${P}2
- sync
- sync
- INSTALLSTARTHERE=n
-fi
-
-
-
-#Break between partitioning and installing file system
-cat << EOM
-
-
-################################################################################
-
- Partitioning is now done
- Continue to install filesystem or select 'n' to safe exit
-
- **Warning** Continuing will erase files any files in the partitions
-
-################################################################################
-
-
-EOM
-ENTERCORRECTLY=0
-while [ $ENTERCORRECTLY -ne 1 ]
-do
- read -p 'Would you like to continue? [y/n] : ' EXITQ
- echo ""
- echo " "
- ENTERCORRECTLY=1
- case $EXITQ in
- "y") ;;
- "n") exit;;
- *) echo "Please enter y or n";ENTERCORRECTLY=0;;
- esac
-done
-
-# If this is a three partition card then we will jump to a function to
-# populate the three partitions and then exit the script. If not we
-# go on to prompt the user for input on the two partitions
-if [ "$PARTS" -eq "3" ]
-then
- populate_3_partitions
- exit 0
-fi
-
-#Add directories for images
-export START_DIR=$PWD
-mkdir $START_DIR/tmp
-export PATH_TO_SDBOOT=boot
-export PATH_TO_SDROOTFS=rootfs
-export PATH_TO_TMP_DIR=$START_DIR/tmp
-
-
-echo " "
-echo "Mount the partitions "
-mkdir $PATH_TO_SDBOOT
-mkdir $PATH_TO_SDROOTFS
-
-sudo mount -t vfat ${DRIVE}${P}1 boot/
-sudo mount -t ext3 ${DRIVE}${P}2 rootfs/
-
-
-
-echo " "
-echo "Emptying partitions "
-echo " "
-sudo rm -rf $PATH_TO_SDBOOT/*
-sudo rm -rf $PATH_TO_SDROOTFS/*
-
-echo ""
-echo "Syncing...."
-echo ""
-sync
-sync
-sync
-
-cat << EOM
-################################################################################
-
- Choose file path to install from
-
- 1 ) Install pre-built images from SDK
- 2 ) Enter in custom boot and rootfs file paths
-
-################################################################################
-
-EOM
-ENTERCORRECTLY=0
-while [ $ENTERCORRECTLY -ne 1 ]
-do
- read -p 'Choose now [1/2] : ' FILEPATHOPTION
- echo ""
- echo " "
- ENTERCORRECTLY=1
- case $FILEPATHOPTION in
- "1") echo "Will now install from SDK pre-built images";;
- "2") echo "";;
- *) echo "Please enter 1 or 2";ENTERCORRECTLY=0;;
- esac
-done
-
-# SDK DEFAULTS
-if [ $FILEPATHOPTION -eq 1 ] ; then
-
- #check that in the right directory
-
- THEEVMSDK=`echo $PARSEPATH | grep -o 'ti-sdk-.*[0-9]'`
-
- if [ $PATHVALID -eq 1 ]; then
- echo "now installing: $THEEVMSDK"
- else
- echo "no SDK PATH found"
- ENTERCORRECTLY=0
- while [ $ENTERCORRECTLY -ne 1 ]
- do
- read -e -p 'Enter path to SDK : ' SDKFILEPATH
-
- echo ""
- ENTERCORRECTLY=1
- if [ -d $SDKFILEPATH ]
- then
- echo "Directory exists"
- echo ""
- PARSEPATH=`echo $SDKFILEPATH | grep -o '.*ti-sdk.*.[0-9]/'`
- #echo $PARSEPATH
-
- if [ "$PARSEPATH" != "" ] ; then
- PATHVALID=1
- else
- PATHVALID=0
- fi
- #echo $PATHVALID
- if [ $PATHVALID -eq 1 ] ; then
-
- THEEVMSDK=`echo $SDKFILEPATH | grep -o 'ti-sdk-.*[0-9]'`
- echo "Is this the correct SDK: $THEEVMSDK"
- echo ""
- read -p 'Is this correct? [y/n] : ' ISRIGHTPATH
- case $ISRIGHTPATH in
- "y") ;;
- "n") ENTERCORRECTLY=0;;
- *) echo "Please enter y or n";ENTERCORRECTLY=0;;
- esac
- else
- echo "Invalid SDK path make sure to include ti-sdk-xxxx"
- ENTERCORRECTLY=0
- fi
-
- else
- echo "Invalid path make sure to include complete path"
-
- ENTERCORRECTLY=0
- fi
- done
- fi
-
-
-
- #check that files are in SDK
- BOOTFILEPATH="$PARSEPATH/board-support/prebuilt-images"
- MLO=`ls $BOOTFILEPATH | grep MLO | awk {'print $1'}`
- SPL_A53=`ls $BOOTFILEPATH | grep tispl | awk {'print $1'}`
- SPL_R5=`ls $BOOTFILEPATH | grep tiboot3 | awk {'print $1'}`
- KERNELIMAGE=`ls $BOOTFILEPATH | grep [uz]Image | awk {'print $1'}`
- BOOTIMG=`ls $BOOTFILEPATH | grep u-boot | grep .img | awk {'print $1'}`
- BOOTBIN=`ls $BOOTFILEPATH | grep u-boot | grep .bin | awk {'print $1'}`
- BOOTUENV=`ls $BOOTFILEPATH | grep uEnv.txt | awk {'print $1'}`
- #rootfs
- ROOTFILEPARTH="$PARSEPATH/filesystem"
- #ROOTFSTAR=`ls $ROOTFILEPARTH | grep tisdk.*rootfs | awk {'print $1'}`
-
- #Make sure there is only 1 tar
- CHECKNUMOFTAR=`ls $ROOTFILEPARTH | grep "tisdk.*rootfs" | grep 'tar.xz' | grep -n '' | grep '2:' | awk {'print $1'}`
- if [ -n "$CHECKNUMOFTAR" ]
- then
-cat << EOM
-
-################################################################################
-
- Multiple rootfs Tarballs found
-
-################################################################################
-
-EOM
- ls $ROOTFILEPARTH | grep "tisdk.*rootfs" | grep 'tar.xz' | grep -n '' | awk {'print " " , $1'}
- echo ""
- read -p "Enter Number of rootfs Tarball: " TARNUMBER
- echo " "
- FOUNDTARFILENAME=`ls $ROOTFILEPARTH | grep "rootfs" | grep 'tar.xz' | grep -n '' | grep "${TARNUMBER}:" | cut -c3- | awk {'print$1'}`
- ROOTFSTAR=$FOUNDTARFILENAME
-
- else
- ROOTFSTAR=`ls $ROOTFILEPARTH | grep "tisdk.*rootfs" | grep 'tar.xz' | awk {'print $1'}`
- fi
-
- ROOTFSUSERFILEPATH=$ROOTFILEPARTH/$ROOTFSTAR
- BOOTPATHOPTION=1
- ROOTFSPATHOPTION=2
-
-elif [ $FILEPATHOPTION -eq 2 ] ; then
-cat << EOM
-################################################################################
-
- For U-boot and MLO
-
- If files are located in Tarball write complete path including the file name.
- e.x. $: /home/user/MyCustomTars/boot.tar.xz
-
- If files are located in a directory write the directory path
- e.x. $: /ti-sdk/board-support/prebuilt-images/
-
- NOTE: Not all platforms will have an MLO file and this file can
- be ignored for platforms that do not support an MLO.
-
- Update: The proper location for the kernel image and device tree
- files have moved from the boot partition to the root filesystem.
-
-################################################################################
-
-EOM
- ENTERCORRECTLY=0
- while [ $ENTERCORRECTLY -ne 1 ]
- do
- read -e -p 'Enter path for Boot Partition : ' BOOTUSERFILEPATH
-
- echo ""
- ENTERCORRECTLY=1
- if [ -f $BOOTUSERFILEPATH ]
- then
- echo "File exists"
- echo ""
- elif [ -d $BOOTUSERFILEPATH ]
- then
- echo "Directory exists"
- echo ""
- echo "This directory contains:"
- ls $BOOTUSERFILEPATH
- echo ""
- read -p 'Is this correct? [y/n] : ' ISRIGHTPATH
- case $ISRIGHTPATH in
- "y") ;;
- "n") ENTERCORRECTLY=0;;
- *) echo "Please enter y or n";ENTERCORRECTLY=0;;
- esac
- else
- echo "Invalid path make sure to include complete path"
-
- ENTERCORRECTLY=0
- fi
- done
-
-
-cat << EOM
-
-
-################################################################################
-
- For Kernel Image and Device Trees files
-
- What would you like to do?
- 1) Reuse kernel image and device tree files found in the selected rootfs.
- 2) Provide a directory that contains the kernel image and device tree files
- to be used.
-
-################################################################################
-
-EOM
-
-ENTERCORRECTLY=0
-while [ $ENTERCORRECTLY -ne 1 ]
-do
-
- read -p 'Choose option 1 or 2 : ' CASEOPTION
- echo ""
- echo " "
- ENTERCORRECTLY=1
- case $CASEOPTION in
- "1") echo "Reusing kernel and dt files from the rootfs's boot directory";KERNELFILESOPTION=1;;
- "2") echo "Choosing a directory that contains the kernel files to be used";KERNELFILESOPTION=2;;
- "n") exit;;
- *) echo "Please enter 1 or 2";ENTERCORRECTLY=0;;
- esac
- echo " "
-done
-
-if [ $KERNELFILESOPTION == 2 ]
-then
-
-cat << EOM
-################################################################################
-
- For Kernel Image and Device Trees files
-
- The kernel image name should contain the image type uImage or zImage depending
- on which format is used.
-
- The device tree files must end with .dtb
- e.g am335x-evm.dtb am43x-gp-evm.dtb
-
-
-################################################################################
-
-EOM
- ENTERCORRECTLY=0
- while [ $ENTERCORRECTLY -ne 1 ]
- do
- read -e -p 'Enter path for kernel image and device tree files : ' KERNELUSERFILEPATH
-
- echo ""
- ENTERCORRECTLY=1
-
- if [ -d $KERNELUSERFILEPATH ]
- then
- echo "Directory exists"
- echo ""
- echo "This directory contains:"
- ls $KERNELUSERFILEPATH
- echo ""
- read -p 'Is this correct? [y/n] : ' ISRIGHTPATH
- case $ISRIGHTPATH in
- "y") ;;
- "n") ENTERCORRECTLY=0;;
- *) echo "Please enter y or n";ENTERCORRECTLY=0;;
- esac
- else
- echo "Invalid path make sure to include complete path"
- ENTERCORRECTLY=0
- fi
- done
-fi
-
-cat << EOM
-
-
-################################################################################
-
- For Rootfs partition
-
- If files are located in Tarball write complete path including the file name.
- e.x. $: /home/user/MyCustomTars/rootfs.tar.xz
-
- If files are located in a directory write the directory path
- e.x. $: /ti-sdk/targetNFS/
-
-################################################################################
-
-EOM
- ENTERCORRECTLY=0
- while [ $ENTERCORRECTLY -ne 1 ]
- do
- read -e -p 'Enter path for Rootfs Partition : ' ROOTFSUSERFILEPATH
- echo ""
- ENTERCORRECTLY=1
- if [ -f $ROOTFSUSERFILEPATH ]
- then
- echo "File exists"
- echo ""
- elif [ -d $ROOTFSUSERFILEPATH ]
- then
- echo "This directory contains:"
- ls $ROOTFSUSERFILEPATH
- echo ""
- read -p 'Is this correct? [y/n] : ' ISRIGHTPATH
- case $ISRIGHTPATH in
- "y") ;;
- "n") ENTERCORRECTLY=0;;
- *) echo "Please enter y or n";ENTERCORRECTLY=0;;
- esac
-
- else
- echo "Invalid path make sure to include complete path"
-
- ENTERCORRECTLY=0
- fi
- done
- echo ""
-
-
- # Check if user entered a tar or not for Boot
- ISBOOTTAR=`ls $BOOTUSERFILEPATH | grep .tar.xz | awk {'print $1'}`
- if [ -n "$ISBOOTTAR" ]
- then
- BOOTPATHOPTION=2
- else
- BOOTPATHOPTION=1
- BOOTFILEPATH=$BOOTUSERFILEPATH
- MLO=`ls $BOOTFILEPATH | grep MLO | awk {'print $1'}`
- SPL_A53=`ls $BOOTFILEPATH | grep tispl | awk {'print $1'}`
- SPL_R5=`ls $BOOTFILEPATH | grep tiboot3 | awk {'print $1'}`
- BOOTIMG=`ls $BOOTFILEPATH | grep u-boot | grep .img | awk {'print $1'}`
- BOOTBIN=`ls $BOOTFILEPATH | grep u-boot | grep .bin | awk {'print $1'}`
- BOOTUENV=`ls $BOOTFILEPATH | grep uEnv.txt | awk {'print $1'}`
- fi
-
-
- if [ "$KERNELFILESOPTION" == "2" ]
- then
- KERNELIMAGE=`ls $KERNELUSERFILEPATH | grep [uz]Image | awk {'print $1'}`
- DTFILES=`ls $KERNELUSERFILEPATH | grep .dtb$ | awk {'print $1'}`
- fi
-
-
- #Check if user entered a tar or not for Rootfs
- ISROOTFSTAR=`ls $ROOTFSUSERFILEPATH | grep .tar.xz | awk {'print $1'}`
- if [ -n "$ISROOTFSTAR" ]
- then
- ROOTFSPATHOPTION=2
- else
- ROOTFSPATHOPTION=1
- ROOTFSFILEPATH=$ROOTFSUSERFILEPATH
- fi
-fi
-
-cat << EOM
-################################################################################
-
- Copying files now... will take minutes
-
-################################################################################
-
-Copying boot partition
-EOM
-
-
-if [ $BOOTPATHOPTION -eq 1 ] ; then
-
- echo ""
- #copy boot files out of board support
- if [ "$MLO" == "" ] && ( [ "$SPL_R5" == "" ] || [ "$SPL_A53" == "" ] ); then
- if [ "$SPL_R5" != "" ]; then
- echo "tispl.bin file not found"
- elif [ "$SPL_A53" != "" ]; then
- echo "tiboot3.bin file not found"
- else
- echo "Boot image not found"
- fi
- fi
-
- echo ""
-
- echo ""
-
- if [ "$MLO" != "" ] ; then
- cp $BOOTFILEPATH/$MLO $PATH_TO_SDBOOT/MLO
- echo "MLO copied"
-
- echo ""
-
- echo ""
- fi
-
- #copy boot files out of board support
- if [ "$SPL_A53" != "" ] ; then
- cp $BOOTFILEPATH/$SPL_A53 $PATH_TO_SDBOOT/tispl.bin
- echo "tispl.bin copied"
-
- echo ""
-
- echo ""
- fi
-
- #copy boot files out of board support
- if [ "$SPL_R5" != "" ] ; then
- cp $BOOTFILEPATH/$SPL_R5 $PATH_TO_SDBOOT/tiboot3.bin
- echo "tiboot3.bin copied"
-
- echo ""
-
- echo ""
- fi
-
- if [ "$BOOTIMG" != "" ] ; then
- cp $BOOTFILEPATH/$BOOTIMG $PATH_TO_SDBOOT/u-boot.img
- echo "u-boot.img copied"
- elif [ "$BOOTBIN" != "" ] ; then
- cp $BOOTFILEPATH/$BOOTBIN $PATH_TO_SDBOOT/u-boot.bin
- echo "u-boot.bin copied"
- else
- echo "No U-Boot file found"
- fi
-
- echo ""
-
- if [ "$BOOTUENV" != "" ] ; then
- cp $BOOTFILEPATH/$BOOTUENV $PATH_TO_SDBOOT/uEnv.txt
- echo "uEnv.txt copied"
- fi
-
-elif [ $BOOTPATHOPTION -eq 2 ] ; then
- untar_progress $BOOTUSERFILEPATH $PATH_TO_TMP_DIR
- cp -rf $PATH_TO_TMP_DIR/* $PATH_TO_SDBOOT
- echo ""
-
-fi
-
-touch $PATH_TO_SDBOOT/uEnv.txt
-sed -i -e '/^def_board_name=.*/d' $PATH_TO_SDBOOT/uEnv.txt
-echo "def_board_name=$board_name" >> $PATH_TO_SDBOOT/uEnv.txt
-
-echo ""
-sync
-
-echo "Copying rootfs System partition"
-if [ $ROOTFSPATHOPTION -eq 1 ] ; then
- TOTALSIZE=`sudo du -c $ROOTFSUSERFILEPATH/* | grep total | awk {'print $1'}`
- sudo cp -r $ROOTFSUSERFILEPATH/* $PATH_TO_SDROOTFS & cp_progress $TOTALSIZE $PATH_TO_SDROOTFS
-
-elif [ $ROOTFSPATHOPTION -eq 2 ] ; then
- untar_progress $ROOTFSUSERFILEPATH $PATH_TO_SDROOTFS
-fi
-
-echo ""
-echo ""
-echo "Syncing..."
-sync
-sync
-sync
-sync
-sync
-sync
-sync
-sync
-
-if [ "$KERNELFILESOPTION" == "2" ]
-then
-
- mkdir -p $PATH_TO_SDROOTFS/boot
-
- if [ "$KERNELIMAGE" != "" ] ; then
-
- CLEANKERNELNAME=`ls "$BOOTFILEPATH/$KERNELIMAGE" | grep -o [uz]Image`
- cp -f $KERNELUSERFILEPATH/$KERNELIMAGE $PATH_TO_SDROOTFS/boot/$CLEANKERNELNAME
- echo "Kernel image copied"
- else
- echo "$KERNELIMAGE file not found"
- fi
-
- COPYINGDTB="false"
- for dtb in $DTFILES
- do
- if [ -f "$KERNELUSERFILEPATH/$dtb" ] ; then
- cp -f $KERNELUSERFILEPATH/$dtb $PATH_TO_SDROOTFS/boot
- echo "$dtb copied"
- COPYINGDTB="true"
- fi
- done
-
- if [ "$COPYINGDTB" == "false" ]
- then
- echo "No device tree files found"
- fi
-
-fi
-
-echo " "
-echo "Un-mount the partitions "
-sudo umount -f $PATH_TO_SDBOOT
-sudo umount -f $PATH_TO_SDROOTFS
-
-
-echo " "
-echo "Remove created temp directories "
-sudo rm -rf $PATH_TO_TMP_DIR
-sudo rm -rf $PATH_TO_SDROOTFS
-sudo rm -rf $PATH_TO_SDBOOT
-
-
-echo " "
-echo "Operation Finished"
-echo " "
--
1.9.1
1.9.1