All of lore.kernel.org
 help / color / mirror / Atom feed
* [Buildroot] [PATCH 1/3] [PATCH 1/1] configs/stm32f469_disco_xip_defconfig: alternative defconfig for XIP
@ 2021-08-25 18:18 Yauheni Saldatsenka
  2021-08-25 18:18 ` [Buildroot] [PATCH 2/3] [PATCH v2 " Yauheni Saldatsenka
  2021-08-25 18:18 ` [Buildroot] [PATCH 3/3] [PATCH v3 " Yauheni Saldatsenka
  0 siblings, 2 replies; 5+ messages in thread
From: Yauheni Saldatsenka @ 2021-08-25 18:18 UTC (permalink / raw)
  To: buildroot; +Cc: Christophe Priouzeau

Update STM32F469-disco configuration files to operate with new kernel.

Result of make tinyconfig was taken as a starting point to fit kernel
into flash memory.
Current setup kernel + rootfs fits in 1.6MB on-chip flash memory

Fixes:
    - Move kernel to new flash bank due to growth of dtb size
    - Fix kernel start address in bootloader
    - Remove outdated path which doesn't affect normal operation mode

Signed-off-by: Yauheni Saldatsenka <eugentoo@gmail.com>
---
 .../stm32f469-disco/flash.sh                  |  47 +++-
 .../stm32f469-disco/linux/defconfig           | 120 +++++++++
 .../stm32f469-disco/linux/stm32f469-disco.dts | 240 ++++++++++++++++++
 .../0002-kernel-start-address.patch           |  21 ++
 .../patches/afboot-stm32/0003-no-mpu.patch    |  22 ++
 configs/stm32f469_disco_xip_defconfig         |  24 ++
 6 files changed, 465 insertions(+), 9 deletions(-)
 create mode 100644 board/stmicroelectronics/stm32f469-disco/linux/defconfig
 create mode 100644 board/stmicroelectronics/stm32f469-disco/linux/stm32f469-disco.dts
 create mode 100644 board/stmicroelectronics/stm32f469-disco/patches/afboot-stm32/0002-kernel-start-address.patch
 create mode 100644 board/stmicroelectronics/stm32f469-disco/patches/afboot-stm32/0003-no-mpu.patch
 create mode 100644 configs/stm32f469_disco_xip_defconfig

diff --git a/board/stmicroelectronics/stm32f469-disco/flash.sh b/board/stmicroelectronics/stm32f469-disco/flash.sh
index 984d2b2599..176e1c9d2c 100755
--- a/board/stmicroelectronics/stm32f469-disco/flash.sh
+++ b/board/stmicroelectronics/stm32f469-disco/flash.sh
@@ -1,18 +1,47 @@
 #!/bin/bash
 
 OUTPUT_DIR=$1
+BUILD_TYPE=$2
 
-if ! test -d "${OUTPUT_DIR}" ; then
+if ! test -d "${OUTPUT_DIR}"
+then
     echo "ERROR: no output directory specified."
     echo "Usage: $0 OUTPUT_DIR"
     exit 1
 fi
 
-${OUTPUT_DIR}/host/bin/openocd -f board/stm32f469discovery.cfg \
-  -c "init" \
-  -c "reset init" \
-  -c "flash probe 0" \
-  -c "flash info 0" \
-  -c "flash write_image erase ${OUTPUT_DIR}/images/u-boot.bin 0x08000000" \
-  -c "reset run" \
-  -c "shutdown"
+if  [[ -z "${BUILD_TYPE}" ]]
+then
+    echo "ERROR: no build type specified, please select 'xip' or 'uboot'."
+    echo "Usage: $0 OUTPUT_DIR $1 BUILD_TYPE"
+    exit 1
+fi
+
+case "${BUILD_TYPE}" in
+	"xip")
+		${OUTPUT_DIR}/host/bin/openocd -f board/stm32f469discovery.cfg \
+					 -c "init" \
+					 -c "reset init" \
+					 -c "flash probe 0" \
+					 -c "flash info 0" \
+					 -c "flash write_image erase ${OUTPUT_DIR}/images/stm32f469i-disco.bin 0x08000000" \
+					 -c "flash write_image erase ${OUTPUT_DIR}/images/stm32f469-disco.dtb 0x08004000" \
+					 -c "flash write_image erase ${OUTPUT_DIR}/images/xipImage 0x08010000" \
+					 -c "reset run" \
+					 -c "shutdown"
+		;;
+	"uboot")
+		FLASH_COMMAND=
+		${OUTPUT_DIR}/host/bin/openocd -f board/stm32f469discovery.cfg \
+					 -c "init" \
+					 -c "reset init" \
+					 -c "flash probe 0" \
+					 -c "flash info 0" \
+					 -c "flash write_image erase ${OUTPUT_DIR}/images/u-boot.bin 0x08000000" \
+					 -c "reset run" \
+					 -c "shutdown"
+	    ;;
+	*)
+		echo "Wrong build type. Please select from: xip, uboot"
+		;;
+esac
diff --git a/board/stmicroelectronics/stm32f469-disco/linux/defconfig b/board/stmicroelectronics/stm32f469-disco/linux/defconfig
new file mode 100644
index 0000000000..2d0ce59b31
--- /dev/null
+++ b/board/stmicroelectronics/stm32f469-disco/linux/defconfig
@@ -0,0 +1,120 @@
+# CONFIG_LOCALVERSION_AUTO is not set
+CONFIG_KERNEL_XZ=y
+CONFIG_NO_HZ_IDLE=y
+CONFIG_HIGH_RES_TIMERS=y
+CONFIG_PREEMPT=y
+CONFIG_LOG_BUF_SHIFT=12
+CONFIG_PRINTK_SAFE_LOG_BUF_SHIFT=10
+CONFIG_BLK_DEV_INITRD=y
+CONFIG_INITRAMFS_SOURCE="${BR_BINARIES_DIR}/rootfs.cpio"
+# CONFIG_RD_GZIP is not set
+# CONFIG_RD_BZIP2 is not set
+# CONFIG_RD_LZMA is not set
+# CONFIG_RD_XZ is not set
+# CONFIG_RD_LZO is not set
+# CONFIG_RD_LZ4 is not set
+# CONFIG_RD_ZSTD is not set
+CONFIG_CC_OPTIMIZE_FOR_SIZE=y
+# CONFIG_MULTIUSER is not set
+# CONFIG_SYSFS_SYSCALL is not set
+# CONFIG_FHANDLE is not set
+# CONFIG_POSIX_TIMERS is not set
+# CONFIG_BUG is not set
+# CONFIG_BASE_FULL is not set
+# CONFIG_FUTEX is not set
+# CONFIG_EPOLL is not set
+# CONFIG_SIGNALFD is not set
+# CONFIG_TIMERFD is not set
+# CONFIG_EVENTFD is not set
+# CONFIG_AIO is not set
+# CONFIG_IO_URING is not set
+# CONFIG_ADVISE_SYSCALLS is not set
+# CONFIG_MEMBARRIER is not set
+# CONFIG_KALLSYMS is not set
+CONFIG_KCMP=y
+# CONFIG_RSEQ is not set
+CONFIG_EMBEDDED=y
+# CONFIG_VM_EVENT_COUNTERS is not set
+# CONFIG_COMPAT_BRK is not set
+CONFIG_SLOB=y
+# CONFIG_SLAB_MERGE_DEFAULT is not set
+# CONFIG_MMU is not set
+CONFIG_ARCH_STM32=y
+# CONFIG_MACH_STM32F429 is not set
+# CONFIG_MACH_STM32F746 is not set
+# CONFIG_MACH_STM32F769 is not set
+# CONFIG_MACH_STM32H743 is not set
+CONFIG_CPU_V7M_NUM_IRQ=240
+# CONFIG_ARM_DMA_MEM_BUFFERABLE is not set
+CONFIG_SET_MEM_PARAM=y
+CONFIG_DRAM_BASE=0xc0000000
+CONFIG_DRAM_SIZE=0x01000000
+CONFIG_HZ_1000=y
+# CONFIG_ATAGS is not set
+CONFIG_XIP_KERNEL=y
+CONFIG_XIP_PHYS_ADDR=0x08010000
+CONFIG_XIP_DEFLATED_DATA=y
+# CONFIG_SUSPEND is not set
+# CONFIG_STACKPROTECTOR is not set
+# CONFIG_COMPAT_32BIT_TIME is not set
+# CONFIG_GCC_PLUGINS is not set
+# CONFIG_BLOCK is not set
+CONFIG_BINFMT_FLAT=y
+CONFIG_BINFMT_SHARED_FLAT=y
+# CONFIG_COREDUMP is not set
+CONFIG_DEVTMPFS=y
+CONFIG_DEVTMPFS_MOUNT=y
+# CONFIG_STANDALONE is not set
+# CONFIG_PREVENT_FIRMWARE_BUILD is not set
+# CONFIG_FW_LOADER is not set
+# CONFIG_ALLOW_DEV_COREDUMP is not set
+CONFIG_EEPROM_93CX6=y
+# CONFIG_INPUT is not set
+# CONFIG_VT is not set
+# CONFIG_UNIX98_PTYS is not set
+# CONFIG_LEGACY_PTYS is not set
+# CONFIG_LDISC_AUTOLOAD is not set
+CONFIG_SERIAL_STM32=y
+CONFIG_SERIAL_STM32_CONSOLE=y
+# CONFIG_DEVMEM is not set
+# CONFIG_HWMON is not set
+CONFIG_WATCHDOG=y
+CONFIG_MFD_STM32_TIMERS=y
+# CONFIG_USB_SUPPORT is not set
+CONFIG_NEW_LEDS=y
+CONFIG_LEDS_CLASS=y
+CONFIG_LEDS_GPIO=y
+CONFIG_LEDS_TRIGGERS=y
+CONFIG_LEDS_TRIGGER_HEARTBEAT=y
+CONFIG_RTC_CLASS=y
+CONFIG_RTC_DRV_STM32=y
+CONFIG_DMADEVICES=y
+CONFIG_STM32_DMA=y
+CONFIG_STM32_DMAMUX=y
+CONFIG_STM32_MDMA=y
+CONFIG_SYNC_FILE=y
+# CONFIG_VIRTIO_MENU is not set
+# CONFIG_VHOST_MENU is not set
+CONFIG_IIO=y
+CONFIG_IIO_BUFFER=y
+CONFIG_IIO_TRIGGERED_BUFFER=y
+CONFIG_IIO_STM32_TIMER_TRIGGER=y
+# CONFIG_FILE_LOCKING is not set
+# CONFIG_DNOTIFY is not set
+# CONFIG_INOTIFY_USER is not set
+# CONFIG_PROC_SYSCTL is not set
+CONFIG_CONFIGFS_FS=y
+# CONFIG_MISC_FILESYSTEMS is not set
+CONFIG_NLS=y
+CONFIG_PRINTK_TIME=y
+CONFIG_CONSOLE_LOGLEVEL_DEFAULT=15
+CONFIG_CONSOLE_LOGLEVEL_QUIET=15
+CONFIG_MESSAGE_LOGLEVEL_DEFAULT=7
+# CONFIG_SYMBOLIC_ERRNAME is not set
+CONFIG_DEBUG_INFO=y
+# CONFIG_SECTION_MISMATCH_WARN_ONLY is not set
+CONFIG_DEBUG_FS=y
+# CONFIG_DEBUG_MISC is not set
+# CONFIG_SCHED_DEBUG is not set
+# CONFIG_RCU_TRACE is not set
+# CONFIG_RUNTIME_TESTING_MENU is not set
diff --git a/board/stmicroelectronics/stm32f469-disco/linux/stm32f469-disco.dts b/board/stmicroelectronics/stm32f469-disco/linux/stm32f469-disco.dts
new file mode 100644
index 0000000000..83fe71bbc6
--- /dev/null
+++ b/board/stmicroelectronics/stm32f469-disco/linux/stm32f469-disco.dts
@@ -0,0 +1,240 @@
+/*
+ * Copyright 2016 - Lee Jones <lee.jones@linaro.org>
+ *
+ * This file is dual-licensed: you can use it either under the terms
+ * of the GPL or the X11 license, at your option. Note that this dual
+ * licensing only applies to this file, and not this project as a
+ * whole.
+ *
+ *  a) This file is free software; you can redistribute it and/or
+ *     modify it under the terms of the GNU General Public License as
+ *     published by the Free Software Foundation; either version 2 of the
+ *     License, or (at your option) any later version.
+ *
+ *     This file is distributed in the hope that it will be useful,
+ *     but WITHOUT ANY WARRANTY; without even the implied warranty of
+ *     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ *     GNU General Public License for more details.
+ *
+ *     You should have received a copy of the GNU General Public
+ *     License along with this file; if not, write to the Free
+ *     Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston,
+ *     MA 02110-1301 USA
+ *
+ * Or, alternatively,
+ *
+ *  b) Permission is hereby granted, free of charge, to any person
+ *     obtaining a copy of this software and associated documentation
+ *     files (the "Software"), to deal in the Software without
+ *     restriction, including without limitation the rights to use,
+ *     copy, modify, merge, publish, distribute, sublicense, and/or
+ *     sell copies of the Software, and to permit persons to whom the
+ *     Software is furnished to do so, subject to the following
+ *     conditions:
+ *
+ *     The above copyright notice and this permission notice shall be
+ *     included in all copies or substantial portions of the Software.
+ *
+ *     THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+ *     EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
+ *     OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+ *     NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
+ *     HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
+ *     WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+ *     FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
+ *     OTHER DEALINGS IN THE SOFTWARE.
+ */
+
+/dts-v1/;
+#include "stm32f469.dtsi"
+#include "stm32f469-pinctrl.dtsi"
+#include <dt-bindings/gpio/gpio.h>
+#include <dt-bindings/input/input.h>
+
+/ {
+	model = "STMicroelectronics STM32F469i-DISCO board";
+	compatible = "st,stm32f469i-disco", "st,stm32f469";
+
+	chosen {
+		bootargs = "root=/dev/ram fbcon=map:0";
+		stdout-path = "serial0:115200n8";
+	};
+
+	memory@c0000000 {
+		device_type = "memory";
+		reg = <0xc0000000 0x1000000>;
+	};
+
+	aliases {
+		serial0 = &usart3;
+	};
+
+	mmc_vcard: mmc_vcard {
+		compatible = "regulator-fixed";
+		regulator-name = "mmc_vcard";
+		regulator-min-microvolt = <3300000>;
+		regulator-max-microvolt = <3300000>;
+	};
+
+	vdd_dsi: vdd-dsi {
+		compatible = "regulator-fixed";
+		regulator-name = "vdd_dsi";
+		regulator-min-microvolt = <3300000>;
+		regulator-max-microvolt = <3300000>;
+	};
+
+	soc {
+		dma-ranges = <0xc0000000 0xc0000000 0x10000000>;
+	};
+
+	leds {
+		compatible = "gpio-leds";
+		led-green {
+			gpios = <&gpiog 6 GPIO_ACTIVE_LOW>;
+			linux,default-trigger = "heartbeat";
+		};
+		led-orange {
+			gpios = <&gpiod 4 GPIO_ACTIVE_LOW>;
+		};
+		led-red {
+			gpios = <&gpiod 5 GPIO_ACTIVE_LOW>;
+		};
+		led-blue {
+			gpios = <&gpiok 3 GPIO_ACTIVE_LOW>;
+		};
+	};
+
+	gpio_keys {
+		compatible = "gpio-keys";
+		#address-cells = <1>;
+		#size-cells = <0>;
+		autorepeat;
+		button@0 {
+			label = "User";
+			linux,code = <KEY_WAKEUP>;
+			gpios = <&gpioa 0 GPIO_ACTIVE_HIGH>;
+		};
+	};
+
+	/* This turns on vbus for otg for host mode (dwc2) */
+	vcc5v_otg: vcc5v-otg-regulator {
+		compatible = "regulator-fixed";
+		enable-active-high;
+		gpio = <&gpiob 2 GPIO_ACTIVE_HIGH>;
+		regulator-name = "vcc5_host1";
+		regulator-always-on;
+	};
+};
+
+&rcc {
+	compatible = "st,stm32f469-rcc", "st,stm32f42xx-rcc", "st,stm32-rcc";
+};
+
+&clk_hse {
+	clock-frequency = <8000000>;
+};
+
+&dsi {
+	#address-cells = <1>;
+	#size-cells = <0>;
+	status = "okay";
+
+	ports {
+		#address-cells = <1>;
+		#size-cells = <0>;
+
+		port@0 {
+			reg = <0>;
+			dsi_in: endpoint {
+				remote-endpoint = <&ltdc_out_dsi>;
+			};
+		};
+
+		port@1 {
+			reg = <1>;
+			dsi_out: endpoint {
+				remote-endpoint = <&dsi_panel_in>;
+			};
+		};
+	};
+
+	panel-dsi@0 {
+		compatible = "orisetech,otm8009a";
+		reg = <0>; /* dsi virtual channel (0..3) */
+		reset-gpios = <&gpioh 7 GPIO_ACTIVE_LOW>;
+		power-supply = <&vdd_dsi>;
+		status = "okay";
+
+		port {
+			dsi_panel_in: endpoint {
+				remote-endpoint = <&dsi_out>;
+			};
+		};
+	};
+};
+
+&ltdc {
+	status = "okay";
+
+	port {
+		ltdc_out_dsi: endpoint@0 {
+			remote-endpoint = <&dsi_in>;
+		};
+	};
+};
+
+&rtc {
+	status = "okay";
+};
+
+&timers1 {
+	status = "okay";
+
+	pwm {
+		pinctrl-0 = <&pwm1_pins>;
+		pinctrl-names = "default";
+		status = "okay";
+	};
+
+	timer@0 {
+		status = "okay";
+	};
+};
+
+&timers3 {
+	status = "okay";
+
+	pwm {
+		pinctrl-0 = <&pwm3_pins>;
+		pinctrl-names = "default";
+		status = "okay";
+	};
+
+	timer@2 {
+		status = "okay";
+	};
+};
+
+&sdio {
+	status = "okay";
+	vmmc-supply = <&mmc_vcard>;
+	cd-gpios = <&gpiog 2 GPIO_ACTIVE_LOW>;
+	broken-cd;
+	pinctrl-names = "default", "opendrain";
+	pinctrl-0 = <&sdio_pins>;
+	pinctrl-1 = <&sdio_pins_od>;
+	bus-width = <4>;
+};
+
+&usart3 {
+	pinctrl-0 = <&usart3_pins_a>;
+	pinctrl-names = "default";
+	status = "okay";
+};
+
+&usbotg_fs {
+	dr_mode = "host";
+	pinctrl-0 = <&usbotg_fs_pins_a>;
+	pinctrl-names = "default";
+	status = "okay";
+};
diff --git a/board/stmicroelectronics/stm32f469-disco/patches/afboot-stm32/0002-kernel-start-address.patch b/board/stmicroelectronics/stm32f469-disco/patches/afboot-stm32/0002-kernel-start-address.patch
new file mode 100644
index 0000000000..614effa85b
--- /dev/null
+++ b/board/stmicroelectronics/stm32f469-disco/patches/afboot-stm32/0002-kernel-start-address.patch
@@ -0,0 +1,21 @@
+diff --git a/stm32f469i-disco.c b/stm32f469i-disco.c
+index 2da1f4b65f..96e4dff65e 100644
+--- a/stm32f469i-disco.c
++++ b/stm32f469i-disco.c
+@@ -6,6 +6,7 @@
+ #include "gpio.h"
+ #include "mpu.h"
+ 
++#define KERNEL_ADDR     0x08010000
+ #define CONFIG_HSE_HZ	8000000
+ #define CONFIG_PLL_M	8
+ #define CONFIG_PLL_N	360
+@@ -85,7 +86,7 @@ static void fmc_wait_busy(void)
+ 
+ void start_kernel(void)
+ {
+-	void (*kernel)(uint32_t reserved, uint32_t mach, uint32_t dt) = (void (*)(uint32_t, uint32_t, uint32_t))(0x08008000 | 1);
++	void (*kernel)(uint32_t reserved, uint32_t mach, uint32_t dt) = (void (*)(uint32_t, uint32_t, uint32_t))(KERNEL_ADDR | 1);
+ 
+ 	kernel(0, ~0UL, 0x08004000);
+ }
diff --git a/board/stmicroelectronics/stm32f469-disco/patches/afboot-stm32/0003-no-mpu.patch b/board/stmicroelectronics/stm32f469-disco/patches/afboot-stm32/0003-no-mpu.patch
new file mode 100644
index 0000000000..bc66d2d0ef
--- /dev/null
+++ b/board/stmicroelectronics/stm32f469-disco/patches/afboot-stm32/0003-no-mpu.patch
@@ -0,0 +1,22 @@
+diff --git a/stm32f469i-disco.c b/stm32f469i-disco.c
+index d4d0909831..03f823f288 100644
+--- a/stm32f469i-disco.c
++++ b/stm32f469i-disco.c
+@@ -127,7 +127,7 @@ int main(void)
+ 
+ 	int i;
+ 
+-	mpu_config(0x0);
++	mpu_config(0xc0000000); 
+ 
+ 	if (*FLASH_CR & FLASH_CR_LOCK) {
+ 		*FLASH_KEYR = 0x45670123;
+@@ -229,7 +229,7 @@ int main(void)
+ 	usart_setup(usart_base, 45000000);
+ 	usart_putch(usart_base, '.');
+ 
+-	*SYSCFG_MEMRMP = 0x4;
++	/* *SYSCFG_MEMRMP = 0x4; */
+ 
+ 	start_kernel();
+ 
diff --git a/configs/stm32f469_disco_xip_defconfig b/configs/stm32f469_disco_xip_defconfig
new file mode 100644
index 0000000000..81bdb0d6d6
--- /dev/null
+++ b/configs/stm32f469_disco_xip_defconfig
@@ -0,0 +1,24 @@
+BR2_arm=y
+BR2_cortex_m4=y
+BR2_GLOBAL_PATCH_DIR="board/stmicroelectronics/stm32f469-disco/patches"
+BR2_KERNEL_HEADERS_5_13=y
+# BR2_UCLIBC_INSTALL_UTILS is not set
+BR2_GCC_VERSION_11_X=y
+BR2_GCC_ENABLE_LTO=y
+BR2_ROOTFS_POST_BUILD_SCRIPT="board/stmicroelectronics/common/stm32f4xx/stm32-post-build.sh"
+BR2_LINUX_KERNEL=y
+BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y
+BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="board/stmicroelectronics/stm32f469-disco/linux/defconfig"
+BR2_LINUX_KERNEL_IMAGE_TARGET_CUSTOM=y
+BR2_LINUX_KERNEL_XZ=y
+BR2_LINUX_KERNEL_IMAGE_TARGET_NAME="xipImage"
+BR2_LINUX_KERNEL_DTS_SUPPORT=y
+BR2_LINUX_KERNEL_INTREE_DTS_NAME="stm32f469-disco"
+BR2_LINUX_KERNEL_CUSTOM_DTS_PATH="board/stmicroelectronics/stm32f469-disco/linux/stm32f469-disco.dts"
+BR2_PACKAGE_BUSYBOX_CONFIG="package/busybox/busybox-minimal.config"
+BR2_PACKAGE_ZLIB=y
+BR2_TARGET_ROOTFS_INITRAMFS=y
+# BR2_TARGET_ROOTFS_TAR is not set
+BR2_TARGET_AFBOOT_STM32=y
+BR2_PACKAGE_HOST_OPENOCD=y
+BR2_PACKAGE_HOST_UTIL_LINUX=y
-- 
2.32.0

_______________________________________________
buildroot mailing list
buildroot@busybox.net
http://lists.busybox.net/mailman/listinfo/buildroot

^ permalink raw reply related	[flat|nested] 5+ messages in thread

* [Buildroot] [PATCH 2/3] [PATCH v2 1/1] configs/stm32f469_disco_xip_defconfig: alternative defconfig for XIP
  2021-08-25 18:18 [Buildroot] [PATCH 1/3] [PATCH 1/1] configs/stm32f469_disco_xip_defconfig: alternative defconfig for XIP Yauheni Saldatsenka
@ 2021-08-25 18:18 ` Yauheni Saldatsenka
  2021-08-28 14:57   ` Arnout Vandecappelle
  2021-08-25 18:18 ` [Buildroot] [PATCH 3/3] [PATCH v3 " Yauheni Saldatsenka
  1 sibling, 1 reply; 5+ messages in thread
From: Yauheni Saldatsenka @ 2021-08-25 18:18 UTC (permalink / raw)
  To: buildroot; +Cc: Christophe Priouzeau

Result of make tinyconfig was taken as a starting point to fit kernel
into flash memory.
Current setup kernel + rootfs fits in 1.6MB on-chip flash memory.

Fixes:
    - Move kernel to new flash bank due to growth of dtb size
    - Fix kernel start address in bootloader

For better binary size optimization gcc LTO is turned on.

Signed-off-by: Yauheni Saldatsenka <eugentoo@gmail.com>

----
v1 -> v2:
- Change codestyle in bash scripts
- Use in-tree dts with config fragment
- Update readme.txt
- Remove unnecessary target and host packages from defconfig

Signed-off-by: Yauheni Saldatsenka <eugentoo@gmail.com>
---
 .../stm32f469-disco/flash.sh                  |  6 +-
 .../linux/{defconfig => linux.config}         |  0
 ...32f469-i-Update-kernel-start-address.patch | 56 +++++++++++++++++++
 .../0002-kernel-start-address.patch           | 21 -------
 .../patches/afboot-stm32/0003-no-mpu.patch    | 22 --------
 ...fault-dram-address-without-remapping.patch | 38 +++++++++++++
 .../stm32f469-disco/readme.txt                | 26 +++++++--
 configs/stm32f469_disco_xip_defconfig         |  8 +--
 8 files changed, 117 insertions(+), 60 deletions(-)
 rename board/stmicroelectronics/stm32f469-disco/linux/{defconfig => linux.config} (100%)
 create mode 100644 board/stmicroelectronics/stm32f469-disco/patches/afboot-stm32/0001-stm32f469-i-Update-kernel-start-address.patch
 delete mode 100644 board/stmicroelectronics/stm32f469-disco/patches/afboot-stm32/0002-kernel-start-address.patch
 delete mode 100644 board/stmicroelectronics/stm32f469-disco/patches/afboot-stm32/0003-no-mpu.patch
 create mode 100644 board/stmicroelectronics/stm32f469-disco/patches/linux/0001-Use-default-dram-address-without-remapping.patch

diff --git a/board/stmicroelectronics/stm32f469-disco/flash.sh b/board/stmicroelectronics/stm32f469-disco/flash.sh
index 176e1c9d2c..0e130908aa 100755
--- a/board/stmicroelectronics/stm32f469-disco/flash.sh
+++ b/board/stmicroelectronics/stm32f469-disco/flash.sh
@@ -3,15 +3,13 @@
 OUTPUT_DIR=$1
 BUILD_TYPE=$2
 
-if ! test -d "${OUTPUT_DIR}"
-then
+if ! test -d "${OUTPUT_DIR}"; then
     echo "ERROR: no output directory specified."
     echo "Usage: $0 OUTPUT_DIR"
     exit 1
 fi
 
-if  [[ -z "${BUILD_TYPE}" ]]
-then
+if  [[ -z "${BUILD_TYPE}" ]]; then
     echo "ERROR: no build type specified, please select 'xip' or 'uboot'."
     echo "Usage: $0 OUTPUT_DIR $1 BUILD_TYPE"
     exit 1
diff --git a/board/stmicroelectronics/stm32f469-disco/linux/defconfig b/board/stmicroelectronics/stm32f469-disco/linux/linux.config
similarity index 100%
rename from board/stmicroelectronics/stm32f469-disco/linux/defconfig
rename to board/stmicroelectronics/stm32f469-disco/linux/linux.config
diff --git a/board/stmicroelectronics/stm32f469-disco/patches/afboot-stm32/0001-stm32f469-i-Update-kernel-start-address.patch b/board/stmicroelectronics/stm32f469-disco/patches/afboot-stm32/0001-stm32f469-i-Update-kernel-start-address.patch
new file mode 100644
index 0000000000..d5d1e5a8ad
--- /dev/null
+++ b/board/stmicroelectronics/stm32f469-disco/patches/afboot-stm32/0001-stm32f469-i-Update-kernel-start-address.patch
@@ -0,0 +1,56 @@
+From fe5f3a86d07e378baeeddc1dfecd0686d83aa42f Mon Sep 17 00:00:00 2001
+From: Yauheni Saldatsenka <eugentoo@gmail.com>
+Date: Sat, 14 Aug 2021 18:54:51 +0300
+Subject: [PATCH] stm32f469-i: Update kernel start address
+
+As of GNU/Linux v5.12 kernel device tree binary grows above 0x08008000
+and overwrites kernel binary
+Therefore this commit moves kernel to the next flash bank
+
+Signed-off-by: Yauheni Saldatsenka <eugentoo@gmail.com>
+---
+ stm32f469i-disco.c | 7 +++----
+ 1 file changed, 3 insertions(+), 4 deletions(-)
+
+diff --git a/stm32f469i-disco.c b/stm32f469i-disco.c
+index 2da1f4b..46fc06a 100644
+--- a/stm32f469i-disco.c
++++ b/stm32f469i-disco.c
+@@ -6,6 +6,7 @@
+ #include "gpio.h"
+ #include "mpu.h"
+ 
++#define KERNEL_ADDR     0x08010000
+ #define CONFIG_HSE_HZ	8000000
+ #define CONFIG_PLL_M	8
+ #define CONFIG_PLL_N	360
+@@ -85,7 +86,7 @@ static void fmc_wait_busy(void)
+ 
+ void start_kernel(void)
+ {
+-	void (*kernel)(uint32_t reserved, uint32_t mach, uint32_t dt) = (void (*)(uint32_t, uint32_t, uint32_t))(0x08008000 | 1);
++	void (*kernel)(uint32_t reserved, uint32_t mach, uint32_t dt) = (void (*)(uint32_t, uint32_t, uint32_t))(KERNEL_ADDR | 1);
+ 
+ 	kernel(0, ~0UL, 0x08004000);
+ }
+@@ -102,7 +103,7 @@ int main(void)
+ 	volatile uint32_t *SYSCFG_MEMRMP = (void *)(SYSCFG_BASE + 0x00);
+ 	int i;
+ 
+-	mpu_config(0x0);
++	mpu_config(0xc0000000);
+ 
+ 	if (*FLASH_CR & FLASH_CR_LOCK) {
+ 		*FLASH_KEYR = 0x45670123;
+@@ -195,8 +196,6 @@ int main(void)
+ 	usart_setup(usart_base, 45000000);
+ 	usart_putch(usart_base, '.');
+ 
+-	*SYSCFG_MEMRMP = 0x4;
+-
+ 	start_kernel();
+ 
+ 	return 0;
+-- 
+2.32.0
+
diff --git a/board/stmicroelectronics/stm32f469-disco/patches/afboot-stm32/0002-kernel-start-address.patch b/board/stmicroelectronics/stm32f469-disco/patches/afboot-stm32/0002-kernel-start-address.patch
deleted file mode 100644
index 614effa85b..0000000000
--- a/board/stmicroelectronics/stm32f469-disco/patches/afboot-stm32/0002-kernel-start-address.patch
+++ /dev/null
@@ -1,21 +0,0 @@
-diff --git a/stm32f469i-disco.c b/stm32f469i-disco.c
-index 2da1f4b65f..96e4dff65e 100644
---- a/stm32f469i-disco.c
-+++ b/stm32f469i-disco.c
-@@ -6,6 +6,7 @@
- #include "gpio.h"
- #include "mpu.h"
- 
-+#define KERNEL_ADDR     0x08010000
- #define CONFIG_HSE_HZ	8000000
- #define CONFIG_PLL_M	8
- #define CONFIG_PLL_N	360
-@@ -85,7 +86,7 @@ static void fmc_wait_busy(void)
- 
- void start_kernel(void)
- {
--	void (*kernel)(uint32_t reserved, uint32_t mach, uint32_t dt) = (void (*)(uint32_t, uint32_t, uint32_t))(0x08008000 | 1);
-+	void (*kernel)(uint32_t reserved, uint32_t mach, uint32_t dt) = (void (*)(uint32_t, uint32_t, uint32_t))(KERNEL_ADDR | 1);
- 
- 	kernel(0, ~0UL, 0x08004000);
- }
diff --git a/board/stmicroelectronics/stm32f469-disco/patches/afboot-stm32/0003-no-mpu.patch b/board/stmicroelectronics/stm32f469-disco/patches/afboot-stm32/0003-no-mpu.patch
deleted file mode 100644
index bc66d2d0ef..0000000000
--- a/board/stmicroelectronics/stm32f469-disco/patches/afboot-stm32/0003-no-mpu.patch
+++ /dev/null
@@ -1,22 +0,0 @@
-diff --git a/stm32f469i-disco.c b/stm32f469i-disco.c
-index d4d0909831..03f823f288 100644
---- a/stm32f469i-disco.c
-+++ b/stm32f469i-disco.c
-@@ -127,7 +127,7 @@ int main(void)
- 
- 	int i;
- 
--	mpu_config(0x0);
-+	mpu_config(0xc0000000); 
- 
- 	if (*FLASH_CR & FLASH_CR_LOCK) {
- 		*FLASH_KEYR = 0x45670123;
-@@ -229,7 +229,7 @@ int main(void)
- 	usart_setup(usart_base, 45000000);
- 	usart_putch(usart_base, '.');
- 
--	*SYSCFG_MEMRMP = 0x4;
-+	/* *SYSCFG_MEMRMP = 0x4; */
- 
- 	start_kernel();
- 
diff --git a/board/stmicroelectronics/stm32f469-disco/patches/linux/0001-Use-default-dram-address-without-remapping.patch b/board/stmicroelectronics/stm32f469-disco/patches/linux/0001-Use-default-dram-address-without-remapping.patch
new file mode 100644
index 0000000000..68fe8380a2
--- /dev/null
+++ b/board/stmicroelectronics/stm32f469-disco/patches/linux/0001-Use-default-dram-address-without-remapping.patch
@@ -0,0 +1,38 @@
+From 8ccf9f625d00138d86fb7d70f3efd58a8fb4d7ff Mon Sep 17 00:00:00 2001
+From: Yauheni Saldatsenka <eugentoo@gmail.com>
+Date: Mon, 23 Aug 2021 02:54:22 +0300
+Subject: [PATCH] Use default dram address without remapping
+
+Signed-off-by: Yauheni Saldatsenka <eugentoo@gmail.com>
+---
+ arch/arm/boot/dts/stm32f469-disco.dts | 6 +++---
+ 1 file changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/arch/arm/boot/dts/stm32f469-disco.dts b/arch/arm/boot/dts/stm32f469-disco.dts
+index 2e1b3bbbe4b5..06845614a19a 100644
+--- a/arch/arm/boot/dts/stm32f469-disco.dts
++++ b/arch/arm/boot/dts/stm32f469-disco.dts
+@@ -60,9 +60,9 @@ chosen {
+ 		stdout-path = "serial0:115200n8";
+ 	};
+ 
+-	memory@00000000 {
++	memory@c0000000 {
+ 		device_type = "memory";
+-		reg = <0x00000000 0x1000000>;
++		reg = <0xc0000000 0x1000000>;
+ 	};
+ 
+ 	aliases {
+@@ -84,7 +84,7 @@ vdd_dsi: vdd-dsi {
+ 	};
+ 
+ 	soc {
+-		dma-ranges = <0xc0000000 0x0 0x10000000>;
++		dma-ranges = <0xc0000000 0xc0000000 0x10000000>;
+ 	};
+ 
+ 	leds {
+-- 
+2.32.0
+
diff --git a/board/stmicroelectronics/stm32f469-disco/readme.txt b/board/stmicroelectronics/stm32f469-disco/readme.txt
index c1e1d30e69..646f340382 100644
--- a/board/stmicroelectronics/stm32f469-disco/readme.txt
+++ b/board/stmicroelectronics/stm32f469-disco/readme.txt
@@ -4,23 +4,37 @@ STM32F469 Discovery
 This tutorial describes how to use the predefined Buildroot
 configuration for the STM32F469 Discovery evaluation platform.
 
+There are two setups supported:
+1. Internal flash memory is fully occupied with u-boot bootloader which boots kernel with
+   root filesystem from MMC.
+2. Internal flash memory stores simple afboot-stm32 bootloader, device tree and
+   in place (XIP) kernel with built-in initramfs.
+   Kernel is based on tinyconfig.
+
 Building
 --------
+  Type
+  "make stm32f469_disco_defconfig"
+  to build u-boot setup
+  or
+  "make stm32f469_disco_xip_defconfig"
+  to build xip setup
+
+  Then
 
-  make stm32f469_disco_defconfig
-  make
+  "make"
 
 Flashing
 --------
 
-  ./board/stmicroelectronics/stm32f469-disco/flash.sh output/
+  ./board/stmicroelectronics/stm32f469-disco/flash.sh output/ <BUILD_TYPE>
 
-It will flash the U-boot bootloader.
+  <BUILD_TYPE> can be "xip" or "uboot"
 
-Creating SD card
+Creating SD card for u-boot setup
 ----------------
 
-Buildroot prepares an"sdcard.img" image in the output/images/ directory,
+Buildroot prepares an "sdcard.img" image in the output/images/ directory,
 ready to be dumped on a SD card. Launch the following command as root:
 
   dd if=output/images/sdcard.img of=/dev/<your-sd-device>
diff --git a/configs/stm32f469_disco_xip_defconfig b/configs/stm32f469_disco_xip_defconfig
index 81bdb0d6d6..fd2946ab8b 100644
--- a/configs/stm32f469_disco_xip_defconfig
+++ b/configs/stm32f469_disco_xip_defconfig
@@ -1,24 +1,18 @@
 BR2_arm=y
 BR2_cortex_m4=y
 BR2_GLOBAL_PATCH_DIR="board/stmicroelectronics/stm32f469-disco/patches"
-BR2_KERNEL_HEADERS_5_13=y
 # BR2_UCLIBC_INSTALL_UTILS is not set
-BR2_GCC_VERSION_11_X=y
 BR2_GCC_ENABLE_LTO=y
-BR2_ROOTFS_POST_BUILD_SCRIPT="board/stmicroelectronics/common/stm32f4xx/stm32-post-build.sh"
 BR2_LINUX_KERNEL=y
 BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y
-BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="board/stmicroelectronics/stm32f469-disco/linux/defconfig"
+BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="board/stmicroelectronics/stm32f469-disco/linux/linux.config"
 BR2_LINUX_KERNEL_IMAGE_TARGET_CUSTOM=y
 BR2_LINUX_KERNEL_XZ=y
 BR2_LINUX_KERNEL_IMAGE_TARGET_NAME="xipImage"
 BR2_LINUX_KERNEL_DTS_SUPPORT=y
 BR2_LINUX_KERNEL_INTREE_DTS_NAME="stm32f469-disco"
-BR2_LINUX_KERNEL_CUSTOM_DTS_PATH="board/stmicroelectronics/stm32f469-disco/linux/stm32f469-disco.dts"
 BR2_PACKAGE_BUSYBOX_CONFIG="package/busybox/busybox-minimal.config"
-BR2_PACKAGE_ZLIB=y
 BR2_TARGET_ROOTFS_INITRAMFS=y
 # BR2_TARGET_ROOTFS_TAR is not set
 BR2_TARGET_AFBOOT_STM32=y
 BR2_PACKAGE_HOST_OPENOCD=y
-BR2_PACKAGE_HOST_UTIL_LINUX=y
-- 
2.32.0

_______________________________________________
buildroot mailing list
buildroot@busybox.net
http://lists.busybox.net/mailman/listinfo/buildroot

^ permalink raw reply related	[flat|nested] 5+ messages in thread

* [Buildroot] [PATCH 3/3] [PATCH v3 1/1] configs/stm32f469_disco_xip_defconfig: alternative defconfig for XIP
  2021-08-25 18:18 [Buildroot] [PATCH 1/3] [PATCH 1/1] configs/stm32f469_disco_xip_defconfig: alternative defconfig for XIP Yauheni Saldatsenka
  2021-08-25 18:18 ` [Buildroot] [PATCH 2/3] [PATCH v2 " Yauheni Saldatsenka
@ 2021-08-25 18:18 ` Yauheni Saldatsenka
  1 sibling, 0 replies; 5+ messages in thread
From: Yauheni Saldatsenka @ 2021-08-25 18:18 UTC (permalink / raw)
  To: buildroot; +Cc: Christophe Priouzeau

Result of make tinyconfig was taken as a starting point to fit kernel
into flash memory.
Current setup kernel + rootfs fits in 1.6MB on-chip flash memory.

Fixes:
    - Move kernel to new flash bank due to growth of dtb size
    - Fix kernel start address in bootloader

For better binary size optimization gcc LTO is turned on.

Signed-off-by: Yauheni Saldatsenka <eugentoo@gmail.com>

----
v2 -> v3:
- Create separate readme.txt for xip configuration
- Create separate flash.sh script for xip configuration

Signed-off-by: Yauheni Saldatsenka <eugentoo@gmail.com>
---
 .../stm32f469-disco/flash.sh                  | 45 ++++---------------
 .../stm32f469-disco/flash_xip.sh              | 20 +++++++++
 .../stm32f469-disco/readme.txt                | 26 +++--------
 .../stm32f469-disco/readme_xip.txt            | 22 +++++++++
 4 files changed, 57 insertions(+), 56 deletions(-)
 create mode 100644 board/stmicroelectronics/stm32f469-disco/flash_xip.sh
 create mode 100644 board/stmicroelectronics/stm32f469-disco/readme_xip.txt

diff --git a/board/stmicroelectronics/stm32f469-disco/flash.sh b/board/stmicroelectronics/stm32f469-disco/flash.sh
index 0e130908aa..984d2b2599 100755
--- a/board/stmicroelectronics/stm32f469-disco/flash.sh
+++ b/board/stmicroelectronics/stm32f469-disco/flash.sh
@@ -1,45 +1,18 @@
 #!/bin/bash
 
 OUTPUT_DIR=$1
-BUILD_TYPE=$2
 
-if ! test -d "${OUTPUT_DIR}"; then
+if ! test -d "${OUTPUT_DIR}" ; then
     echo "ERROR: no output directory specified."
     echo "Usage: $0 OUTPUT_DIR"
     exit 1
 fi
 
-if  [[ -z "${BUILD_TYPE}" ]]; then
-    echo "ERROR: no build type specified, please select 'xip' or 'uboot'."
-    echo "Usage: $0 OUTPUT_DIR $1 BUILD_TYPE"
-    exit 1
-fi
-
-case "${BUILD_TYPE}" in
-	"xip")
-		${OUTPUT_DIR}/host/bin/openocd -f board/stm32f469discovery.cfg \
-					 -c "init" \
-					 -c "reset init" \
-					 -c "flash probe 0" \
-					 -c "flash info 0" \
-					 -c "flash write_image erase ${OUTPUT_DIR}/images/stm32f469i-disco.bin 0x08000000" \
-					 -c "flash write_image erase ${OUTPUT_DIR}/images/stm32f469-disco.dtb 0x08004000" \
-					 -c "flash write_image erase ${OUTPUT_DIR}/images/xipImage 0x08010000" \
-					 -c "reset run" \
-					 -c "shutdown"
-		;;
-	"uboot")
-		FLASH_COMMAND=
-		${OUTPUT_DIR}/host/bin/openocd -f board/stm32f469discovery.cfg \
-					 -c "init" \
-					 -c "reset init" \
-					 -c "flash probe 0" \
-					 -c "flash info 0" \
-					 -c "flash write_image erase ${OUTPUT_DIR}/images/u-boot.bin 0x08000000" \
-					 -c "reset run" \
-					 -c "shutdown"
-	    ;;
-	*)
-		echo "Wrong build type. Please select from: xip, uboot"
-		;;
-esac
+${OUTPUT_DIR}/host/bin/openocd -f board/stm32f469discovery.cfg \
+  -c "init" \
+  -c "reset init" \
+  -c "flash probe 0" \
+  -c "flash info 0" \
+  -c "flash write_image erase ${OUTPUT_DIR}/images/u-boot.bin 0x08000000" \
+  -c "reset run" \
+  -c "shutdown"
diff --git a/board/stmicroelectronics/stm32f469-disco/flash_xip.sh b/board/stmicroelectronics/stm32f469-disco/flash_xip.sh
new file mode 100644
index 0000000000..b5a067cee5
--- /dev/null
+++ b/board/stmicroelectronics/stm32f469-disco/flash_xip.sh
@@ -0,0 +1,20 @@
+#!/bin/bash
+
+OUTPUT_DIR=$1
+
+if ! test -d "${OUTPUT_DIR}"; then
+    echo "ERROR: no output directory specified."
+    echo "Usage: $0 OUTPUT_DIR"
+    exit 1
+fi
+
+${OUTPUT_DIR}/host/bin/openocd -f board/stm32f469discovery.cfg \
+  -c "init" \
+  -c "reset init" \
+  -c "flash probe 0" \
+  -c "flash info 0" \
+  -c "flash write_image erase ${OUTPUT_DIR}/images/stm32f469i-disco.bin 0x08000000" \
+  -c "flash write_image erase ${OUTPUT_DIR}/images/stm32f469-disco.dtb 0x08004000" \
+  -c "flash write_image erase ${OUTPUT_DIR}/images/xipImage 0x08010000" \
+  -c "reset run" \
+  -c "shutdown"
diff --git a/board/stmicroelectronics/stm32f469-disco/readme.txt b/board/stmicroelectronics/stm32f469-disco/readme.txt
index 646f340382..c1e1d30e69 100644
--- a/board/stmicroelectronics/stm32f469-disco/readme.txt
+++ b/board/stmicroelectronics/stm32f469-disco/readme.txt
@@ -4,37 +4,23 @@ STM32F469 Discovery
 This tutorial describes how to use the predefined Buildroot
 configuration for the STM32F469 Discovery evaluation platform.
 
-There are two setups supported:
-1. Internal flash memory is fully occupied with u-boot bootloader which boots kernel with
-   root filesystem from MMC.
-2. Internal flash memory stores simple afboot-stm32 bootloader, device tree and
-   in place (XIP) kernel with built-in initramfs.
-   Kernel is based on tinyconfig.
-
 Building
 --------
-  Type
-  "make stm32f469_disco_defconfig"
-  to build u-boot setup
-  or
-  "make stm32f469_disco_xip_defconfig"
-  to build xip setup
-
-  Then
 
-  "make"
+  make stm32f469_disco_defconfig
+  make
 
 Flashing
 --------
 
-  ./board/stmicroelectronics/stm32f469-disco/flash.sh output/ <BUILD_TYPE>
+  ./board/stmicroelectronics/stm32f469-disco/flash.sh output/
 
-  <BUILD_TYPE> can be "xip" or "uboot"
+It will flash the U-boot bootloader.
 
-Creating SD card for u-boot setup
+Creating SD card
 ----------------
 
-Buildroot prepares an "sdcard.img" image in the output/images/ directory,
+Buildroot prepares an"sdcard.img" image in the output/images/ directory,
 ready to be dumped on a SD card. Launch the following command as root:
 
   dd if=output/images/sdcard.img of=/dev/<your-sd-device>
diff --git a/board/stmicroelectronics/stm32f469-disco/readme_xip.txt b/board/stmicroelectronics/stm32f469-disco/readme_xip.txt
new file mode 100644
index 0000000000..c4c93cef6c
--- /dev/null
+++ b/board/stmicroelectronics/stm32f469-disco/readme_xip.txt
@@ -0,0 +1,22 @@
+STM32F469 Discovery
+===================
+
+This tutorial describes how to use the predefined Buildroot
+configuration for the STM32F469 Discovery evaluation platform.
+
+Internal flash memory stores simple afboot-stm32 bootloader, device tree and
+in place (XIP) kernel with built-in initramfs.
+Kernel is based on tinyconfig.
+
+Building
+--------
+
+  make stm32f469_disco_xip_defconfig
+  make
+
+Flashing
+--------
+
+  ./board/stmicroelectronics/stm32f469-disco/flash.sh output/
+
+It will flash binary to internal flash memory.
-- 
2.32.0

_______________________________________________
buildroot mailing list
buildroot@busybox.net
http://lists.busybox.net/mailman/listinfo/buildroot

^ permalink raw reply related	[flat|nested] 5+ messages in thread

* Re: [Buildroot] [PATCH 2/3] [PATCH v2 1/1] configs/stm32f469_disco_xip_defconfig: alternative defconfig for XIP
  2021-08-25 18:18 ` [Buildroot] [PATCH 2/3] [PATCH v2 " Yauheni Saldatsenka
@ 2021-08-28 14:57   ` Arnout Vandecappelle
  2021-08-28 20:06     ` Yauheni Saldatsenka
  0 siblings, 1 reply; 5+ messages in thread
From: Arnout Vandecappelle @ 2021-08-28 14:57 UTC (permalink / raw)
  To: Yauheni Saldatsenka, buildroot; +Cc: Christophe Priouzeau

 Hi Yauheni,

 There were still a number of things not OK with this patch, but I've fixed them
up and applied to next, thanks.

 First of all, it should have been only a single commit, not split over 3 for
the different versions. Separate commits should only be made when you do
separate, more or less independent things. In this case, however, it's really a
single change you're making (adding the new defconfig). So I've squashed
everything into a single commit.


On 25/08/2021 20:18, Yauheni Saldatsenka wrote:
> Result of make tinyconfig was taken as a starting point to fit kernel
> into flash memory.
> Current setup kernel + rootfs fits in 1.6MB on-chip flash memory.
> 
> Fixes:
>     - Move kernel to new flash bank due to growth of dtb size
>     - Fix kernel start address in bootloader
> 
> For better binary size optimization gcc LTO is turned on.
> 
> Signed-off-by: Yauheni Saldatsenka <eugentoo@gmail.com>

[snip]
> diff --git a/board/stmicroelectronics/stm32f469-disco/linux/defconfig b/board/stmicroelectronics/stm32f469-disco/linux/linux.config
> similarity index 100%
> rename from board/stmicroelectronics/stm32f469-disco/linux/defconfig
> rename to board/stmicroelectronics/stm32f469-disco/linux/linux.config

 linux/linux.config is not a very useful name, so I've moved it up one
directory. I also called it linux-xip.config, to distinguish it more clearly
from the existing linux.fragment.


> diff --git a/board/stmicroelectronics/stm32f469-disco/patches/afboot-stm32/0001-stm32f469-i-Update-kernel-start-address.patch b/board/stmicroelectronics/stm32f469-disco/patches/afboot-stm32/0001-stm32f469-i-Update-kernel-start-address.patch
> new file mode 100644
> index 0000000000..d5d1e5a8ad
> --- /dev/null
> +++ b/board/stmicroelectronics/stm32f469-disco/patches/afboot-stm32/0001-stm32f469-i-Update-kernel-start-address.patch
> @@ -0,0 +1,56 @@
> +From fe5f3a86d07e378baeeddc1dfecd0686d83aa42f Mon Sep 17 00:00:00 2001
> +From: Yauheni Saldatsenka <eugentoo@gmail.com>
> +Date: Sat, 14 Aug 2021 18:54:51 +0300
> +Subject: [PATCH] stm32f469-i: Update kernel start address
> +
> +As of GNU/Linux v5.12 kernel device tree binary grows above 0x08008000
> +and overwrites kernel binary
> +Therefore this commit moves kernel to the next flash bank
> +
> +Signed-off-by: Yauheni Saldatsenka <eugentoo@gmail.com>

 Has this patch been sent upstream to afboot-stm32?


> +---
> + stm32f469i-disco.c | 7 +++----
> + 1 file changed, 3 insertions(+), 4 deletions(-)
> +
> +diff --git a/stm32f469i-disco.c b/stm32f469i-disco.c
> +index 2da1f4b..46fc06a 100644
> +--- a/stm32f469i-disco.c
> ++++ b/stm32f469i-disco.c
> +@@ -6,6 +6,7 @@
> + #include "gpio.h"
> + #include "mpu.h"
> + 
> ++#define KERNEL_ADDR     0x08010000
> + #define CONFIG_HSE_HZ	8000000
> + #define CONFIG_PLL_M	8
> + #define CONFIG_PLL_N	360
> +@@ -85,7 +86,7 @@ static void fmc_wait_busy(void)
> + 
> + void start_kernel(void)
> + {
> +-	void (*kernel)(uint32_t reserved, uint32_t mach, uint32_t dt) = (void (*)(uint32_t, uint32_t, uint32_t))(0x08008000 | 1);
> ++	void (*kernel)(uint32_t reserved, uint32_t mach, uint32_t dt) = (void (*)(uint32_t, uint32_t, uint32_t))(KERNEL_ADDR | 1);
> + 
> + 	kernel(0, ~0UL, 0x08004000);
> + }
> +@@ -102,7 +103,7 @@ int main(void)
> + 	volatile uint32_t *SYSCFG_MEMRMP = (void *)(SYSCFG_BASE + 0x00);
> + 	int i;
> + 
> +-	mpu_config(0x0);
> ++	mpu_config(0xc0000000);

 It's not clear how this is related to moving the kernel address...

> + 
> + 	if (*FLASH_CR & FLASH_CR_LOCK) {
> + 		*FLASH_KEYR = 0x45670123;
> +@@ -195,8 +196,6 @@ int main(void)
> + 	usart_setup(usart_base, 45000000);
> + 	usart_putch(usart_base, '.');
> + 
> +-	*SYSCFG_MEMRMP = 0x4;

 This also is not clear why it's removed.

 I still applied the patch as is.

> +-
> + 	start_kernel();
> + 
> + 	return 0;
> +-- 
> +2.32.0
[snip]
> diff --git a/board/stmicroelectronics/stm32f469-disco/patches/linux/0001-Use-default-dram-address-without-remapping.patch b/board/stmicroelectronics/stm32f469-disco/patches/linux/0001-Use-default-dram-address-without-remapping.patch
> new file mode 100644
> index 0000000000..68fe8380a2
> --- /dev/null
> +++ b/board/stmicroelectronics/stm32f469-disco/patches/linux/0001-Use-default-dram-address-without-remapping.patch
> @@ -0,0 +1,38 @@
> +From 8ccf9f625d00138d86fb7d70f3efd58a8fb4d7ff Mon Sep 17 00:00:00 2001
> +From: Yauheni Saldatsenka <eugentoo@gmail.com>
> +Date: Mon, 23 Aug 2021 02:54:22 +0300
> +Subject: [PATCH] Use default dram address without remapping
> +
> +Signed-off-by: Yauheni Saldatsenka <eugentoo@gmail.com>
> +---
> + arch/arm/boot/dts/stm32f469-disco.dts | 6 +++---
> + 1 file changed, 3 insertions(+), 3 deletions(-)
> +
> +diff --git a/arch/arm/boot/dts/stm32f469-disco.dts b/arch/arm/boot/dts/stm32f469-disco.dts
> +index 2e1b3bbbe4b5..06845614a19a 100644
> +--- a/arch/arm/boot/dts/stm32f469-disco.dts
> ++++ b/arch/arm/boot/dts/stm32f469-disco.dts
> +@@ -60,9 +60,9 @@ chosen {
> + 		stdout-path = "serial0:115200n8";
> + 	};
> + 
> +-	memory@00000000 {
> ++	memory@c0000000 {

 It's good that you update the device tree with a patch now instead of copying
it. However, the full dts was still there in the board directory, but unused. So
I removed it.

 Also, there were a few changes that you didn't keep - but I guess those weren't
actually needed.

> + 		device_type = "memory";
> +-		reg = <0x00000000 0x1000000>;
> ++		reg = <0xc0000000 0x1000000>;
> + 	};
> + 
> + 	aliases {
> +@@ -84,7 +84,7 @@ vdd_dsi: vdd-dsi {
> + 	};
> + 
> + 	soc {
> +-		dma-ranges = <0xc0000000 0x0 0x10000000>;
> ++		dma-ranges = <0xc0000000 0xc0000000 0x10000000>;
> + 	};
> + 
> + 	leds {
> +-- 
> +2.32.0
> +
> diff --git a/board/stmicroelectronics/stm32f469-disco/readme.txt b/board/stmicroelectronics/stm32f469-disco/readme.txt
> index c1e1d30e69..646f340382 100644
> --- a/board/stmicroelectronics/stm32f469-disco/readme.txt
> +++ b/board/stmicroelectronics/stm32f469-disco/readme.txt
> @@ -4,23 +4,37 @@ STM32F469 Discovery
>  This tutorial describes how to use the predefined Buildroot
>  configuration for the STM32F469 Discovery evaluation platform.
>  
> +There are two setups supported:
> +1. Internal flash memory is fully occupied with u-boot bootloader which boots kernel with
> +   root filesystem from MMC.
> +2. Internal flash memory stores simple afboot-stm32 bootloader, device tree and
> +   in place (XIP) kernel with built-in initramfs.

 Very good readme! I've just added here a sentence to say that no SD card is
needed, to make that explicit.


 Regards,
 Arnout

> +   Kernel is based on tinyconfig.
> +
>  Building
>  --------
> +  Type
> +  "make stm32f469_disco_defconfig"
> +  to build u-boot setup
> +  or
> +  "make stm32f469_disco_xip_defconfig"
> +  to build xip setup
> +
> +  Then
>  
> -  make stm32f469_disco_defconfig
> -  make
> +  "make"
>  
>  Flashing
>  --------
>  
> -  ./board/stmicroelectronics/stm32f469-disco/flash.sh output/
> +  ./board/stmicroelectronics/stm32f469-disco/flash.sh output/ <BUILD_TYPE>
>  
> -It will flash the U-boot bootloader.
> +  <BUILD_TYPE> can be "xip" or "uboot"
>  
> -Creating SD card
> +Creating SD card for u-boot setup
>  ----------------
>  
> -Buildroot prepares an"sdcard.img" image in the output/images/ directory,
> +Buildroot prepares an "sdcard.img" image in the output/images/ directory,
>  ready to be dumped on a SD card. Launch the following command as root:
>  
>    dd if=output/images/sdcard.img of=/dev/<your-sd-device>
> diff --git a/configs/stm32f469_disco_xip_defconfig b/configs/stm32f469_disco_xip_defconfig
> index 81bdb0d6d6..fd2946ab8b 100644
> --- a/configs/stm32f469_disco_xip_defconfig
> +++ b/configs/stm32f469_disco_xip_defconfig
> @@ -1,24 +1,18 @@
>  BR2_arm=y
>  BR2_cortex_m4=y
>  BR2_GLOBAL_PATCH_DIR="board/stmicroelectronics/stm32f469-disco/patches"
> -BR2_KERNEL_HEADERS_5_13=y
>  # BR2_UCLIBC_INSTALL_UTILS is not set
> -BR2_GCC_VERSION_11_X=y
>  BR2_GCC_ENABLE_LTO=y
> -BR2_ROOTFS_POST_BUILD_SCRIPT="board/stmicroelectronics/common/stm32f4xx/stm32-post-build.sh"
>  BR2_LINUX_KERNEL=y
>  BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y
> -BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="board/stmicroelectronics/stm32f469-disco/linux/defconfig"
> +BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="board/stmicroelectronics/stm32f469-disco/linux/linux.config"
>  BR2_LINUX_KERNEL_IMAGE_TARGET_CUSTOM=y
>  BR2_LINUX_KERNEL_XZ=y
>  BR2_LINUX_KERNEL_IMAGE_TARGET_NAME="xipImage"
>  BR2_LINUX_KERNEL_DTS_SUPPORT=y
>  BR2_LINUX_KERNEL_INTREE_DTS_NAME="stm32f469-disco"
> -BR2_LINUX_KERNEL_CUSTOM_DTS_PATH="board/stmicroelectronics/stm32f469-disco/linux/stm32f469-disco.dts"
>  BR2_PACKAGE_BUSYBOX_CONFIG="package/busybox/busybox-minimal.config"
> -BR2_PACKAGE_ZLIB=y
>  BR2_TARGET_ROOTFS_INITRAMFS=y
>  # BR2_TARGET_ROOTFS_TAR is not set
>  BR2_TARGET_AFBOOT_STM32=y
>  BR2_PACKAGE_HOST_OPENOCD=y
> -BR2_PACKAGE_HOST_UTIL_LINUX=y
> 
_______________________________________________
buildroot mailing list
buildroot@busybox.net
http://lists.busybox.net/mailman/listinfo/buildroot

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [Buildroot] [PATCH 2/3] [PATCH v2 1/1] configs/stm32f469_disco_xip_defconfig: alternative defconfig for XIP
  2021-08-28 14:57   ` Arnout Vandecappelle
@ 2021-08-28 20:06     ` Yauheni Saldatsenka
  0 siblings, 0 replies; 5+ messages in thread
From: Yauheni Saldatsenka @ 2021-08-28 20:06 UTC (permalink / raw)
  To: Arnout Vandecappelle; +Cc: Christophe Priouzeau, buildroot


[-- Attachment #1.1: Type: text/plain, Size: 10045 bytes --]

Hello Arnout.

Thanks for bringing your efforts to this patchset!

In case there would be any further questions feel free to ask.

Best regards,
Yauheni Saldatsenka

сб, 28 авг. 2021 г. в 17:57, Arnout Vandecappelle <arnout@mind.be>:

>  Hi Yauheni,
>
>  There were still a number of things not OK with this patch, but I've
> fixed them
> up and applied to next, thanks.
>
>  First of all, it should have been only a single commit, not split over 3
> for
> the different versions. Separate commits should only be made when you do
> separate, more or less independent things. In this case, however, it's
> really a
> single change you're making (adding the new defconfig). So I've squashed
> everything into a single commit.
>
>
> On 25/08/2021 20:18, Yauheni Saldatsenka wrote:
> > Result of make tinyconfig was taken as a starting point to fit kernel
> > into flash memory.
> > Current setup kernel + rootfs fits in 1.6MB on-chip flash memory.
> >
> > Fixes:
> >     - Move kernel to new flash bank due to growth of dtb size
> >     - Fix kernel start address in bootloader
> >
> > For better binary size optimization gcc LTO is turned on.
> >
> > Signed-off-by: Yauheni Saldatsenka <eugentoo@gmail.com>
>
> [snip]
> > diff --git a/board/stmicroelectronics/stm32f469-disco/linux/defconfig
> b/board/stmicroelectronics/stm32f469-disco/linux/linux.config
> > similarity index 100%
> > rename from board/stmicroelectronics/stm32f469-disco/linux/defconfig
> > rename to board/stmicroelectronics/stm32f469-disco/linux/linux.config
>
>  linux/linux.config is not a very useful name, so I've moved it up one
> directory. I also called it linux-xip.config, to distinguish it more
> clearly
> from the existing linux.fragment.
>
>
> > diff --git
> a/board/stmicroelectronics/stm32f469-disco/patches/afboot-stm32/0001-stm32f469-i-Update-kernel-start-address.patch
> b/board/stmicroelectronics/stm32f469-disco/patches/afboot-stm32/0001-stm32f469-i-Update-kernel-start-address.patch
> > new file mode 100644
> > index 0000000000..d5d1e5a8ad
> > --- /dev/null
> > +++
> b/board/stmicroelectronics/stm32f469-disco/patches/afboot-stm32/0001-stm32f469-i-Update-kernel-start-address.patch
> > @@ -0,0 +1,56 @@
> > +From fe5f3a86d07e378baeeddc1dfecd0686d83aa42f Mon Sep 17 00:00:00 2001
> > +From: Yauheni Saldatsenka <eugentoo@gmail.com>
> > +Date: Sat, 14 Aug 2021 18:54:51 +0300
> > +Subject: [PATCH] stm32f469-i: Update kernel start address
> > +
> > +As of GNU/Linux v5.12 kernel device tree binary grows above 0x08008000
> > +and overwrites kernel binary
> > +Therefore this commit moves kernel to the next flash bank
> > +
> > +Signed-off-by: Yauheni Saldatsenka <eugentoo@gmail.com>
>
>  Has this patch been sent upstream to afboot-stm32?
>
>
> > +---
> > + stm32f469i-disco.c | 7 +++----
> > + 1 file changed, 3 insertions(+), 4 deletions(-)
> > +
> > +diff --git a/stm32f469i-disco.c b/stm32f469i-disco.c
> > +index 2da1f4b..46fc06a 100644
> > +--- a/stm32f469i-disco.c
> > ++++ b/stm32f469i-disco.c
> > +@@ -6,6 +6,7 @@
> > + #include "gpio.h"
> > + #include "mpu.h"
> > +
> > ++#define KERNEL_ADDR     0x08010000
> > + #define CONFIG_HSE_HZ       8000000
> > + #define CONFIG_PLL_M        8
> > + #define CONFIG_PLL_N        360
> > +@@ -85,7 +86,7 @@ static void fmc_wait_busy(void)
> > +
> > + void start_kernel(void)
> > + {
> > +-    void (*kernel)(uint32_t reserved, uint32_t mach, uint32_t dt) =
> (void (*)(uint32_t, uint32_t, uint32_t))(0x08008000 | 1);
> > ++    void (*kernel)(uint32_t reserved, uint32_t mach, uint32_t dt) =
> (void (*)(uint32_t, uint32_t, uint32_t))(KERNEL_ADDR | 1);
> > +
> > +     kernel(0, ~0UL, 0x08004000);
> > + }
> > +@@ -102,7 +103,7 @@ int main(void)
> > +     volatile uint32_t *SYSCFG_MEMRMP = (void *)(SYSCFG_BASE + 0x00);
> > +     int i;
> > +
> > +-    mpu_config(0x0);
> > ++    mpu_config(0xc0000000);
>
>  It's not clear how this is related to moving the kernel address...
>
> > +
> > +     if (*FLASH_CR & FLASH_CR_LOCK) {
> > +             *FLASH_KEYR = 0x45670123;
> > +@@ -195,8 +196,6 @@ int main(void)
> > +     usart_setup(usart_base, 45000000);
> > +     usart_putch(usart_base, '.');
> > +
> > +-    *SYSCFG_MEMRMP = 0x4;
>
>  This also is not clear why it's removed.
>
>  I still applied the patch as is.
>
> > +-
> > +     start_kernel();
> > +
> > +     return 0;
> > +--
> > +2.32.0
> [snip]
> > diff --git
> a/board/stmicroelectronics/stm32f469-disco/patches/linux/0001-Use-default-dram-address-without-remapping.patch
> b/board/stmicroelectronics/stm32f469-disco/patches/linux/0001-Use-default-dram-address-without-remapping.patch
> > new file mode 100644
> > index 0000000000..68fe8380a2
> > --- /dev/null
> > +++
> b/board/stmicroelectronics/stm32f469-disco/patches/linux/0001-Use-default-dram-address-without-remapping.patch
> > @@ -0,0 +1,38 @@
> > +From 8ccf9f625d00138d86fb7d70f3efd58a8fb4d7ff Mon Sep 17 00:00:00 2001
> > +From: Yauheni Saldatsenka <eugentoo@gmail.com>
> > +Date: Mon, 23 Aug 2021 02:54:22 +0300
> > +Subject: [PATCH] Use default dram address without remapping
> > +
> > +Signed-off-by: Yauheni Saldatsenka <eugentoo@gmail.com>
> > +---
> > + arch/arm/boot/dts/stm32f469-disco.dts | 6 +++---
> > + 1 file changed, 3 insertions(+), 3 deletions(-)
> > +
> > +diff --git a/arch/arm/boot/dts/stm32f469-disco.dts
> b/arch/arm/boot/dts/stm32f469-disco.dts
> > +index 2e1b3bbbe4b5..06845614a19a 100644
> > +--- a/arch/arm/boot/dts/stm32f469-disco.dts
> > ++++ b/arch/arm/boot/dts/stm32f469-disco.dts
> > +@@ -60,9 +60,9 @@ chosen {
> > +             stdout-path = "serial0:115200n8";
> > +     };
> > +
> > +-    memory@00000000 {
> > ++    memory@c0000000 {
>
>  It's good that you update the device tree with a patch now instead of
> copying
> it. However, the full dts was still there in the board directory, but
> unused. So
> I removed it.
>
>  Also, there were a few changes that you didn't keep - but I guess those
> weren't
> actually needed.
>
> > +             device_type = "memory";
> > +-            reg = <0x00000000 0x1000000>;
> > ++            reg = <0xc0000000 0x1000000>;
> > +     };
> > +
> > +     aliases {
> > +@@ -84,7 +84,7 @@ vdd_dsi: vdd-dsi {
> > +     };
> > +
> > +     soc {
> > +-            dma-ranges = <0xc0000000 0x0 0x10000000>;
> > ++            dma-ranges = <0xc0000000 0xc0000000 0x10000000>;
> > +     };
> > +
> > +     leds {
> > +--
> > +2.32.0
> > +
> > diff --git a/board/stmicroelectronics/stm32f469-disco/readme.txt
> b/board/stmicroelectronics/stm32f469-disco/readme.txt
> > index c1e1d30e69..646f340382 100644
> > --- a/board/stmicroelectronics/stm32f469-disco/readme.txt
> > +++ b/board/stmicroelectronics/stm32f469-disco/readme.txt
> > @@ -4,23 +4,37 @@ STM32F469 Discovery
> >  This tutorial describes how to use the predefined Buildroot
> >  configuration for the STM32F469 Discovery evaluation platform.
> >
> > +There are two setups supported:
> > +1. Internal flash memory is fully occupied with u-boot bootloader which
> boots kernel with
> > +   root filesystem from MMC.
> > +2. Internal flash memory stores simple afboot-stm32 bootloader, device
> tree and
> > +   in place (XIP) kernel with built-in initramfs.
>
>  Very good readme! I've just added here a sentence to say that no SD card
> is
> needed, to make that explicit.
>
>
>  Regards,
>  Arnout
>
> > +   Kernel is based on tinyconfig.
> > +
> >  Building
> >  --------
> > +  Type
> > +  "make stm32f469_disco_defconfig"
> > +  to build u-boot setup
> > +  or
> > +  "make stm32f469_disco_xip_defconfig"
> > +  to build xip setup
> > +
> > +  Then
> >
> > -  make stm32f469_disco_defconfig
> > -  make
> > +  "make"
> >
> >  Flashing
> >  --------
> >
> > -  ./board/stmicroelectronics/stm32f469-disco/flash.sh output/
> > +  ./board/stmicroelectronics/stm32f469-disco/flash.sh output/
> <BUILD_TYPE>
> >
> > -It will flash the U-boot bootloader.
> > +  <BUILD_TYPE> can be "xip" or "uboot"
> >
> > -Creating SD card
> > +Creating SD card for u-boot setup
> >  ----------------
> >
> > -Buildroot prepares an"sdcard.img" image in the output/images/ directory,
> > +Buildroot prepares an "sdcard.img" image in the output/images/
> directory,
> >  ready to be dumped on a SD card. Launch the following command as root:
> >
> >    dd if=output/images/sdcard.img of=/dev/<your-sd-device>
> > diff --git a/configs/stm32f469_disco_xip_defconfig
> b/configs/stm32f469_disco_xip_defconfig
> > index 81bdb0d6d6..fd2946ab8b 100644
> > --- a/configs/stm32f469_disco_xip_defconfig
> > +++ b/configs/stm32f469_disco_xip_defconfig
> > @@ -1,24 +1,18 @@
> >  BR2_arm=y
> >  BR2_cortex_m4=y
> >  BR2_GLOBAL_PATCH_DIR="board/stmicroelectronics/stm32f469-disco/patches"
> > -BR2_KERNEL_HEADERS_5_13=y
> >  # BR2_UCLIBC_INSTALL_UTILS is not set
> > -BR2_GCC_VERSION_11_X=y
> >  BR2_GCC_ENABLE_LTO=y
> >
> -BR2_ROOTFS_POST_BUILD_SCRIPT="board/stmicroelectronics/common/stm32f4xx/stm32-post-build.sh"
> >  BR2_LINUX_KERNEL=y
> >  BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y
> >
> -BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="board/stmicroelectronics/stm32f469-disco/linux/defconfig"
> >
> +BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="board/stmicroelectronics/stm32f469-disco/linux/linux.config"
> >  BR2_LINUX_KERNEL_IMAGE_TARGET_CUSTOM=y
> >  BR2_LINUX_KERNEL_XZ=y
> >  BR2_LINUX_KERNEL_IMAGE_TARGET_NAME="xipImage"
> >  BR2_LINUX_KERNEL_DTS_SUPPORT=y
> >  BR2_LINUX_KERNEL_INTREE_DTS_NAME="stm32f469-disco"
> >
> -BR2_LINUX_KERNEL_CUSTOM_DTS_PATH="board/stmicroelectronics/stm32f469-disco/linux/stm32f469-disco.dts"
> >  BR2_PACKAGE_BUSYBOX_CONFIG="package/busybox/busybox-minimal.config"
> > -BR2_PACKAGE_ZLIB=y
> >  BR2_TARGET_ROOTFS_INITRAMFS=y
> >  # BR2_TARGET_ROOTFS_TAR is not set
> >  BR2_TARGET_AFBOOT_STM32=y
> >  BR2_PACKAGE_HOST_OPENOCD=y
> > -BR2_PACKAGE_HOST_UTIL_LINUX=y
> >
>

[-- Attachment #1.2: Type: text/html, Size: 12254 bytes --]

[-- Attachment #2: Type: text/plain, Size: 145 bytes --]

_______________________________________________
buildroot mailing list
buildroot@busybox.net
http://lists.busybox.net/mailman/listinfo/buildroot

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2021-08-28 20:07 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-08-25 18:18 [Buildroot] [PATCH 1/3] [PATCH 1/1] configs/stm32f469_disco_xip_defconfig: alternative defconfig for XIP Yauheni Saldatsenka
2021-08-25 18:18 ` [Buildroot] [PATCH 2/3] [PATCH v2 " Yauheni Saldatsenka
2021-08-28 14:57   ` Arnout Vandecappelle
2021-08-28 20:06     ` Yauheni Saldatsenka
2021-08-25 18:18 ` [Buildroot] [PATCH 3/3] [PATCH v3 " Yauheni Saldatsenka

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.