@@ -545,68 +545,65 @@ def run_custom_script(script, timeout):
545
545
logger .error (f"{ script } timed out" )
546
546
547
547
def _create_command (self , runner , hardware ):
548
- if (self .options .west_flash is not None ) or runner :
549
- command = ["west" , "flash" , "--skip-rebuild" , "-d" , self .build_dir ]
550
- command_extra_args = []
551
-
552
- # There are three ways this option is used.
553
- # 1) bare: --west-flash
554
- # This results in options.west_flash == []
555
- # 2) with a value: --west-flash="--board-id=42"
556
- # This results in options.west_flash == "--board-id=42"
557
- # 3) Multiple values: --west-flash="--board-id=42,--erase"
558
- # This results in options.west_flash == "--board-id=42 --erase"
559
- if self .options .west_flash and self .options .west_flash != []:
560
- command_extra_args .extend (self .options .west_flash .split (',' ))
561
-
562
- if runner :
563
- command .append ("--runner" )
564
- command .append (runner )
565
-
566
- board_id = hardware .probe_id or hardware .id
567
- product = hardware .product
568
- if board_id is not None :
569
- if runner in ("pyocd" , "nrfjprog" , "nrfutil" , "nrfutil_next" ):
570
- command_extra_args .append ("--dev-id" )
571
- command_extra_args .append (board_id )
572
- elif runner == "esp32" :
573
- command_extra_args .append ("--esp-device" )
574
- command_extra_args .append (board_id )
575
- elif (
576
- runner == "openocd"
577
- and product == "STM32 STLink"
578
- or runner == "openocd"
579
- and product == "STLINK-V3"
580
- ):
581
- command_extra_args .append ("--cmd-pre-init" )
582
- command_extra_args .append (f"hla_serial { board_id } " )
583
- elif runner == "openocd" and product == "EDBG CMSIS-DAP" :
584
- command_extra_args .append ("--cmd-pre-init" )
585
- command_extra_args .append (f"cmsis_dap_serial { board_id } " )
586
- elif runner == "openocd" and product == "LPC-LINK2 CMSIS-DAP" :
587
- command_extra_args .append ("--cmd-pre-init" )
588
- command_extra_args .append (f"adapter serial { board_id } " )
589
- elif runner == "jlink" :
590
- command .append ("--dev-id" )
591
- command .append (board_id )
592
- elif runner == "linkserver" :
593
- # for linkserver
594
- # --probe=#<number> select by probe index
595
- # --probe=<serial number> select by probe serial number
596
- command .append (f"--probe={ board_id } " )
597
- elif runner == "stm32cubeprogrammer" and product != "BOOT-SERIAL" :
598
- command .append (f"--tool-opt=sn={ board_id } " )
599
-
600
- # Receive parameters from runner_params field.
601
- if hardware .runner_params :
602
- for param in hardware .runner_params :
603
- command .append (param )
604
-
605
- if command_extra_args :
606
- command .append ('--' )
607
- command .extend (command_extra_args )
608
- else :
609
- command = [self .generator_cmd , "-C" , self .build_dir , "flash" ]
548
+ command = ["west" , "flash" , "--skip-rebuild" , "-d" , self .build_dir ]
549
+ command_extra_args = []
550
+
551
+ # There are three ways this option is used.
552
+ # 1) bare: default flags
553
+ # This results in options.west_flash == []
554
+ # 2) with a value: --west-flash="--board-id=42"
555
+ # This results in options.west_flash == "--board-id=42"
556
+ # 3) Multiple values: --west-flash="--board-id=42,--erase"
557
+ # This results in options.west_flash == "--board-id=42 --erase"
558
+ if self .options .west_flash and self .options .west_flash != []:
559
+ command_extra_args .extend (self .options .west_flash .split (',' ))
560
+
561
+ if runner :
562
+ command .append ("--runner" )
563
+ command .append (runner )
564
+
565
+ board_id = hardware .probe_id or hardware .id
566
+ product = hardware .product
567
+ if board_id is not None :
568
+ if runner in ("pyocd" , "nrfjprog" , "nrfutil" , "nrfutil_next" ):
569
+ command_extra_args .append ("--dev-id" )
570
+ command_extra_args .append (board_id )
571
+ elif runner == "esp32" :
572
+ command_extra_args .append ("--esp-device" )
573
+ command_extra_args .append (board_id )
574
+ elif (
575
+ runner == "openocd"
576
+ and product == "STM32 STLink"
577
+ or runner == "openocd"
578
+ and product == "STLINK-V3"
579
+ ):
580
+ command_extra_args .append ("--cmd-pre-init" )
581
+ command_extra_args .append (f"hla_serial { board_id } " )
582
+ elif runner == "openocd" and product == "EDBG CMSIS-DAP" :
583
+ command_extra_args .append ("--cmd-pre-init" )
584
+ command_extra_args .append (f"cmsis_dap_serial { board_id } " )
585
+ elif runner == "openocd" and product == "LPC-LINK2 CMSIS-DAP" :
586
+ command_extra_args .append ("--cmd-pre-init" )
587
+ command_extra_args .append (f"adapter serial { board_id } " )
588
+ elif runner == "jlink" :
589
+ command .append ("--dev-id" )
590
+ command .append (board_id )
591
+ elif runner == "linkserver" :
592
+ # for linkserver
593
+ # --probe=#<number> select by probe index
594
+ # --probe=<serial number> select by probe serial number
595
+ command .append (f"--probe={ board_id } " )
596
+ elif runner == "stm32cubeprogrammer" and product != "BOOT-SERIAL" :
597
+ command .append (f"--tool-opt=sn={ board_id } " )
598
+
599
+ # Receive parameters from runner_params field.
600
+ if hardware .runner_params :
601
+ for param in hardware .runner_params :
602
+ command .append (param )
603
+
604
+ if command_extra_args :
605
+ command .append ('--' )
606
+ command .extend (command_extra_args )
610
607
611
608
return command
612
609
0 commit comments