mirror of
https://github.com/platformio/platformio-core.git
synced 2025-07-30 18:17:13 +02:00
Move "sections" data to the "memory" space
This commit is contained in:
@ -192,19 +192,21 @@ def memusageCalculateFirmwareSize(_, sections):
|
|||||||
|
|
||||||
|
|
||||||
def DumpMemoryUsage(_, target, source, env): # pylint: disable=unused-argument
|
def DumpMemoryUsage(_, target, source, env): # pylint: disable=unused-argument
|
||||||
data = {"version": 1, "timestamp": int(time.time()), "device": {}, "memory": {}}
|
result = {"version": 1, "timestamp": int(time.time()), "device": {}, "memory": {}}
|
||||||
|
|
||||||
board = env.BoardConfig()
|
board = env.BoardConfig()
|
||||||
if board:
|
if board:
|
||||||
data["device"] = {
|
result["device"] = {
|
||||||
"mcu": board.get("build.mcu", ""),
|
"mcu": board.get("build.mcu", ""),
|
||||||
"cpu": board.get("build.cpu", ""),
|
"cpu": board.get("build.cpu", ""),
|
||||||
"frequency": board.get("build.f_cpu"),
|
"frequency": board.get("build.f_cpu"),
|
||||||
"flash": int(board.get("upload.maximum_size", 0)),
|
"flash": int(board.get("upload.maximum_size", 0)),
|
||||||
"ram": int(board.get("upload.maximum_ram_size", 0)),
|
"ram": int(board.get("upload.maximum_ram_size", 0)),
|
||||||
}
|
}
|
||||||
if data["device"]["frequency"] and data["device"]["frequency"].endswith("L"):
|
if result["device"]["frequency"] and result["device"]["frequency"].endswith(
|
||||||
data["device"]["frequency"] = int(data["device"]["frequency"][0:-1])
|
"L"
|
||||||
|
):
|
||||||
|
result["device"]["frequency"] = int(result["device"]["frequency"][0:-1])
|
||||||
|
|
||||||
elf_path = env.subst("$PIOMAINPROG")
|
elf_path = env.subst("$PIOMAINPROG")
|
||||||
|
|
||||||
@ -217,11 +219,11 @@ def DumpMemoryUsage(_, target, source, env): # pylint: disable=unused-argument
|
|||||||
|
|
||||||
sections = _collect_sections_info(env, elffile)
|
sections = _collect_sections_info(env, elffile)
|
||||||
firmware_ram, firmware_flash = env.memusageCalculateFirmwareSize(sections)
|
firmware_ram, firmware_flash = env.memusageCalculateFirmwareSize(sections)
|
||||||
data["memory"]["total"] = {
|
result["memory"]["total"] = {
|
||||||
"ram_size": firmware_ram,
|
"ram_size": firmware_ram,
|
||||||
"flash_size": firmware_flash,
|
"flash_size": firmware_flash,
|
||||||
"sections": sections,
|
|
||||||
}
|
}
|
||||||
|
result["memory"]["sections"] = sections
|
||||||
|
|
||||||
files = {}
|
files = {}
|
||||||
for symbol in _collect_symbols_info(env, elffile, elf_path, sections):
|
for symbol in _collect_symbols_info(env, elffile, elf_path, sections):
|
||||||
@ -240,15 +242,15 @@ def DumpMemoryUsage(_, target, source, env): # pylint: disable=unused-argument
|
|||||||
|
|
||||||
files[file_path]["symbols"].append(symbol)
|
files[file_path]["symbols"].append(symbol)
|
||||||
|
|
||||||
data["memory"]["files"] = []
|
result["memory"]["files"] = []
|
||||||
for k, v in files.items():
|
for k, v in files.items():
|
||||||
file_data = {"path": k}
|
file_data = {"path": k}
|
||||||
file_data.update(v)
|
file_data.update(v)
|
||||||
data["memory"]["files"].append(file_data)
|
result["memory"]["files"].append(file_data)
|
||||||
|
|
||||||
print(
|
print(
|
||||||
"Memory usage report has been saved to the following location: "
|
"Memory usage report has been saved to the following location: "
|
||||||
f"\"{save_report(os.getcwd(), env['PIOENV'], data)}\""
|
f"\"{save_report(os.getcwd(), env['PIOENV'], result)}\""
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user