Skip to content

Commit 994fe00

Browse files
twcook86danielinux
authored andcommitted
Update target doc
1 parent d3a3ede commit 994fe00

1 file changed

Lines changed: 277 additions & 31 deletions

File tree

docs/Targets.md

Lines changed: 277 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -2359,17 +2359,22 @@ LinkServer flash LPC55S69 erase
23592359
```sh
23602360
LinkServer flash LPC55S69 load factory.bin:0
23612361
```
2362+
NOTE: See [tools/scripts/lpc55s69/lpc55s69_flash_factory_bin.cmm](/tools/scripts/lpc55s69/lpc55s69_flash_factory_bin.cmm) for the lauterbach equivalent of 1 and 2 combined.
23622363

23632364
3) The LED will light up blue to indicate version 1 of the firmware is running. You should also see output
23642365
like this in the terminal window:
23652366

23662367
```sh
23672368
lpc55s69 init
2368-
Boot partition: 0xA000 (sz 24016, ver 0x1, type 0x601)
2369-
Partition 1 header magic 0xFFFFFFFF invalid at 0x15000
2370-
Boot partition: 0xA000 (sz 24016, ver 0x1, type 0x601)
2369+
Boot partition: 0xD000 (sz 22460, ver 0x1, type 0x601)
2370+
Partition 1 header magic 0xFFFFFFFF invalid at 0x18000
2371+
Boot partition: 0xD000 (sz 22460, ver 0x1, type 0x601)
23712372
Booting version: 0x1
2372-
lpc55s69 init
2373+
2374+
==================================
2375+
LPC55S69 wolfBoot demo Application
2376+
Copyright 2026 wolfSSL Inc
2377+
==================================
23732378
boot: ver=0x1 state=0xFF
23742379
update: ver=0x0 state=0xFF
23752380
Calling wolfBoot_success()
@@ -2382,25 +2387,30 @@ Calling wolfBoot_success()
23822387
1) Sign the test-app with version 2:
23832388

23842389
```sh
2385-
./tools/keytools/sign --ecc384 --sha384 test-app/image.bin wolfboot_signing_private_key.der 2
2390+
./tools/keytools/sign --ecc384 --sha256 test-app/image.bin wolfboot_signing_private_key.der 2
23862391
```
23872392

23882393
2) Flash v2 update binary to your `.config`'s `WOLFBOOT_PARTITION_UPDATE_ADDRESS`
23892394

23902395
Example:
23912396
```sh
2392-
LinkServer flash LPC55S69 load test-app/image_v2_signed.bin:0x15000
2397+
LinkServer flash LPC55S69 load test-app/image_v2_signed.bin:0x18000
23932398
```
2399+
NOTE: See [tools/scripts/lpc55s69/lpc55s69_flash_update.cmm](/tools/scripts/lpc55s69/lpc55s69_flash_update.cmm) for the lauterbach equivalent.
23942400

23952401
3) You should see output like this in the terminal window:
23962402

23972403
```sh
23982404
lpc55s69 init
2399-
Boot partition: 0xA000 (sz 24016, ver 0x1, type 0x601)
2400-
Update partition: 0x15000 (sz 24016, ver 0x2, type 0x601)
2401-
Boot partition: 0xA000 (sz 24016, ver 0x1, type 0x601)
2405+
Boot partition: 0xD000 (sz 22460, ver 0x1, type 0x601)
2406+
Update partition: 0x18000 (sz 22460, ver 0x2, type 0x601)
2407+
Boot partition: 0xD000 (sz 22460, ver 0x1, type 0x601)
24022408
Booting version: 0x1
2403-
lpc55s69 init
2409+
2410+
==================================
2411+
LPC55S69 wolfBoot demo Application
2412+
Copyright 2026 wolfSSL Inc
2413+
==================================
24042414
boot: ver=0x1 state=0x00
24052415
update: ver=0x2 state=0xFF
24062416
Update detected, version: 0x2
@@ -2417,18 +2427,18 @@ like this in the terminal window:
24172427

