* [Buildroot] [PATCH v2 0/4] Support Andes SPI_burn tool
@ 2024-09-04 5:16 Yu Chien Peter Lin via buildroot
2024-09-04 5:16 ` [Buildroot] [PATCH v2 1/4] package: andes-spi-burn: new package Yu Chien Peter Lin via buildroot
` (3 more replies)
0 siblings, 4 replies; 7+ messages in thread
From: Yu Chien Peter Lin via buildroot @ 2024-09-04 5:16 UTC (permalink / raw)
To: buildroot; +Cc: tim609, Yu Chien Peter Lin, ycliang, Thomas Petazzoni
This series adds support for Andes SPI_burn tool that can be used to
update flash memory for U-Boot and OpenSBI development.
Changes v1->v2:
- Add documentation in the readme.txt
Yu Chien Peter Lin (4):
package: andes-spi-burn: new package
configs/andes_ae350_45: Enable host-andes-spi-burn
board/andes/ae350: uboot.config.fragment: Support loading U-Boot on
RAM
board/andes/ae350: readme.txt: Add SPI_burn tool instructions
DEVELOPERS | 1 +
board/andes/ae350/readme.txt | 39 ++++++++++++++++++++++
board/andes/ae350/uboot.config.fragment | 1 -
configs/andes_ae350_45_defconfig | 1 +
package/Config.in.host | 1 +
package/andes-spi-burn/Config.in.host | 8 +++++
package/andes-spi-burn/andes-spi-burn.hash | 2 ++
package/andes-spi-burn/andes-spi-burn.mk | 25 ++++++++++++++
8 files changed, 77 insertions(+), 1 deletion(-)
create mode 100644 package/andes-spi-burn/Config.in.host
create mode 100644 package/andes-spi-burn/andes-spi-burn.hash
create mode 100644 package/andes-spi-burn/andes-spi-burn.mk
--
2.34.1
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply [flat|nested] 7+ messages in thread
* [Buildroot] [PATCH v2 1/4] package: andes-spi-burn: new package
2024-09-04 5:16 [Buildroot] [PATCH v2 0/4] Support Andes SPI_burn tool Yu Chien Peter Lin via buildroot
@ 2024-09-04 5:16 ` Yu Chien Peter Lin via buildroot
2024-09-05 20:41 ` Thomas Petazzoni via buildroot
2024-09-04 5:16 ` [Buildroot] [PATCH v2 2/4] configs/andes_ae350_45: Enable host-andes-spi-burn Yu Chien Peter Lin via buildroot
` (2 subsequent siblings)
3 siblings, 1 reply; 7+ messages in thread
From: Yu Chien Peter Lin via buildroot @ 2024-09-04 5:16 UTC (permalink / raw)
To: buildroot; +Cc: tim609, Yu Chien Peter Lin, ycliang, Thomas Petazzoni
Add a new package for Andes AE350 SPI_burn tool to program
flash memory.
Signed-off-by: Yu Chien Peter Lin <peterlin@andestech.com>
---
DEVELOPERS | 1 +
package/Config.in.host | 1 +
package/andes-spi-burn/Config.in.host | 8 +++++++
package/andes-spi-burn/andes-spi-burn.hash | 2 ++
package/andes-spi-burn/andes-spi-burn.mk | 25 ++++++++++++++++++++++
5 files changed, 37 insertions(+)
create mode 100644 package/andes-spi-burn/Config.in.host
create mode 100644 package/andes-spi-burn/andes-spi-burn.hash
create mode 100644 package/andes-spi-burn/andes-spi-burn.mk
diff --git a/DEVELOPERS b/DEVELOPERS
index 069965680b..aab5a6c05f 100644
--- a/DEVELOPERS
+++ b/DEVELOPERS
@@ -2487,6 +2487,7 @@ N: Yu Chien Peter Lin <peterlin@andestech.com>
F: board/andes
F: configs/andes_ae350_45_defconfig
F: package/kmon/
+F: package/andes-spi-burn/
N: Olaf Rempel <razzor@kopf-tisch.de>
F: package/ctorrent/
diff --git a/package/Config.in.host b/package/Config.in.host
index e4fbee4f2a..191833d94d 100644
--- a/package/Config.in.host
+++ b/package/Config.in.host
@@ -4,6 +4,7 @@ menu "Host utilities"
source "package/aespipe/Config.in.host"
source "package/agent-proxy/Config.in.host"
source "package/amlogic-boot-fip/Config.in.host"
+ source "package/andes-spi-burn/Config.in.host"
source "package/android-tools/Config.in.host"
source "package/asn1c/Config.in.host"
source "package/babeltrace2/Config.in.host"
diff --git a/package/andes-spi-burn/Config.in.host b/package/andes-spi-burn/Config.in.host
new file mode 100644
index 0000000000..fed4f49f5d
--- /dev/null
+++ b/package/andes-spi-burn/Config.in.host
@@ -0,0 +1,8 @@
+config BR2_PACKAGE_HOST_ANDES_SPI_BURN
+ bool "host andes-spi-burn"
+ depends on BR2_riscv
+ help
+ Andes Technology SPI_burn tool to program bootloader and
+ device-tree blob onto flash memory of AE350 platform.
+
+ https://github.com/andestech/Andes-Development-Kit
diff --git a/package/andes-spi-burn/andes-spi-burn.hash b/package/andes-spi-burn/andes-spi-burn.hash
new file mode 100644
index 0000000000..170f362646
--- /dev/null
+++ b/package/andes-spi-burn/andes-spi-burn.hash
@@ -0,0 +1,2 @@
+# Locally computed
+sha256 6632bc0ddd0b6d07bd328758cd9132f48429d144079eb8011af60d95b0bdfd6b flash.zip
diff --git a/package/andes-spi-burn/andes-spi-burn.mk b/package/andes-spi-burn/andes-spi-burn.mk
new file mode 100644
index 0000000000..2f7387ca2f
--- /dev/null
+++ b/package/andes-spi-burn/andes-spi-burn.mk
@@ -0,0 +1,25 @@
+################################################################################
+#
+# andes-spi-burn
+#
+################################################################################
+
+ANDES_SPI_BURN_VERSION = 5.3.0
+ANDES_SPI_BURN_SOURCE = flash.zip
+ANDES_SPI_BURN_SITE = https://github.com/andestech/Andes-Development-Kit/releases/download/ast-v5_3_0-release-windows
+ANDES_SPI_BURN_LICENSE = Apache-2.0
+
+define HOST_ANDES_SPI_BURN_EXTRACT_CMDS
+ $(UNZIP) -q $(HOST_ANDES_SPI_BURN_DL_DIR)/$(ANDES_SPI_BURN_SOURCE) -d $(@D)
+endef
+
+define HOST_ANDES_SPI_BURN_BUILD_CMDS
+ $(HOST_MAKE_ENV) $(MAKE) -C $(@D)/flash/src-SPI_burn clean
+ $(HOST_MAKE_ENV) $(MAKE) -C $(@D)/flash/src-SPI_burn --makefile=Makefile_SPIburn_linux
+endef
+
+define HOST_ANDES_SPI_BURN_INSTALL_CMDS
+ $(INSTALL) -D -m 0755 $(@D)/flash/src-SPI_burn/SPI_burn $(HOST_DIR)/bin/SPI_burn
+endef
+
+$(eval $(host-generic-package))
--
2.34.1
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply related [flat|nested] 7+ messages in thread
* [Buildroot] [PATCH v2 2/4] configs/andes_ae350_45: Enable host-andes-spi-burn
2024-09-04 5:16 [Buildroot] [PATCH v2 0/4] Support Andes SPI_burn tool Yu Chien Peter Lin via buildroot
2024-09-04 5:16 ` [Buildroot] [PATCH v2 1/4] package: andes-spi-burn: new package Yu Chien Peter Lin via buildroot
@ 2024-09-04 5:16 ` Yu Chien Peter Lin via buildroot
2024-09-04 5:16 ` [Buildroot] [PATCH v2 3/4] board/andes/ae350: uboot.config.fragment: Support loading U-Boot on RAM Yu Chien Peter Lin via buildroot
2024-09-04 5:16 ` [Buildroot] [PATCH v2 4/4] board/andes/ae350: readme.txt: Add SPI_burn tool instructions Yu Chien Peter Lin via buildroot
3 siblings, 0 replies; 7+ messages in thread
From: Yu Chien Peter Lin via buildroot @ 2024-09-04 5:16 UTC (permalink / raw)
To: buildroot; +Cc: tim609, Yu Chien Peter Lin, ycliang, Thomas Petazzoni
Enable Andes SPI_Burn tool for updating buildroot generated
bootloader and device-tree blob on flash memory.
Signed-off-by: Yu Chien Peter Lin <peterlin@andestech.com>
---
configs/andes_ae350_45_defconfig | 1 +
1 file changed, 1 insertion(+)
diff --git a/configs/andes_ae350_45_defconfig b/configs/andes_ae350_45_defconfig
index fd8b7db0e7..7b5a6f73c6 100644
--- a/configs/andes_ae350_45_defconfig
+++ b/configs/andes_ae350_45_defconfig
@@ -34,6 +34,7 @@ BR2_TARGET_UBOOT_NEEDS_OPENSBI=y
BR2_TARGET_UBOOT_FORMAT_CUSTOM=y
BR2_TARGET_UBOOT_FORMAT_CUSTOM_NAME="u-boot.itb"
BR2_TARGET_UBOOT_SPL=y
+BR2_PACKAGE_HOST_ANDES_SPI_BURN=y
BR2_PACKAGE_HOST_DOSFSTOOLS=y
BR2_PACKAGE_HOST_GENIMAGE=y
BR2_PACKAGE_HOST_MTOOLS=y
--
2.34.1
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply related [flat|nested] 7+ messages in thread
* [Buildroot] [PATCH v2 3/4] board/andes/ae350: uboot.config.fragment: Support loading U-Boot on RAM
2024-09-04 5:16 [Buildroot] [PATCH v2 0/4] Support Andes SPI_burn tool Yu Chien Peter Lin via buildroot
2024-09-04 5:16 ` [Buildroot] [PATCH v2 1/4] package: andes-spi-burn: new package Yu Chien Peter Lin via buildroot
2024-09-04 5:16 ` [Buildroot] [PATCH v2 2/4] configs/andes_ae350_45: Enable host-andes-spi-burn Yu Chien Peter Lin via buildroot
@ 2024-09-04 5:16 ` Yu Chien Peter Lin via buildroot
2024-09-04 5:16 ` [Buildroot] [PATCH v2 4/4] board/andes/ae350: readme.txt: Add SPI_burn tool instructions Yu Chien Peter Lin via buildroot
3 siblings, 0 replies; 7+ messages in thread
From: Yu Chien Peter Lin via buildroot @ 2024-09-04 5:16 UTC (permalink / raw)
To: buildroot; +Cc: tim609, Yu Chien Peter Lin, ycliang, Thomas Petazzoni
Do not disable SPL RAM support so the u-boot.itb programmed on
flash memory can be used.
Signed-off-by: Yu Chien Peter Lin <peterlin@andestech.com>
---
board/andes/ae350/uboot.config.fragment | 1 -
1 file changed, 1 deletion(-)
diff --git a/board/andes/ae350/uboot.config.fragment b/board/andes/ae350/uboot.config.fragment
index fa38bbca3a..4497ed4c74 100644
--- a/board/andes/ae350/uboot.config.fragment
+++ b/board/andes/ae350/uboot.config.fragment
@@ -1,6 +1,5 @@
CONFIG_SPL_FS_FAT=y
CONFIG_SPL_MMC=y
-# CONFIG_SPL_RAM_SUPPORT is not set
CONFIG_SPL_OPENSBI_LOAD_ADDR=0x0
CONFIG_SPL_OPENSBI_SCRATCH_OPTIONS=0x0
CONFIG_DISPLAY_CPUINFO=y
--
2.34.1
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply related [flat|nested] 7+ messages in thread
* [Buildroot] [PATCH v2 4/4] board/andes/ae350: readme.txt: Add SPI_burn tool instructions
2024-09-04 5:16 [Buildroot] [PATCH v2 0/4] Support Andes SPI_burn tool Yu Chien Peter Lin via buildroot
` (2 preceding siblings ...)
2024-09-04 5:16 ` [Buildroot] [PATCH v2 3/4] board/andes/ae350: uboot.config.fragment: Support loading U-Boot on RAM Yu Chien Peter Lin via buildroot
@ 2024-09-04 5:16 ` Yu Chien Peter Lin via buildroot
2024-09-05 20:42 ` Thomas Petazzoni via buildroot
3 siblings, 1 reply; 7+ messages in thread
From: Yu Chien Peter Lin via buildroot @ 2024-09-04 5:16 UTC (permalink / raw)
To: buildroot; +Cc: tim609, Yu Chien Peter Lin, ycliang, Thomas Petazzoni
Add a section to document how to update bootloader on AE350
platforms with SPI_burn tool.
Signed-off-by: Yu Chien Peter Lin <peterlin@andestech.com>
---
board/andes/ae350/readme.txt | 39 ++++++++++++++++++++++++++++++++++++
1 file changed, 39 insertions(+)
diff --git a/board/andes/ae350/readme.txt b/board/andes/ae350/readme.txt
index 4de4cb3894..8d276ceb4a 100644
--- a/board/andes/ae350/readme.txt
+++ b/board/andes/ae350/readme.txt
@@ -41,6 +41,45 @@ After building, you should obtain the following files:
|-- u-boot-spl.bin
`-- u-boot.itb
+How to update the bootloader and device-tree
+============================================
+
+To update the bootloader and device tree, make sure you have an
+ICEman connection set up as below:
+
+ Local Host Local/Remote Host
+ .-----------------. .--------------.
+ | buildroot images| | |
+ | | ICEman host <IP:PORT>
+ | .----------. | | .--------. |
+ | | SPI_burn |<---+--socket--+->| ICEman | |
+ | '----------' | | '--.-----' |
+ '-----------------' '-----|--------'
+ |
+ USB
+ .--------------. |
+ | target | .-----v-----.
+ | board <----JTAG---| ICE |
+ | | '-----------'
+ '--------------'
+
+The Andes SPI_burn tool will be located in output/host/bin. Use
+the following commands to update the bootloader and device tree:
+
+ $ SPI_burn --host $ICE_IP --port $ICE_BURNER_PORT --addr 0x0 -i u-boot-spl.bin
+ $ SPI_burn --host $ICE_IP --port $ICE_BURNER_PORT --addr 0x10000 -i u-boot.itb
+ $ SPI_burn --host $ICE_IP --port $ICE_BURNER_PORT --addr 0xf0000 -i ae350_ax45mp.dtb
+
+Note that the --addr option specifies the offset starting from
+the flash base address 0x80000000 and set by U-Boot configurations.
+e.g.
+u-boot-spl.bin : CONFIG_SPL_TEXT_BASE=0x80000000
+u-boot.itb : CONFIG_SPL_LOAD_FIT_ADDRESS=0x80010000
+ae350_ax45mp.dtb: CONFIG_SYS_FDT_BASE=0x800f0000
+
+How to write the SD card
+========================
+
Copy the sdcard.img to a SD card with "dd":
$ sudo dd if=sdcard.img of=/dev/sdX bs=4096
--
2.34.1
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply related [flat|nested] 7+ messages in thread
* Re: [Buildroot] [PATCH v2 1/4] package: andes-spi-burn: new package
2024-09-04 5:16 ` [Buildroot] [PATCH v2 1/4] package: andes-spi-burn: new package Yu Chien Peter Lin via buildroot
@ 2024-09-05 20:41 ` Thomas Petazzoni via buildroot
0 siblings, 0 replies; 7+ messages in thread
From: Thomas Petazzoni via buildroot @ 2024-09-05 20:41 UTC (permalink / raw)
To: Yu Chien Peter Lin via buildroot; +Cc: tim609, Yu Chien Peter Lin, ycliang
Hello Peter,
Thanks for this patch! See some comments below.
The commit title should be:
package/andes-spi-burn: new package
On Wed, 4 Sep 2024 13:16:06 +0800
Yu Chien Peter Lin via buildroot <buildroot@buildroot.org> wrote:
> diff --git a/package/andes-spi-burn/Config.in.host b/package/andes-spi-burn/Config.in.host
> new file mode 100644
> index 0000000000..fed4f49f5d
> --- /dev/null
> +++ b/package/andes-spi-burn/Config.in.host
> @@ -0,0 +1,8 @@
> +config BR2_PACKAGE_HOST_ANDES_SPI_BURN
> + bool "host andes-spi-burn"
> + depends on BR2_riscv
> + help
> + Andes Technology SPI_burn tool to program bootloader and
> + device-tree blob onto flash memory of AE350 platform.
> +
> + https://github.com/andestech/Andes-Development-Kit
Indentation of the help text is one tab + 2 spaces. You can run "make
check-package" to get some coding style check.
> diff --git a/package/andes-spi-burn/andes-spi-burn.hash b/package/andes-spi-burn/andes-spi-burn.hash
> new file mode 100644
> index 0000000000..170f362646
> --- /dev/null
> +++ b/package/andes-spi-burn/andes-spi-burn.hash
> @@ -0,0 +1,2 @@
> +# Locally computed
> +sha256 6632bc0ddd0b6d07bd328758cd9132f48429d144079eb8011af60d95b0bdfd6b flash.zip
No license file?
> diff --git a/package/andes-spi-burn/andes-spi-burn.mk b/package/andes-spi-burn/andes-spi-burn.mk
> new file mode 100644
> index 0000000000..2f7387ca2f
> --- /dev/null
> +++ b/package/andes-spi-burn/andes-spi-burn.mk
> @@ -0,0 +1,25 @@
> +################################################################################
> +#
> +# andes-spi-burn
> +#
> +################################################################################
> +
> +ANDES_SPI_BURN_VERSION = 5.3.0
> +ANDES_SPI_BURN_SOURCE = flash.zip
This will unfortunately not work, as the file name doesn't include a
version. So when you will update the package, there will already be a
flash.zip in $DL_DIR/andes-spi-burn/ and the new one will not be
re-downloaded. Therefore, you need to find a way to make sure that the
filename contains the version.
Alternatively, perhaps you could simply use a git clone instead, with
ANDES_SPI_BURN_SITE_METHOD = git.
Except I see your Git repo doesn't actually contain anything... This is
really not great.
> +ANDES_SPI_BURN_SITE = https://github.com/andestech/Andes-Development-Kit/releases/download/ast-v5_3_0-release-windows
> +ANDES_SPI_BURN_LICENSE = Apache-2.0
No license file?
> +
> +define HOST_ANDES_SPI_BURN_EXTRACT_CMDS
> + $(UNZIP) -q $(HOST_ANDES_SPI_BURN_DL_DIR)/$(ANDES_SPI_BURN_SOURCE) -d $(@D)
> +endef
> +
> +define HOST_ANDES_SPI_BURN_BUILD_CMDS
> + $(HOST_MAKE_ENV) $(MAKE) -C $(@D)/flash/src-SPI_burn clean
No need to do the "clean" first. We never do it in Buildroot packages.
> + $(HOST_MAKE_ENV) $(MAKE) -C $(@D)/flash/src-SPI_burn --makefile=Makefile_SPIburn_linux
> +endef
> +
> +define HOST_ANDES_SPI_BURN_INSTALL_CMDS
> + $(INSTALL) -D -m 0755 $(@D)/flash/src-SPI_burn/SPI_burn $(HOST_DIR)/bin/SPI_burn
> +endef
> +
> +$(eval $(host-generic-package))
The rest seems OK to me!
Thomas
--
Thomas Petazzoni, co-owner and CEO, Bootlin
Embedded Linux and Kernel engineering and training
https://bootlin.com
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [Buildroot] [PATCH v2 4/4] board/andes/ae350: readme.txt: Add SPI_burn tool instructions
2024-09-04 5:16 ` [Buildroot] [PATCH v2 4/4] board/andes/ae350: readme.txt: Add SPI_burn tool instructions Yu Chien Peter Lin via buildroot
@ 2024-09-05 20:42 ` Thomas Petazzoni via buildroot
0 siblings, 0 replies; 7+ messages in thread
From: Thomas Petazzoni via buildroot @ 2024-09-05 20:42 UTC (permalink / raw)
To: Yu Chien Peter Lin via buildroot; +Cc: tim609, Yu Chien Peter Lin, ycliang
Hello Peter,
On Wed, 4 Sep 2024 13:16:09 +0800
Yu Chien Peter Lin via buildroot <buildroot@buildroot.org> wrote:
> +How to update the bootloader and device-tree
> +============================================
> +
> +To update the bootloader and device tree, make sure you have an
> +ICEman connection set up as below:
What is ICEman? This probably should be explained, with a relevant link
or something.
Thanks!
Thomas
--
Thomas Petazzoni, co-owner and CEO, Bootlin
Embedded Linux and Kernel engineering and training
https://bootlin.com
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2024-09-05 20:42 UTC | newest]
Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-09-04 5:16 [Buildroot] [PATCH v2 0/4] Support Andes SPI_burn tool Yu Chien Peter Lin via buildroot
2024-09-04 5:16 ` [Buildroot] [PATCH v2 1/4] package: andes-spi-burn: new package Yu Chien Peter Lin via buildroot
2024-09-05 20:41 ` Thomas Petazzoni via buildroot
2024-09-04 5:16 ` [Buildroot] [PATCH v2 2/4] configs/andes_ae350_45: Enable host-andes-spi-burn Yu Chien Peter Lin via buildroot
2024-09-04 5:16 ` [Buildroot] [PATCH v2 3/4] board/andes/ae350: uboot.config.fragment: Support loading U-Boot on RAM Yu Chien Peter Lin via buildroot
2024-09-04 5:16 ` [Buildroot] [PATCH v2 4/4] board/andes/ae350: readme.txt: Add SPI_burn tool instructions Yu Chien Peter Lin via buildroot
2024-09-05 20:42 ` Thomas Petazzoni via buildroot
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.