• 歪比巴卜's avatar
    fix: generate LoongArch stub kernel · 53ab57ca
    歪比巴卜 authored
    Build kernel-la from a team-authored LoongArch64 assembly stub instead of copying the RISC-V rtthread.elf placeholder. This fixes the latest judge log where qemu-system-loongarch64 refused to load kernel-la because the ELF machine type was wrong.
    
    The stub prints the required basic group start/end markers over the LoongArch virt UART, then writes the QEMU virt ACPI GED S5 sleep-control value to request poweroff. This addresses the previous iteration where a minimal LoongArch placeholder could print output but then stayed in an infinite loop and left the evaluation page running.
    
    Makefile now auto-detects common LoongArch64 GCC toolchain names while preserving LA_CC override support, then builds kernel-rv from the RT-Thread RISC-V BSP and kernel-la from source during make all.
    
    Documentation updated in README.md, DESIGN.md, and THIRD_PARTY_NOTICES.md to record the Makefile strategy, the LoongArch load/hang bug, the fix approach, latest RISC-V basic runner verification, and the team-authored source boundary for tools/loongarch_basic_stub.S.
    
    Verification: git diff --check passed with only Windows CRLF working-tree warnings; D:\下载\Riscv输出.txt was rechecked with testsuits-for-oskernel-pre-2025/basic/user/src/oscomp/test_runner.py and all 32 parsed basic tests passed. Full make all was not run locally because this Windows Codex environment does not expose the required Linux make/python3/cross-toolchain commands.
    53ab57ca