33#
44# SPDX-License-Identifier: Apache-2.0
55
6- '''Runner for flashing ESP32 devices with esptool/espidf .'''
6+ '''Runner for flashing ESP32 devices with esptool.'''
77
88import os
9- import sys
10- from os import path
119
1210from runners .core import RunnerCaps , ZephyrBinaryRunner
1311
@@ -18,7 +16,7 @@ class Esp32BinaryRunner(ZephyrBinaryRunner):
1816 def __init__ (self , cfg , device , boot_address , part_table_address ,
1917 app_address , erase = False , reset = False , baud = 921600 ,
2018 flash_size = 'detect' , flash_freq = '40m' , flash_mode = 'dio' ,
21- espidf = 'espidf' , bootloader_bin = None , partition_table_bin = None ,
19+ espidf = None , bootloader_bin = None , partition_table_bin = None ,
2220 encrypt = False , no_stub = False ):
2321 super ().__init__ (cfg )
2422 self .elf = cfg .elf_file
@@ -71,10 +69,6 @@ def do_add_parser(cls, parser):
7169 help = 'flash frequency, default "40m"' )
7270 parser .add_argument ('--esp-flash-mode' , default = 'dio' ,
7371 help = 'flash mode, default "dio"' )
74- parser .add_argument (
75- '--esp-tool' ,
76- help = '''if given, complete path to espidf. default is to search for
77- it in [ESP_IDF_PATH]/tools/esptool_py/esptool.py''' )
7872 parser .add_argument ('--esp-flash-bootloader' ,
7973 help = 'Bootloader image to flash' )
8074 parser .add_argument ('--esp-flash-partition_table' ,
@@ -88,44 +82,37 @@ def do_add_parser(cls, parser):
8882
8983 @classmethod
9084 def do_create (cls , cfg , args ):
91- if args .esp_tool :
92- espidf = args .esp_tool
93- else :
94- espidf = path .join (args .esp_idf_path , 'tools' , 'esptool_py' ,
95- 'esptool.py' )
9685
9786 return Esp32BinaryRunner (
9887 cfg , args .esp_device , boot_address = args .esp_boot_address ,
9988 part_table_address = args .esp_partition_table_address ,
10089 app_address = args .esp_app_address , erase = args .erase , reset = args .reset ,
10190 baud = args .esp_baud_rate , flash_size = args .esp_flash_size ,
10291 flash_freq = args .esp_flash_freq , flash_mode = args .esp_flash_mode ,
103- espidf = espidf , bootloader_bin = args .esp_flash_bootloader ,
92+ espidf = args . esp_idf_path , bootloader_bin = args .esp_flash_bootloader ,
10493 partition_table_bin = args .esp_flash_partition_table ,
10594 encrypt = args .esp_encrypt , no_stub = args .esp_no_stub )
10695
10796 def do_run (self , command , ** kwargs ):
108- self .require (self .espidf )
10997
110- # Add Python interpreter
111- cmd_flash = [sys .executable , self .espidf , '--chip' , 'auto' ]
98+ cmd_flash = ['esptool' ]
11299
113100 if self .device is not None :
114101 cmd_flash .extend (['--port' , self .device ])
115102
116103 if self .erase is True :
117- cmd_erase = cmd_flash + ['erase_flash ' ]
104+ cmd_erase = cmd_flash + ['erase-flash ' ]
118105 self .check_call (cmd_erase )
119106
120107 if self .no_stub is True :
121108 cmd_flash .extend (['--no-stub' ])
122109 cmd_flash .extend (['--baud' , self .baud ])
123- cmd_flash .extend (['--before' , 'default_reset ' ])
110+ cmd_flash .extend (['--before' , 'default-reset ' ])
124111 if self .reset :
125- cmd_flash .extend (['--after' , 'hard_reset ' , 'write_flash ' , '-u' ])
126- cmd_flash .extend (['--flash_mode ' , self .flash_mode ])
127- cmd_flash .extend (['--flash_freq ' , self .flash_freq ])
128- cmd_flash .extend (['--flash_size ' , self .flash_size ])
112+ cmd_flash .extend (['--after' , 'hard-reset ' , 'write-flash ' , '-u' ])
113+ cmd_flash .extend (['--flash-mode ' , self .flash_mode ])
114+ cmd_flash .extend (['--flash-freq ' , self .flash_freq ])
115+ cmd_flash .extend (['--flash-size ' , self .flash_size ])
129116
130117 if self .encrypt :
131118 cmd_flash .extend (['--encrypt' ])
0 commit comments