From 2fdc4e881aef95a8ce1a6329e515a190a39327ef Mon Sep 17 00:00:00 2001 From: Roland Hieber Date: Tue, 15 Sep 2020 20:59:12 +0200 Subject: rpi: barebox: version bump 2018.03.0 -> 2020.08.1 Update to the latest barebox version, which also has the side effect that it can boot the newer Linux kernel (first bad Distrokit commit was 61b5ec910db2fe82a39f, 2019-05-06: "platform-rpi/v7a: kernel version bump 5.0 -> 5.1"). Enable regulator support to get around a build issue in the RPi board code [1], and allow color by default on the console. Also enable PINCTRL_BCM283X, since it was renamed from GPIO_BCM283X. For all other settings, use their default value. Add a patch to fix a build failure with the bcm2835 sdhci driver. [1]: "rpi-common.c:462:8: error: implicit declaration of function 'regulator_get_name'; did you mean 'regulator_enable'? [-Werror=implicit-function-declaration]", fixed upstream via Tested-by: Roland Hieber on rpi1-b, rpi-zero-w Signed-off-by: Roland Hieber --- configs/platform-rpi/barebox.config | 165 ++++++++++++++++++--- .../0001-mci-bcm283x-depend-on-sdhci.patch | 34 +++++ .../platform-rpi/patches/barebox-2020.08.1/series | 1 + configs/platform-rpi/platformconfig | 4 +- 4 files changed, 185 insertions(+), 19 deletions(-) create mode 100644 configs/platform-rpi/patches/barebox-2020.08.1/0001-mci-bcm283x-depend-on-sdhci.patch create mode 100644 configs/platform-rpi/patches/barebox-2020.08.1/series diff --git a/configs/platform-rpi/barebox.config b/configs/platform-rpi/barebox.config index 2f44535..ffca808 100644 --- a/configs/platform-rpi/barebox.config +++ b/configs/platform-rpi/barebox.config @@ -1,9 +1,10 @@ # # Automatically generated file; DO NOT EDIT. -# Barebox/arm 2018.03.0 Configuration +# Barebox/arm 2020.08.1 Configuration # CONFIG_ARM=y CONFIG_ARM_LINUX=y +CONFIG_TEXT_BASE=0x0 # # System Type @@ -16,9 +17,9 @@ CONFIG_ARCH_BCM283X=y # CONFIG_ARCH_EP93XX is not set # CONFIG_ARCH_HIGHBANK is not set # CONFIG_ARCH_IMX is not set +# CONFIG_ARCH_LAYERSCAPE is not set # CONFIG_ARCH_MVEBU is not set # CONFIG_ARCH_MXS is not set -# CONFIG_ARCH_NETX is not set # CONFIG_ARCH_NOMADIK is not set # CONFIG_ARCH_OMAP is not set # CONFIG_ARCH_PXA is not set @@ -27,11 +28,13 @@ CONFIG_ARCH_BCM283X=y # CONFIG_ARCH_S3C24xx is not set # CONFIG_ARCH_S5PCxx is not set # CONFIG_ARCH_S3C64xx is not set +# CONFIG_ARCH_STM32MP is not set # CONFIG_ARCH_VERSATILE is not set # CONFIG_ARCH_VEXPRESS is not set # CONFIG_ARCH_TEGRA is not set # CONFIG_ARCH_UEMD is not set # CONFIG_ARCH_ZYNQ is not set +# CONFIG_ARCH_ZYNQMP is not set # CONFIG_ARCH_QEMU is not set # @@ -53,9 +56,15 @@ CONFIG_MACH_RPI_COMMON=y # CONFIG_MACH_RPI=y # CONFIG_MACH_RPI2 is not set +# CONFIG_MACH_RPI3 is not set +# CONFIG_MACH_RPI_CM3 is not set +# end of select Broadcom BCM283X boards to be built + CONFIG_BAREBOX_MAX_IMAGE_SIZE=0xffffffff +# CONFIG_BOARD_ARM_GENERIC_DT is not set CONFIG_AEABI=y # CONFIG_ARM_BOARD_APPEND_ATAG is not set +# end of System Type # # ARM specific settings @@ -64,7 +73,8 @@ CONFIG_ARM_OPTIMZED_STRING_FUNCTIONS=y CONFIG_ARM_EXCEPTIONS=y CONFIG_ARM_UNWIND=y # CONFIG_ARM_SEMIHOSTING is not set -CONFIG_DEFCONFIG_LIST="$ARCH_DEFCONFIG" +# end of ARM specific settings + CONFIG_GREGORIAN_CALENDER=y CONFIG_HAS_KALLSYMS=y CONFIG_HAS_MODULES=y @@ -109,16 +119,16 @@ CONFIG_IMAGE_COMPRESSION_LZO=y # CONFIG_IMAGE_COMPRESSION_NONE is not set CONFIG_MMU=y CONFIG_MMU_EARLY=y -CONFIG_HAVE_CONFIGURABLE_TEXT_BASE=y -CONFIG_TEXT_BASE=0x04000000 CONFIG_BAREBOX_MAX_PBL_SIZE=0xffffffff CONFIG_BAREBOX_MAX_BARE_INIT_SIZE=0xffffffff -CONFIG_BAREBOX_MAX_PBLX_SIZE=0xffffffff CONFIG_STACK_SIZE=0x8000 CONFIG_MALLOC_SIZE=0x400000 +# end of memory layout + # CONFIG_EXPERIMENTAL is not set # CONFIG_MALLOC_DLMALLOC is not set CONFIG_MALLOC_TLSF=y +CONFIG_HAVE_MOD_ARCH_SPECIFIC=y CONFIG_KALLSYMS=y CONFIG_RELOCATABLE=y # CONFIG_PANIC_HANG is not set @@ -152,9 +162,11 @@ CONFIG_BOOTM=y CONFIG_BOOTM_OFTREE=y # CONFIG_BOOTM_OFTREE_UIMAGE is not set # CONFIG_BOOTM_AIMAGE is not set +# CONFIG_BOOTM_ELF is not set # CONFIG_BOOTM_FITIMAGE is not set CONFIG_BLSPEC=y CONFIG_FLEXIBLE_BOOTARGS=y +# CONFIG_BAREBOX_UPDATE is not set # CONFIG_IMD is not set # CONFIG_KERNEL_INSTALL_TARGET is not set CONFIG_CONSOLE_FULL=y @@ -163,6 +175,7 @@ CONFIG_CONSOLE_FULL=y CONFIG_CONSOLE_ACTIVATE_FIRST=y # CONFIG_CONSOLE_ACTIVATE_ALL is not set # CONFIG_CONSOLE_ACTIVATE_NONE is not set +CONFIG_CONSOLE_ALLOW_COLOR=y CONFIG_PBL_CONSOLE=y # CONFIG_CONSOLE_RATP is not set CONFIG_PARTITION=y @@ -184,18 +197,29 @@ CONFIG_STATE=y # CONFIG_BOOTCHOOSER is not set # CONFIG_RESET_SOURCE is not set +# +# OP-TEE loading +# +# CONFIG_BOOTM_OPTEE is not set +# CONFIG_PBL_OPTEE is not set +# end of OP-TEE loading +# end of General Settings + # # Debugging # CONFIG_COMPILE_LOGLEVEL=6 CONFIG_DEFAULT_LOGLEVEL=7 -# CONFIG_DEBUG_INFO is not set # CONFIG_DEBUG_LL is not set # CONFIG_DEBUG_INITCALLS is not set +# CONFIG_PBL_BREAK is not set +# CONFIG_UBSAN is not set +# CONFIG_COMPILE_TEST is not set +# end of Debugging + CONFIG_HAS_DEBUG_LL=y CONFIG_COMMAND_SUPPORT=y CONFIG_COMPILE_HASH=y -CONFIG_COMPILE_MEMORY=y # # Commands @@ -213,8 +237,12 @@ CONFIG_LONGHELP=y CONFIG_CMD_IOMEM=y # CONFIG_CMD_IMD is not set CONFIG_CMD_MEMINFO=y +# CONFIG_CMD_REGULATOR is not set CONFIG_CMD_VERSION=y +# CONFIG_CMD_MMC is not set # CONFIG_CMD_MMC_EXTCSD is not set +# CONFIG_CMD_POLLER is not set +# end of Information # # Boot @@ -229,6 +257,7 @@ CONFIG_CMD_LOADB=y CONFIG_CMD_LOADY=y CONFIG_CMD_RESET=y CONFIG_CMD_UIMAGE=y +# end of Boot # # Partition @@ -237,6 +266,7 @@ CONFIG_CMD_PARTITION=y CONFIG_CMD_AUTOMOUNT=y CONFIG_CMD_MOUNT=y CONFIG_CMD_UMOUNT=y +# end of Partition # # Environment @@ -250,6 +280,7 @@ CONFIG_CMD_PRINTENV=y CONFIG_CMD_MAGICVAR=y CONFIG_CMD_MAGICVAR_HELP=y CONFIG_CMD_SAVEENV=y +# end of Environment # # File @@ -276,6 +307,7 @@ CONFIG_CMD_RMDIR=y # CONFIG_CMD_SHA384SUM is not set # CONFIG_CMD_SHA512SUM is not set CONFIG_CMD_UNCOMPRESS=y +# end of File # # Shell scripting @@ -288,6 +320,7 @@ CONFIG_CMD_MSLEEP=y CONFIG_CMD_SLEEP=y CONFIG_CMD_TEST=y CONFIG_CMD_TRUE=y +# end of Shell scripting # # Console and Framebuffer interaction @@ -306,6 +339,7 @@ CONFIG_PASSWD_MODE_HIDE=y # CONFIG_PASSWD_MODE_CLEAR is not set CONFIG_CMD_READLINE=y CONFIG_CMD_TIMEOUT=y +# end of Console and Framebuffer interaction # # Memory @@ -319,6 +353,7 @@ CONFIG_CMD_MEMSET=y # CONFIG_CMD_MEMTEST is not set CONFIG_CMD_MM=y CONFIG_CMD_MW=y +# end of Memory # # Hardware manipulation @@ -331,24 +366,31 @@ CONFIG_CMD_GPIO=y # CONFIG_CMD_POWEROFF is not set # CONFIG_CMD_SPI is not set # CONFIG_CMD_LED_TRIGGER is not set +# end of Hardware manipulation # # Miscellaneous # CONFIG_CMD_2048=y # CONFIG_CMD_BAREBOX_UPDATE is not set +# CONFIG_CMD_BLOBGEN is not set # CONFIG_CMD_FIRMWARELOAD is not set +# CONFIG_CMD_OF_DIFF is not set CONFIG_CMD_OF_DUMP=y CONFIG_CMD_OF_NODE=y CONFIG_CMD_OF_PROPERTY=y # CONFIG_CMD_OF_DISPLAY_TIMINGS is not set # CONFIG_CMD_OF_FIXUP_STATUS is not set +# CONFIG_CMD_OF_OVERLAY is not set CONFIG_CMD_OFTREE=y CONFIG_CMD_TIME=y CONFIG_CMD_STATE=y # CONFIG_CMD_DHRYSTONE is not set # CONFIG_CMD_SPD_DECODE is not set # CONFIG_CMD_SEED is not set +# end of Miscellaneous +# end of Commands + # CONFIG_NET is not set # @@ -360,22 +402,28 @@ CONFIG_DTC=y CONFIG_OFDEVICE=y CONFIG_OF_GPIO=y # CONFIG_OF_BAREBOX_DRIVERS is not set +# CONFIG_OF_OVERLAY is not set # CONFIG_AIODEV is not set CONFIG_ARM_AMBA=y # # serial drivers # +# CONFIG_SERIAL_DEV_BUS is not set # CONFIG_DRIVER_SERIAL_ARM_DCC is not set CONFIG_SERIAL_AMBA_PL011=y # CONFIG_DRIVER_SERIAL_NS16550 is not set # CONFIG_DRIVER_SERIAL_CADENCE is not set +# end of serial drivers # # SPI drivers # CONFIG_SPI=y +# CONFIG_SPI_MEM is not set # CONFIG_DRIVER_SPI_GPIO is not set +# end of SPI drivers + # CONFIG_I2C is not set # CONFIG_MTD is not set CONFIG_DISK=y @@ -395,6 +443,7 @@ CONFIG_DISK_WRITE=y # CONFIG_USB_GADGET is not set # CONFIG_USB_MUSB is not set # CONFIG_VIDEO is not set +CONFIG_MCI_SDHCI=y CONFIG_MCI=y # @@ -410,19 +459,28 @@ CONFIG_MCI_WRITE=y # # CONFIG_MCI_DW is not set CONFIG_MCI_BCM283X=y +# CONFIG_MCI_BCM283X_SDHOST is not set # CONFIG_MCI_MMCI is not set +# CONFIG_MCI_ARASAN is not set # CONFIG_MCI_SPI is not set CONFIG_HAVE_CLK=y CONFIG_CLKDEV_LOOKUP=y CONFIG_COMMON_CLK=y + +# +# Clocksource +# CONFIG_CLOCKSOURCE_BCM283X=y CONFIG_CLOCKSOURCE_DUMMY_RATE=1000 +# CONFIG_CLOCKSOURCE_DW_APB_TIMER is not set +# end of Clocksource # -# MFD +# Multifunction device drivers # # CONFIG_MFD_MC13XXX is not set # CONFIG_MFD_SYSCON is not set +# end of Multifunction device drivers # # Misc devices @@ -430,6 +488,10 @@ CONFIG_CLOCKSOURCE_DUMMY_RATE=1000 # CONFIG_JTAG is not set # CONFIG_SRAM is not set CONFIG_STATE_DRV=y +CONFIG_DEV_MEM=y +# CONFIG_UBOOTVAR is not set +# end of Misc devices + CONFIG_LED=y CONFIG_LED_GPIO=y # CONFIG_LED_GPIO_OF is not set @@ -441,11 +503,15 @@ CONFIG_LED_TRIGGERS=y # EEPROM support # # CONFIG_EEPROM_AT25 is not set +# end of EEPROM support # # Input device support # # CONFIG_KEYBOARD_GPIO is not set +# CONFIG_INPUT_SPECIALKEYS is not set +# end of Input device support + # CONFIG_WATCHDOG is not set # CONFIG_PWM is not set CONFIG_HWRNG=y @@ -453,28 +519,46 @@ CONFIG_HWRNG=y # # DMA support # +# end of DMA support + CONFIG_GPIOLIB=y # # GPIO # # CONFIG_GPIO_74164 is not set -CONFIG_GPIO_BCM283X=y # CONFIG_GPIO_GENERIC_PLATFORM is not set -# CONFIG_GPIO_IMX is not set -# CONFIG_GPIO_VF610 is not set -# CONFIG_GPIO_MXS is not set -# CONFIG_GPIO_OMAP is not set # CONFIG_GPIO_PL061 is not set +# CONFIG_GPIO_RASPBERRYPI_EXP is not set # CONFIG_GPIO_DESIGNWARE is not set +# end of GPIO + # CONFIG_W1 is not set + +# +# Pin controllers +# # CONFIG_PINCTRL is not set +CONFIG_PINCTRL_BCM283X=y +# end of Pin controllers + # CONFIG_NVMEM is not set # # Bus devices # -# CONFIG_REGULATOR is not set +# end of Bus devices + +CONFIG_REGULATOR=y +# CONFIG_REGULATOR_FIXED is not set +CONFIG_REGULATOR_BCM283X=y + +# +# Remoteproc drivers +# +# CONFIG_REMOTEPROC is not set +# end of Remoteproc drivers + # CONFIG_RESET_CONTROLLER is not set # CONFIG_RTC_CLASS is not set @@ -482,17 +566,40 @@ CONFIG_GPIO_BCM283X=y # Firmware Drivers # # CONFIG_FIRMWARE_ALTERA_SERIAL is not set +# end of Firmware Drivers + # CONFIG_GENERIC_PHY is not set CONFIG_CRYPTO_HW=y # # Memory controller drivers # +# end of Memory controller drivers + +# +# i.MX SoC drivers +# +# end of i.MX SoC drivers + +# +# NVME Support +# +# end of NVME Support +# end of Drivers # # Filesystem support # CONFIG_FS=y +CONFIG_FS_LEGACY=y + +# +# Some selected filesystems still use the legacy FS API. +# + +# +# Consider updating them. +# CONFIG_FS_AUTOMOUNT=y # CONFIG_FS_CRAMFS is not set CONFIG_FS_EXT4=y @@ -525,6 +632,7 @@ CONFIG_FS_SQUASHFS=y # # ZSTD support disabled # +# end of Filesystem support # # Library routines @@ -536,24 +644,34 @@ CONFIG_UNCOMPRESS=y # CONFIG_LZ4_DECOMPRESS is not set # CONFIG_ZSTD_DECOMPRESS is not set # CONFIG_XZ_DECOMPRESS is not set -# CONFIG_GENERIC_FIND_NEXT_BIT is not set +# CONFIG_BASE64 is not set CONFIG_PROCESS_ESCAPE_SEQUENCE=y # CONFIG_LZO_DECOMPRESS is not set CONFIG_FNMATCH=y CONFIG_QSORT=y CONFIG_XYMODEM=y +# CONFIG_RATP is not set CONFIG_ALLOW_PRNG_FALLBACK=y +# CONFIG_CRC_CCITT is not set +# CONFIG_CRC8 is not set # # Library gui routines # +# end of Library gui routines + # CONFIG_BAREBOX_LOGO is not set +# CONFIG_NLS is not set +# CONFIG_BLOBGEN is not set +CONFIG_ARCH_HAS_STACK_DUMP=y +CONFIG_ARCH_HAS_DATA_ABORT_MASK=y +# end of Library routines # # Crypto support # CONFIG_CRC32=y -CONFIG_CRC16=y +CONFIG_CRC_ITU_T=y CONFIG_DIGEST=y CONFIG_MD5=y CONFIG_DIGEST_CRC32_GENERIC=y @@ -567,3 +685,16 @@ CONFIG_DIGEST_MD5_GENERIC=y # CONFIG_DIGEST_SHA1_ARM is not set # CONFIG_DIGEST_SHA256_ARM is not set # CONFIG_CRYPTO_KEYSTORE is not set +# end of Crypto support + +# +# Firmware files +# +CONFIG_EXTRA_FIRMWARE_DIR="firmware" +# end of Firmware files + +# +# Host Tools +# +# CONFIG_COMPILE_HOST_TOOLS is not set +# end of Host Tools diff --git a/configs/platform-rpi/patches/barebox-2020.08.1/0001-mci-bcm283x-depend-on-sdhci.patch b/configs/platform-rpi/patches/barebox-2020.08.1/0001-mci-bcm283x-depend-on-sdhci.patch new file mode 100644 index 0000000..ca36da0 --- /dev/null +++ b/configs/platform-rpi/patches/barebox-2020.08.1/0001-mci-bcm283x-depend-on-sdhci.patch @@ -0,0 +1,34 @@ +From f4e43cb3efb3fefe3169a8697a96d8fb72d9e882 Mon Sep 17 00:00:00 2001 +From: Roland Hieber +Date: Tue, 15 Sep 2020 12:51:37 +0200 +Subject: [PATCH] mci: bcm283x: depend on sdhci + +The driver uses functions defined in sdhci.o, and will fail to build +otherwise: + + drivers/mci/mci-bcm2835.o: in function `bcm2835_mci_request': + drivers/mci/mci-bcm2835.c:134: undefined reference to `sdhci_set_cmd_xfer_mode' + arm-v5te-linux-gnueabi-ld: drivers/mci/mci-bcm2835.c:169: undefined reference to `sdhci_read_response' + arm-v5te-linux-gnueabi-ld: drivers/mci/mci-bcm2835.c:175: undefined reference to `sdhci_transfer_data' + +Forwarded: https://www.mail-archive.com/barebox@lists.infradead.org/msg36329.html +Signed-off-by: Roland Hieber +--- + drivers/mci/Kconfig | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/drivers/mci/Kconfig b/drivers/mci/Kconfig +index f7dc5c508912..6fb1c200f43e 100644 +--- a/drivers/mci/Kconfig ++++ b/drivers/mci/Kconfig +@@ -68,6 +68,7 @@ config MCI_S3C + + config MCI_BCM283X + bool "MCI support for BCM283X" ++ select MCI_SDHCI + depends on ARCH_BCM283X || COMPILE_TEST + + config MCI_BCM283X_SDHOST +-- +2.28.0 + diff --git a/configs/platform-rpi/patches/barebox-2020.08.1/series b/configs/platform-rpi/patches/barebox-2020.08.1/series new file mode 100644 index 0000000..74582b4 --- /dev/null +++ b/configs/platform-rpi/patches/barebox-2020.08.1/series @@ -0,0 +1 @@ +0001-mci-bcm283x-depend-on-sdhci.patch diff --git a/configs/platform-rpi/platformconfig b/configs/platform-rpi/platformconfig index 0cf9e17..7bba385 100644 --- a/configs/platform-rpi/platformconfig +++ b/configs/platform-rpi/platformconfig @@ -167,8 +167,8 @@ PTXCONF_CONSOLE_SPEED="115200" # PTXCONF_AT91BOOTSTRAP2 is not set PTXCONF_BAREBOX_ARCH_STRING="arm" PTXCONF_BAREBOX=y -PTXCONF_BAREBOX_VERSION="2018.03.0" -PTXCONF_BAREBOX_MD5="5a7692364684ad681c6a3c7a46e5000e" +PTXCONF_BAREBOX_VERSION="2020.08.1" +PTXCONF_BAREBOX_MD5="d57031878390cb267f6641aedffcda9f" PTXCONF_BAREBOX_CONFIG="barebox.config" PTXCONF_BAREBOX_EXTRA_ENV=y PTXCONF_BAREBOX_EXTRA_ENV_PATH="${PTXDIST_PLATFORMCONFIGDIR}/barebox-defaultenv" -- cgit v1.2.3