3
3
#
4
4
# SPDX-License-Identifier: Apache-2.0
5
5
6
- '''Runner for flashing ESP32 devices with esptool/espidf .'''
6
+ '''Runner for flashing ESP32 devices with esptool.'''
7
7
8
8
import os
9
- import sys
10
- from os import path
11
9
12
10
from runners .core import RunnerCaps , ZephyrBinaryRunner
13
11
@@ -18,7 +16,7 @@ class Esp32BinaryRunner(ZephyrBinaryRunner):
18
16
def __init__ (self , cfg , device , boot_address , part_table_address ,
19
17
app_address , erase = False , reset = False , baud = 921600 ,
20
18
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 ,
22
20
encrypt = False , no_stub = False ):
23
21
super ().__init__ (cfg )
24
22
self .elf = cfg .elf_file
@@ -71,10 +69,6 @@ def do_add_parser(cls, parser):
71
69
help = 'flash frequency, default "40m"' )
72
70
parser .add_argument ('--esp-flash-mode' , default = 'dio' ,
73
71
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''' )
78
72
parser .add_argument ('--esp-flash-bootloader' ,
79
73
help = 'Bootloader image to flash' )
80
74
parser .add_argument ('--esp-flash-partition_table' ,
@@ -88,44 +82,37 @@ def do_add_parser(cls, parser):
88
82
89
83
@classmethod
90
84
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' )
96
85
97
86
return Esp32BinaryRunner (
98
87
cfg , args .esp_device , boot_address = args .esp_boot_address ,
99
88
part_table_address = args .esp_partition_table_address ,
100
89
app_address = args .esp_app_address , erase = args .erase , reset = args .reset ,
101
90
baud = args .esp_baud_rate , flash_size = args .esp_flash_size ,
102
91
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 ,
104
93
partition_table_bin = args .esp_flash_partition_table ,
105
94
encrypt = args .esp_encrypt , no_stub = args .esp_no_stub )
106
95
107
96
def do_run (self , command , ** kwargs ):
108
- self .require (self .espidf )
109
97
110
- # Add Python interpreter
111
- cmd_flash = [sys .executable , self .espidf , '--chip' , 'auto' ]
98
+ cmd_flash = ['esptool' ]
112
99
113
100
if self .device is not None :
114
101
cmd_flash .extend (['--port' , self .device ])
115
102
116
103
if self .erase is True :
117
- cmd_erase = cmd_flash + ['erase_flash ' ]
104
+ cmd_erase = cmd_flash + ['erase-flash ' ]
118
105
self .check_call (cmd_erase )
119
106
120
107
if self .no_stub is True :
121
108
cmd_flash .extend (['--no-stub' ])
122
109
cmd_flash .extend (['--baud' , self .baud ])
123
- cmd_flash .extend (['--before' , 'default_reset ' ])
110
+ cmd_flash .extend (['--before' , 'default-reset ' ])
124
111
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 ])
129
116
130
117
if self .encrypt :
131
118
cmd_flash .extend (['--encrypt' ])
0 commit comments