@@ -2289,17 +2289,22 @@ LinkServer flash LPC55S69 erase
22892289``` sh
22902290LinkServer flash LPC55S69 load factory.bin:0
22912291```
2292+ 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.
22922293
229322943 ) The LED will light up blue to indicate version 1 of the firmware is running. You should also see output
22942295like this in the terminal window:
22952296
22962297``` sh
22972298lpc55s69 init
2298- Boot partition: 0xA000 (sz 24016 , ver 0x1, type 0x601)
2299- Partition 1 header magic 0xFFFFFFFF invalid at 0x15000
2300- Boot partition: 0xA000 (sz 24016 , ver 0x1, type 0x601)
2299+ Boot partition: 0xD000 (sz 22460 , ver 0x1, type 0x601)
2300+ Partition 1 header magic 0xFFFFFFFF invalid at 0x18000
2301+ Boot partition: 0xD000 (sz 22460 , ver 0x1, type 0x601)
23012302Booting version: 0x1
2302- lpc55s69 init
2303+
2304+ ==================================
2305+ LPC55S69 wolfBoot demo Application
2306+ Copyright 2026 wolfSSL Inc
2307+ ==================================
23032308 boot: ver=0x1 state=0xFF
23042309 update: ver=0x0 state=0xFF
23052310Calling wolfBoot_success ()
@@ -2312,25 +2317,30 @@ Calling wolfBoot_success()
231223171 ) Sign the test-app with version 2:
23132318
23142319``` sh
2315- ./tools/keytools/sign --ecc384 --sha384 test-app/image.bin wolfboot_signing_private_key.der 2
2320+ ./tools/keytools/sign --ecc384 --sha256 test-app/image.bin wolfboot_signing_private_key.der 2
23162321```
23172322
231823232 ) Flash v2 update binary to your ` .config ` 's ` WOLFBOOT_PARTITION_UPDATE_ADDRESS `
23192324
23202325Example:
23212326``` sh
2322- LinkServer flash LPC55S69 load test-app/image_v2_signed.bin:0x15000
2327+ LinkServer flash LPC55S69 load test-app/image_v2_signed.bin:0x18000
23232328```
2329+ NOTE: See [ tools/scripts/lpc55s69/lpc55s69_flash_update.cmm] ( /tools/scripts/lpc55s69/lpc55s69_flash_update.cmm ) for the lauterbach equivalent.
23242330
232523313 ) You should see output like this in the terminal window:
23262332
23272333``` sh
23282334lpc55s69 init
2329- Boot partition: 0xA000 (sz 24016 , ver 0x1, type 0x601)
2330- Update partition: 0x15000 (sz 24016 , ver 0x2, type 0x601)
2331- Boot partition: 0xA000 (sz 24016 , ver 0x1, type 0x601)
2335+ Boot partition: 0xD000 (sz 22460 , ver 0x1, type 0x601)
2336+ Update partition: 0x18000 (sz 22460 , ver 0x2, type 0x601)
2337+ Boot partition: 0xD000 (sz 22460 , ver 0x1, type 0x601)
23322338Booting version: 0x1
2333- lpc55s69 init
2339+
2340+ ==================================
2341+ LPC55S69 wolfBoot demo Application
2342+ Copyright 2026 wolfSSL Inc
2343+ ==================================
23342344 boot: ver=0x1 state=0x00
23352345 update: ver=0x2 state=0xFF
23362346Update detected, version: 0x2
@@ -2347,18 +2357,18 @@ like this in the terminal window:
23472357
23482358``` sh
23492359lpc55s69 init
2350- Update partition: 0x15000 (sz 24016 , ver 0x2, type 0x601)
2351- Boot partition: 0xA000 (sz 24016 , ver 0x1, type 0x601)
2352- Update partition: 0x15000 (sz 24016 , ver 0x2, type 0x601)
2360+ Update partition: 0x18000 (sz 22460 , ver 0x2, type 0x601)
2361+ Boot partition: 0xD000 (sz 22460 , ver 0x1, type 0x601)
2362+ Update partition: 0x18000 (sz 22460 , ver 0x2, type 0x601)
23532363Starting Update (fallback allowed 0)
2354- Update partition: 0x15000 (sz 24016 , ver 0x2, type 0x601)
2355- Boot partition: 0xA000 (sz 24016 , ver 0x1, type 0x601)
2364+ Update partition: 0x18000 (sz 22460 , ver 0x2, type 0x601)
2365+ Boot partition: 0xD000 (sz 22460 , ver 0x1, type 0x601)
23562366Versions: Current 0x1, Update 0x2
23572367Copy sector 0 (part 1-> 2)
23582368Copy sector 0 (part 0-> 1)
23592369Copy sector 0 (part 2-> 0)
2360- Boot partition: 0xA000 (sz 24016 , ver 0x2, type 0x601)
2361- Update partition: 0x15000 (sz 24016 , ver 0x1, type 0x601)
2370+ Boot partition: 0xD000 (sz 22460 , ver 0x2, type 0x601)
2371+ Update partition: 0x18000 (sz 22460 , ver 0x1, type 0x601)
23622372Copy sector 1 (part 1-> 2)
23632373Copy sector 1 (part 0-> 1)
23642374Copy sector 1 (part 2-> 0)
@@ -2491,23 +2501,18 @@ Copy sector 43 (part 2->0)
24912501Copy sector 44 (part 1-> 2)
24922502Copy sector 44 (part 0-> 1)
24932503Copy sector 44 (part 2-> 0)
2494- Copy sector 45 (part 1-> 2)
2495- Copy sector 45 (part 0-> 1)
2496- Copy sector 45 (part 2-> 0)
2497- Copy sector 46 (part 1-> 2)
2498- Copy sector 46 (part 0-> 1)
2499- Copy sector 46 (part 2-> 0)
2500- Copy sector 47 (part 1-> 2)
2501- Copy sector 47 (part 0-> 1)
2502- Copy sector 47 (part 2-> 0)
2503- Erasing remainder of partition (38 sectors)...
2504- Boot partition: 0xA000 (sz 24016, ver 0x2, type 0x601)
2505- Update partition: 0x15000 (sz 24016, ver 0x1, type 0x601)
2504+ Erasing remainder of partition (41 sectors)...
2505+ Boot partition: 0xD000 (sz 22460, ver 0x2, type 0x601)
2506+ Update partition: 0x18000 (sz 22460, ver 0x1, type 0x601)
25062507Copy sector 85 (part 0-> 2)
25072508Copied boot sector to swap
2508- Boot partition: 0xA000 (sz 24016 , ver 0x2, type 0x601)
2509+ Boot partition: 0xD000 (sz 22460 , ver 0x2, type 0x601)
25092510Booting version: 0x2
2510- lpc55s69 init
2511+
2512+ ==================================
2513+ LPC55S69 wolfBoot demo Application
2514+ Copyright 2026 wolfSSL Inc
2515+ ==================================
25112516 boot: ver=0x2 state=0x10
25122517 update: ver=0x1 state=0xFF
25132518Calling wolfBoot_success ()
@@ -2530,7 +2535,248 @@ b main
25302535mon reset
25312536c
25322537```
2538+ NOTE: See [ tools/scripts/lpc55s69/lpc55s69_debug.cmm] ( /tools/scripts/lpc55s69/lpc55s69_debug.cmm ) for the lauterbach equivalent.
2539+
2540+
2541+ ### LPC55S69: Test and Benchmark
2542+
2543+ Here is an example of how to run wolfCrypt test and benchmarking on actual hardware.
2544+
2545+ 1 . Start with [ lpc55s69-benchmark.config] ( /config/examples/lpc55s69-benchmark.config )
2546+ - By default, the config file has PKA?=0, which means hardware acceleration of crypto is off. Let's try that first.
2547+ ``` sh
2548+ cp config/examples/lpc55s69-benchmark.config .config
2549+ make clean
2550+ make
2551+ ```
2552+
2553+ 2 . Flash the factory.bin and reboot...
2554+ ``` sh
2555+ lpc55s69 init
2556+ Boot partition: 0x10000 (sz 162932, ver 0x1, type 0x201)
2557+ Partition 1 header magic 0xFFFFFFFF invalid at 0x3B000
2558+ Boot partition: 0x10000 (sz 162932, ver 0x1, type 0x201)
2559+ Booting version: 0x1
2560+
2561+ ==================================
2562+ LPC55S69 wolfBoot demo Application
2563+ Copyright 2026 wolfSSL Inc
2564+ ==================================
2565+ boot: ver=0x1 state=0xFF
2566+ update: ver=0x0 state=0xFF
2567+ Calling wolfBoot_success ()
2568+ boot: ver=0x1 state=0x00
2569+ update: ver=0x0 state=0xFF
2570+
2571+ Running wolfCrypt tests...
2572+ ------------------------------------------------------------------------------
2573+ wolfSSL version 5.9.1
2574+ ------------------------------------------------------------------------------
2575+ macro test passed!
2576+ error test passed!
2577+ MEMORY test passed!
2578+ asn test passed!
2579+ SHA-256 test passed!
2580+ SHA-384 test passed!
2581+ SHA-512 test passed!
2582+ SHA-512/224 test passed!
2583+ SHA-512/256 test passed!
2584+ RANDOM test passed!
2585+ Hash test passed!
2586+ HMAC-SHA256 test passed!
2587+ HMAC-SHA384 test passed!
2588+ HMAC-SHA512 test passed!
2589+ GMAC test passed!
2590+ AES test passed!
2591+ AES192 test passed!
2592+ AES256 test passed!
2593+ AES-CBC test passed!
2594+ AES-CTR test passed!
2595+ AES-OFB test passed!
2596+ AES-GCM test passed!
2597+ AES-CFB test passed!
2598+ ECC test passed!
2599+ ECC buffer test passed!
2600+ logging test passed!
2601+ mutex test passed!
2602+ memcb test passed!
2603+ Test complete
2604+ Tests complete.
2605+
2606+
2607+ Running wolfCrypt benchmarks...
2608+ wolfCrypt Benchmark (block bytes 1024, min 1.0 sec each)
2609+ RNG SHA-256 DRBG 325 KiB took 1.044 seconds, 311.302 KiB/s
2610+ AES-128-CBC-enc 350 KiB took 1.051 seconds, 333.016 KiB/s
2611+ AES-128-CBC-dec 350 KiB took 1.057 seconds, 331.125 KiB/s
2612+ AES-192-CBC-enc 300 KiB took 1.035 seconds, 289.855 KiB/s
2613+ AES-192-CBC-dec 300 KiB took 1.040 seconds, 288.461 KiB/s
2614+ AES-256-CBC-enc 275 KiB took 1.064 seconds, 258.458 KiB/s
2615+ AES-256-CBC-dec 275 KiB took 1.062 seconds, 258.701 KiB/s
2616+ AES-128-GCM-enc 275 KiB took 1.036 seconds, 265.188 KiB/s
2617+ AES-128-GCM-dec 275 KiB took 1.035 seconds, 265.444 KiB/s
2618+ AES-192-GCM-enc 250 KiB took 1.057 seconds, 236.518 KiB/s
2619+ AES-192-GCM-dec 250 KiB took 1.056 seconds, 236.742 KiB/s
2620+ AES-256-GCM-enc 225 KiB took 1.047 seconds, 214.899 KiB/s
2621+ AES-256-GCM-dec 225 KiB took 1.046 seconds, 215.105 KiB/s
2622+ AES-128-GCM-enc-no_AAD 275 KiB took 1.033 seconds, 265.957 KiB/s
2623+ AES-128-GCM-dec-no_AAD 275 KiB took 1.032 seconds, 266.214 KiB/s
2624+ AES-192-GCM-enc-no_AAD 250 KiB took 1.053 seconds, 237.191 KiB/s
2625+ AES-192-GCM-dec-no_AAD 250 KiB took 1.052 seconds, 237.416 KiB/s
2626+ AES-256-GCM-enc-no_AAD 225 KiB took 1.044 seconds, 215.517 KiB/s
2627+ AES-256-GCM-dec-no_AAD 225 KiB took 1.042 seconds, 215.723 KiB/s
2628+ GMAC Table 1 MiB took 1.009 seconds, 1.208 MiB/s
2629+ AES-128-ECB-enc 374 KiB took 1.026 seconds, 364.167 KiB/s
2630+ AES-128-ECB-dec 385 KiB took 1.027 seconds, 374.878 KiB/s
2631+ AES-192-ECB-enc 319 KiB took 1.024 seconds, 311.219 KiB/s
2632+ AES-192-ECB-dec 330 KiB took 1.018 seconds, 323.846 KiB/s
2633+ AES-256-ECB-enc 286 KiB took 1.036 seconds, 276.061 KiB/s
2634+ AES-256-ECB-dec 286 KiB took 1.006 seconds, 284.011 KiB/s
2635+ AES-128-CFB-enc 350 KiB took 1.064 seconds, 328.947 KiB/s
2636+ AES-128-CFB-dec 350 KiB took 1.057 seconds, 331.125 KiB/s
2637+ AES-192-CFB-enc 300 KiB took 1.046 seconds, 286.532 KiB/s
2638+ AES-192-CFB-dec 300 KiB took 1.039 seconds, 288.461 KiB/s
2639+ AES-256-CFB-enc 275 KiB took 1.074 seconds, 256.052 KiB/s
2640+ AES-256-CFB-dec 275 KiB took 1.067 seconds, 257.490 KiB/s
2641+ AES-128-OFB-enc 350 KiB took 1.020 seconds, 343.137 KiB/s
2642+ AES-128-OFB-dec 350 KiB took 1.019 seconds, 343.137 KiB/s
2643+ AES-192-OFB-enc 300 KiB took 1.009 seconds, 297.324 KiB/s
2644+ AES-192-OFB-dec 300 KiB took 1.009 seconds, 297.324 KiB/s
2645+ AES-256-OFB-enc 275 KiB took 1.038 seconds, 264.677 KiB/s
2646+ AES-256-OFB-dec 275 KiB took 1.039 seconds, 264.423 KiB/s
2647+ AES-128-CTR 350 KiB took 1.010 seconds, 346.191 KiB/s
2648+ AES-192-CTR 300 KiB took 1.003 seconds, 299.102 KiB/s
2649+ AES-256-CTR 275 KiB took 1.033 seconds, 265.957 KiB/s
2650+ SHA-256 1000 KiB took 1.000 seconds, 1000.000 KiB/s
2651+ SHA-384 425 KiB took 1.060 seconds, 400.565 KiB/s
2652+ SHA-512 425 KiB took 1.060 seconds, 400.565 KiB/s
2653+ SHA-512/224 425 KiB took 1.062 seconds, 400.188 KiB/s
2654+ SHA-512/256 425 KiB took 1.060 seconds, 400.565 KiB/s
2655+ HMAC-SHA256 1000 KiB took 1.009 seconds, 991.080 KiB/s
2656+ HMAC-SHA384 400 KiB took 1.015 seconds, 394.088 KiB/s
2657+ HMAC-SHA512 400 KiB took 1.015 seconds, 394.088 KiB/s
2658+ ECC [ SECP256R1] 256 key gen 72 ops took 1.007 sec, avg 13.986 ms, 71.499 ops/sec
2659+ ECDHE [ SECP256R1] 256 agree 34 ops took 1.013 sec, avg 29.823 ms, 33.530 ops/sec
2660+ ECDSA [ SECP256R1] 256 sign 42 ops took 1.036 sec, avg 24.690 ms, 40.501 ops/sec
2661+ ECDSA [ SECP256R1] 256 verify 22 ops took 1.003 sec, avg 45.590 ms, 21.934 ops/sec
2662+ RNG 256 SHA256 Init/Free 196 ops took 1.003 sec, avg 5.117 ms, 195.413 ops/sec
2663+ Benchmark complete
2664+ Benchmarks complete.
2665+ ```
2666+
2667+ 2 . Now try changing to PKA?=1 in the config file, rebuild, and reflash...
2668+ ``` sh
2669+ lpc55s69 init
2670+ Boot partition: 0x10000 (sz 163148, ver 0x1, type 0x201)
2671+ Partition 1 header magic 0xFFFFFFFF invalid at 0x3B000
2672+ Boot partition: 0x10000 (sz 163148, ver 0x1, type 0x201)
2673+ Booting version: 0x1
25332674
2675+ ==================================
2676+ LPC55S69 wolfBoot demo Application
2677+ Copyright 2026 wolfSSL Inc
2678+ ==================================
2679+ boot: ver=0x1 state=0xFF
2680+ update: ver=0x0 state=0xFF
2681+ Calling wolfBoot_success ()
2682+ boot: ver=0x1 state=0x00
2683+ update: ver=0x0 state=0xFF
2684+
2685+ Running wolfCrypt tests...
2686+ ------------------------------------------------------------------------------
2687+ wolfSSL version 5.9.1
2688+ ------------------------------------------------------------------------------
2689+ macro test passed!
2690+ error test passed!
2691+ MEMORY test passed!
2692+ asn test passed!
2693+ SHA-256 test passed!
2694+ SHA-384 test passed!
2695+ SHA-512 test passed!
2696+ SHA-512/224 test passed!
2697+ SHA-512/256 test passed!
2698+ RANDOM test passed!
2699+ Hash test passed!
2700+ HMAC-SHA256 test passed!
2701+ HMAC-SHA384 test passed!
2702+ HMAC-SHA512 test passed!
2703+ GMAC test passed!
2704+ AES test passed!
2705+ AES192 test passed!
2706+ AES256 test passed!
2707+ AES-CBC test passed!
2708+ AES-CTR test passed!
2709+ AES-OFB test passed!
2710+ AES-GCM test passed!
2711+ AES-CFB test passed!
2712+ ECC test passed!
2713+ ECC buffer test passed!
2714+ logging test passed!
2715+ mutex test passed!
2716+ memcb test passed!
2717+ Test complete
2718+ Tests complete.
2719+
2720+
2721+ Running wolfCrypt benchmarks...
2722+ wolfCrypt Benchmark (block bytes 1024, min 1.0 sec each)
2723+ RNG SHA-256 DRBG 650 KiB took 1.011 seconds, 642.292 KiB/s
2724+ AES-128-CBC-enc 23 MiB took 1.000 seconds, 23.657 MiB/s
2725+ AES-128-CBC-dec 22 MiB took 1.000 seconds, 22.097 MiB/s
2726+ AES-192-CBC-enc 23 MiB took 1.000 seconds, 23.510 MiB/s
2727+ AES-192-CBC-dec 19 MiB took 1.000 seconds, 19.531 MiB/s
2728+ AES-256-CBC-enc 21 MiB took 1.000 seconds, 21.582 MiB/s
2729+ AES-256-CBC-dec 17 MiB took 1.000 seconds, 17.504 MiB/s
2730+ AES-128-GCM-enc 950 KiB took 1.022 seconds, 928.641 KiB/s
2731+ AES-128-GCM-dec 950 KiB took 1.022 seconds, 929.549 KiB/s
2732+ AES-192-GCM-enc 925 KiB took 1.003 seconds, 922.233 KiB/s
2733+ AES-192-GCM-dec 925 KiB took 1.001 seconds, 923.153 KiB/s
2734+ AES-256-GCM-enc 925 KiB took 1.012 seconds, 914.031 KiB/s
2735+ AES-256-GCM-dec 925 KiB took 1.011 seconds, 914.935 KiB/s
2736+ AES-128-GCM-enc-no_AAD 950 KiB took 1.010 seconds, 939.663 KiB/s
2737+ AES-128-GCM-dec-no_AAD 950 KiB took 1.010 seconds, 940.594 KiB/s
2738+ AES-192-GCM-enc-no_AAD 950 KiB took 1.016 seconds, 934.119 KiB/s
2739+ AES-192-GCM-dec-no_AAD 950 KiB took 1.014 seconds, 935.960 KiB/s
2740+ AES-256-GCM-enc-no_AAD 925 KiB took 1.000 seconds, 925.000 KiB/s
2741+ AES-256-GCM-dec-no_AAD 950 KiB took 1.025 seconds, 925.925 KiB/s
2742+ GMAC Table 1 MiB took 1.001 seconds, 1.218 MiB/s
2743+ AES-128-ECB-enc 24 MiB took 1.000 seconds, 24.502 MiB/s
2744+ AES-128-ECB-dec 24 MiB took 1.000 seconds, 24.008 MiB/s
2745+ AES-192-ECB-enc 24 MiB took 1.000 seconds, 24.341 MiB/s
2746+ AES-192-ECB-dec 20 MiB took 1.000 seconds, 20.990 MiB/s
2747+ AES-256-ECB-enc 22 MiB took 1.000 seconds, 22.290 MiB/s
2748+ AES-256-ECB-dec 18 MiB took 1.000 seconds, 18.659 MiB/s
2749+ AES-128-CFB-enc 3 MiB took 1.003 seconds, 3.136 MiB/s
2750+ AES-128-CFB-dec 3 MiB took 1.005 seconds, 3.133 MiB/s
2751+ AES-192-CFB-enc 3 MiB took 1.006 seconds, 3.082 MiB/s
2752+ AES-192-CFB-dec 3 MiB took 1.006 seconds, 3.079 MiB/s
2753+ AES-256-CFB-enc 3 MiB took 1.000 seconds, 3.027 MiB/s
2754+ AES-256-CFB-dec 3 MiB took 1.001 seconds, 3.021 MiB/s
2755+ AES-128-OFB-enc 3 MiB took 1.007 seconds, 3.030 MiB/s
2756+ AES-128-OFB-dec 3 MiB took 1.008 seconds, 3.027 MiB/s
2757+ AES-192-OFB-enc 3 MiB took 1.006 seconds, 2.982 MiB/s
2758+ AES-192-OFB-dec 2 MiB took 1.000 seconds, 2.978 MiB/s
2759+ AES-256-OFB-enc 2 MiB took 1.000 seconds, 2.929 MiB/s
2760+ AES-256-OFB-dec 2 MiB took 1.000 seconds, 2.926 MiB/s
2761+ AES-128-CTR 17 MiB took 1.001 seconds, 17.706 MiB/s
2762+ AES-192-CTR 17 MiB took 1.000 seconds, 17.633 MiB/s
2763+ AES-256-CTR 16 MiB took 1.000 seconds, 16.528 MiB/s
2764+ SHA-256 57 MiB took 1.000 seconds, 57.397 MiB/s
2765+ SHA-384 400 KiB took 1.000 seconds, 400.000 KiB/s
2766+ SHA-512 400 KiB took 1.000 seconds, 400.000 KiB/s
2767+ SHA-512/224 400 KiB took 1.000 seconds, 400.000 KiB/s
2768+ SHA-512/256 400 KiB took 1.000 seconds, 400.000 KiB/s
2769+ HMAC-SHA256 48 MiB took 1.000 seconds, 48.803 MiB/s
2770+ HMAC-SHA384 400 KiB took 1.015 seconds, 393.700 KiB/s
2771+ HMAC-SHA512 400 KiB took 1.015 seconds, 393.700 KiB/s
2772+ ECC [ SECP256R1] 256 key gen 74 ops took 1.020 sec, avg 13.783 ms, 72.549 ops/sec
2773+ ECDHE [ SECP256R1] 256 agree 34 ops took 1.015 sec, avg 29.882 ms, 33.464 ops/sec
2774+ ECDSA [ SECP256R1] 256 sign 42 ops took 1.003 sec, avg 23.904 ms, 41.832 ops/sec
2775+ ECDSA [ SECP256R1] 256 verify 24 ops took 1.081 sec, avg 45.041 ms, 22.201 ops/sec
2776+ RNG 256 SHA256 Init/Free 5 ops took 1.258 sec, avg 251.600 ms, 3.974 ops/sec
2777+ Benchmark complete
2778+ Benchmarks complete.
2779+ ```
25342780
25352781## NXP LS1028A
25362782
0 commit comments