Files
LithosAnanake/src/starkernel/arch/riscv64
Robert Allan JamesandClaude Sonnet 5 b031b802e3 Rename FABRIC series: FABRIC.md->0, FABRIC-2.md->1, FABRIC-3.md->2, FABRIC-4.md unchanged
FABRIC.md -> FABRIC-0.md
FABRIC-2.md -> FABRIC-1.md
FABRIC-3.md -> FABRIC-2.md (the current/living document)
FABRIC-4.md unchanged (new #3 to follow separately)

Every cross-reference repo-wide updated to match, including doc-comment
citations inside kernel source (.c/.h) files -- done via an ordered
placeholder substitution (FABRIC-3.md->placeholder2, FABRIC-2.md->
placeholder1, FABRIC.md->placeholder0, then placeholders resolved to
final names) in a single pass per file to avoid double-shifting
already-renamed references.

One line in capsules/font.4th grew past the 64-char block-format limit
as a side effect of the longer filename; shortened it and reverified
with mkcapsule --lint (34/34 pass) before rebuilding.

Verified 3-arch boot to ok> (amd64/aarch64/riscv64, each in the
foreground) after the fix; logs and DoE CSVs from this session's
verification runs included per this repo's own audit-artifact
convention.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_019YcT3H2PQeyujrzjqS3Var
2026-09-04 11:22:51 -04:00
..
2026-08-01 07:49:56 -04:00

src/starkernel/arch/riscv64/

RISC-V 64-bit architecture support for LithosAnanke.

  • arch.c — architecture init entry point.
  • apic.c — PLIC (Platform-Level Interrupt Controller) stub, named apic.c to match the shared per-arch file-naming convention across amd64/aarch64/riscv64 (RISC-V has no Local APIC). Satisfies the common apic_init()/EOI call sites without real PLIC bring-up yet; deferred to a later milestone.
  • timer.c — timer setup (heartbeat tick source).
  • interrupts.c — trap vector setup and interrupt dispatch.
  • boot.S — early boot assembly.
  • isr.S — interrupt service routine stubs.

No kernel_entry.S — see Makefile.starkernel for how the riscv64 loader image is produced (ELF → scripts/gen_pe_reloc.py-patched relocations → objcopy → PE).