ASELSANMicrokernel
S551 · AYRI İŞLEM VE TERMİNAL KANITI

S551 · R1 ekran: Goodix GT911 dokunmatik I2C rapor çözücü modeli

Bu statik detail route yalnız S551 kapısına aittir. Kaynak, focused test, regresyon, sınır ve yayın kanıtları komşu kapıların başarılarıyla birleştirilmez.

  1. PASSGLOBAL UMBRELLA PARTIAL · DAR PASS

    S551 · R1 ekran: Goodix GT911 dokunmatik I2C rapor çözücü modeli

    S551 kaynak/host model kapısı PASS'tir: Goodix GT911 dokunmatik denetleyicinin I2C rapor protokolü (adres 0x5D/0x14, 0x814E durum yazmacı, 0x814F'ten başlayan 8 baytlık nokta kayıtları, 0x8047–0x80FE konfigürasyon bloğu ve 0x80FF toplam-tümleyen sağlaması, 0x8140 ürün kimliği '911') saf çözücü mantığı olarak modellendi. Çözücü bayt diliminden en fazla 5 noktalı TouchFrame üretir, buffer-ready bitini zorunlu kılar, eksen takas/ters çevirme dönüşümünü uygular ve 0x814E yazma-geri modelini 0'a temizler; count>5, aralık dışı koordinat, bozuk sağlama, kesik veya fazla uzun çerçeve fail-closed reddedilir. Focused 23/23 PASS'tir. S540 ve S543 fiziksel raw/verdict değişmez RED kalır; supported-profile runtime/physical observation=0/0, hiçbir I2C denetleyici, dokunmatik panel veya board mevcut değildir, Boot-to-UI=false ve R1 acceptance=false'dur. RUNBOOK_EXECUTED_IN_S551=NO. S552 çözülmüş dokunma çerçevelerini tüketen input focus ve touch event routing modelidir.

    Doğrulanan kanıt

    • S551, S550'den ayrı source model module, 23-test focused binary, proof, status manifest, Operations kaydı ve complete Code kartına sahiptir; hiçbir production callsite'a bağlanmamıştır.
    • Dar S551 source-model status=PASS; R1 umbrella=PARTIAL ve S540/S543 physical gate status=RED olarak ayrı tutulur.
    • Model GT911 I2C 7-bit adreslerini 0x5D (primary) ve 0x14 (secondary) olarak tanımlar; başka her adres InvalidI2cAddress ile reddedilir.
    • 0x814E durum yazmacı bit 7 buffer-ready, bit 6 large-detect ve bit 0..3 dokunma sayısı olarak çözülür; buffer-ready biti temizse BufferNotReady döner ve receipt üretilmez.
    • Nokta kayıtları 0x814F'ten itibaren 8 bayttır: track id, x lo/hi, y lo/hi, size lo/hi ve sıfır olması zorunlu reserved bayt; en fazla 5 nokta ve 41 baytlık rapor kabul edilir.
    • Dokunma sayısı 6..15 TouchCountOverflow, çerçeve uzunluğu 1+count*8'den kısa ise TruncatedFrame, uzun ise FrameLengthMismatch ile fail-closed reddedilir.
    • Koordinat aralığı eksen takasından sonra ve ters çevirmeden önce x 0..719 / y 0..1279 olarak denetlenir; 720/1280 ve 0xFFFF değerleri CoordinateOutOfRange döner, 719/1279 sınırı kabul edilir.
    • Eksen dönüşümü swap_xy, invert_x ve invert_y bayraklarını uygular; swap_xy konfigürasyon Module_Switch1 X2Y biti ile uyuşmazsa AxisSwapConfigMismatch döner.
    • Konfigürasyon bloğu 0x8047..0x80FE (184 bayt) üzerinde 8-bit toplam-tümleyen sağlaması checked u32 toplama ile hesaplanır; 0x80FF ile uyuşmazlık, yanlış uzunluk, sürüm, çözünürlük veya touch number ayrı kodlarla reddedilir.
    • Ürün kimliği 0x8140'ta ASCII '911' + NUL olarak zorunludur; track id 0..9 aralığında ve çerçeve içinde kesin artan sırada olmalıdır.
    • Yazma-geri modeli çerçeve tüketildikten sonra 0x814E gölgesini 0x00'a temizler ve write-back sayacını bir artırır; exact replay FrameRetained döner ve ikinci yazma-geri yapmaz.
    • Yayından sonra farklı rapor, dönüşüm veya adres PublishedStateDrift ile reddedilir; 18 hata kodu sıfırdan farklı ve tekildir.
    • Kodlayıcı (encode_gt911_point/encode_gt911_report) ile çözücü byte-exact round-trip verir.
    • Focused target 1 grup / 23 passed / 0 failed / 0 ignored / 0 filtered verdi.
    • Implementation 20474 B / f55ae2ccc19c6c623e246824b1456c9583bc123208930076b477e21959674d01; focused test 28049 B / 82093b5f1e0b89cc8cf7bcfd2d3a59bef25174a0aad843a128800d96ea6f6e43 SHA-256'dır.
    • Proof 4952 B'dır.
    • Kaynakta unsafe, asm!, write_volatile, crate::uart, crate::arch, spin:: veya #[no_mangle] yüzeyi yoktur; modül boot, IRQ, scheduler veya driver yoluna bağlı değildir.
    • S551 sırasında I2C işlemi, dokunmatik panel gözlemi, SD write/read-back/eject, UART open/capture, power transition, physical retry veya yeni immutable raw üretimi yapılmadı.
    • RUNBOOK_EXECUTED_IN_S551=NO; supported-profile runtime observations=0, physical observations=0, hardware present=false, Boot-to-UI physically observed=false ve R1 acceptance=false'dur.
    • S552 yalnız host üzerinde çözülmüş G8lS551TouchFrame değerlerini tüketen input focus ve touch event routing modelidir; I2C, panel veya fiziksel koşu yetkisi değildir.

    Sınır / bekleyen kanıt

    • S551 yalnız GT911 rapor protokolünün saf çözücü modelidir; gerçek I2C transferi, INT pini veya dokunmatik panel davranışı gözlenmemiştir.
    • S540 ve S543 fiziksel RED immutable kalır; hiçbir donanım/panel/modem/board gözlemi yoktur.
    • Modül hiçbir production callsite'a, boot, IRQ, scheduler veya driver yoluna bağlı değildir; supported RPi5 runtime invocation yoktur.
    • Konfigürasyon bloğunun yalnız sürüm, çözünürlük, touch number ve X2Y biti anlamlandırılır; kalan baytlar yalnız sağlamaya girer.
    • Boot-to-UI gerçek UART'ta görülmedi; Boot-to-UI ve R1 acceptance false kalır.
    • S552 çözülmüş dokunma çerçevelerini tüketen input focus ve touch event routing modelidir; yeni SD/UART/power/I2C koşusu ayrı kapı, fresh target revalidation, açık operatör yetkisi ve yeni immutable raw ister.

    Terminal komutları ve gerçek yanıtlar

    S551 kaynak/host model PASS'tir; I2C, dokunmatik panel veya fiziksel PASS değildir. S540 ve S543 RED raw ve kararları değişmez.

    S551 GT911 dokunmatik I2C rapor çözücü modeli focused
    TAM ÇIKTIexit 0
    Komut
    $ CARGO_INCREMENTAL=0 cargo test -p aselsan_microkernel_simulation --test g8l_target_dispatch_scheduler_owner_scheduler_mutation_production_migration_lifecycle_s551_r1_gt911_touch_i2c_report_decoder_model -- --test-threads=1
    Yanıt
    test result: ok. 23 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
    S551 focused=1 group / 23 passed / 0 failed
    hardware=none physical=0 runbook=NO