Add Avnet MicroZed

This commit is contained in:
tim
2021-04-10 20:39:31 -04:00
parent eee718649d
commit f60920a2b7
7 changed files with 5381 additions and 0 deletions

View File

@@ -0,0 +1,8 @@
# Xilinx Zynq 7000 dual core 1 GB RAM Gbe
BOARD_NAME="MicroZed"
BOARDFAMILY="zynq"
KERNEL_TARGET="legacy"
FULL_DESKTOP="no"
BOOT_FDT_FILE="zynq-microzed.dtb"
BOOTSIZE="128"
BOOTFS_TYPE="fat"

3
config/bootenv/zynq.txt Normal file
View File

@@ -0,0 +1,3 @@
verbosity=1
bootlogo=false
fpga_bin=system_wrapper.bin

View File

@@ -0,0 +1,38 @@
# DO NOT EDIT THIS FILE
#
# Please edit /boot/armbianEnv.txt to set supported parameters
#
setenv load_addr "0x9000000"
setenv loadbit_addr "0x100000"
# default values
setenv rootdev "/dev/mmcblk0p2"
setenv verbosity "1"
setenv consoleargs "console=ttyPS0,115200n8"
setenv bootlogo "false"
setenv rootfstype "ext4"
setenv earlycon "off"
echo "Boot script loaded from ${devtype} ${devnum}"
if test -e ${devtype} ${devnum} ${prefix}armbianEnv.txt; then
load ${devtype} ${devnum} ${load_addr} ${prefix}armbianEnv.txt
env import -t ${load_addr} ${filesize}
fi
if test -e ${devtype} ${devnum} ${prefix}${fpga_bin}; then
echo "Loading FPGA Bitstream from ${prefix}${fpga_bin}"
load ${devtype} ${devnum} ${loadbit_addr} ${prefix}${fpga_bin}
fpga load 0 ${loadbit_addr} ${filesize}
fi
setenv bootargs "root=${rootdev} rootwait rootfstype=${rootfstype} ${consoleargs} consoleblank=0 loglevel=${verbosity} ubootpart=${partuuid} usb-storage.quirks=${usbstoragequirks} ${extraargs} ${extraboardargs}"
load ${devtype} ${devnum} ${ramdisk_addr_r} ${prefix}uInitrd
load ${devtype} ${devnum} ${kernel_addr_r} ${prefix}zImage
load ${devtype} ${devnum} ${fdt_addr_r} ${prefix}dtb/${fdtfile}
bootz ${kernel_addr_r} ${ramdisk_addr_r} ${fdt_addr_r}
# Recompile with:
# mkimage -C none -A arm -T script -d /boot/boot.cmd /boot/boot.scr

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,62 @@
ARCH=armhf
SERIALCON='ttyPS0'
LINUXFAMILY=zynq
KERNELSOURCE='https://github.com/Xilinx/linux-xlnx.git'
KERNELBRANCH='tag:xilinx-v2020.2'
KERNELDIR='linux-xlnx'
KERNELPATCHDIR='zynq-'$BRANCH
BOOTSOURCE='https://github.com/Xilinx/u-boot-xlnx.git'
BOOTBRANCH='tag:xilinx-v2020.2'
BOOTCONFIG="xilinx_zynq_virt_defconfig"
BOOTDIR='u-boot-xlnx'
BOOTSCRIPT='boot-zynq.cmd:boot.cmd'
BOOTENV_FILE='zynq.txt'
UBOOT_TARGET_MAP=';;u-boot.elf'
family_tweaks()
{
true
}
uboot_custom_postprocess()
{
# Precompiled first stage bootloader
cp ${SRC}/cache/sources/xilinx-fsbl/zynq/fsbl.elf .
# Create a bootgen build instruction file
cat > build.bif <<EOF
the_ROM_image : {
[bootloader]fsbl.elf
u-boot.elf
}
EOF
# Regenerate boot.bin
rm -f boot.bin
bootgen -image build.bif -o i boot.bin
# And a simple README for users
cat > README <<EOF
# Regenerate Zynq boot.bin from fsbl.elf, u-boot.elf
bootgen -image build.bif -o i boot.bin
EOF
# Package build components into u-boot lib dir
cp fsbl.elf "$uboottempdir/${uboot_name}/usr/lib/${uboot_name}/${f_dst}"
cp build.bif "$uboottempdir/${uboot_name}/usr/lib/${uboot_name}/${f_dst}"
cp README "$uboottempdir/${uboot_name}/usr/lib/${uboot_name}/${f_dst}"
# Package boot.bin as a u-boot "config file", so package manager
# won't fight end users who update this themselves ...
mkdir -p "$uboottempdir/${uboot_name}/boot"
cp boot.bin "$uboottempdir/${uboot_name}/boot"
mkdir -p "$uboottempdir/${uboot_name}/DEBIAN"
echo "/boot/boot.bin" > "$uboottempdir/${uboot_name}/DEBIAN/conffiles"
}
write_uboot_platform()
{
:
}

View File

@@ -0,0 +1,20 @@
diff --git a/arch/arm/boot/dts/zynq-microzed.dts b/arch/arm/boot/dts/zynq-microzed.dts
index 6ed84fb15..4d7ba65c2 100644
--- a/arch/arm/boot/dts/zynq-microzed.dts
+++ b/arch/arm/boot/dts/zynq-microzed.dts
@@ -29,6 +29,15 @@
compatible = "usb-nop-xceiv";
#phy-cells = <0>;
};
+
+ leds {
+ compatible = "gpio-leds";
+ status {
+ label = "status";
+ gpios = <&gpio0 0x2f 0x0>;
+ linux,default-trigger = "heartbeat";
+ };
+ };
};
&clkc {

1
patch/kernel/zynq-legacy Symbolic link
View File

@@ -0,0 +1 @@
archive/zynq-5.4/