<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<title><![CDATA[wolfSSL - Embedded SSL Library — version 2.0.2 questions]]></title>
		<link>https://www.wolfssl.com/forums/topic2104-version-202-questions.html</link>
		<atom:link href="https://www.wolfssl.com/forums/feed-rss-topic2104.xml" rel="self" type="application/rss+xml" />
		<description><![CDATA[The most recent posts in version 2.0.2 questions.]]></description>
		<lastBuildDate>Tue, 16 Apr 2024 17:59:36 +0000</lastBuildDate>
		<generator>PunBB</generator>
		<item>
			<title><![CDATA[Re: version 2.0.2 questions]]></title>
			<link>https://www.wolfssl.com/forums/post7588.html#p7588</link>
			<description><![CDATA[<p>Hi Arto,</p><p>Thanks for reporting these!</p><p> - The <span class="bbu">F4</span> problem has been fixed now in <a href="https://github.com/wolfSSL/wolfBoot/pull/434">https://github.com/wolfSSL/wolfBoot/pull/434</a><br /> - The <span class="bbu">G0</span> warnings have been silenced with an explicit cast when retrieving the address of the flags in <a href="https://github.com/wolfSSL/wolfBoot/pull/435">https://github.com/wolfSSL/wolfBoot/pull/435</a></p><p>We are in the process of releasing a new version (2.1.0) which will contain these fix.</p><p> - Regarding the <span class="bbu">H7</span> issues they might be indeed small differences in the configuration between the two models. There is a .gdbinit that automatically loads both wolfboot + the test application so you can debug across staging. Please let us know if we can assist further, and adapt the port to support your model. I&#039;d suggest we continue the conversation through our support ticketing system. Feel free to send an email to support at wolfssl.com&nbsp; with as many details you can share about UART3 initialization failure.</p><p>Kind Regards,</p><p>-- <br />Daniele - wolfSSL</p>]]></description>
			<author><![CDATA[null@example.com (danielinux)]]></author>
			<pubDate>Tue, 16 Apr 2024 17:59:36 +0000</pubDate>
			<guid>https://www.wolfssl.com/forums/post7588.html#p7588</guid>
		</item>
		<item>
			<title><![CDATA[Re: version 2.0.2 questions]]></title>
			<link>https://www.wolfssl.com/forums/post7586.html#p7586</link>
			<description><![CDATA[<p>Hello David,</p><p>My company has (already) decided to use wolfSSL components, provided that we manage to get them integrated in our products.</p><p>I am trying to evaluate the package, and for that I downloaded the latest release 2.0.2 and the accoutrements.</p><p>My initial build environment was WSL, but for several reasons, I am going to set up a proper Debian machine.</p><br /><p>The first phase is to get the package built and to explore the provided examples: I have begun with the <em>test-app</em> in the release.<br />Later on I will try out the provided examples in the wolfSSL-examples repository.</p><br /><p>We have currently eight STM32 families in active production: F0,F2,F3,F4,G0,H7,L1,L4, with L5 superseding L1 after rewriting (SPL code) for L5 (LL code). L1 is the odd-ball in the portfolio, so I was not surprised to find that you do not have support for it.<br />Of these families, F4 is the most important, it has been our mainstream controller in many products.</p><br /><p>I started by trying to build the package for all of the pertinent controller families (with the configurations in the config/examples -directory and also with make config).<br />Selected four families for which I had suitable test hardware: F4,G0,H7,L5</p><p>The build environment uses a few months old Debian release, latest gcc and tools. I am having some trouble setting a reliable connection to the progrmm</p><p>All of the following concentrate on the provided <strong>test-app</strong></p><br /><p><span class="bbu">F4</span><br />We use at least STM32F407, STM32F437/STM32F439, STM32F467/STM32F469; all with maximum available memory.<br />Using Keil MCBSTM32F400 w/ STM32F407 as a test board.</p><p>Tried to build this by copying config/examples/stm32f4.config -&gt; .config (in the wolfBoot root).<br />Below is the entire output produced the build process:</p><div class="codebox"><pre><code>make distclean
make all

make -C tools/bin-assemble/
make[1]: Entering directory &#039;/home/r2/wolfboot-2.0.2/tools/bin-assemble&#039;
gcc -D&quot;WOLFBOOT_SIGN_ED25519&quot; -D&quot;FILL_BYTE=0xFF&quot; -Os -D&quot;WOLFBOOT_HASH_SHA256&quot; -DIMAGE_HEADER_SIZE=256  -Wall -g -ggdb   -c -o bin-assemble.o bin-assemble.c
make[1]: Leaving directory &#039;/home/r2/wolfboot-2.0.2/tools/bin-assemble&#039;
        [CC-ARM] hal/stm32f4.o
        [CC-ARM] src/string.o
        [CC-ARM] src/image.o
        [CC-ARM] src/libwolfboot.o
make[1]: Entering directory &#039;/home/r2/wolfboot-2.0.2&#039;
Building key tools
make[2]: Entering directory &#039;/home/r2/wolfboot-2.0.2/tools/keytools&#039;
make[2]: Leaving directory &#039;/home/r2/wolfboot-2.0.2/tools/keytools&#039;
make[2]: Entering directory &#039;/home/r2/wolfboot-2.0.2/tools/keytools&#039;
Building signing tool
Building keygen tool
make[2]: Leaving directory &#039;/home/r2/wolfboot-2.0.2/tools/keytools&#039;
make[1]: Leaving directory &#039;/home/r2/wolfboot-2.0.2&#039;
Keytype: ED25519
Generating key (type: ED25519)
Associated key file:   wolfboot_signing_private_key.der
Partition ids mask:   ffffffff
Key type   :           ED25519
Public key slot:       0
Done.
        [CC-ARM] src/keystore.o
        [CC-ARM] src/loader.o
        [CC-ARM] src/boot_arm.o
        [CC-ARM] src/update_flash.o
        [CC-ARM] lib/wolfssl/wolfcrypt/src/sha256.o
        [CC-ARM] lib/wolfssl/wolfcrypt/src/asn.o
        [CC-ARM] lib/wolfssl/wolfcrypt/src/sha512.o
        [CC-ARM] lib/wolfssl/wolfcrypt/src/ed25519.o
        [CC-ARM] lib/wolfssl/wolfcrypt/src/ge_low_mem.o
        [CC-ARM] lib/wolfssl/wolfcrypt/src/hash.o
        [CC-ARM] lib/wolfssl/wolfcrypt/src/wolfmath.o
        [CC-ARM] lib/wolfssl/wolfcrypt/src/wc_port.o
        [CC-ARM] lib/wolfssl/wolfcrypt/src/fe_low_mem.o
        [LD] wolfboot.elf
./hal/stm32f4.o ./src/string.o ./src/image.o ./src/libwolfboot.o ./src/keystore.o ./src/loader.o src/boot_arm.o ./src/update_flash.o ./lib/wolfssl/wolfcrypt/src/sha256.o ./lib/wolfssl/wolfcrypt/src/asn.o ./lib/wolfssl/wolfcrypt/src/sha512.o ./lib/wolfssl/wolfcrypt/src/ed25519.o ./lib/wolfssl/wolfcrypt/src/ge_low_mem.o ./lib/wolfssl/wolfcrypt/src/hash.o ./lib/wolfssl/wolfcrypt/src/wolfmath.o ./lib/wolfssl/wolfcrypt/src/wc_port.o ./lib/wolfssl/wolfcrypt/src/fe_low_mem.o
        [BIN] wolfboot.bin

        [SIZE]
   text    data     bss     dec     hex filename
  11096       0      40   11136    2b80 wolfboot.elf

make[1]: Entering directory &#039;/home/r2/wolfboot-2.0.2/test-app&#039;
        [CC-ARM] app_stm32f4.o
        [CC-ARM] led.o
        [CC-ARM] system.o
        [CC-ARM] timer.o
        [CC-ARM] ../test-app/libwolfboot.o
        [CC-ARM] startup_arm.o
        [LD] image.elf
/usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/bin/ld: section .ARM.exidx LMA [08020fc8,08020fcf] overlaps section .data LMA [08020fc8,0802150f]
collect2: error: ld returned 1 exit status
make[1]: *** [Makefile:340: image.elf] Error 1
make[1]: Leaving directory &#039;/home/r2/wolfboot-2.0.2/test-app&#039;
make: *** [Makefile:147: test-app/image.bin] Error 2</code></pre></div><p>This has just a minor overlap in the linking phase, but it prevents the binary to be built.<br />It appears that the F4 uses the &#039;oldest&#039; of the linking scripts (possibly ARM.ld), combining several families together.</p><br /><br /><br /><p><span class="bbu">G0</span><br />From what I remember, we use at least STM32G031 and STMG071<br />Using NUCLEO-G070RB as a test board.</p><p>Tried to build this by copying config/examples/stm32g0.config -&gt; .config (in the wolfBoot root).<br />Below is the entire output produced the build process:</p><div class="codebox"><pre><code>make distclean
make all

make -C tools/bin-assemble/
make[1]: Entering directory &#039;/home/r2/wolfboot-2.0.2/tools/bin-assemble&#039;
gcc -D&quot;WOLFBOOT_SIGN_ED25519&quot; -D&quot;RAM_CODE&quot; -D&quot;FILL_BYTE=0xFF&quot; -D&quot;NVM_FLASH_WRITEONCE&quot; -Os -D&quot;WOLFBOOT_HASH_SHA256&quot; -DIMAGE_HEADER_SIZE=256  -Wall -g -ggdb   -c -o bin-assemble.o bin-assemble.c
make[1]: Leaving directory &#039;/home/r2/wolfboot-2.0.2/tools/bin-assemble&#039;
        [CC-ARM] hal/stm32g0.o
        [CC-ARM] src/string.o
        [CC-ARM] src/image.o
        [CC-ARM] src/libwolfboot.o
make[1]: Entering directory &#039;/home/r2/wolfboot-2.0.2&#039;
Building key tools
make[2]: Entering directory &#039;/home/r2/wolfboot-2.0.2/tools/keytools&#039;
make[2]: Leaving directory &#039;/home/r2/wolfboot-2.0.2/tools/keytools&#039;
make[2]: Entering directory &#039;/home/r2/wolfboot-2.0.2/tools/keytools&#039;
Building signing tool
Building keygen tool
make[2]: Leaving directory &#039;/home/r2/wolfboot-2.0.2/tools/keytools&#039;
make[1]: Leaving directory &#039;/home/r2/wolfboot-2.0.2&#039;
Keytype: ED25519
Generating key (type: ED25519)
Associated key file:   wolfboot_signing_private_key.der
Partition ids mask:   ffffffff
Key type   :           ED25519
Public key slot:       0
Done.
        [CC-ARM] src/keystore.o
        [CC-ARM] src/loader.o
        [CC-ARM] src/boot_arm.o
        [CC-ARM] src/update_flash.o
        [CC-ARM] lib/wolfssl/wolfcrypt/src/sha256.o
        [CC-ARM] lib/wolfssl/wolfcrypt/src/asn.o
        [CC-ARM] lib/wolfssl/wolfcrypt/src/sha512.o
        [CC-ARM] lib/wolfssl/wolfcrypt/src/ed25519.o
        [CC-ARM] lib/wolfssl/wolfcrypt/src/ge_low_mem.o
        [CC-ARM] lib/wolfssl/wolfcrypt/src/hash.o
        [CC-ARM] lib/wolfssl/wolfcrypt/src/wolfmath.o
        [CC-ARM] lib/wolfssl/wolfcrypt/src/wc_port.o
        [CC-ARM] lib/wolfssl/wolfcrypt/src/fe_low_mem.o
        [LD] wolfboot.elf
./hal/stm32g0.o ./src/string.o ./src/image.o ./src/libwolfboot.o ./src/keystore.o ./src/loader.o src/boot_arm.o ./src/update_flash.o ./lib/wolfssl/wolfcrypt/src/sha256.o ./lib/wolfssl/wolfcrypt/src/asn.o ./lib/wolfssl/wolfcrypt/src/sha512.o ./lib/wolfssl/wolfcrypt/src/ed25519.o ./lib/wolfssl/wolfcrypt/src/ge_low_mem.o ./lib/wolfssl/wolfcrypt/src/hash.o ./lib/wolfssl/wolfcrypt/src/wolfmath.o ./lib/wolfssl/wolfcrypt/src/wc_port.o ./lib/wolfssl/wolfcrypt/src/fe_low_mem.o
        [BIN] wolfboot.bin

        [SIZE]
   text    data     bss     dec     hex filename
  12568       0    2104   14672    3950 wolfboot.elf

make[1]: Entering directory &#039;/home/r2/wolfboot-2.0.2/test-app&#039;
        [CC-ARM] app_stm32g0.o
        [CC-ARM] led.o
        [CC-ARM] system.o
        [CC-ARM] timer.o
        [CC-ARM] ../test-app/libwolfboot.o
../src/libwolfboot.c: In function &#039;nvm_select_fresh_sector&#039;:
../src/libwolfboot.c:243:12: warning: array subscript -1 is outside array bounds of &#039;uint8_t[2147483647]&#039; {aka &#039;unsigned char[2147483647]&#039;} [-Warray-bounds=]
  243 |     word_0 = *((uint32_t*)(base - sizeof(uint32_t)));
      |     ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../src/libwolfboot.c:244:12: warning: array subscript -513 is outside array bounds of &#039;uint8_t[2147483647]&#039; {aka &#039;unsigned char[2147483647]&#039;} [-Warray-bounds=]
  244 |     word_1 = *((uint32_t*)(base - WOLFBOOT_SECTOR_SIZE - sizeof(uint32_t)));
      |     ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
        [CC-ARM] startup_arm.o
        [LD] image.elf
        [BIN] image.bin
make[1]: Leaving directory &#039;/home/r2/wolfboot-2.0.2/test-app&#039;
   text    data     bss     dec     hex filename
   2380       0     324    2704     a90 test-app/image.elf
        [SIGN] test-app/image.bin
wolfBoot KeyTools (Compiled C version)
wolfBoot version 2000002
Update type:          Firmware
Input image:          test-app/image.bin
Selected cipher:      ED25519
Selected hash  :      SHA256
Public key:           wolfboot_signing_private_key.der
Output  image:        test-app/image_v1_signed.bin
Target partition id : 1
Found ed25519 key
image header size calculated at runtime (256 bytes)
Calculating SHA256 digest...
Signing the digest...
Output image(s) successfully created.
        [MERGE] factory.bin
        Added        12568 bytes at 0x08000000 from wolfboot.bin
        Added        20200 bytes of 0xff fill
        Added         2636 bytes at 0x08008000 from test-app/image_v1_signed.bin</code></pre></div><p>This build is otherwise ok, but the warnings about the out-of-bounds indices are somewhat ominous.</p><br /><p><span class="bbu">H7</span><br />We currently use STM32H7A3 and STM32H7B3.<br />Using NUCLEO-H743ZI as a test board (identical to NUCLEO-H753ZI [checked], except for crypto peripherals)</p><p>The build was successful. I transferred the binary to the board; it launched ok, or nearly. <br />The middle led stays unlit, indicating that the initialization of USART3 failed. <br />I&#039;ll need to setup remote GDB to find out what went wrong.<br />The two other LEDs are lit after reset, indicating that the boot was successful.</p><br /><p>It would be greatly appreciated, if you could help us out with these minor issues in this otherwise fine product. <br />Your components fit nicely in our functional-safety-first architecture.</p><br /><p>Respectfully yours,<br />Arto Kallio, Hedengren R&amp;D</p>]]></description>
			<author><![CDATA[null@example.com (arkaksi)]]></author>
			<pubDate>Mon, 15 Apr 2024 19:57:07 +0000</pubDate>
			<guid>https://www.wolfssl.com/forums/post7586.html#p7586</guid>
		</item>
		<item>
			<title><![CDATA[Re: version 2.0.2 questions]]></title>
			<link>https://www.wolfssl.com/forums/post7585.html#p7585</link>
			<description><![CDATA[<p>Hi Arto,</p><p>Thank you for your interest in wolfBoot on the STM32. Which STM32 part are you trying to evaluate for? </p><p>We have automated testing that builds and runs most of the supported targets, so I am surprised you had issues. I will specifically try and reproduce the STM32G0 and STM32F4 issues.</p><p>We provide example configurations in config/examples that are good starting points, but typically you need some customizing for your specific part. The test-apps are really just for testing to demonstrate and can be useful for showing how to adjust your application to support the signed image header.</p><p>We will also reach out directly as we&#039;d like to here about your project and how we can support you.</p><p>Thanks,<br />David Garske, wolfSSL</p>]]></description>
			<author><![CDATA[null@example.com (dgarske)]]></author>
			<pubDate>Mon, 15 Apr 2024 17:09:21 +0000</pubDate>
			<guid>https://www.wolfssl.com/forums/post7585.html#p7585</guid>
		</item>
		<item>
			<title><![CDATA[version 2.0.2 questions]]></title>
			<link>https://www.wolfssl.com/forums/post7583.html#p7583</link>
			<description><![CDATA[<p>hello all,</p><p>trying to evaluate the product, using wolfBoot version 2.0.2 and gcc-arm-none-eabi (gcc 13.2.1) toolchain.</p><p>using preconfigured configuration files (from config/examples) for now, just to get started.</p><p>compilation of STM32H7 and STM32L5 targets were successful.</p><p>STM32G0 compilation gives warnings about negative array indices.</p><p>STM32F4 might be missing something, it does not compile properly, gives error about overlapping sections; a F4-targeted linker script is not found in test-app (while H7 &amp; L5 &amp; G0 each have their own scripts).</p><p>I was sort of expecting the provided examples to work out-of-the-box. any idea what could be wrong, do I _need_ to use &#039;make config&#039;?</p>]]></description>
			<author><![CDATA[null@example.com (arkaksi)]]></author>
			<pubDate>Sun, 14 Apr 2024 17:54:29 +0000</pubDate>
			<guid>https://www.wolfssl.com/forums/post7583.html#p7583</guid>
		</item>
	</channel>
</rss>