24182428
```sh
24192429
lpc55s69 init
2420-
Update partition: 0x15000 (sz 24016, ver 0x2, type 0x601)
2421-
Boot partition: 0xA000 (sz 24016, ver 0x1, type 0x601)
2422-
Update partition: 0x15000 (sz 24016, ver 0x2, type 0x601)
2430+
Update partition: 0x18000 (sz 22460, ver 0x2, type 0x601)
2431+
Boot partition: 0xD000 (sz 22460, ver 0x1, type 0x601)
2432+
Update partition: 0x18000 (sz 22460, ver 0x2, type 0x601)
24232433
Starting Update (fallback allowed 0)
2424-
Update partition: 0x15000 (sz 24016, ver 0x2, type 0x601)
2425-
Boot partition: 0xA000 (sz 24016, ver 0x1, type 0x601)
2434+
Update partition: 0x18000 (sz 22460, ver 0x2, type 0x601)
2435+
Boot partition: 0xD000 (sz 22460, ver 0x1, type 0x601)
24262436
Versions: Current 0x1, Update 0x2
24272437
Copy sector 0 (part 1->2)
24282438
Copy sector 0 (part 0->1)
24292439
Copy sector 0 (part 2->0)
2430-
Boot partition: 0xA000 (sz 24016, ver 0x2, type 0x601)
2431-
Update partition: 0x15000 (sz 24016, ver 0x1, type 0x601)
2440+
Boot partition: 0xD000 (sz 22460, ver 0x2, type 0x601)
2441+
Update partition: 0x18000 (sz 22460, ver 0x1, type 0x601)
24322442
Copy sector 1 (part 1->2)
24332443
Copy sector 1 (part 0->1)
24342444
Copy sector 1 (part 2->0)
@@ -2561,23 +2571,18 @@ Copy sector 43 (part 2->0)
25612571
Copy sector 44 (part 1->2)
25622572
Copy sector 44 (part 0->1)
25632573
Copy sector 44 (part 2->0)
2564-
Copy sector 45 (part 1->2)
2565-
Copy sector 45 (part 0->1)
2566-
Copy sector 45 (part 2->0)
2567-
Copy sector 46 (part 1->2)
2568-
Copy sector 46 (part 0->1)
2569-
Copy sector 46 (part 2->0)
2570-
Copy sector 47 (part 1->2)
2571-
Copy sector 47 (part 0->1)
2572-
Copy sector 47 (part 2->0)
2573-
Erasing remainder of partition (38 sectors)...
2574-
Boot partition: 0xA000 (sz 24016, ver 0x2, type 0x601)
2575-
Update partition: 0x15000 (sz 24016, ver 0x1, type 0x601)
2574+
Erasing remainder of partition (41 sectors)...
2575+
Boot partition: 0xD000 (sz 22460, ver 0x2, type 0x601)
2576+
Update partition: 0x18000 (sz 22460, ver 0x1, type 0x601)
25762577
Copy sector 85 (part 0->2)
25772578
Copied boot sector to swap
2578-
Boot partition: 0xA000 (sz 24016, ver 0x2, type 0x601)
2579+
Boot partition: 0xD000 (sz 22460, ver 0x2, type 0x601)
25792580
Booting version: 0x2
2580-
lpc55s69 init
2581+
2582+
==================================
2583+
LPC55S69 wolfBoot demo Application
2584+
Copyright 2026 wolfSSL Inc
2585+
==================================
25812586
boot: ver=0x2 state=0x10
25822587
update: ver=0x1 state=0xFF
25832588
Calling wolfBoot_success()
@@ -2600,7 +2605,248 @@ b main
26002605
mon reset
26012606
c
26022607
```
2608+
NOTE: See [tools/scripts/lpc55s69/lpc55s69_debug.cmm](/tools/scripts/lpc55s69/lpc55s69_debug.cmm) for the lauterbach equivalent.
2609+
2610+
2611+
### LPC55S69: Test and Benchmark
2612+
2613+
Here is an example of how to run wolfCrypt test and benchmarking on actual hardware.
2614+
2615+
1. Start with [lpc55s69-benchmark.config](/config/examples/lpc55s69-benchmark.config)
2616+
- By default, the config file has PKA?=0, which means hardware acceleration of crypto is off. Let's try that first.
2617+
```sh
2618+
cp config/examples/lpc55s69-benchmark.config .config
2619+
make clean
2620+
make
2621+
```
2622+
2623+
2. Flash the factory.bin and reboot...
2624+
```sh
2625+
lpc55s69 init
2626+
Boot partition: 0x10000 (sz 162932, ver 0x1, type 0x201)
2627+
Partition 1 header magic 0xFFFFFFFF invalid at 0x3B000
2628+
Boot partition: 0x10000 (sz 162932, ver 0x1, type 0x201)
2629+
Booting version: 0x1
2630+
2631+
==================================
2632+
LPC55S69 wolfBoot demo Application
2633+
Copyright 2026 wolfSSL Inc
2634+
==================================
2635+
boot: ver=0x1 state=0xFF
2636+
update: ver=0x0 state=0xFF
2637+
Calling wolfBoot_success()
2638+
boot: ver=0x1 state=0x00
2639+
update: ver=0x0 state=0xFF
2640+
2641+
Running wolfCrypt tests...
2642+
------------------------------------------------------------------------------
2643+
wolfSSL version 5.9.1
2644+
------------------------------------------------------------------------------
2645+
macro test passed!
2646+
error test passed!
2647+
MEMORY test passed!
2648+
asn test passed!
2649+
SHA-256 test passed!
2650+
SHA-384 test passed!
2651+
SHA-512 test passed!
2652+
SHA-512/224 test passed!
2653+
SHA-512/256 test passed!
2654+
RANDOM test passed!
2655+
Hash test passed!
2656+
HMAC-SHA256 test passed!
2657+
HMAC-SHA384 test passed!
2658+
HMAC-SHA512 test passed!
2659+
GMAC test passed!
2660+
AES test passed!
2661+
AES192 test passed!
2662+
AES256 test passed!
2663+
AES-CBC test passed!
2664+
AES-CTR test passed!
2665+
AES-OFB test passed!
2666+
AES-GCM test passed!
2667+
AES-CFB test passed!
2668+
ECC test passed!
2669+
ECC buffer test passed!
2670+
logging test passed!
2671+
mutex test passed!
2672+
memcb test passed!
2673+
Test complete
2674+
Tests complete.
2675+
2676+
2677+
Running wolfCrypt benchmarks...
2678+
wolfCrypt Benchmark (block bytes 1024, min 1.0 sec each)
2679+
RNG SHA-256 DRBG 325 KiB took 1.044 seconds, 311.302 KiB/s
2680+
AES-128-CBC-enc 350 KiB took 1.051 seconds, 333.016 KiB/s
2681+
AES-128-CBC-dec 350 KiB took 1.057 seconds, 331.125 KiB/s
2682+
AES-192-CBC-enc 300 KiB took 1.035 seconds, 289.855 KiB/s
2683+
AES-192-CBC-dec 300 KiB took 1.040 seconds, 288.461 KiB/s
2684+
AES-256-CBC-enc 275 KiB took 1.064 seconds, 258.458 KiB/s
2685+
AES-256-CBC-dec 275 KiB took 1.062 seconds, 258.701 KiB/s
2686+
AES-128-GCM-enc 275 KiB took 1.036 seconds, 265.188 KiB/s
2687+
AES-128-GCM-dec 275 KiB took 1.035 seconds, 265.444 KiB/s
2688+
AES-192-GCM-enc 250 KiB took 1.057 seconds, 236.518 KiB/s
2689+
AES-192-GCM-dec 250 KiB took 1.056 seconds, 236.742 KiB/s
2690+
AES-256-GCM-enc 225 KiB took 1.047 seconds, 214.899 KiB/s
2691+
AES-256-GCM-dec 225 KiB took 1.046 seconds, 215.105 KiB/s
2692+
AES-128-GCM-enc-no_AAD 275 KiB took 1.033 seconds, 265.957 KiB/s
2693+
AES-128-GCM-dec-no_AAD 275 KiB took 1.032 seconds, 266.214 KiB/s
2694+
AES-192-GCM-enc-no_AAD 250 KiB took 1.053 seconds, 237.191 KiB/s
2695+
AES-192-GCM-dec-no_AAD 250 KiB took 1.052 seconds, 237.416 KiB/s
2696+
AES-256-GCM-enc-no_AAD 225 KiB took 1.044 seconds, 215.517 KiB/s
2697+
AES-256-GCM-dec-no_AAD 225 KiB took 1.042 seconds, 215.723 KiB/s
2698+
GMAC Table 1 MiB took 1.009 seconds, 1.208 MiB/s
2699+
AES-128-ECB-enc 374 KiB took 1.026 seconds, 364.167 KiB/s
2700+
AES-128-ECB-dec 385 KiB took 1.027 seconds, 374.878 KiB/s
2701+
AES-192-ECB-enc 319 KiB took 1.024 seconds, 311.219 KiB/s
2702+
AES-192-ECB-dec 330 KiB took 1.018 seconds, 323.846 KiB/s
2703+
AES-256-ECB-enc 286 KiB took 1.036 seconds, 276.061 KiB/s
2704+
AES-256-ECB-dec 286 KiB took 1.006 seconds, 284.011 KiB/s
2705+
AES-128-CFB-enc 350 KiB took 1.064 seconds, 328.947 KiB/s
2706+
AES-128-CFB-dec 350 KiB took 1.057 seconds, 331.125 KiB/s
2707+
AES-192-CFB-enc 300 KiB took 1.046 seconds, 286.532 KiB/s
2708+
AES-192-CFB-dec 300 KiB took 1.039 seconds, 288.461 KiB/s
2709+
AES-256-CFB-enc 275 KiB took 1.074 seconds, 256.052 KiB/s
2710+
AES-256-CFB-dec 275 KiB took 1.067 seconds, 257.490 KiB/s
2711+
AES-128-OFB-enc 350 KiB took 1.020 seconds, 343.137 KiB/s
2712+
AES-128-OFB-dec 350 KiB took 1.019 seconds, 343.137 KiB/s
2713+
AES-192-OFB-enc 300 KiB took 1.009 seconds, 297.324 KiB/s
2714+
AES-192-OFB-dec 300 KiB took 1.009 seconds, 297.324 KiB/s
2715+
AES-256-OFB-enc 275 KiB took 1.038 seconds, 264.677 KiB/s
2716+
AES-256-OFB-dec 275 KiB took 1.039 seconds, 264.423 KiB/s
2717+
AES-128-CTR 350 KiB took 1.010 seconds, 346.191 KiB/s
2718+
AES-192-CTR 300 KiB took 1.003 seconds, 299.102 KiB/s
2719+
AES-256-CTR 275 KiB took 1.033 seconds, 265.957 KiB/s
2720+
SHA-256 1000 KiB took 1.000 seconds, 1000.000 KiB/s
2721+
SHA-384 425 KiB took 1.060 seconds, 400.565 KiB/s
2722+
SHA-512 425 KiB took 1.060 seconds, 400.565 KiB/s
2723+
SHA-512/224 425 KiB took 1.062 seconds, 400.188 KiB/s
2724+
SHA-512/256 425 KiB took 1.060 seconds, 400.565 KiB/s
2725+
HMAC-SHA256 1000 KiB took 1.009 seconds, 991.080 KiB/s
2726+
HMAC-SHA384 400 KiB took 1.015 seconds, 394.088 KiB/s
2727+
HMAC-SHA512 400 KiB took 1.015 seconds, 394.088 KiB/s
2728+
ECC [ SECP256R1] 256 key gen 72 ops took 1.007 sec, avg 13.986 ms, 71.499 ops/sec
2729+
ECDHE [ SECP256R1] 256 agree 34 ops took 1.013 sec, avg 29.823 ms, 33.530 ops/sec
2730+
ECDSA [ SECP256R1] 256 sign 42 ops took 1.036 sec, avg 24.690 ms, 40.501 ops/sec
2731+
ECDSA [ SECP256R1] 256 verify 22 ops took 1.003 sec, avg 45.590 ms, 21.934 ops/sec
2732+
RNG 256 SHA256 Init/Free 196 ops took 1.003 sec, avg 5.117 ms, 195.413 ops/sec
2733+
Benchmark complete
2734+
Benchmarks complete.
2735+
```
2736+
2737+
2. Now try changing to PKA?=1 in the config file, rebuild, and reflash...
2738+
```sh
2739+
lpc55s69 init
2740+
Boot partition: 0x10000 (sz 163148, ver 0x1, type 0x201)
2741+
Partition 1 header magic 0xFFFFFFFF invalid at 0x3B000
2742+
Boot partition: 0x10000 (sz 163148, ver 0x1, type 0x201)
2743+
Booting version: 0x1
26032744

2745+
==================================
2746+
LPC55S69 wolfBoot demo Application
2747+
Copyright 2026 wolfSSL Inc
2748+
==================================
2749+
boot: ver=0x1 state=0xFF
2750+
update: ver=0x0 state=0xFF
2751+
Calling wolfBoot_success()
2752+
boot: ver=0x1 state=0x00
2753+
update: ver=0x0 state=0xFF
2754+
2755+
Running wolfCrypt tests...
2756+
------------------------------------------------------------------------------
2757+
wolfSSL version 5.9.1
2758+
------------------------------------------------------------------------------
2759+
macro test passed!
2760+
error test passed!
2761+
MEMORY test passed!
2762+
asn test passed!
2763+
SHA-256 test passed!
2764+
SHA-384 test passed!
2765+
SHA-512 test passed!
2766+
SHA-512/224 test passed!
2767+
SHA-512/256 test passed!
2768+
RANDOM test passed!
2769+
Hash test passed!
2770+
HMAC-SHA256 test passed!
2771+
HMAC-SHA384 test passed!
2772+
HMAC-SHA512 test passed!
2773+
GMAC test passed!
2774+
AES test passed!
2775+
AES192 test passed!
2776+
AES256 test passed!
2777+
AES-CBC test passed!
2778+
AES-CTR test passed!
2779+
AES-OFB test passed!
2780+
AES-GCM test passed!
2781+
AES-CFB test passed!
2782+
ECC test passed!
2783+
ECC buffer test passed!
2784+
logging test passed!
2785+
mutex test passed!
2786+
memcb test passed!
2787+
Test complete
2788+
Tests complete.
2789+
2790+
2791+
Running wolfCrypt benchmarks...
2792+
wolfCrypt Benchmark (block bytes 1024, min 1.0 sec each)
2793+
RNG SHA-256 DRBG 650 KiB took 1.011 seconds, 642.292 KiB/s
2794+
AES-128-CBC-enc 23 MiB took 1.000 seconds, 23.657 MiB/s
2795+
AES-128-CBC-dec 22 MiB took 1.000 seconds, 22.097 MiB/s
2796+
AES-192-CBC-enc 23 MiB took 1.000 seconds, 23.510 MiB/s
2797+
AES-192-CBC-dec 19 MiB took 1.000 seconds, 19.531 MiB/s
2798+
AES-256-CBC-enc 21 MiB took 1.000 seconds, 21.582 MiB/s
2799+
AES-256-CBC-dec 17 MiB took 1.000 seconds, 17.504 MiB/s
2800+
AES-128-GCM-enc 950 KiB took 1.022 seconds, 928.641 KiB/s
2801+
AES-128-GCM-dec 950 KiB took 1.022 seconds, 929.549 KiB/s
2802+
AES-192-GCM-enc 925 KiB took 1.003 seconds, 922.233 KiB/s
2803+
AES-192-GCM-dec 925 KiB took 1.001 seconds, 923.153 KiB/s
2804+
AES-256-GCM-enc 925 KiB took 1.012 seconds, 914.031 KiB/s
2805+
AES-256-GCM-dec 925 KiB took 1.011 seconds, 914.935 KiB/s
2806+
AES-128-GCM-enc-no_AAD 950 KiB took 1.010 seconds, 939.663 KiB/s
2807+
AES-128-GCM-dec-no_AAD 950 KiB took 1.010 seconds, 940.594 KiB/s
2808+
AES-192-GCM-enc-no_AAD 950 KiB took 1.016 seconds, 934.119 KiB/s
2809+
AES-192-GCM-dec-no_AAD 950 KiB took 1.014 seconds, 935.960 KiB/s
2810+
AES-256-GCM-enc-no_AAD 925 KiB took 1.000 seconds, 925.000 KiB/s
2811+
AES-256-GCM-dec-no_AAD 950 KiB took 1.025 seconds, 925.925 KiB/s
2812+
GMAC Table 1 MiB took 1.001 seconds, 1.218 MiB/s
2813+
AES-128-ECB-enc 24 MiB took 1.000 seconds, 24.502 MiB/s
2814+
AES-128-ECB-dec 24 MiB took 1.000 seconds, 24.008 MiB/s
2815+
AES-192-ECB-enc 24 MiB took 1.000 seconds, 24.341 MiB/s
2816+
AES-192-ECB-dec 20 MiB took 1.000 seconds, 20.990 MiB/s
2817+
AES-256-ECB-enc 22 MiB took 1.000 seconds, 22.290 MiB/s
2818+
AES-256-ECB-dec 18 MiB took 1.000 seconds, 18.659 MiB/s
2819+
AES-128-CFB-enc 3 MiB took 1.003 seconds, 3.136 MiB/s
2820+
AES-128-CFB-dec 3 MiB took 1.005 seconds, 3.133 MiB/s
2821+
AES-192-CFB-enc 3 MiB took 1.006 seconds, 3.082 MiB/s
2822+
AES-192-CFB-dec 3 MiB took 1.006 seconds, 3.079 MiB/s
2823+
AES-256-CFB-enc 3 MiB took 1.000 seconds, 3.027 MiB/s
2824+
AES-256-CFB-dec 3 MiB took 1.001 seconds, 3.021 MiB/s
2825+
AES-128-OFB-enc 3 MiB took 1.007 seconds, 3.030 MiB/s
2826+
AES-128-OFB-dec 3 MiB took 1.008 seconds, 3.027 MiB/s
2827+
AES-192-OFB-enc 3 MiB took 1.006 seconds, 2.982 MiB/s
2828+
AES-192-OFB-dec 2 MiB took 1.000 seconds, 2.978 MiB/s
2829+
AES-256-OFB-enc 2 MiB took 1.000 seconds, 2.929 MiB/s
2830+
AES-256-OFB-dec 2 MiB took 1.000 seconds, 2.926 MiB/s
2831+
AES-128-CTR 17 MiB took 1.001 seconds, 17.706 MiB/s
2832+
AES-192-CTR 17 MiB took 1.000 seconds, 17.633 MiB/s
2833+
AES-256-CTR 16 MiB took 1.000 seconds, 16.528 MiB/s
2834+
SHA-256 57 MiB took 1.000 seconds, 57.397 MiB/s
2835+
SHA-384 400 KiB took 1.000 seconds, 400.000 KiB/s
2836+
SHA-512 400 KiB took 1.000 seconds, 400.000 KiB/s
2837+
SHA-512/224 400 KiB took 1.000 seconds, 400.000 KiB/s
2838+
SHA-512/256 400 KiB took 1.000 seconds, 400.000 KiB/s
2839+
HMAC-SHA256 48 MiB took 1.000 seconds, 48.803 MiB/s
2840+
HMAC-SHA384 400 KiB took 1.015 seconds, 393.700 KiB/s
2841+
HMAC-SHA512 400 KiB took 1.015 seconds, 393.700 KiB/s
2842+
ECC [ SECP256R1] 256 key gen 74 ops took 1.020 sec, avg 13.783 ms, 72.549 ops/sec
2843+
ECDHE [ SECP256R1] 256 agree 34 ops took 1.015 sec, avg 29.882 ms, 33.464 ops/sec
2844+
ECDSA [ SECP256R1] 256 sign 42 ops took 1.003 sec, avg 23.904 ms, 41.832 ops/sec
2845+
ECDSA [ SECP256R1] 256 verify 24 ops took 1.081 sec, avg 45.041 ms, 22.201 ops/sec
2846+
RNG 256 SHA256 Init/Free 5 ops took 1.258 sec, avg 251.600 ms, 3.974 ops/sec
2847+
Benchmark complete
2848+
Benchmarks complete.
2849+
```
26042850

26052851
## NXP LS1028A
26062852

0 commit comments

Comments
 (0)