From 353c9057709ff147a63f0e40d43a50a010c10128 Mon Sep 17 00:00:00 2001 From: Razvan Grigore Date: Tue, 27 May 2025 12:01:11 +0300 Subject: [PATCH 1/4] support WEAK symbols --- esp32_image_parser.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/esp32_image_parser.py b/esp32_image_parser.py index 6503cf7..7d8f196 100755 --- a/esp32_image_parser.py +++ b/esp32_image_parser.py @@ -189,7 +189,7 @@ def add_elf_symbols(elf): fh = open("symbols_dump.txt", "r") lines = fh.readlines() - bind_map = {"LOCAL" : STB.STB_LOCAL, "GLOBAL" : STB.STB_GLOBAL} + bind_map = {"LOCAL" : STB.STB_LOCAL, "GLOBAL" : STB.STB_GLOBAL, "WEAK" : STB.STB_WEAK} type_map = {"NOTYPE": STT.STT_NOTYPE, "OBJECT" : STT.STT_OBJECT, "FUNC" : STT.STT_FUNC, "FILE" : STT.STT_FILE} for line in lines: From 515d7ac4629e1f1e7ca611ab98613dcdbd5ed5d2 Mon Sep 17 00:00:00 2001 From: samy kamkar Date: Sun, 7 May 2023 19:37:26 -0700 Subject: [PATCH 2/4] add support for non-DMA DRAM data (cherry picked from commit d05e36849fada939df2e46bcae6819f594d9fcfb) --- esp32_image_parser.py | 1 + 1 file changed, 1 insertion(+) diff --git a/esp32_image_parser.py b/esp32_image_parser.py index 7d8f196..bdb7a7c 100755 --- a/esp32_image_parser.py +++ b/esp32_image_parser.py @@ -52,6 +52,7 @@ def image2elf(filename, output_file, verbose=False): # maps segment names to ELF sections section_map = { 'DROM' : '.flash.rodata', + 'BYTE_ACCESSIBLE, DRAM' : '.dram0.data', 'BYTE_ACCESSIBLE, DRAM, DMA': '.dram0.data', 'IROM' : '.flash.text', #'RTC_IRAM' : '.rtc.text' TODO From 996b4298b55224400230032cd2ca780b846115af Mon Sep 17 00:00:00 2001 From: samy kamkar Date: Sun, 7 May 2023 19:32:24 -0700 Subject: [PATCH 3/4] fix create_elf bug with missing LoadFirmwareImage (cherry picked from commit 94e56f64a489d4409a7bae645d7cb8d3659a39eb) --- esp32_image_parser.py | 1 + 1 file changed, 1 insertion(+) diff --git a/esp32_image_parser.py b/esp32_image_parser.py index bdb7a7c..bcdb3db 100755 --- a/esp32_image_parser.py +++ b/esp32_image_parser.py @@ -6,6 +6,7 @@ import os, argparse from makeelf.elf import * from esptool import * +from esptool.bin_image import * from esp32_firmware_reader import * from read_nvs import * From 8a9a01e42a5301a187716624cdb5d6f64cd6ef66 Mon Sep 17 00:00:00 2001 From: samy kamkar Date: Sun, 7 May 2023 19:31:07 -0700 Subject: [PATCH 4/4] ignore __pycache__ dir (cherry picked from commit 1c9a9d2b288c4f849377a101f8d44b3edbacaae7) --- .gitignore | 1 + 1 file changed, 1 insertion(+) diff --git a/.gitignore b/.gitignore index e43b0f9..9f2e848 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1,2 @@ .DS_Store +__pycache__/