feat: SKEL skeleton instrumentation - designed-but-unimplemented paths panic

- hypercall.c: 5 Phase 1.3 stubs -> HCALL-E01..E05 panic (no NOSYS return)
- drr_stub.c: snapshot alloc fail -> DRR-E01; new skeletons DRR-E02 root key
  seal, DRR-E03 task kill crypto erase, DRR-E04/E05 segment/system rollback,
  DRR-E06/E07 driver recovery ops dispatch
- sched.c: enable fail -> SCH-E02 panic (no silent demo skip)
- dkm/kernel_api.c: D1 hot-unload DKM-E01, D2 bare code loader DKM-E02,
  SIPI AP wake DKM-E03 skeletons
- virtio_net tx/rx stubs -> VNET-E01/E02; ath9k tx stub -> ATH-E01;
  xhci port reset -> XHC-E01; nvme MSI/MSI-X fail -> NVME-E01..E03 (no
  silent polling downgrade); e1000 MAC fallback -> E1K-E01
- pe_shim unimpl API -> PE-E01; PE ordinal import -> PE-E02
- kernel/main.c: lib sync / vscode install fail -> LNX-E01/E02
- NEW brand/brand.c (E1 boot anim BRAND-E01, E2 time egg BRAND-E02) and
  pkg/pkg.c (pacman skeleton PKG-E01..03), wired into UTSM MAKEFILE
- Deliberate design-internal fallbacks kept and documented (VMX skip,
  bzImage skip, KDE fallback, boot-module fallback, apic->PIC route)
This commit is contained in:
Linehu
2026-10-03 00:30:54 +08:00
parent 38ff3cf93c
commit 583262f5f0
35 changed files with 316 additions and 57 deletions
+8 -3
View File
@@ -531,8 +531,11 @@ static void ath9k_rx_drain(void) {
* 真实硬件验证后增量完善。
*/
static void ath9k_set_channel(u8 channel) {
(void)channel;
/* TODO: 完整 ath9k 信道切换序列(参考 ar9002_hw_set_channel) */
/* TODO: 完整 ath9k 信道切换序列(参考 ar9002_hw_set_channel)。
* 严格错误策略插桩:本序列是占位最小实现,若上层依赖"信道已真正
* 切换"的语义(如定向扫描),调用方必须走 panic 版本接口——
* 当前扫描状态机明确容忍近似信道,此处保留最小序列并打点。 */
raw_hex("[ath9k] set_channel (minimal sequence), ch=", channel);
/* 触发 RFBUS 请求,等待 grant */
ath9k_reg_write(AR_PHY_RFBUS_REQ, 0x1);
dkm_delay_us(5);
@@ -601,9 +604,11 @@ static int ath9k_is_wireless_impl(void *ctx) {
return 1;
}
/* ath9k 当前不支持 TX(仅扫描) */
/* ath9k 当前不支持 TX(仅扫描)——严格错误策略插桩:上层若真把帧交给
* 只会扫描的无线驱动,panic 而非静默丢包(ATH-E01)。 */
static int ath9k_tx_stub(void *ctx, const void *packet, u32 length) {
(void)ctx; (void)packet; (void)length;
g_log->panic("ATH-E01 TX NOT IMPLEMENTED (scan-only driver got a tx)");
return -1;
}