Differences
This shows you the differences between two versions of the page.
| Both sides previous revision Previous revision Next revision | Previous revision | ||
| u-boot_configuration [2019/12/25 12:16] – [Files] rpjday | u-boot_configuration [2019/12/27 07:02] (current) – [Files] rpjday | ||
|---|---|---|---|
| Line 1: | Line 1: | ||
| ===== Overview ===== | ===== Overview ===== | ||
| - | Show the result of doing a configuration, | + | Show the result of doing a configuration, |
| + | |||
| + | ===== make xilinx_zynqmp_zcu102_rev1_0_defconfig ===== | ||
| + | |||
| + | Preliminary: | ||
| < | < | ||
| Line 21: | Line 25: | ||
| </ | </ | ||
| - | So which files contribute to that, and how is it generated? | + | zynq[mp]-related: |
| - | + | ||
| - | ===== Files ===== | + | |
| - | + | ||
| - | Files and directories that contribute to the final configuration of a Xilinx ZCU102 (not necessarily a complete list): | + | |
| - | + | ||
| - | * Makefile | + | |
| - | * config.mk | + | |
| - | * configs/ | + | |
| - | * xilinx_zynqmp_zcu102_rev1_0_defconfig | + | |
| - | * include/ | + | |
| - | * configs/ | + | |
| - | * xilinx-zynqmp.h | + | |
| - | * arch/ | + | |
| - | * arm/ | + | |
| - | * Makefile | + | |
| - | * Kconfig | + | |
| - | * config.mk | + | |
| - | * mach-zynqmp/ | + | |
| - | * Makefile | + | |
| - | * Kconfig | + | |
| - | * include/ | + | |
| - | * cpu/ | + | |
| - | * armv8/ | + | |
| - | * dts/ | + | |
| - | * zynqmp-zcu102-rev1.0.dts | + | |
| - | * board/ | + | |
| - | * xilinx/ | + | |
| - | * Makefile | + | |
| - | * common/ | + | |
| - | * board.c | + | |
| - | * zynqmp/ | + | |
| - | * Makefile | + | |
| - | * Kconfig | + | |
| - | + | ||
| - | + | ||
| - | ===== Makefile ===== | + | |
| < | < | ||
| - | ... | + | $ grep -i zynq .config |
| - | export ARCH CPU BOARD VENDOR SOC CPUDIR BOARDDIR | + | CONFIG_SYS_SOC=" |
| - | ... | + | CONFIG_SYS_BOARD=" |
| - | ifeq ($(autoconf_is_old), | + | CONFIG_SYS_CONFIG_NAME=" |
| - | include config.mk | + | # CONFIG_ARCH_ZYNQ is not set |
| - | include arch/ | + | # CONFIG_ARCH_ZYNQMP_R5 is not set |
| - | endif | + | CONFIG_ARCH_ZYNQMP=y |
| - | ... | + | CONFIG_ZYNQ_SDHCI_MAX_FREQ=200000000 |
| + | CONFIG_ZYNQMP_SPL_PM_CFG_OBJ_FILE="" | ||
| + | CONFIG_ZYNQMP_USB=y | ||
| + | # CONFIG_ZYNQMP_NO_DDR is not set | ||
| + | # CONFIG_ZYNQMP_PSU_INIT_ENABLED is not set | ||
| + | # CONFIG_SPL_ZYNQMP_ALT_BOOTMODE_ENABLED is not set | ||
| + | # CONFIG_SPL_ZYNQMP_TWO_SDHCI is not set | ||
| + | CONFIG_CMD_ZYNQMP=y | ||
| + | CONFIG_SMBIOS_PRODUCT_NAME=" | ||
| + | CONFIG_SYS_PROMPT=" | ||
| + | CONFIG_DEFAULT_DEVICE_TREE=" | ||
| + | CONFIG_OF_LIST=" | ||
| + | CONFIG_CLK_ZYNQMP=y | ||
| + | CONFIG_ZYNQMP_FIRMWARE=y | ||
| + | CONFIG_FPGA_ZYNQMPPL=y | ||
| + | CONFIG_ZYNQ_GPIO=y | ||
| + | CONFIG_ZYNQMP_IPI=y | ||
| + | CONFIG_ZYNQ_GEM_I2C_MAC_OFFSET=0x20 | ||
| + | CONFIG_MMC_SDHCI_ZYNQ=y | ||
| + | CONFIG_ZYNQ_SDHCI_MIN_FREQ=0 | ||
| + | # CONFIG_ZYNQ_HISPD_BROKEN is not set | ||
| + | CONFIG_ZYNQ_GEM=y | ||
| + | CONFIG_DEBUG_UART_ZYNQ=y | ||
| + | CONFIG_ZYNQ_SERIAL=y | ||
| + | # CONFIG_ZYNQ_SPI is not set | ||
| + | CONFIG_ZYNQMP_GQSPI=y | ||
| + | $ | ||
| </ | </ | ||
| - | ===== config.mk | + | ===== Files ===== |
| - | < | + | Files and directories that contribute to the final configuration of a Xilinx ZCU102 |
| - | ARCH := $(CONFIG_SYS_ARCH:" | + | |
| - | CPU := $(CONFIG_SYS_CPU:" | + | |
| - | ifdef CONFIG_SPL_BUILD | + | |
| - | ifdef CONFIG_TEGRA | + | |
| - | CPU := arm720t | + | |
| - | endif | + | |
| - | endif | + | |
| - | BOARD := $(CONFIG_SYS_BOARD:" | + | |
| - | ifneq ($(CONFIG_SYS_VENDOR), | + | |
| - | VENDOR := $(CONFIG_SYS_VENDOR:" | + | |
| - | endif | + | |
| - | ifneq ($(CONFIG_SYS_SOC), | + | |
| - | SOC := $(CONFIG_SYS_SOC:" | + | |
| - | endif | + | |
| - | # Some architecture config.mk files need to know what CPUDIR is set to, | + | * '' |
| - | # so calculate CPUDIR before including ARCH/ | + | |
| - | # Check if arch/ | + | |
| - | # CPU-specific code. | + | * '' |
| - | CPUDIR=arch/ | + | * '' |
| - | + | * '' | |
| - | sinclude $(srctree)/ | + | * '' |
| - | sinclude $(srctree)/ | + | * '' |
| - | + | | |
| - | ifdef SOC | + | * '' |
| - | sinclude $(srctree)/ | + | * '' |
| - | endif | + | * '' |
| - | ifneq ($(BOARD), | + | * '' |
| - | ifdef | + | * '' |
| - | BOARDDIR = $(VENDOR)/ | + | |
| - | else | + | |
| - | BOARDDIR = $(BOARD) | + | |
| - | endif | + | * '' |
| - | endif | + | * '' |
| - | ifdef | + | * '' |
| - | sinclude $(srctree)/ | + | * '' |
| - | endif | + | * '' |
| - | </ | + | * '' |
| - | + | * '' | |
| - | + | * '' | |
| - | + | * '' | |
| - | ===== configs/ | + | |
| - | + | | |
| - | ==== zynq_zed_defconfig ==== | + | * '' |
| - | + | | |
| - | < | + | * '' |
| - | CONFIG_ARM=y | + | * '' |
| - | CONFIG_ARCH_ZYNQ=y | + | * '' |
| - | ... much more ... | + | * '' |
| - | </ | + | * '' |
| - | + | * '' | |
| - | ===== include/ | + | * '' |
| - | + | * '' | |
| - | ==== configs/ | + | |
| - | + | ||
| - | === zynq-common.h === | + | |
| - | + | ||
| - | Consulted from '' | + | |
| - | + | ||
| - | ===== arch/arm/ ===== | + | |
| - | + | ||
| - | ==== Kconfig | + | |
| - | + | ||
| - | < | + | |
| - | config | + | |
| - | default " | + | |
| - | + | ||
| - | ... snip ... | + | |
| - | + | ||
| - | config ARCH_ZYNQ | + | |
| - | | + | |
| - | | + | |
| - | | + | |
| - | select CLK_ZYNQ | + | |
| - | select CPU_V7A | + | |
| - | select DM | + | |
| - | select DM_ETH if NET | + | |
| - | select DM_MMC if MMC | + | |
| - | select DM_SERIAL | + | |
| - | select DM_SPI | + | |
| - | select DM_SPI_FLASH | + | |
| - | select DM_USB if USB | + | |
| - | select OF_CONTROL | + | |
| - | select SPI | + | |
| - | select SPL_BOARD_INIT if SPL | + | |
| - | select SPL_CLK if SPL | + | |
| - | select SPL_DM if SPL | + | |
| - | select SPL_OF_CONTROL if SPL | + | |
| - | select SPL_SEPARATE_BSS if SPL | + | |
| - | select SUPPORT_SPL | + | |
| - | imply ARCH_EARLY_INIT_R | + | |
| - | imply BOARD_LATE_INIT | + | |
| - | imply CMD_CLK | + | |
| - | imply CMD_DM | + | |
| - | imply CMD_SPL | + | |
| - | imply FAT_WRITE | + | |
| - | + | ||
| - | ... snip ... | + | |
| - | </code> | + | |
| - | + | ||
| - | ==== Makefile ==== | + | |
| - | + | ||
| - | < | + | |
| - | machine-$(CONFIG_ARCH_ZYNQ) | + | |
| - | machdirs := $(patsubst %,arch/arm/mach-%/, | + | |
| - | head-y := arch/ | + | |
| - | ... | + | |
| - | libs-y += arch/ | + | |
| - | libs-y += arch/arm/cpu/ | + | |
| - | libs-y += arch/ | + | |
| - | </ | + | |
| - | ==== mach-zynq/ ==== | + | |
| - | + | ||
| - | === Kconfig | + | |
| - | + | ||
| - | < | + | |
| - | config SYS_BOARD | + | |
| - | string "Board name" | + | |
| - | default " | + | |
| - | + | ||
| - | config SYS_VENDOR | + | |
| - | string " | + | |
| - | default " | + | |
| - | + | ||
| - | config SYS_SOC | + | |
| - | default " | + | |
| - | + | ||
| - | config SYS_CONFIG_NAME | + | |
| - | string "Board configuration name" | + | |
| - | default " | + | |
| - | help | + | |
| - | | + | |
| - | | + | |
| - | will be used for board configuration. | + | |
| - | </code> | + | |
| - | + | ||
| - | ===== make cfg ===== | + | |
| - | + | ||
| - | In addition to generating the appropriate | + | |
| - | + | ||
| - | < | + | |
| - | $ make cfg | + | |
| - | </code> | + | |
| - | + | ||
| - | Relevant entries that define the remainder of the build: | + | |
| - | + | ||
| - | < | + | |
| - | #define CONFIG_SYS_CPU " | + | |
| - | #define CONFIG_SYS_CONFIG_NAME "zynq-common" | + | |
| - | #define CONFIG_BOARDDIR | + | |
| - | #define CONFIG_CPU_V7A 1 | + | |
| - | #define CONFIG_SYS_VENDOR " | + | |
| - | #define CONFIG_SYS_ARCH " | + | |
| - | #define CONFIG_SYS_BOARD " | + | |
| - | #define CONFIG_SYS_ARM_ARCH 7 | + | |
| - | #define CONFIG_ARM 1 | + | |
| - | #define CONFIG_ARCH_ZYNQ 1 | + | |
| - | </ | + | |