
Hi again
El jue, 17 jun 2021 a las 15:07, Alvaro Gamez (alvaro.gamez@hazent.com) escribió:
Hi!
I'm trying to use buildroot to generate a system for the Digilent Genesys ZU board, which is based on the zynqmp SOC. I'm having trouble getting it to boot, and I was hoping I could get some guidance on what to do next. My issue is basically that nothing seems to work, since I don't have an output at all on the serial console.
I'm using u-boot version 2021.04, which has the latest patches from Luca Ceresoli that should allow booting completely via u-boot and u-boot SPL, without using Xilinx' FSBL. My method of cross compiling is via buildroot version 2021.05, which eases the process of gathering also Arm Trusted Firmware, building the linux kernel and filesystem, etc.
Out of Digilent's reference design, Vivado/Vitis generates for me configuration object pm_cfg_obj.c and PSU init file psu_init_gpl.c, which shall be fed to u-boot. Alongside these files, I use PMU firmware built by Luca at https://github.com/lucaceresoli/zynqmp-pmufw-binaries/raw/master/bin/pmufw-v...
To provide Arm Trusted Firmware, I'm passing buildroot the same configuration as already exists on configs/zynqmp_zcu106_defconfig which is version 1.5 of : https://github.com/ARM-software/arm-trusted-firmware.git but I don't think my board has reached the state of needing this firmware yet, since I don't get any SPL serial console output.
The device tree I'm using is extracted from Digilent's kernel image, and matches perfectly with the one generated by petalinux for this Digilent's Vivado design, so it should be correct
Provided image by Digilent follows the Xilinx' booting workflow, so only a BOOT.BIN file is on the sdcard which includes xilinx' FSBL, PMU firmware with configuration object, u-boot, kernel, device tree, etc, so at least I know that the board is fine as this firmware works flawlessly. I also was able to load the kernel and device tree as built by buildroot over this instance of u-boot, so at least I can load my own kernel, but I can't progress deeper than that.
I've been able to load u-boot proper via Xilinx FSBL, so it seems that my u-boot configuration is not very far from what should be, but I'm still unable to see any reaction when trying to load SPL. I'm attaching my u-boot configuration, just in case any of you can provide any guidance on this.
CONFIG_ARM=y CONFIG_ARCH_ZYNQMP=y CONFIG_SYS_TEXT_BASE=0x8000000 CONFIG_SYS_MALLOC_F_LEN=0x8000 CONFIG_ENV_OFFSET=0x100000 CONFIG_ENV_SECT_SIZE=0x20000 CONFIG_DM_GPIO=y CONFIG_SPL=y CONFIG_DEBUG_UART_BASE=0xFF000000 CONFIG_DEBUG_UART_CLOCK=100000000 CONFIG_XILINX_PS_INIT_FILE="/tmp/psu_init_gpl.c" CONFIG_PMUFW_INIT_FILE="/tmp/pmufw-v2018.3.bin" CONFIG_ZYNQMP_SPL_PM_CFG_OBJ_FILE="/tmp/pm_cfg_obj.bin" CONFIG_ZYNQMP_USB=y CONFIG_DEFAULT_DEVICE_TREE="zynqmp-zcu102-rev1.0" CONFIG_DEBUG_UART=y CONFIG_DISTRO_DEFAULTS=y CONFIG_FIT=y CONFIG_FIT_VERBOSE=y CONFIG_LOG=y # CONFIG_DISPLAY_CPUINFO is not set CONFIG_BOARD_EARLY_INIT_R=y CONFIG_CMD_BOOTMENU=y CONFIG_CMD_THOR_DOWNLOAD=y CONFIG_CMD_MEMTEST=y CONFIG_SYS_ALT_MEMTEST=y CONFIG_CMD_CLK=y CONFIG_CMD_DFU=y CONFIG_CMD_FPGA_LOADBP=y CONFIG_CMD_FPGA_LOADP=y CONFIG_CMD_FPGA_LOAD_SECURE=y CONFIG_CMD_GPIO=y CONFIG_CMD_GPT=y CONFIG_CMD_I2C=y CONFIG_CMD_MMC=y CONFIG_CMD_SDRAM=y CONFIG_CMD_SPI=y CONFIG_CMD_USB=y CONFIG_CMD_TFTPPUT=y CONFIG_CMD_TIME=y CONFIG_CMD_TIMER=y CONFIG_CMD_EXT4_WRITE=y CONFIG_CMD_UBI=y CONFIG_SPL_OF_CONTROL=y CONFIG_OF_EMBED=y CONFIG_ENV_IS_NOWHERE=y CONFIG_ENV_IS_IN_FAT=y CONFIG_ENV_IS_IN_SPI_FLASH=y CONFIG_NET_RANDOM_ETHADDR=y CONFIG_CLK_ZYNQMP=y CONFIG_DFU_MMC=y CONFIG_DFU_RAM=y CONFIG_USB_FUNCTION_FASTBOOT=y CONFIG_FASTBOOT_FLASH=y CONFIG_FASTBOOT_FLASH_MMC_DEV=0 CONFIG_FASTBOOT_CMD_OEM_FORMAT=y CONFIG_FPGA_XILINX=y CONFIG_FPGA_ZYNQMPPL=y CONFIG_XILINX_GPIO=y CONFIG_DM_I2C=y CONFIG_SYS_I2C_CADENCE=y CONFIG_I2C_MUX=y CONFIG_I2C_MUX_PCA954x=y CONFIG_LED=y CONFIG_LED_GPIO=y CONFIG_MISC=y CONFIG_MMC_IO_VOLTAGE=y CONFIG_MMC_UHS_SUPPORT=y CONFIG_MMC_SDHCI=y CONFIG_MMC_SDHCI_ZYNQ=y CONFIG_MTD=y CONFIG_SPI_FLASH_BAR=y CONFIG_SPI_FLASH_ISSI=y CONFIG_SPI_FLASH_MACRONIX=y CONFIG_SPI_FLASH_SPANSION=y CONFIG_SPI_FLASH_STMICRO=y CONFIG_SPI_FLASH_WINBOND=y # CONFIG_SPI_FLASH_USE_4K_SECTORS is not set CONFIG_MTD_UBI_BEB_LIMIT=0 CONFIG_PHY_MARVELL=y CONFIG_PHY_REALTEK=y CONFIG_PHY_TI=y CONFIG_PHY_VITESSE=y CONFIG_PHY_FIXED=y CONFIG_PHY_GIGE=y CONFIG_MII=y CONFIG_ZYNQ_GEM=y CONFIG_DEBUG_UART_ANNOUNCE=y CONFIG_ZYNQ_SERIAL=y CONFIG_SPI=y CONFIG_ZYNQMP_GQSPI=y CONFIG_USB=y CONFIG_USB_XHCI_HCD=y CONFIG_USB_XHCI_DWC3=y CONFIG_USB_DWC3=y CONFIG_USB_DWC3_GENERIC=y CONFIG_USB_ULPI_VIEWPORT=y CONFIG_USB_ULPI=y CONFIG_USB_GADGET=y CONFIG_USB_GADGET_MANUFACTURER="Xilinx" CONFIG_USB_GADGET_VENDOR_NUM=0x03FD CONFIG_USB_GADGET_PRODUCT_NUM=0x0300 CONFIG_USB_FUNCTION_THOR=y CONFIG_PANIC_HANG=y # CONFIG_EFI_LOADER is not set
Thanks!