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 source diff could not be displayed because it is too large. You can view the blob instead.
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