Skip to content

Commit 6a26f14

Browse files
committed
[silicon_creator,e2e] Do not clear bitstream in rescue tests
Those tests do not change the OTP so clearing the bitstream is unnecessary and makes the test much slower. Signed-off-by: Amaury Pouly <[email protected]>
1 parent d2c5991 commit 6a26f14

File tree

1 file changed

+1
-42
lines changed
  • sw/device/silicon_creator/rom_ext/e2e/rescue

1 file changed

+1
-42
lines changed

sw/device/silicon_creator/rom_ext/e2e/rescue/BUILD

Lines changed: 1 addition & 42 deletions
Original file line numberDiff line numberDiff line change
@@ -110,15 +110,13 @@ _CONFIGS = {
110110
binaries = {
111111
":boot_test_{}".format(name): "payload",
112112
},
113-
changes_otp = True,
114113
params = config["params"],
115114
rom_ext = config["rom_ext"],
116115
setup = config["setup"],
117116
slot = position["slot"],
118117
tags = config["tags"],
119118
test_cmd = """
120119
--exec="transport init"
121-
--exec="fpga clear-bitstream"
122120
--exec="fpga load-bitstream {bitstream}"
123121
{setup}
124122
--exec="bootstrap --clear-uart=true {rom_ext}"
@@ -171,7 +169,6 @@ genrule(
171169
":boot_test_{}".format(name): "payload",
172170
":bad_rom_ext": "bad_rom_ext",
173171
},
174-
changes_otp = True,
175172
exit_failure = _RESCUE_ROMEXT_RESULTS[name == rxslot]["failure"],
176173
exit_success = _RESCUE_ROMEXT_RESULTS[name == rxslot]["success"].format(slot = name),
177174
image_name = "/tmp/rescue_rom_ext_{}.img".format(name),
@@ -211,16 +208,15 @@ genrule(
211208
":boot_test_slot_a": "slot_a",
212209
":boot_test_slot_b": "slot_b",
213210
},
214-
changes_otp = True,
215211
params = config["params"],
216212
rom_ext = config["rom_ext"],
217213
setup = config["setup"],
218214
tags = config["tags"],
219215
test_cmd = """
220216
--exec="transport init"
221-
--exec="fpga clear-bitstream"
222217
--exec="fpga load-bitstream {bitstream}"
223218
--exec="bootstrap --clear-uart=true {firmware}"
219+
--exec="console --non-interactive --timeout=100ms"
224220
{setup}
225221
--exec="no-op --info='##### Set next slot via the rescue protocol'"
226222
--exec="rescue {params} boot-svc set-next-bl0-slot --next=SlotB --get-response=false"
@@ -250,14 +246,12 @@ genrule(
250246
":boot_test_slot_a": "slot_a",
251247
":boot_test_slot_b": "slot_b",
252248
},
253-
changes_otp = True,
254249
params = config["params"],
255250
rom_ext = config["rom_ext"],
256251
setup = config["setup"],
257252
tags = config["tags"],
258253
test_cmd = """
259254
--exec="transport init"
260-
--exec="fpga clear-bitstream"
261255
--exec="fpga load-bitstream {bitstream}"
262256
--exec="bootstrap --clear-uart=true {firmware}"
263257
{setup}
@@ -292,7 +286,6 @@ genrule(
292286
binaries = {
293287
":boot_test_slot_a": "payload",
294288
},
295-
changes_otp = True,
296289
rate = rate,
297290
test_cmd = """
298291
--exec="transport init"
@@ -327,7 +320,6 @@ genrule(
327320
binaries = {
328321
":boot_test_slot_a": "payload",
329322
},
330-
changes_otp = True,
331323
rate = rate,
332324
test_cmd = """
333325
--exec="transport init"
@@ -368,7 +360,6 @@ opentitan_test(
368360
binaries = {
369361
":boot_test_slot_a": "payload",
370362
},
371-
changes_otp = True,
372363
rom_ext = "//sw/device/silicon_creator/rom_ext/e2e/rescue/testdata:rom_ext_rescue_protocol_0",
373364
test_cmd = """
374365
--exec="transport init"
@@ -395,11 +386,9 @@ opentitan_test(
395386
"//hw/top_earlgrey:fpga_cw340_rom_ext": None,
396387
},
397388
fpga = fpga_params(
398-
changes_otp = True,
399389
rom_ext = "//sw/device/silicon_creator/rom_ext:rom_ext_xmodem_timeout",
400390
test_cmd = """
401391
--exec="transport init"
402-
--exec="fpga clear-bitstream"
403392
--exec="fpga load-bitstream {bitstream}"
404393
--exec="bootstrap --clear-uart=true {firmware}"
405394
# Trigger rescue and do nothing. We expect the inactivity timer to
@@ -437,7 +426,6 @@ opentitan_test(
437426
"//hw/top_earlgrey:fpga_cw340_rom_ext": None,
438427
},
439428
fpga = fpga_params(
440-
changes_otp = True,
441429
# We configure OTP to preserve the reset reason and set the watchdog timeout
442430
# to one second.
443431
otp = "//sw/device/silicon_creator/rom_ext/e2e:otp_img_secret2_locked_preserve_reset_prod",
@@ -446,7 +434,6 @@ opentitan_test(
446434
rom_ext = "//sw/device/silicon_creator/rom_ext:rom_ext_spidfu",
447435
test_cmd = """
448436
--exec="transport init"
449-
--exec="fpga clear-bitstream"
450437
--exec="fpga load-bitstream {bitstream}"
451438
--exec="bootstrap --clear-uart=true {firmware}"
452439
# Set the trigger with gpio command to simulate the trigger being jammed.
@@ -476,13 +463,11 @@ opentitan_test(
476463
"//hw/top_earlgrey:fpga_cw340_rom_ext": None,
477464
},
478465
fpga = fpga_params(
479-
changes_otp = True,
480466
exit_failure = "ok: ",
481467
exit_success = "error: mode not allowed",
482468
rom_ext = "//sw/device/silicon_creator/rom_ext:rom_ext_xmodem_restricted_commands",
483469
test_cmd = """
484470
--exec="transport init"
485-
--exec="fpga clear-bitstream"
486471
--exec="fpga load-bitstream {bitstream}"
487472
--exec="bootstrap --clear-uart=true {firmware}"
488473
# Trigger rescue and make sure we can get the device ID.
@@ -514,13 +499,11 @@ opentitan_test(
514499
"//hw/top_earlgrey:fpga_cw340_rom_ext": None,
515500
},
516501
fpga = fpga_params(
517-
changes_otp = True,
518502
params = "-p spi-dfu -t gpio -v +Ioa2",
519503
rom_ext = "//sw/device/silicon_creator/rom_ext:rom_ext_spidfu_restricted_commands",
520504
setup = "--exec=\"gpio set --mode OpenDrain Ioa2\"",
521505
test_cmd = """
522506
--exec="transport init"
523-
--exec="fpga clear-bitstream"
524507
--exec="fpga load-bitstream {bitstream}"
525508
{setup}
526509
--exec="bootstrap --clear-uart=true {firmware}"
@@ -546,7 +529,6 @@ opentitan_test(
546529
},
547530
fpga = fpga_params(
548531
assemble = "",
549-
changes_otp = True,
550532
exit_success = "BFV:05525304\r\n",
551533
rom_ext = config.get(
552534
"alt_rom_ext",
@@ -556,7 +538,6 @@ opentitan_test(
556538
tags = config["tags"],
557539
test_cmd = """
558540
--exec="transport init"
559-
--exec="fpga clear-bitstream"
560541
--exec="fpga load-bitstream {bitstream}"
561542
{setup}
562543
# Load only the ROM_EXT so the boot will fail because of no firmware.
@@ -579,11 +560,9 @@ opentitan_test(
579560
},
580561
fpga = fpga_params(
581562
assemble = "",
582-
changes_otp = True,
583563
params = config["params"],
584564
rom_ext = config["rom_ext"],
585565
test_cmd = """
586-
--clear-bitstream
587566
--bootstrap={rom_ext}
588567
rescue {params} --action=get-boot-log
589568
""",
@@ -602,12 +581,10 @@ opentitan_test(
602581
},
603582
fpga = fpga_params(
604583
assemble = "",
605-
changes_otp = True,
606584
device_id = DEVICE_ID,
607585
params = config["params"],
608586
rom_ext = config["rom_ext"],
609587
test_cmd = """
610-
--clear-bitstream
611588
--bootstrap={rom_ext}
612589
--device-id={device_id}
613590
rescue {params} --action=get-device-id
@@ -631,10 +608,8 @@ opentitan_test(
631608
config["rom_ext"]: "romext",
632609
"//sw/device/silicon_creator/rom_ext/e2e/attestation:print_certs": "firmware",
633610
},
634-
changes_otp = True,
635611
params = config["params"],
636612
test_cmd = """
637-
--clear-bitstream
638613
--bootstrap={firmware}
639614
rescue {params} --action=get-owner-page
640615
""",
@@ -656,9 +631,7 @@ opentitan_test(
656631
"//sw/device/silicon_creator/rom_ext:rom_ext_xmodem_rescue_disability": "romext",
657632
"//sw/device/silicon_creator/rom_ext/e2e/attestation:print_certs": "firmware",
658633
},
659-
changes_otp = True,
660634
test_cmd = """
661-
--clear-bitstream
662635
--bootstrap={firmware}
663636
rescue --action=disability
664637
""",
@@ -678,10 +651,8 @@ opentitan_test(
678651
"//sw/device/silicon_creator/rom_ext:rom_ext_spidfu_rescue_disability": "romext",
679652
"//sw/device/silicon_creator/rom_ext/e2e/attestation:print_certs": "firmware",
680653
},
681-
changes_otp = True,
682654
params = "-p spi-dfu -t gpio -v +Ioa2",
683655
test_cmd = """
684-
--clear-bitstream
685656
--bootstrap={firmware}
686657
rescue {params} --action=disability
687658
""",
@@ -700,7 +671,6 @@ opentitan_test(
700671
rom_ext = "//sw/device/silicon_creator/rom_ext:rom_ext_dice_x509_slot_a",
701672
test_cmd = """
702673
--exec="transport init"
703-
--exec="fpga clear-bitstream"
704674
--exec="fpga load-bitstream {bitstream}"
705675
--exec="bootstrap --clear-uart=true {rom_ext}"
706676
# Trigger rescue and make sure we can get the device ID.
@@ -728,7 +698,6 @@ opentitan_test(
728698
},
729699
test_cmd = """
730700
--exec="transport init"
731-
--exec="fpga clear-bitstream"
732701
--exec="fpga load-bitstream {bitstream}"
733702
--exec="bootstrap --clear-uart=true {firmware}"
734703
--exec="console --non-interactive --exit-success='warning: rescue' --exit-failure='{exit_failure}'"
@@ -756,7 +725,6 @@ opentitan_test(
756725
},
757726
params = "-p spi-dfu -t gpio -v +Ioa2",
758727
test_cmd = """
759-
--clear-bitstream
760728
--bootstrap={firmware}
761729
rescue {params} --action=disability
762730
""",
@@ -777,7 +745,6 @@ opentitan_test(
777745
":boot_test_slot_a": "firmware",
778746
},
779747
test_cmd = """
780-
--clear-bitstream
781748
--bootstrap={firmware}
782749
""",
783750
test_harness = "//sw/host/tests/rescue:xmodem_rescue_error_handling",
@@ -798,7 +765,6 @@ opentitan_test(
798765
},
799766
params = "-p spi-dfu -t gpio -v +Ioa2",
800767
test_cmd = """
801-
--clear-bitstream
802768
--bootstrap={firmware}
803769
rescue {params} --action=spi-dfu-state-transitions
804770
""",
@@ -820,7 +786,6 @@ opentitan_test(
820786
},
821787
params = "-p spi-dfu -t gpio -v +Ioa2",
822788
test_cmd = """
823-
--clear-bitstream
824789
--bootstrap={firmware}
825790
rescue {params} --action=invalid-spi-dfu-requests
826791
""",
@@ -842,7 +807,6 @@ opentitan_test(
842807
},
843808
params = "-p spi-dfu -t gpio -v +Ioa2",
844809
test_cmd = """
845-
--clear-bitstream
846810
--bootstrap={firmware}
847811
rescue {params} --action=invalid-spi-flash-transaction
848812
""",
@@ -864,7 +828,6 @@ opentitan_test(
864828
},
865829
params = "-p usb-dfu -t strap -v 3",
866830
test_cmd = """
867-
--clear-bitstream
868831
--bootstrap={firmware}
869832
rescue {params} --action=usb-dfu-out-chunk-too-big
870833
""",
@@ -884,12 +847,10 @@ opentitan_test(
884847
"//hw/top_earlgrey:fpga_cw340_rom_ext": None,
885848
},
886849
fpga = fpga_params(
887-
changes_otp = True,
888850
exit_failure = "(FAIL|BFV:|mode: RESQ).*",
889851
rom_ext = "//sw/device/silicon_creator/rom_ext:rom_ext_dice_x509_slot_a",
890852
test_cmd = """
891853
--exec="transport init"
892-
--exec="fpga clear-bitstream"
893854
--exec="fpga load-bitstream {bitstream}"
894855
--exec="bootstrap --clear-uart=true {firmware}"
895856
--exec="console --non-interactive --exit-success='{exit_success}' --exit-failure='{exit_failure}'"
@@ -917,12 +878,10 @@ opentitan_test(
917878
"//hw/top_earlgrey:fpga_cw340_rom_ext": None,
918879
},
919880
fpga = fpga_params(
920-
changes_otp = True,
921881
exit_success = "mode: RESQ",
922882
rom_ext = "//sw/device/silicon_creator/rom_ext:rom_ext_xmodem_enter_on_watchdog",
923883
test_cmd = """
924884
--exec="transport init"
925-
--exec="fpga clear-bitstream"
926885
--exec="fpga load-bitstream {bitstream}"
927886
--exec="bootstrap --clear-uart=true {firmware}"
928887
--exec="console --non-interactive --exit-success='{exit_success}' --exit-failure='{exit_failure}'"

0 commit comments

Comments
 (0)