On 11/8/26 1:47 PM, Breno Rodrigues Alves wrote:
*** BLURB HERE ***
?
Breno Rodrigues Alves (6):
core: Refactor microkernel base structures to ISO C17 standard
ipc: Replace legacy assembly locks with C17 native atomic primitives
vm: Implement 5-level dynamic page tables to break legacy RAM limits
drivers: Design core hardware abstraction layer for PCIe and modern
iGPUs
audio: Implement Intel HDA and USB Audio circular DMA engine via IPC
doc: Update Texinfo manuals to reflect C17 standards and driver
topology
What advantage does C17 provide compared to what is currently being used
in GNU Mach?
It seems unnecessary to use specifically C17. C99 and C89 are okay. I
assume GNU Mach uses that, not sure.
doc/mach.texi | 3 +-
doc/modern-platform.texi | 114 +++
modern/Makefile | 57 ++
IIRC there is not a `modern` folder.
modern/freestanding/limits.h | 29 +
modern/freestanding/stdalign.h | 14 +
modern/freestanding/stdarg.h | 17 +
modern/freestanding/stdatomic.h | 138 ++++
modern/freestanding/stdbool.h | 14 +
modern/freestanding/stddef.h | 17 +
modern/freestanding/stdint.h | 99 +++
modern/freestanding/stdnoreturn.h | 11 +
modern/freestanding/time.h | 23 +
modern/include/mach/c17/apic.h | 169 ++++
modern/include/mach/c17/atomic.h | 245 ++++++
modern/include/mach/c17/audio.h | 113 +++
modern/include/mach/c17/base.h | 333 ++++++++
modern/include/mach/c17/bluetooth.h | 42 +
modern/include/mach/c17/driver.h | 175 ++++
modern/include/mach/c17/fb.h | 109 +++
modern/include/mach/c17/firmware.h | 73 ++
modern/include/mach/c17/hid.h | 143 ++++
modern/include/mach/c17/igpu.h | 69 ++
modern/include/mach/c17/ipc.h | 177 ++++
modern/include/mach/c17/leds.h | 51 ++
modern/include/mach/c17/net.h | 186 +++++
modern/include/mach/c17/nvme.h | 185 +++++
modern/include/mach/c17/pci.h | 164 ++++
modern/include/mach/c17/sched.h | 191 +++++
modern/include/mach/c17/vm.h | 276 +++++++
modern/include/mach/c17/wifi.h | 139 ++++
modern/include/mach/c17/xhci.h | 248 ++++++
modern/include/threads.h | 104 +++
modern/interfaces/firmware.defs | 47 ++
modern/src/core/mem.c | 140 ++++
modern/src/core/threads.c | 594 ++++++++++++++
modern/src/drivers/apic.c | 485 +++++++++++
modern/src/drivers/audio.c | 204 +++++
modern/src/drivers/bluetooth.c | 57 ++
modern/src/drivers/core.c | 152 ++++
modern/src/drivers/fb.c | 678 ++++++++++++++++
modern/src/drivers/firmware.c | 119 +++
modern/src/drivers/hid.c | 616 ++++++++++++++
modern/src/drivers/igpu.c | 91 +++
modern/src/drivers/leds.c | 80 ++
modern/src/drivers/net.c | 1104 +++++++++++++++++++++++++
modern/src/drivers/nvme.c | 578 ++++++++++++++
modern/src/drivers/pci.c | 514 ++++++++++++
modern/src/drivers/wifi.c | 332 ++++++++
modern/src/drivers/xhci.c | 1090 +++++++++++++++++++++++++
modern/src/ipc/ipc.c | 542 +++++++++++++
modern/src/sched/sched.c | 682 ++++++++++++++++
modern/src/vm/vm.c | 1155 +++++++++++++++++++++++++++
modern/tests/fake_hw.c | 220 +++++
modern/tests/fake_hw.h | 50 ++
modern/tests/test.h | 51 ++
modern/tests/test_apic.c | 239 ++++++
modern/tests/test_fb.c | 165 ++++
modern/tests/test_hid.c | 202 +++++
modern/tests/test_ipc.c | 189 +++++
modern/tests/test_modern_platform.c | 161 ++++
modern/tests/test_net.c | 300 +++++++
modern/tests/test_nvme.c | 332 ++++++++
modern/tests/test_pci.c | 294 +++++++
modern/tests/test_sched.c | 158 ++++
modern/tests/test_threads.c | 99 +++
modern/tests/test_vm.c | 310 +++++++
modern/tests/test_wifi.c | 217 +++++
modern/tests/test_xhci.c | 413 ++++++++++
68 files changed, 16387 insertions(+), 1 deletion(-)
create mode 100644 doc/modern-platform.texi
create mode 100644 modern/Makefile
create mode 100644 modern/freestanding/limits.h
create mode 100644 modern/freestanding/stdalign.h
create mode 100644 modern/freestanding/stdarg.h
create mode 100644 modern/freestanding/stdatomic.h
create mode 100644 modern/freestanding/stdbool.h
create mode 100644 modern/freestanding/stddef.h
create mode 100644 modern/freestanding/stdint.h
create mode 100644 modern/freestanding/stdnoreturn.h
create mode 100644 modern/freestanding/time.h
create mode 100644 modern/include/mach/c17/apic.h
create mode 100644 modern/include/mach/c17/atomic.h
create mode 100644 modern/include/mach/c17/audio.h
create mode 100644 modern/include/mach/c17/base.h
create mode 100644 modern/include/mach/c17/bluetooth.h
create mode 100644 modern/include/mach/c17/driver.h
create mode 100644 modern/include/mach/c17/fb.h
create mode 100644 modern/include/mach/c17/firmware.h
create mode 100644 modern/include/mach/c17/hid.h
create mode 100644 modern/include/mach/c17/igpu.h
create mode 100644 modern/include/mach/c17/ipc.h
create mode 100644 modern/include/mach/c17/leds.h
create mode 100644 modern/include/mach/c17/net.h
create mode 100644 modern/include/mach/c17/nvme.h
create mode 100644 modern/include/mach/c17/pci.h
create mode 100644 modern/include/mach/c17/sched.h
create mode 100644 modern/include/mach/c17/vm.h
create mode 100644 modern/include/mach/c17/wifi.h
create mode 100644 modern/include/mach/c17/xhci.h
create mode 100644 modern/include/threads.h
create mode 100644 modern/interfaces/firmware.defs
create mode 100644 modern/src/core/mem.c
create mode 100644 modern/src/core/threads.c
create mode 100644 modern/src/drivers/apic.c
create mode 100644 modern/src/drivers/audio.c
create mode 100644 modern/src/drivers/bluetooth.c
create mode 100644 modern/src/drivers/core.c
create mode 100644 modern/src/drivers/fb.c
create mode 100644 modern/src/drivers/firmware.c
create mode 100644 modern/src/drivers/hid.c
create mode 100644 modern/src/drivers/igpu.c
create mode 100644 modern/src/drivers/leds.c
create mode 100644 modern/src/drivers/net.c
create mode 100644 modern/src/drivers/nvme.c
create mode 100644 modern/src/drivers/pci.c
create mode 100644 modern/src/drivers/wifi.c
create mode 100644 modern/src/drivers/xhci.c
create mode 100644 modern/src/ipc/ipc.c
create mode 100644 modern/src/sched/sched.c
create mode 100644 modern/src/vm/vm.c
create mode 100644 modern/tests/fake_hw.c
create mode 100644 modern/tests/fake_hw.h
create mode 100644 modern/tests/test.h
create mode 100644 modern/tests/test_apic.c
create mode 100644 modern/tests/test_fb.c
create mode 100644 modern/tests/test_hid.c
create mode 100644 modern/tests/test_ipc.c
create mode 100644 modern/tests/test_modern_platform.c
create mode 100644 modern/tests/test_net.c
create mode 100644 modern/tests/test_nvme.c
create mode 100644 modern/tests/test_pci.c
create mode 100644 modern/tests/test_sched.c
create mode 100644 modern/tests/test_threads.c
create mode 100644 modern/tests/test_vm.c
create mode 100644 modern/tests/test_wifi.c
create mode 100644 modern/tests/test_xhci.c
--
NexusSfan
GNU.org - Please support free software.