From b6518b1ea3b40ec1dec786fb942dc47bb164d987 Mon Sep 17 00:00:00 2001 From: Igal Liberman Date: Tue, 13 Jun 2017 10:35:44 +0300 Subject: [PATCH] arm64: mvebu: use single defconfig for Armada8K development boards Currently, Marvell Armada8k development board use 3 different defconfigs: mvebu_db-88f7040-nand_defconfig mvebu_db-88f7040_defconfig mvebu_db-88f8040_defconfig Having 3 different defconfigs makes maintenance difficult. This patch removes the defconfigs mentioned above and introduce a new defconfig which represents the Armada8k family. NOTE: In order not to break automatic tools compilation, a default device-tree is set in the defconfig (armada-8040-db). However, when compiling u-boot, the user MUST explicitly export the DEVICE_TREE for the requested board because using A80x0 device-tree on A70x0 might break the device. For more information, refer to "doc/README.marvell" (intoduced in this patch). Change-Id: I98515b6306498358f3722ecf7ac4c87f236ebbd8 Signed-off-by: Igal Liberman Signed-off-by: Stefan Roese --- configs/mvebu_db-88f7040-nand_defconfig | 72 ---------------------- configs/mvebu_db-88f7040_defconfig | 70 --------------------- ...f8040_defconfig => mvebu_db_armada8k_defconfig} | 0 doc/README.marvell | 53 ++++++++++++++++ 4 files changed, 53 insertions(+), 142 deletions(-) delete mode 100644 configs/mvebu_db-88f7040-nand_defconfig delete mode 100644 configs/mvebu_db-88f7040_defconfig rename configs/{mvebu_db-88f8040_defconfig => mvebu_db_armada8k_defconfig} (100%) create mode 100644 doc/README.marvell diff --git a/configs/mvebu_db-88f7040-nand_defconfig b/configs/mvebu_db-88f7040-nand_defconfig deleted file mode 100644 index 2aba8de..0000000 --- a/configs/mvebu_db-88f7040-nand_defconfig +++ /dev/null @@ -1,72 +0,0 @@ -CONFIG_ARM=y -CONFIG_ARCH_MVEBU=y -CONFIG_SYS_MALLOC_F_LEN=0x2000 -CONFIG_TARGET_MVEBU_ARMADA_8K=y -CONFIG_DEFAULT_DEVICE_TREE="armada-7040-db-nand" -CONFIG_SMBIOS_PRODUCT_NAME="" -CONFIG_DEBUG_UART=y -CONFIG_AHCI=y -# CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set -CONFIG_SYS_CONSOLE_INFO_QUIET=y -# CONFIG_DISPLAY_CPUINFO is not set -# CONFIG_DISPLAY_BOARDINFO is not set -CONFIG_ARCH_EARLY_INIT_R=y -CONFIG_BOARD_EARLY_INIT_F=y -CONFIG_HUSH_PARSER=y -# CONFIG_CMD_IMLS is not set -# CONFIG_CMD_FLASH is not set -CONFIG_CMD_MMC=y -CONFIG_CMD_NAND=y -CONFIG_CMD_PART=y -CONFIG_CMD_SF=y -CONFIG_CMD_SPI=y -CONFIG_CMD_I2C=y -CONFIG_CMD_USB=y -# CONFIG_CMD_FPGA is not set -# CONFIG_CMD_SETEXPR is not set -CONFIG_CMD_TFTPPUT=y -CONFIG_CMD_DHCP=y -CONFIG_CMD_MII=y -CONFIG_CMD_PING=y -CONFIG_CMD_CACHE=y -CONFIG_CMD_TIME=y -CONFIG_CMD_MVEBU_BUBT=y -CONFIG_MVEBU_NAND_BOOT=y -CONFIG_CMD_EXT4=y -CONFIG_CMD_EXT4_WRITE=y -CONFIG_CMD_FAT=y -CONFIG_CMD_FS_GENERIC=y -CONFIG_MAC_PARTITION=y -CONFIG_ISO_PARTITION=y -CONFIG_EFI_PARTITION=y -CONFIG_BLOCK_CACHE=y -CONFIG_DM_I2C=y -CONFIG_SYS_I2C_MVTWSI=y -CONFIG_MISC=y -CONFIG_DM_MMC=y -CONFIG_MMC_SDHCI=y -CONFIG_MMC_SDHCI_XENON=y -CONFIG_NAND_PXA3XX=y -CONFIG_SPI_FLASH=y -CONFIG_SPI_FLASH_MACRONIX=y -CONFIG_SPI_FLASH_SPANSION=y -CONFIG_SPI_FLASH_STMICRO=y -CONFIG_PHYLIB=y -CONFIG_PCI=y -CONFIG_DM_PCI=y -CONFIG_PCIE_DW_MVEBU=y -CONFIG_MVEBU_COMPHY_SUPPORT=y -CONFIG_PINCTRL=y -CONFIG_PINCTRL_ARMADA_8K=y -# CONFIG_SPL_SERIAL_PRESENT is not set -CONFIG_DEBUG_UART_BASE=0xf0512000 -CONFIG_DEBUG_UART_CLOCK=200000000 -CONFIG_DEBUG_UART_SHIFT=2 -CONFIG_DEBUG_UART_ANNOUNCE=y -CONFIG_SYS_NS16550=y -CONFIG_USB=y -CONFIG_DM_USB=y -CONFIG_USB_XHCI_HCD=y -CONFIG_USB_EHCI_HCD=y -CONFIG_USB_STORAGE=y -CONFIG_SMBIOS_MANUFACTURER="" diff --git a/configs/mvebu_db-88f7040_defconfig b/configs/mvebu_db-88f7040_defconfig deleted file mode 100644 index 28af643..0000000 --- a/configs/mvebu_db-88f7040_defconfig +++ /dev/null @@ -1,70 +0,0 @@ -CONFIG_ARM=y -CONFIG_ARCH_MVEBU=y -CONFIG_SYS_MALLOC_F_LEN=0x2000 -CONFIG_TARGET_MVEBU_ARMADA_8K=y -CONFIG_DEFAULT_DEVICE_TREE="armada-7040-db" -CONFIG_SMBIOS_PRODUCT_NAME="" -CONFIG_DEBUG_UART=y -CONFIG_AHCI=y -# CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set -CONFIG_SYS_CONSOLE_INFO_QUIET=y -# CONFIG_DISPLAY_CPUINFO is not set -# CONFIG_DISPLAY_BOARDINFO is not set -CONFIG_ARCH_EARLY_INIT_R=y -CONFIG_BOARD_EARLY_INIT_F=y -CONFIG_HUSH_PARSER=y -# CONFIG_CMD_IMLS is not set -# CONFIG_CMD_FLASH is not set -CONFIG_CMD_MMC=y -CONFIG_CMD_PART=y -CONFIG_CMD_SF=y -CONFIG_CMD_SPI=y -CONFIG_CMD_I2C=y -CONFIG_CMD_USB=y -# CONFIG_CMD_FPGA is not set -# CONFIG_CMD_SETEXPR is not set -CONFIG_CMD_TFTPPUT=y -CONFIG_CMD_DHCP=y -CONFIG_CMD_MII=y -CONFIG_CMD_PING=y -CONFIG_CMD_CACHE=y -CONFIG_CMD_TIME=y -CONFIG_CMD_MVEBU_BUBT=y -CONFIG_CMD_EXT4=y -CONFIG_CMD_EXT4_WRITE=y -CONFIG_CMD_FAT=y -CONFIG_CMD_FS_GENERIC=y -CONFIG_MAC_PARTITION=y -CONFIG_ISO_PARTITION=y -CONFIG_EFI_PARTITION=y -CONFIG_BLOCK_CACHE=y -CONFIG_DM_I2C=y -CONFIG_SYS_I2C_MVTWSI=y -CONFIG_MISC=y -CONFIG_DM_MMC=y -CONFIG_MMC_SDHCI=y -CONFIG_MMC_SDHCI_XENON=y -CONFIG_SPI_FLASH=y -CONFIG_SPI_FLASH_MACRONIX=y -CONFIG_SPI_FLASH_SPANSION=y -CONFIG_SPI_FLASH_STMICRO=y -CONFIG_PHY_MARVELL=y -CONFIG_MVPP2=y -CONFIG_PCI=y -CONFIG_DM_PCI=y -CONFIG_PCIE_DW_MVEBU=y -CONFIG_MVEBU_COMPHY_SUPPORT=y -CONFIG_PINCTRL=y -CONFIG_PINCTRL_ARMADA_8K=y -# CONFIG_SPL_SERIAL_PRESENT is not set -CONFIG_DEBUG_UART_BASE=0xf0512000 -CONFIG_DEBUG_UART_CLOCK=200000000 -CONFIG_DEBUG_UART_SHIFT=2 -CONFIG_DEBUG_UART_ANNOUNCE=y -CONFIG_SYS_NS16550=y -CONFIG_USB=y -CONFIG_DM_USB=y -CONFIG_USB_XHCI_HCD=y -CONFIG_USB_EHCI_HCD=y -CONFIG_USB_STORAGE=y -CONFIG_SMBIOS_MANUFACTURER="" diff --git a/configs/mvebu_db-88f8040_defconfig b/configs/mvebu_db_armada8k_defconfig similarity index 100% rename from configs/mvebu_db-88f8040_defconfig rename to configs/mvebu_db_armada8k_defconfig diff --git a/doc/README.marvell b/doc/README.marvell new file mode 100644 index 0000000..3364617 --- /dev/null +++ b/doc/README.marvell @@ -0,0 +1,53 @@ +Marvell U-Boot Build Instructions +================================= + +This document describes how to compile the U-Boot and how to change U-Boot configuration + +Build Procedure +---------------- +1. Install required packages: + + # sudo apt-get install libssl-dev + # sudo apt-get install device-tree-compiler + # sudo apt-get install swig libpython-dev + +2. Set the cross compiler: + + # export CROSS_COMPILE=/path/to/toolchain/aarch64-marvell-linux-gnu- + +3. Clean-up old residuals: + + # make mrproper + +4. Configure the U-Boot: + + # make + + - For the Armada-70x0/80x0 DB board use "mvebu_db_armada8k_defconfig" + - For the Armada-80x0 MacchiatoBin use "make mvebu_mcbin-88f8040_defconfig" + - For the Armada-3700 DB board use "make mvebu_db-88f3720_defconfig" + - For the Armada-3700 EsspressoBin use "make mvebu_espressobin-88f3720_defconfig" + +5. Configure the device-tree and build the U-Boot image: + + Compile u-boot and set the required device-tree using: + + # make DEVICE_TREE= + + NOTE: + Compilation with "mvebu_db_armada8k_defconfig" requires explicitly exporting DEVICE_TREE + for the requested board. + By default, u-boot is compiled with armada-8040-db device-tree. + Using A80x0 device-tree on A70x0 might break the device. + In order to prevent this, the required device-tree MUST be set during compilation. + All device-tree files are located in ./arch/arm/dts/ folder. + + NOTE: + The u-boot.bin should not be used as a stand-alone image. + The ARM Trusted Firmware (ATF) build process uses this image to generate the + flash image. + +Configuration update +--------------------- + To update the U-Boot configuration, please refer to doc/README.kconfig +