65 lines
2.2 KiB
Python
65 lines
2.2 KiB
Python
# decompyle3 version 3.9.0
|
|
# Python bytecode version base 3.7.0 (3394)
|
|
# Decompiled from: Python 3.7.16 (default, Mar 30 2023, 01:25:49)
|
|
# [GCC 12.2.1 20220924]
|
|
# Embedded file name: libs/base/bl602/flash_select_do.py
|
|
import os, config as gol
|
|
from libs import bflb_utils
|
|
from libs.bflb_utils import app_path, conf_sign
|
|
from libs.bflb_configobj import BFConfigParser
|
|
|
|
def get_suitable_file_name(cfg_dir, flash_id):
|
|
conf_files = []
|
|
for home, dirs, files in os.walk(cfg_dir):
|
|
for filename in files:
|
|
if filename.split('_')[-1] == flash_id + '.conf':
|
|
conf_files.append(filename)
|
|
|
|
if len(conf_files) > 1:
|
|
bflb_utils.printf('Flash id duplicate and alternative is:')
|
|
for i in range(len(conf_files)):
|
|
tmp = conf_files[i].split('.')[0]
|
|
bflb_utils.printf('%d:%s' % (i + 1, tmp))
|
|
|
|
return conf_files[i]
|
|
if len(conf_files) == 1:
|
|
return conf_files[0]
|
|
return ''
|
|
|
|
|
|
def update_flash_cfg_do(chipname, chiptype, flash_id, file=None, create=False, section=None):
|
|
if conf_sign:
|
|
cfg_dir = app_path + '/utils/flash/' + chipname + '/'
|
|
else:
|
|
cfg_dir = app_path + '/utils/flash/' + gol.flash_dict[chipname] + '/'
|
|
conf_name = get_suitable_file_name(cfg_dir, flash_id)
|
|
value_key = []
|
|
if os.path.isfile(cfg_dir + conf_name) is False:
|
|
return False
|
|
fp = open(cfg_dir + conf_name, 'r')
|
|
for line in fp.readlines():
|
|
value = line.split('=')[0].strip()
|
|
if value == '[FLASH_CFG]':
|
|
continue
|
|
else:
|
|
value_key.append(value)
|
|
|
|
cfg1 = BFConfigParser()
|
|
cfg1.read(cfg_dir + conf_name)
|
|
cfg2 = BFConfigParser()
|
|
cfg2.read(file)
|
|
for i in range(len(value_key)):
|
|
if cfg1.has_option('FLASH_CFG', value_key[i]):
|
|
if cfg2.has_option(section, value_key[i]):
|
|
tmp_value = cfg1.get('FLASH_CFG', value_key[i])
|
|
bflb_utils.update_cfg(cfg2, section, value_key[i], tmp_value)
|
|
|
|
cfg2.write(file, 'w+')
|
|
bflb_utils.printf('Update flash cfg finished')
|
|
|
|
|
|
def get_supported_flash_do():
|
|
flash_type = []
|
|
return flash_type
|
|
# okay decompiling ./libs/base/bl602/flash_select_do.pyc
|