From 66aa461f98d0abad8e6fcd4bb8b31170d8d80804 Mon Sep 17 00:00:00 2001 From: Richard Qin Date: Wed, 29 Apr 2026 02:45:08 +0800 Subject: feat: add driver registration table to linker script macros --- na/include/lume/lumeos.lds.h | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/na/include/lume/lumeos.lds.h b/na/include/lume/lumeos.lds.h index b4a8f42..76e1e75 100644 --- a/na/include/lume/lumeos.lds.h +++ b/na/include/lume/lumeos.lds.h @@ -29,6 +29,7 @@ _srodata = .; \ *(.rodata .rodata.*) \ INIT_ARRAY \ + DRIVER_ARRAY \ _erodata = .; \ } @@ -39,6 +40,13 @@ KEEP(*(.init_array .init_array.*)) \ __init_array_end = .; +/* ===== Driver Registration Table ===== */ +#define DRIVER_ARRAY \ + . = ALIGN(8); \ + PROVIDE(__drivers_start = .); \ + KEEP(*(.drivers)) \ + PROVIDE(__drivers_end = .); + /* ===== Initialized Read-Write Data ===== */ #define DATA_SECTION \ .data : AT(ADDR(.data) - PAGE_OFFSET) { \ -- cgit v1.2.3