Implement support for module symbols (#475)
* **New Features** - Adds module symbol support and per-module symbol tables, including LVGL symbol exports moved into a dedicated table. * **API** - Adds symbol-resolution APIs and an accessor to enable dynamic lookup between modules. * **Bug Fixes / Chores** - Explicitly initializes module symbol pointers across device and platform modules to avoid uninitialized state. * **Tests** - Updates tests to account for symbol pointer initialization.
This commit is contained in:
committed by
GitHub
parent
9f721e6655
commit
1f9e7f82fd
@@ -16,7 +16,8 @@ static error_t stop() {
|
||||
struct Module device_module = {
|
||||
.name = "btt-panda-touch",
|
||||
.start = start,
|
||||
.stop = stop
|
||||
.stop = stop,
|
||||
.symbols = nullptr
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
@@ -16,7 +16,8 @@ static error_t stop() {
|
||||
struct Module device_module = {
|
||||
.name = "cyd-2432s024c",
|
||||
.start = start,
|
||||
.stop = stop
|
||||
.stop = stop,
|
||||
.symbols = nullptr
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
@@ -16,7 +16,8 @@ static error_t stop() {
|
||||
struct Module device_module = {
|
||||
.name = "cyd-2432s028r",
|
||||
.start = start,
|
||||
.stop = stop
|
||||
.stop = stop,
|
||||
.symbols = nullptr
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
@@ -16,7 +16,8 @@ static error_t stop() {
|
||||
struct Module device_module = {
|
||||
.name = "cyd-2432s028rv3",
|
||||
.start = start,
|
||||
.stop = stop
|
||||
.stop = stop,
|
||||
.symbols = nullptr
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
@@ -16,7 +16,8 @@ static error_t stop() {
|
||||
struct Module device_module = {
|
||||
.name = "cyd-2432s032c",
|
||||
.start = start,
|
||||
.stop = stop
|
||||
.stop = stop,
|
||||
.symbols = nullptr
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
@@ -16,7 +16,8 @@ static error_t stop() {
|
||||
struct Module device_module = {
|
||||
.name = "cyd-4848s040c",
|
||||
.start = start,
|
||||
.stop = stop
|
||||
.stop = stop,
|
||||
.symbols = nullptr
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
@@ -16,7 +16,8 @@ static error_t stop() {
|
||||
struct Module device_module = {
|
||||
.name = "cyd-8048s043c",
|
||||
.start = start,
|
||||
.stop = stop
|
||||
.stop = stop,
|
||||
.symbols = nullptr
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
@@ -16,7 +16,8 @@ static error_t stop() {
|
||||
struct Module device_module = {
|
||||
.name = "cyd-e32r28t",
|
||||
.start = start,
|
||||
.stop = stop
|
||||
.stop = stop,
|
||||
.symbols = nullptr
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
@@ -16,7 +16,8 @@ static error_t stop() {
|
||||
struct Module device_module = {
|
||||
.name = "cyd-e32r32p",
|
||||
.start = start,
|
||||
.stop = stop
|
||||
.stop = stop,
|
||||
.symbols = nullptr
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
@@ -16,7 +16,8 @@ static error_t stop() {
|
||||
struct Module device_module = {
|
||||
.name = "elecrow-crowpanel-advance-28",
|
||||
.start = start,
|
||||
.stop = stop
|
||||
.stop = stop,
|
||||
.symbols = nullptr
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
@@ -16,7 +16,8 @@ static error_t stop() {
|
||||
struct Module device_module = {
|
||||
.name = "elecrow-crowpanel-advance-35",
|
||||
.start = start,
|
||||
.stop = stop
|
||||
.stop = stop,
|
||||
.symbols = nullptr
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
@@ -16,7 +16,8 @@ static error_t stop() {
|
||||
struct Module device_module = {
|
||||
.name = "elecrow-crowpanel-advance-50",
|
||||
.start = start,
|
||||
.stop = stop
|
||||
.stop = stop,
|
||||
.symbols = nullptr
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
@@ -16,7 +16,8 @@ static error_t stop() {
|
||||
struct Module device_module = {
|
||||
.name = "elecrow-crowpanel-basic-28",
|
||||
.start = start,
|
||||
.stop = stop
|
||||
.stop = stop,
|
||||
.symbols = nullptr
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
@@ -16,7 +16,8 @@ static error_t stop() {
|
||||
struct Module device_module = {
|
||||
.name = "elecrow-crowpanel-basic-35",
|
||||
.start = start,
|
||||
.stop = stop
|
||||
.stop = stop,
|
||||
.symbols = nullptr
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
@@ -16,7 +16,8 @@ static error_t stop() {
|
||||
struct Module device_module = {
|
||||
.name = "elecrow-crowpanel-basic-50",
|
||||
.start = start,
|
||||
.stop = stop
|
||||
.stop = stop,
|
||||
.symbols = nullptr
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
@@ -16,7 +16,8 @@ static error_t stop() {
|
||||
struct Module device_module = {
|
||||
.name = "generic-esp32",
|
||||
.start = start,
|
||||
.stop = stop
|
||||
.stop = stop,
|
||||
.symbols = nullptr
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
@@ -16,7 +16,8 @@ static error_t stop() {
|
||||
struct Module device_module = {
|
||||
.name = "generic-esp32c6",
|
||||
.start = start,
|
||||
.stop = stop
|
||||
.stop = stop,
|
||||
.symbols = nullptr
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
@@ -16,7 +16,8 @@ static error_t stop() {
|
||||
struct Module device_module = {
|
||||
.name = "generic-esp32p4",
|
||||
.start = start,
|
||||
.stop = stop
|
||||
.stop = stop,
|
||||
.symbols = nullptr
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
@@ -16,7 +16,8 @@ static error_t stop() {
|
||||
struct Module device_module = {
|
||||
.name = "generic-esp32s3",
|
||||
.start = start,
|
||||
.stop = stop
|
||||
.stop = stop,
|
||||
.symbols = nullptr
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
@@ -16,7 +16,8 @@ static error_t stop() {
|
||||
struct Module device_module = {
|
||||
.name = "guition-jc1060p470ciwy",
|
||||
.start = start,
|
||||
.stop = stop
|
||||
.stop = stop,
|
||||
.symbols = nullptr
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
@@ -16,7 +16,8 @@ static error_t stop() {
|
||||
struct Module device_module = {
|
||||
.name = "guition-jc2432w328c",
|
||||
.start = start,
|
||||
.stop = stop
|
||||
.stop = stop,
|
||||
.symbols = nullptr
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
@@ -16,7 +16,8 @@ static error_t stop() {
|
||||
struct Module device_module = {
|
||||
.name = "guition-jc3248w535c",
|
||||
.start = start,
|
||||
.stop = stop
|
||||
.stop = stop,
|
||||
.symbols = nullptr
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
@@ -16,7 +16,8 @@ static error_t stop() {
|
||||
struct Module device_module = {
|
||||
.name = "guition-jc8048w550c",
|
||||
.start = start,
|
||||
.stop = stop
|
||||
.stop = stop,
|
||||
.symbols = nullptr
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
@@ -16,7 +16,8 @@ static error_t stop() {
|
||||
struct Module device_module = {
|
||||
.name = "heltec-wifi-lora-32-v3",
|
||||
.start = start,
|
||||
.stop = stop
|
||||
.stop = stop,
|
||||
.symbols = nullptr
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
@@ -16,7 +16,8 @@ static error_t stop() {
|
||||
struct Module device_module = {
|
||||
.name = "lilygo-tdeck",
|
||||
.start = start,
|
||||
.stop = stop
|
||||
.stop = stop,
|
||||
.symbols = nullptr
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
@@ -16,7 +16,8 @@ static error_t stop() {
|
||||
struct Module device_module = {
|
||||
.name = "lilygo-tdisplay-s3",
|
||||
.start = start,
|
||||
.stop = stop
|
||||
.stop = stop,
|
||||
.symbols = nullptr
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
@@ -16,7 +16,8 @@ static error_t stop() {
|
||||
struct Module device_module = {
|
||||
.name = "lilygo-tdisplay",
|
||||
.start = start,
|
||||
.stop = stop
|
||||
.stop = stop,
|
||||
.symbols = nullptr
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
@@ -16,7 +16,8 @@ static error_t stop() {
|
||||
struct Module device_module = {
|
||||
.name = "lilygo-tdongle-s3",
|
||||
.start = start,
|
||||
.stop = stop
|
||||
.stop = stop,
|
||||
.symbols = nullptr
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
@@ -24,7 +24,8 @@ static error_t stop() {
|
||||
struct Module device_module = {
|
||||
.name = "lilygo-tlora-pager",
|
||||
.start = start,
|
||||
.stop = stop
|
||||
.stop = stop,
|
||||
.symbols = nullptr
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
@@ -16,7 +16,8 @@ static error_t stop() {
|
||||
struct Module device_module = {
|
||||
.name = "m5stack-cardputer-adv",
|
||||
.start = start,
|
||||
.stop = stop
|
||||
.stop = stop,
|
||||
.symbols = nullptr
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
@@ -16,7 +16,8 @@ static error_t stop() {
|
||||
struct Module device_module = {
|
||||
.name = "m5stack-cardputer",
|
||||
.start = start,
|
||||
.stop = stop
|
||||
.stop = stop,
|
||||
.symbols = nullptr
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
@@ -16,7 +16,8 @@ static error_t stop() {
|
||||
struct Module device_module = {
|
||||
.name = "m5stack-core2",
|
||||
.start = start,
|
||||
.stop = stop
|
||||
.stop = stop,
|
||||
.symbols = nullptr
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
@@ -16,7 +16,8 @@ static error_t stop() {
|
||||
struct Module device_module = {
|
||||
.name = "m5stack-cores3",
|
||||
.start = start,
|
||||
.stop = stop
|
||||
.stop = stop,
|
||||
.symbols = nullptr
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
@@ -16,7 +16,8 @@ static error_t stop() {
|
||||
struct Module device_module = {
|
||||
.name = "m5stack-stickc-plus",
|
||||
.start = start,
|
||||
.stop = stop
|
||||
.stop = stop,
|
||||
.symbols = nullptr
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
@@ -16,7 +16,8 @@ static error_t stop() {
|
||||
struct Module device_module = {
|
||||
.name = "m5stack-stickc-plus2",
|
||||
.start = start,
|
||||
.stop = stop
|
||||
.stop = stop,
|
||||
.symbols = nullptr
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
@@ -16,7 +16,8 @@ static error_t stop() {
|
||||
struct Module device_module = {
|
||||
.name = "m5stack-tab5",
|
||||
.start = start,
|
||||
.stop = stop
|
||||
.stop = stop,
|
||||
.symbols = nullptr
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
@@ -16,7 +16,8 @@ static error_t stop() {
|
||||
struct Module device_module = {
|
||||
.name = "simulator",
|
||||
.start = start,
|
||||
.stop = stop
|
||||
.stop = stop,
|
||||
.symbols = nullptr
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
@@ -16,7 +16,8 @@ static error_t stop() {
|
||||
struct Module device_module = {
|
||||
.name = "unphone",
|
||||
.start = start,
|
||||
.stop = stop
|
||||
.stop = stop,
|
||||
.symbols = nullptr
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
@@ -16,7 +16,8 @@ static error_t stop() {
|
||||
struct Module device_module = {
|
||||
.name = "waveshare-esp32-s3-geek",
|
||||
.start = start,
|
||||
.stop = stop
|
||||
.stop = stop,
|
||||
.symbols = nullptr
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
@@ -16,7 +16,8 @@ static error_t stop() {
|
||||
struct Module device_module = {
|
||||
.name = "waveshare-s3-lcd-13",
|
||||
.start = start,
|
||||
.stop = stop
|
||||
.stop = stop,
|
||||
.symbols = nullptr
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
@@ -16,7 +16,8 @@ static error_t stop() {
|
||||
struct Module device_module = {
|
||||
.name = "waveshare-s3-touch-lcd-128",
|
||||
.start = start,
|
||||
.stop = stop
|
||||
.stop = stop,
|
||||
.symbols = nullptr
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
@@ -16,7 +16,8 @@ static error_t stop() {
|
||||
struct Module device_module = {
|
||||
.name = "waveshare-s3-touch-lcd-147",
|
||||
.start = start,
|
||||
.stop = stop
|
||||
.stop = stop,
|
||||
.symbols = nullptr
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
@@ -16,7 +16,8 @@ static error_t stop() {
|
||||
struct Module device_module = {
|
||||
.name = "waveshare-s3-touch-lcd-43",
|
||||
.start = start,
|
||||
.stop = stop
|
||||
.stop = stop,
|
||||
.symbols = nullptr
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
@@ -16,7 +16,8 @@ static error_t stop() {
|
||||
struct Module device_module = {
|
||||
.name = "wireless-tag-wt32-sc01-plus",
|
||||
.start = start,
|
||||
.stop = stop
|
||||
.stop = stop,
|
||||
.symbols = nullptr
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user