diff options
Diffstat (limited to 'board/theobroma-systems/puma')
-rw-r--r-- | board/theobroma-systems/puma/boot.cmd | 68 | ||||
-rw-r--r-- | board/theobroma-systems/puma/defaultEnv.txt | 6 | ||||
-rw-r--r-- | board/theobroma-systems/puma/genimage.cfg | 22 | ||||
-rwxr-xr-x | board/theobroma-systems/puma/post-build.sh | 12 | ||||
-rw-r--r-- | board/theobroma-systems/puma/userEnv.txt | 0 |
5 files changed, 108 insertions, 0 deletions
diff --git a/board/theobroma-systems/puma/boot.cmd b/board/theobroma-systems/puma/boot.cmd new file mode 100644 index 0000000000..328b2a3906 --- /dev/null +++ b/board/theobroma-systems/puma/boot.cmd @@ -0,0 +1,68 @@ +# mkimage -C none -A arm -T script -d boot.cmd boot.scr + +# fallback default values +load_addr=0x01000000 +fdtfile=dtb +kernelfile=Image +initrdfile=uInitrd +rootdevice=/dev/mmcblk0p1 +rootdevice_flags=rw +loglevel=7 + +echo "Boot script running from ${devtype} ${devnum}" + +if test ${board_name} = "puma_rk3399"; then + if test ${devtype} = "mmc" && test ${devnum} -eq 0;then + rootdevice=/dev/mmcblk1p1 + elif test ${devtype} = "mmc" && test ${devnum} -eq 1;then + rootdevice=/dev/mmcblk0p1 + fi +fi + +if load ${devtype} ${devnum} ${fdt_addr_r} /boot/${board_name}/defaultEnv.txt; then + setenv load_path "/boot/${board_name}" + echo "Import default environment from /boot/${board_name}/defaultEnv.txt" + env import -t ${fdt_addr_r} ${filesize} +else + if load ${devtype} ${devnum} ${fdt_addr_r} /boot/defaultEnv.txt; then + setenv load_path "/boot" + echo "Import default environment from /boot/defaultEnv.txt" + env import -t ${fdt_addr_r} ${filesize} + fi +fi + +if load ${devtype} ${devnum} ${load_addr} ${load_path}/userEnv.txt; then + echo "Import default environment from ${load_path}/userEnv.txt" + env import -t ${load_addr} ${filesize} +fi + +if test -n ${userscript}; then + if load ${devtype} ${devnum} ${load_addr} ${load_path}/${userscript}; then + echo "Running userscript from ${load_path}/${userscript}" + source ${load_addr} + fi +fi + +setenv bootargs "root=${rootdevice} ${rootdevice_flags} rootwait ${console} consoleblank=0 loglevel=${loglevel} ${extraargs}" + +if load ${devtype} ${devnum} ${fdt_addr_r} ${load_path}/${fdtfile}; then + echo "Load devicetree from ${load_path}/${fdtfile}" +fi +fdt addr ${fdt_addr_r} +fdt resize + +for overlay_file in ${overlays}; do + if load ${devtype} ${devnum} ${load_addr} ${load_path}/overlays/${overlay_file}; then + echo "Apply devicetree overlay ${load_path}/overlays/${overlay_file}" + fdt apply ${load_addr} + fi +done + +load ${devtype} ${devnum} ${kernel_addr_r} ${load_path}/${kernelfile} + +if load ${devtype} ${devnum} ${load_addr} ${load_path}/${initrdfile}; then + booti ${kernel_addr_r} ${ramdisk_addr_r} ${fdt_addr_r} +else + echo "Start Kernel without initrd" + booti ${kernel_addr_r} - ${fdt_addr_r} +fi diff --git a/board/theobroma-systems/puma/defaultEnv.txt b/board/theobroma-systems/puma/defaultEnv.txt new file mode 100644 index 0000000000..436e6b44cd --- /dev/null +++ b/board/theobroma-systems/puma/defaultEnv.txt @@ -0,0 +1,6 @@ +load_addr=0x01000000 +kernelfile=Image +fdtfile=rk3399-puma.dtb +overlays= +rootdevice_flags=rw +loglevel=7 diff --git a/board/theobroma-systems/puma/genimage.cfg b/board/theobroma-systems/puma/genimage.cfg new file mode 100644 index 0000000000..233bc4e2d2 --- /dev/null +++ b/board/theobroma-systems/puma/genimage.cfg @@ -0,0 +1,22 @@ +image sdcard.img { + hdimage { + } + + partition spl { + in-partition-table = "no" + image = "spl_sd.img" + offset = 32K + } + + partition u-boot { + in-partition-table = "no" + image = "u-boot.itb" + offset = 256K + } + + partition rootfs { + partition-type = 0x83 + offset = 2M + image = "rootfs.ext4" + } +} diff --git a/board/theobroma-systems/puma/post-build.sh b/board/theobroma-systems/puma/post-build.sh new file mode 100755 index 0000000000..93fd341fc2 --- /dev/null +++ b/board/theobroma-systems/puma/post-build.sh @@ -0,0 +1,12 @@ +#!/bin/sh + +set -x + +MKIMAGE=$HOST_DIR/bin/mkimage +BOARD_DIR="$(dirname $0)" + +install -m 0644 -D $BINARIES_DIR/boot.scr $TARGET_DIR/boot/boot.scr +install -m 0644 -D $BOARD_DIR/defaultEnv.txt $TARGET_DIR/boot/defaultEnv.txt +install -m 0644 -D $BOARD_DIR/userEnv.txt $TARGET_DIR/boot/userEnv.txt + +$MKIMAGE -n rk3399 -T rksd -d $BINARIES_DIR/u-boot-spl.bin ${BINARIES_DIR}/spl_sd.img diff --git a/board/theobroma-systems/puma/userEnv.txt b/board/theobroma-systems/puma/userEnv.txt new file mode 100644 index 0000000000..e69de29bb2 --- /dev/null +++ b/board/theobroma-systems/puma/userEnv.txt |