Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.


Table of Contents
    


Tip
titleIntroduction-Mulitboot

This page is dedicated for switching the images (broadband to video) specifically for techsummit-2019

Image Flashing in SDcard Steps

1. Flash the BB Broadband image in SD card

Code Block
languagebash
titleImage Flashing Command
sudo dd if=<RPIimage-sdimg> of=</dev/sdc> bs=4M

Example: sudo dd if=rdk-generic-hybrid-refapp-thunder-image_default_20190829072513.rootfs.rpi-sdimg of=/dev/sdc bs=4M


2. Resizing and partition creation


3.  Keep RDK-Video image in the host machine
4. Extracting the RDK-Vidoe image into the extblock directory


2. Use Gparted to get the ext3 partitions extended to 2GB
3. Right Click on un-allocated -> New -> type 2GB in the field "New size"
4. Right click on un-allocated partition -> New -> add [Remaining all size]
5. Apply all operations -> Apply
6. Video image should be present in the host machine
7. sudo sh extract.sh <video-image file>

Code Block
titleextract.sh
mkdir -p extblock

fdisk -u -l $1 > extblock/sector.txt

linux_sector=`tail -2 extblock/sector.txt | tr -s ' ' | cut -d'*' -f2 | cut -d' ' -f2 | head -n1`
linux_offset=$((linux_sector*512))

rootfs_sector=`tail -2 extblock/sector.txt | tr -s ' ' | cut -d'*' -f2 | cut -d' ' -f2 | tail -1`
rootfs_offset=$((rootfs_sector*512))

mkdir -p extblock/linux_data
mkdir -p extblock/rootfs_data

mkdir -p extblock/vlinux_backup_data
mkdir -p extblock/vrootfs_backup_data

#sudo mount /dev/mmcblk0p1 extblock/bank0_linux

#--------------------------------------------------------------------------------------------------
# Loop mount + Extract kernel and bootload data of Downloaded image to storage area
#--------------------------------------------------------------------------------------------------

sudo mount -o loop,offset=$linux_offset $1 extblock/linux_data
cp -R extblock/linux_data/* extblock/vlinux_backup_data/
sudo umount extblock/linux_data
rm -rf extblock/linux_data


#--------------------------------------------------------------------------------------------------
# Loop mount + Extract rootfs data of Downloaded image to storage area
#--------------------------------------------------------------------------------------------------

sudo mount -o loop,offset=$rootfs_offset $1 extblock/rootfs_data

cp -R extblock/rootfs_data/* extblock/vrootfs_backup_data
sudo umount extblock/rootfs_data
rm -rf extblock/rootfs_data

...

Code Block
titlevideo data extract
For ex. sudo sh extract.sh rdk-generic-hybrid-refapp-thunder-image_default_20190924125426.rootfs.rpi-sdimg

...

After executing the above script, Linux kernel and RootFS of RDK-Video image would be present in the extblock directory


5. To Copy the RDK-Video image in  Partition-P4 

  •     Create mount directory and execute mount  for the partition 4 
Code Block
titlevideo data extract
For ex. 
mkdir videomnt
sudo mount /dev/sdb4 videomnt

In above command, storage partition 4 will get mounted to videomnt directory

...

  • Copy the

...

  • RDK-Video image which is present in the extblock
Code Block
titlevideo data extract
sudo cp -r /extblock/v* videomnt/


116. Copy the vrootfs backup data into partition 4  storage bank, to ensure it will acts as video bank as well 

Code Block
titlevideo data extract
sudo cp -r /extblock/vrootfs_backup_data/* videomnt/


127. Copy the bankthe bank_broadband_imageswitch.switch sh file to partition 4 as below

Code Block
titlevideo data extract
sudo cp bank_broadband_imageswitch.switchsh videomnt/lib/rdk/


138. Unmount videomnt directory as below

Code Block
titlevideo data extract
sudo umount videomnt


149. Now copy broadband multi boot change scripts to broadband image as below

     Place the script files rpi_sw_install1.sh rpi_sw_install.sh swupdate_utility.sh bank_image_switch.sh bank_video_switch.sh imageFlasher.sh in /lib/rdk path of broadband image by following the below scripts

Code Block
titlevideo data extract
#For ex. 
mkdir -p bbmnt
sudo mount /dev/sdb4 bbmnt

#In above command, storage partition 2 will get mounted to bbmnt directory

# Now copy the broad band change scripts from host to broadband image rootfs in partition2 (/dev/sdb2) mounted to bbmnt as below

sudo cp rpi_sw_install1.sh rpi_sw_install.sh swupdate_utility.sh bank_image_switch.sh bank_video_switch.sh imageFlasher.sh bbmnt/lib/rdk/

# Now unmount the bbmnt

sudo umount bbmnt


1210. Now Boot up the SD card in RPI-> it should come up with BB imageext4 image in partition (P2)


11.  Log into the R-Pi from Host PC execute the below command

       ssh 13. ssh root@<RPI-Board IP>


Switching to Video Image from Broadband 


1214. To load the video image which is present in the storage execute the script bank_video_switch.sh

Code Block
titlevideo data extract
root@RaspberryPi-Gateway:/lib/rdk# sh bank_video_switch.sh


15. It 13.  R-Pi should boot up with video image


1614. Now this image can be switch back to broadband image by executing following script

...