Commit cb894a6a authored by Vladimir Bashkirtsev's avatar Vladimir Bashkirtsev

Added support for iWave Systems G35M

parent 36b22f40
......@@ -273,6 +273,7 @@ opi3lts-mender: opi3lts-boot-cmd-mender opi3lts-fw_env.config-mender
if [ -n "$(ENV_DEVICE)" ]; then sed -i 's/$(ROOT_DEVICE)/$(ENV_DEVICE)/' /etc/fw_env.config; fi
umount /dev/$(DISK)1
rm -rf u-boot-2021.04
rm -rf arm-trusted-firmware
opi3lts-boot-cmd-mender:
define BOOTCMD_OPI3LTS_MENDER
......@@ -471,6 +472,135 @@ define FW_ENV_TERASICDE10STANDARD_MENDER
endef
export FW_ENV_TERASICDE10STANDARD_MENDER
iwaveg35m: iwaveg35m-boot-cmd iwaveg35m-fw_env.config iwaveg35m-boot.bif
tar xf xilinx-bootgen-2022.2.tar.gz
$(MAKE) -C xilinx-bootgen-2022.2
$(MAKE) -C ../gcc aarch64-none-elf
$(MAKE) -C ../gcc microblaze-xilinx-elf
tar xf embeddedsw-xilinx_v2023.2.tar.gz
patch -Np1 -d embeddedsw-xilinx_v2023.2 < embeddedsw-xilinx_v2023.2-iwaveg35m.patch
PATH=$$PATH:$(CURDIR)/../toolchain/aarch64-none-elf/bin $(MAKE) -C embeddedsw-xilinx_v2023.2/lib/sw_apps/zynqmp_fsbl/src BOARD=g35m PROC=a53 A53_STATE=64
PATH=$$PATH:$(CURDIR)/../toolchain/microblaze-xilinx-elf/bin $(MAKE) -C embeddedsw-xilinx_v2023.2/lib/sw_apps/zynqmp_pmufw/src
rm -rf ../toolchain
tar xf arm-trusted-firmware.tar.xz
$(MAKE) -C arm-trusted-firmware PLAT=zynqmp RESET_TO_BL31=1 bl31
tar xf u-boot-2021.04.tar.gz
patch -Np1 -d u-boot-2021.04 < u-boot-2021.04-iwaveg35m.patch
cp xilinx-bootgen-2022.2/bootgen u-boot-2021.04
cp embeddedsw-xilinx_v2023.2/lib/sw_apps/zynqmp_fsbl/src/fsbl.elf u-boot-2021.04
cp embeddedsw-xilinx_v2023.2/lib/sw_apps/zynqmp_pmufw/src/executable.elf u-boot-2021.04/pmufw.elf
cp arm-trusted-firmware/build/zynqmp/release/bl31/bl31.elf u-boot-2021.04
$(MAKE) -C u-boot-2021.04 zynqmp_iwg35m_defconfig
$(MAKE) -C u-boot-2021.04
mkdir /uboot
mkfs -t vfat -n UBOOT /dev/$(DISK)1
sed -i '/\/dev\/root/a \/dev\/disk\/by-label\/UBOOT \/uboot vfat defaults,sync,auto 0 0' /etc/fstab
mount /dev/$(DISK)1 /uboot
@echo "$$BOOTBIF_IWAVEG35M" > u-boot-2021.04/boot.bif
cd u-boot-2021.04 && ./bootgen -arch zynqmp -image boot.bif -o /uboot/BOOT.bin -w on
@echo "$$BOOTCMD_IWAVEG35M" > u-boot-2021.04/boot.cmd
u-boot-2021.04/tools/mkimage -C none -A arm -T script -d u-boot-2021.04/boot.cmd /uboot/boot.scr
$(MAKE) -C u-boot-2021.04 envtools
cp u-boot-2021.04/tools/env/fw_printenv /sbin/fw_printenv
ln -sf /sbin/fw_printenv /sbin/fw_setenv
@echo "$$FW_ENV_IWAVEG35M" > /etc/fw_env.config
/sbin/fw_setenv reset
if [ -n "$(ENV_DEVICE)" ]; then sed -i 's/$(ROOT_DEVICE)/$(ENV_DEVICE)/' /etc/fw_env.config; fi
umount /dev/$(DISK)1
rm -rf u-boot-2021.04
rm -rf arm-trusted-firmware
rm -rf embeddedsw-xilinx_v2023.2
rm -rf xilinx-bootgen_2022.2
iwaveg35m-boot-cmd:
define BOOTCMD_IWAVEG35M
load mmc 1:2 $${kernel_addr_r} boot/Image
load mmc 1:2 $${fdt_addr_r} boot/machine.dtb
setenv bootargs console=ttyPS0,115200 root=/dev/$(DISK)2 rootfstype=ext4 rootflags=discard rw rootwait quiet loglevel=3 systemd.show_status=1
booti $${kernel_addr_r} - $${fdt_addr_r}
endef
export BOOTCMD_IWAVEG35M
iwaveg35m-fw_env.config:
define FW_ENV_IWAVEG35M
/dev/$(ROOT_DEVICE) 0x88000 0x20000
endef
export FW_ENV_IWAVEG35M
iwaveg35m-boot.bif:
define BOOTBIF_IWAVEG35M
the_ROM_image:
{
[bootloader, destination_cpu=a53-0] fsbl.elf
[pmufw_image] pmufw.elf
[destination_cpu=a53-0, exception_level=el-3, trustzone] bl31.elf
[destination_cpu=a53-0, load=0x00100000] u-boot.dtb
[destination_cpu=a53-0, exception_level=el-2] u-boot.elf
}
endef
export BOOTBIF_IWAVEG35M
iwaveg35m-mender: iwaveg35m-boot-cmd-mender iwaveg35m-fw_env.config-mender iwaveg35m-boot.bif
tar xf xilinx-bootgen-2022.2.tar.gz
$(MAKE) -C xilinx-bootgen-2022.2
$(MAKE) -C ../gcc aarch64-none-elf
$(MAKE) -C ../gcc microblaze-xilinx-elf
tar xf embeddedsw-xilinx_v2023.2.tar.gz
patch -Np1 -d embeddedsw-xilinx_v2023.2 < embeddedsw-xilinx_v2023.2-iwaveg35m.patch
PATH=$$PATH:$(CURDIR)/../toolchain/aarch64-none-elf/bin $(MAKE) -C embeddedsw-xilinx_v2023.2/lib/sw_apps/zynqmp_fsbl/src BOARD=g35m PROC=a53 A53_STATE=64
PATH=$$PATH:$(CURDIR)/../toolchain/microblaze-xilinx-elf/bin $(MAKE) -C embeddedsw-xilinx_v2023.2/lib/sw_apps/zynqmp_pmufw/src
rm -rf ../toolchain
tar xf arm-trusted-firmware.tar.xz
$(MAKE) -C arm-trusted-firmware PLAT=zynqmp RESET_TO_BL31=1 bl31
tar xf u-boot-2021.04.tar.gz
patch -Np1 -d u-boot-2021.04 < u-boot-2021.04-iwaveg35m.patch
patch -Np1 -d u-boot-2021.04 < u-boot-2021.04-mender.patch
cp xilinx-bootgen-2022.2/bootgen u-boot-2021.04
cp embeddedsw-xilinx_v2023.2/lib/sw_apps/zynqmp_fsbl/src/fsbl.elf u-boot-2021.04
cp embeddedsw-xilinx_v2023.2/lib/sw_apps/zynqmp_pmufw/src/executable.elf u-boot-2021.04/pmufw.elf
cp arm-trusted-firmware/build/zynqmp/release/bl31/bl31.elf u-boot-2021.04
@echo "# CONFIG_ENV_IS_NOWHERE is not set" >> u-boot-2021.04/.config
@echo "# CONFIG_ENV_IS_IN_FAT is not set" >> u-boot-2021.04/.config
@echo "CONFIG_ENV_IS_IN_MMC=y" >> u-boot-2021.04/.config
@echo "CONFIG_SYS_REDUNDAND_ENVIRONMENT=y" >> u-boot-2021.04/.config
$(MAKE) -C u-boot-2021.04 oldconfig
$(MAKE) -C u-boot-2021.04
mount /dev/$(DISK)1 /uboot
dd if=/dev/zero of=/dev/$(ROOT_DEVICE) bs=512 seek=1 count=49151
@echo "$$BOOTBIF_IWAVEG35M" > u-boot-2021.04/boot.bif
cd u-boot-2021.04 && ./bootgen -arch zynqmp -image boot.bif -o /uboot/BOOT.bin -w on
@echo "$$BOOTCMD_IWAVEG35M_MENDER" > u-boot-2021.04/boot.cmd
u-boot-2021.04/tools/mkimage -C none -A arm -T script -d u-boot-2021.04/boot.cmd /uboot/boot.scr
$(MAKE) -C u-boot-2021.04 envtools
cp u-boot-2021.04/tools/env/fw_printenv /sbin/fw_printenv
ln -sf /sbin/fw_printenv /sbin/fw_setenv
@echo "$$FW_ENV_IWAVEG35M_MENDER" > /etc/fw_env.config
/sbin/fw_setenv reset
if [ -n "$(ENV_DEVICE)" ]; then sed -i 's/$(ROOT_DEVICE)/$(ENV_DEVICE)/' /etc/fw_env.config; fi
umount /dev/$(DISK)1
rm -rf u-boot-2021.04
rm -rf arm-trusted-firmware
rm -rf embeddedsw-xilinx_v2023.2
rm -rf xilinx-bootgen_2022.2
iwaveg35m-boot-cmd-mender:
define BOOTCMD_IWAVEG35M_MENDER
run mender_setup
load $${mender_uboot_root} $${kernel_addr_r} boot/zImage
load $${mender_uboot_root} $${fdt_addr_r} boot/machine.dtb
setenv bootargs console=ttyPS0,115200 panic=10 panic_on_oops=1 root=$${mender_kernel_root} rootfstype=ext4 ro rootwait quiet loglevel=3 systemd.show_status=1
bootz $${kernel_addr_r} - $${fdt_addr_r}
run mender_try_to_recover
endef
export BOOTCMD_IWAVEG35M_MENDER
iwaveg35m-fw_env.config-mender:
define FW_ENV_IWAVEG35M_MENDER
/dev/$(ROOT_DEVICE) 0x400000 0x20000
/dev/$(ROOT_DEVICE) 0x800000 0x20000
endef
export FW_ENV_IWAVEG35M_MENDER
rpi3b: rpi3b-boot-cmd rpi3b-fw_env.config rpi3b-config
tar xf u-boot-2021.04.tar.gz
patch -Np1 -d u-boot-2021.04 < u-boot-2021.04-serial-number-fix.patch
......
This diff is collapsed.
This source diff could not be displayed because it is too large. You can view the blob instead.
bin
/sbin/.*
/var/lock/.*
etc
/etc/.*
bin
/sbin/.*
/var/lock/.*
etc
/etc/.*
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment