aboutsummaryrefslogtreecommitdiff
path: root/docker-extras
diff options
context:
space:
mode:
authorStefano Stabellini2019-10-21 15:32:21 -0700
committerStefano Stabellini2019-10-21 15:32:21 -0700
commitb7bde6942c2db1c213c09fd0bcf85d44c27afe0d (patch)
tree17db6c4bf16a43805ff2623d7131e06625508c19 /docker-extras
parent841a9b66cb3943a42257b2b29d57f3f031c34323 (diff)
Rename docker-extras to scripts
Signed-off-by: Stefano Stabellini <stefano.stabellini@xilinx.com>
Diffstat (limited to 'docker-extras')
-rwxr-xr-xdocker-extras/disk_image134
-rw-r--r--docker-extras/imagebuilder_sd10
-rw-r--r--docker-extras/imagebuilder_tftp9
-rw-r--r--docker-extras/uboot-script-gen209
4 files changed, 0 insertions, 362 deletions
diff --git a/docker-extras/disk_image b/docker-extras/disk_image
deleted file mode 100755
index 57b933f..0000000
--- a/docker-extras/disk_image
+++ /dev/null
@@ -1,134 +0,0 @@
-#!/bin/bash
-
-# This helps to see what is going on
-set -e -x
-
-# Used to maintain intermediary state. (Not currently used)
-DESTDIR="$(mktemp -d /tmp/imagebuilder-zynqmp.XXXXXX)"
-UBOOT_OUT="/tmp/output"
-OUTDIR="/tmp/img"
-mkdir ${OUTDIR}
-
-IMG="${OUTDIR}/zynqmp.img"
-
-. config
-
-offset=$((2*1024*1024))
-_part1_size=`stat --printf="%s" $UBOOT_OUT/$XEN`
-_part1_size=$(( $_part1_size + `stat --printf="%s" $UBOOT_OUT/$DOM0_KERNEL` ))
-_part1_size=$(( $_part1_size + `stat --printf="%s" $UBOOT_OUT/$DEVICE_TREE` ))
-i=0
-while test $i -lt $NUM_DOMUS
-do
- _part1_size=$(( $_part1_size + `stat --printf="%s" $UBOOT_OUT/${DOMU_KERNEL[$i]}` ))
- if test "${DOMU_RAMDISK[$i]}"
- then
- _part1_size=$(( $_part1_size + `stat --printf="%s" $UBOOT_OUT/${DOMU_RAMDISK[$i]}` ))
- fi
- if test "${DOMU_PASSTHROUGH_DTB[$i]}"
- then
- _part1_size=$(( $_part1_size + `stat --printf="%s" $UBOOT_OUT/${DOMU_PASSTHROUGH_DTB[$i]}` ))
- fi
- i=$(( $i + 1 ))
-done
-
-# add 16 MB slack
-_part1_size=$(( $_part1_size + 16777216 ))
-_part1_size=$(( $_part1_size + $offset - 1))
-_part1_size=$(( $_part1_size & ~($offset - 1) ))
-_part1_size=$(( $_part1_size / 1024 / 1024 ))
-echo PART1 size: "$_part1_size"MB
-
-if test "$DOM0_RAMDISK"
-then
- _part2_size=`stat --printf="%s" $UBOOT_OUT/$DOM0_RAMDISK`
-fi
-_part2_size=$(( $_part2_size + $offset - 1))
-_part2_size=$(( $_part2_size & ~($offset - 1) ))
-# account for gzip compression
-_part2_size=$(( $_part2_size * 2 ))
-# add some slack
-_part2_size=$(( 128*1024*1024 + $_part2_size ))
-_part2_size=$(( $_part2_size / 1024 / 1024 ))
-echo PART2 size: "$_part2_size"MB
-
-
-_sector_size=512
-# _sector_first_start needs to be aligned to 2048
-_sector_first_start=2048
-_sector_first_end=$(( $_part1_size * 1024 * 1024 / $_sector_size + $_sector_first_start - 1))
-_sector_second_start=$(( $_sector_first_end + 1 ))
-_sector_second_end=$(( $_part2_size * 1024 * 1024 / $_sector_size + $_sector_second_start - 1))
-_tot_size=$(( $_part1_size + $_part2_size + 16 ))
-
-# NOTE: Increase vos_a to 256 to accomodate rootfs
-# 528 MiB (256 + 256 + 16)
-truncate $IMG -s "$_tot_size"M
-
-# create GPT partition table
-sgdisk -og $IMG
-
-sgdisk -n 1:$_sector_first_start:$_sector_first_end -c 1:"Linux1" -t 1:8300 $IMG
-sgdisk -n 2:$_sector_second_start:$_sector_second_end -c 2:"Linux2" -t 2:8300 $IMG
-
-# find the first available loop device
-_loop_dev=$(losetup -f)
-
-# attach loopback device to $IMG
-losetup $_loop_dev $IMG
-
-_disksize=$(blockdev --getsize $_loop_dev)
-
-dmsetup create diskimage --table "0 $_disksize linear $_loop_dev 0"
-
-# ensure that /dev/mapper/diskimage exists
-while [ ! -b /dev/mapper/diskimage ]
-do
- sleep 2
-done
-
-kpartx -a /dev/mapper/diskimage
-
-# ensure that /dev/mapper/{diskimage1,diskimage2} exists
-while [ ! -b /dev/mapper/diskimage1 ] || [ ! -b /dev/mapper/diskimage2 ]
-do
- sleep 2
-done
-
-# format vos_a partition
-mkfs.ext4 -L vos_a -F /dev/mapper/diskimage1
-
-# format vos_b partition
-mkfs.ext4 -L vos_b -F /dev/mapper/diskimage2
-
-
-# create mount point and mount disk2
-mkdir -p ${DESTDIR}/part/disk2
-mount -t ext4 /dev/mapper/diskimage2 $DESTDIR/part/disk2
-
-# Extract rootfs cpio archive into `.../part/vos_a`
-cd ${DESTDIR}/part/disk2
-cat ${UBOOT_OUT}/dom0-ramdisk.cpio | gunzip | cpio -id
-mv ${UBOOT_OUT}/dom0-ramdisk.cpio* /tmp
-
-# umount
-sync
-cd /
-umount $DESTDIR/part/disk2
-
-# create mount point and mount disk1
-mkdir -p ${DESTDIR}/part/disk1
-mount -t ext4 /dev/mapper/diskimage1 $DESTDIR/part/disk1
-
-# copy over files needed
-cp -r $UBOOT_OUT/* ${DESTDIR}/part/disk1/
-
-# unmount
-sync
-# This fails for some reason. It could work now because we are not using qemu-user
-# fstrim $DESTDIR/part/disk1
-umount $DESTDIR/part/disk1
-
-kpartx -d /dev/mapper/diskimage
-dmsetup remove diskimage
-losetup -d $_loop_dev
diff --git a/docker-extras/imagebuilder_sd b/docker-extras/imagebuilder_sd
deleted file mode 100644
index 0afa75f..0000000
--- a/docker-extras/imagebuilder_sd
+++ /dev/null
@@ -1,10 +0,0 @@
-#!/bin/bash
-
-rm -rf /tmp/output
-mkdir /tmp/output
-cp config /tmp/output
-cp -r /home/builder/output/* /tmp/output
-cd /tmp/output
-export LOAD_CMD="load scsi 0:1"
-bash /uboot-script-gen
-bash /disk_image
diff --git a/docker-extras/imagebuilder_tftp b/docker-extras/imagebuilder_tftp
deleted file mode 100644
index c03633d..0000000
--- a/docker-extras/imagebuilder_tftp
+++ /dev/null
@@ -1,9 +0,0 @@
-#!/bin/bash
-
-rm -rf /tmp/output
-mkdir /tmp/output
-cp config /tmp/output
-cp -r /home/builder/output/* /tmp/output
-cd /tmp/output
-export LOAD_CMD="tftpb"
-bash /uboot-script-gen
diff --git a/docker-extras/uboot-script-gen b/docker-extras/uboot-script-gen
deleted file mode 100644
index e72f73e..0000000
--- a/docker-extras/uboot-script-gen
+++ /dev/null
@@ -1,209 +0,0 @@
-#!/bin/bash
-
-offset=$((2*1024*1024))
-filesize=0
-
-function add_device_tree_kernel()
-{
- local path=$1
- local addr=$2
- local size=$3
-
- echo "fdt mknod $path module$addr" >> $UBOOT_SOURCE
- echo "fdt set $path/module$addr compatible \"multiboot,kernel\" \"multiboot,module\"" >> $UBOOT_SOURCE
- echo "fdt set $path/module$addr reg <0x0 "$addr" 0x0 "$size">" >> $UBOOT_SOURCE
- echo "fdt set $path/module$addr bootargs \"console=ttyAMA0\"" >> $UBOOT_SOURCE
-}
-
-function add_device_tree_ramdisk()
-{
- local path=$1
- local addr=$2
- local size=$3
-
- echo "fdt mknod $path module$addr" >> $UBOOT_SOURCE
- echo "fdt set $path/module$addr compatible \"multiboot,ramdisk\" \"multiboot,module\"" >> $UBOOT_SOURCE
- echo "fdt set $path/module$addr reg <0x0 "$addr" 0x0 "$size">" >> $UBOOT_SOURCE
-}
-
-function add_device_tree_passthrough()
-{
- local path=$1
- local addr=$2
- local size=$3
-
- echo "fdt mknod $path module$addr" >> $UBOOT_SOURCE
- echo "fdt set $path/module$addr compatible \"multiboot,device-tree\" \"multiboot,module\"" >> $UBOOT_SOURCE
- echo "fdt set $path/module$addr reg <0x0 "$addr" 0x0 "$size">" >> $UBOOT_SOURCE
-}
-
-function device_tree_editing()
-{
- local device_tree_addr=$1
-
- echo "fdt addr $device_tree_addr" >> $UBOOT_SOURCE
- echo "fdt resize 1024" >> $UBOOT_SOURCE
- echo "fdt set /chosen \#address-cells <0x2>" >> $UBOOT_SOURCE
- echo "fdt set /chosen \#size-cells <0x2>" >> $UBOOT_SOURCE
- echo "fdt set /chosen xen,xen-bootargs \"console=dtuart dtuart=serial0 dom0_mem=700M dom0_max_vcpus=1 bootscrub=0 serrors=forward vwfi=native sched=null\"" >> $UBOOT_SOURCE
- echo "fdt mknod /chosen dom0" >> $UBOOT_SOURCE
- echo "fdt set /chosen/dom0 compatible \"xen,linux-zimage\" \"xen,multiboot-module\"" >> $UBOOT_SOURCE
- echo "fdt set /chosen/dom0 reg <0x0 "$dom0_kernel_addr" 0x0 "$dom0_kernel_size">" >> $UBOOT_SOURCE
- if test "$LOAD_CMD" = "tftpb"
- then
- echo "fdt set /chosen xen,dom0-bootargs \"console=hvc0 earlycon=xen earlyprintk=xen root=/dev/ram0\"" >> $UBOOT_SOURCE
- if test $dom0_ramdisk_addr != "-"
- then
- echo "fdt mknod /chosen dom0-ramdisk" >> $UBOOT_SOURCE
- echo "fdt set /chosen/dom0-ramdisk compatible \"xen,linux-initrd\" \"xen,multiboot-module\"" >> $UBOOT_SOURCE
- echo "fdt set /chosen/dom0-ramdisk reg <0x0 "$dom0_ramdisk_addr" 0x0 "$dom0_ramdisk_size">" >> $UBOOT_SOURCE
- fi
- else
- echo "fdt set /chosen xen,dom0-bootargs \"console=hvc0 earlycon=xen earlyprintk=xen root=/dev/sda2\"" >> $UBOOT_SOURCE
- fi
-
- i=0
- while test $i -lt $NUM_DOMUS
- do
- echo "fdt mknod /chosen domU$i" >> $UBOOT_SOURCE
- echo "fdt set /chosen/domU$i compatible \"xen,domain\"" >> $UBOOT_SOURCE
- echo "fdt set /chosen/domU$i \#address-cells <0x2>" >> $UBOOT_SOURCE
- echo "fdt set /chosen/domU$i \#size-cells <0x2>" >> $UBOOT_SOURCE
- echo "fdt set /chosen/domU$i memory <0x0 0x40000>" >> $UBOOT_SOURCE
- echo "fdt set /chosen/domU$i cpus <0x1>" >> $UBOOT_SOURCE
- echo "fdt set /chosen/domU$i vpl011 <0x1>" >> $UBOOT_SOURCE
- add_device_tree_kernel "/chosen/domU$i" ${domU_kernel_addr[$i]} ${domU_kernel_size[$i]}
- if test "${domU_ramdisk_addr[$i]}"
- then
- add_device_tree_ramdisk "/chosen/domU$i" ${domU_ramdisk_addr[$i]} ${domU_ramdisk_size[$i]}
- fi
- if test "${domU_passthrough_dtb_addr[$i]}"
- then
- add_device_tree_passthrough "/chosen/domU$i" ${domU_passthrough_dtb_addr[$i]} ${domU_passthrough_dtb_size[$i]}
- fi
- i=$(( $i + 1 ))
- done
-}
-
-function add_size()
-{
- local filename=$1
- local size=`stat --printf="%s" $filename`
- memaddr=$(( $memaddr + $size + $offset - 1))
- memaddr=$(( $memaddr & ~($offset - 1) ))
- memaddr=`printf "0x%X\n" $memaddr`
- filesize=$size
-}
-
-function load_file()
-{
- local filename=$1
-
- echo "$LOAD_CMD $memaddr $filename" >> $UBOOT_SOURCE
- add_size $filename
-}
-
-function check_file_type()
-{
- local filename=$1
- local type="$2"
-
- file $filename | grep "$type" &> /dev/null
- if test $? != 0
- then
- echo Wrong file type "$filename". It shold be "$type".
- fi
-}
-
-function check_compressed_file_type()
-{
- local filename=$1
- local type="$2"
-
- file $filename | grep "gzip compressed data" &> /dev/null
- if test $? == 0
- then
- local tmp=`mktemp`
- cat $filename | gunzip > $tmp
- filename=$tmp
- fi
- check_file_type $filename "$type"
-}
-
-. config
-
-rm -f $UBOOT_SOURCE $UBOOT_SCRIPT
-memaddr=$(( $MEMORY_START + $offset ))
-# 12582912 is 0xc00000, 12MB
-if test $memaddr -lt 12582912
-then
- memaddr="12582912"
-fi
-memaddr=`printf "0x%X\n" $memaddr`
-uboot_addr=$memaddr
-# 2MB are enough for a uboot script
-memaddr=$(( $memaddr + $offset ))
-memaddr=`printf "0x%X\n" $memaddr`
-
-check_compressed_file_type $XEN "MS-DOS executable"
-xen_addr=$memaddr
-load_file "$XEN"
-
-check_compressed_file_type $DOM0_KERNEL "MS-DOS executable"
-dom0_kernel_addr=$memaddr
-load_file $DOM0_KERNEL
-dom0_kernel_size=$filesize
-
-if test "$DOM0_RAMDISK" && [[ $LOAD_CMD = "tftpb" ]]
-then
- check_compressed_file_type $DOM0_RAMDISK "cpio archive"
- dom0_ramdisk_addr=$memaddr
- load_file "$DOM0_RAMDISK"
- dom0_ramdisk_size=$filesize
-else
- dom0_ramdisk_addr="-"
-fi
-
-i=0
-while test $i -lt $NUM_DOMUS
-do
- check_compressed_file_type ${DOMU_KERNEL[$i]} "MS-DOS executable"
- domU_kernel_addr[$i]=$memaddr
- load_file ${DOMU_KERNEL[$i]}
- domU_kernel_size[$i]=$filesize
- if test "${DOMU_RAMDISK[$i]}"
- then
- check_compressed_file_type ${DOMU_RAMDISK[$i]} "cpio archive"
- domU_ramdisk_addr[$i]=$memaddr
- load_file ${DOMU_RAMDISK[$i]}
- domU_ramdisk_size[$i]=$filesize
- fi
- if test "${DOMU_PASSTHROUGH_DTB[$i]}"
- then
- check_compressed_file_type ${DOMU_PASSTHROUGH_DTB[$i]} "Device Tree Blob"
- domU_passthrough_dtb_addr[$i]=$memaddr
- load_file ${DOMU_PASSTHROUGH_DTB[$i]}
- domU_passthrough_dtb_size[$i]=$filesize
- fi
- i=$(( $i + 1 ))
-done
-
-check_file_type $DEVICE_TREE "Device Tree Blob"
-device_tree_addr=$memaddr
-load_file $DEVICE_TREE
-device_tree_editing $device_tree_addr
-
-# disable device tree reloation
-echo "setenv fdt_high 0xffffffffffffffff" >> $UBOOT_SOURCE
-echo "booti $xen_addr - $device_tree_addr" >> $UBOOT_SOURCE
-mkimage -A arm64 -T script -C none -a $uboot_addr -e $uboot_addr -d $UBOOT_SOURCE "$UBOOT_SCRIPT" &> /dev/null
-
-memaddr=$(( $MEMORY_END - $memaddr - $offset ))
-if test $memaddr -lt 0
-then
- echo Error, not enough memory to load all binaries
- exit 1
-fi
-
-echo "Generated uboot script $UBOOT_SCRIPT, to be loaded at address $uboot_addr:"
-echo "$LOAD_CMD $uboot_addr $UBOOT_SCRIPT; source $uboot_addr"