Sıra geçerlilik, geri alınabilirlik ve mümkün olduğunda tek değişkenli A/B denemeleriyle belirlendi. R194 sonrası her kart, bulunan sonucu ve sonraki denemeye geçiş nedenini gösterir. R195–R199 sohbet özetleriyle R200–R211 mühürsüz profil/UART kayıtları, mühürlü koşudan ayrı etiketlenir; birleşik değişiklikler de açıkça belirtilir.
R95KoşulduC01 · C02 · C03
CR4 TCM boyutu çipten ölçülüyor
Değişiklik / kapsam: TCM_RAMSIZE sabit tahmin yerine ARMCR4 CAP + banka taramasıyla ölçülür; NVRAM ve yürütme tanığı ölçülen tepeden türer.
Neden bu sırada: Yerleşim hatası, ölçüm körlüğünü de içeriyordu: aynı sabit hem NVRAM'in yazıldığı yeri hem de yürütmeye bakılan yeri 160 KiB kaydırıyordu.
CR4RAM CAP=0x00000b44 BANKS=8 RAMSIZE=0x000c8000 MEASURED=1 · NVRAM ADDR=0x0025f92c · MBOX=0 EXECUTED=0
Kapattığı: C01 ve C03 KAPANDI (kusur gerçekti ama neden değildi). C02 kalıcı kazanç: ramsize artık ölçülüyor.
Risk: Düşük — tek yazma BANKIDX indeks kaydına; Linux aynı yazmayı aynı adrese yapıyor.
R96KoşulduC12 · +C13 · +C15 · +C17 (salt-okunur)
Staging optimizasyonu cr4_start'tan önce geri alınır
Değişiklik / kapsam: Komut-tamamlandı yoklama sınırı 2.000 → 50.000, SDIO saati /16 → /256 (tanımlama değerleri). Yalnızca cr4_start'tan hemen önce.
Neden bu sırada: GEÇERLİLİK ÖN KOŞULU. Firmware staging'i hızlandırmak için daraltılan bütçe hiç geri alınmıyordu: R59–R95 arasındaki BÜTÜN CR4-start sonuçları bu daraltılmış bütçe altında ölçüldü. Bir yazmanın 'indi' sayılıp aslında zaman aşımına uğraması mümkün; WRITE_OK=1 ve MBOX=0 okumalarının ikisi de şüpheli. Bu düzelmeden sonraki hiçbir adayın sonucu güvenilir okunamaz.
CR4PRE POLLS=50000 CLKDIV=0x80 · CR4START POLLS= HOST_BLK= HOST_CLK= HOST_TMO= HOST_CTL1= HOST_CTL2= PMU_TC= CHIPID2= MBOX2=
Kapattığı: C12 KAPANDI (geri alma çalıştı, sonuç değişmedi). Ama C15 ayırt edicisi ateşledi: CHIPID2=0x00000000 — tanık okumaları güvenilmez. Bu, C33'ü doğurdu ve merdiveni yeniden sıraladı.
Risk: Çok düşük — yalnızca host tarafı yapılandırması geri alınır ve üç okuma eklenir. Çipe yeni bir yazma yok.
R97KoşulduC33 · +nöbetçi (salt-okunur)
Tanık nöbetçisi: TCM okuması döngüden sonraya alınır
Değişiklik / kapsam: TCM (shared word) okuması tanık döngüsünden ÖNCE değil SONRA yapılır. Serbest eklenen salt-okunur enstrümantasyon: her turda MBOX ile AYNI 32 KB pencereden bir nöbetçi bayt (ChipCommon ofset 0, beklenen 0x45) durum kontrollü okunur.
Neden bu sırada: GEÇERLİLİK ÖN KOŞULU — ikinci kez. R96 ölçtü ki cr4_start'tan sonra SD hattı ölü ve bu R70'ten beri böyle. Ölçü aleti doğrulanmadan merdivene basamak eklemek yeni bir belirsiz datum üretir. C04 bu yüzden bir sıra geriye alındı: sonucu da aynı güvenilmez pencereden okunacaktı.
FENCE=0xdeadbeef SENT_N= SENT_OK= SENT_LAST_OK_MS= SENT_BAD_MS= F0_REV= F0_OK= WIN_OK_END= WIN_W= WIN_R= SHARED_AFTER=1
Kapattığı: C33'ün ölçüm sırası düzeltildi: nöbetçi 100/100, MBOX=0 ve INTSTAT=0 canlı hatta ölçüldü. Host-görünür sinyal yokluğu, hiç komut yürütülmediği anlamına gelmez. R70–R96 tanıkları geçersiz; PMU sayacı ilerlediği için C13'ün 'LPO ölü' yorumu da düştü. TCM sonrası hat sorunu C34'te açık.
Risk: Çok düşük — davranış değiştiren tek şey bir okumanın SIRASI. Yeni yazma yok; nöbetçi ekstra komut maliyeti olmadan issue()'nun zaten döndürdüğü durumu saklıyor.
R98KoşulduC04
Çekirdek bırakıldıktan sonra HT istenir
Değişiklik / kapsam: Reset dizisi bittikten hemen sonra CHIPCLKCSR ← 0x00, ardından ← 0x10 (HT_AVAIL_REQ); 60 ms HT yoklaması.
Neden bu sırada: R95/R97'de CLK_CSR=0x49 ve release sonrası HT isteği yoktu. Linux release'ten sonra 0x00 → 0x10 yazıp HT bekliyor. Önceki FORCE_ALP yorumu düzeltildi: Linux'un erken 0x21 yazması bu biti içerir, indirme tutamağı ise 0x08'dir.
HT_CLR_OK=1 HT_REQ_OK=1 HT_CSR_CLR=0x40 HT_CSR_REQ=0x50 HT_CSR_FIN=0x50 HT_REQ_MS=60 HT_REQ_AVAIL=0 · SENT_N=100 SENT_OK=100 WIN_OK_END=1 FENCE=0xdeadbeef
Kapattığı: C04 kapandı: istek latch etti, HT gelmedi. PMU kaynak ailesi öne çıktı; C09 henüz elenmedi.
Risk: Düşük — yazılan tek kayıt, fonksiyonun zaten iki kez yazdığı CHIPCLKCSR. Yeni adres, yeni çekirdek, yeni reset varyantı yok. HT_AVAIL bir BAŞARI ORACLE'I OLARAK KULLANILMIYOR: yürütme kararı hâlâ MBOX/INTSTAT tanığından geliyor ve bir kaynak testi HT bloğunun yürütme bayraklarına dokunmadığını pinliyor (bu koruma bir dönem yanlış pozitif üretmişti).
R99KoşulduPMU kaynak ailesi · C09 ön ölçümü
HT isteği öncesi ve sonrası PMU kaynakları okunur
Değişiklik / kapsam: Release sonrası HT temizlemesinden önce ve 60 ms yoklamadan sonra CTL, STAT, RES_ST, RES_PEND, MINRES ve MAXRES salt-okunur alınır. Pencere ve CHIPID kontrolleriyle her kaydın okuma geçerliliği taşınır.
Neden bu sırada: R98: ALP hazır, HT isteği latch etti, PMU sayacı ilerledi; HT gelmedi. Karşılaştırma, isteğin PMU kaynak durumunda gözlenebilir değişim üretip üretmediğini ayırır. PMU'ya yeni yazma yok; RES_RELOAD ayrı koşudur.
PMUHT PHASE=PRE/POST WIN_OK= READ_OK= VALID= CHIP_B= CHIP_A= CTL= STAT= RES_ST= RES_PEND= MINRES= MAXRES=; R98 HT makbuzu ve R97 nöbetçisi korunur
Kapattığı: C09'u tek başına kapatmaz. VALID=1 ve READ_OK=0x3f ile iki görüntünün eşit olduğu görüldü; ara geçişler ve PMU yazma yolu hâlâ sınanmadı.
Risk: Düşük — PMU kayıtları yalnız okundu. Ek okumalar release ile HT isteği arasına gecikme ekler; görüntüler atomik değildir.
R100KoşulduC09 önkoşulu · SDHCI timeout
SDHCI clock register genişliği düzeltilir
Değişiklik / kapsam: set_sdio_clock() CLOCK_CONTROL erişimleri u32 yerine u16 olur; clock bölücü ve CR4 dizisi değişmez.
Neden bu sırada: R99 ve önceki koşular HOST_TMO=0x00 gösterdi. 0x2c'ye 32-bit yazım bitişik TIMEOUT_CONTROL alanını sıfırlıyordu; R100 yalnız erişim genişliğini değiştirerek bu yan etkiyi ayırır.
HOST_TMO=0x0e HOST_CLK=0x8007 HOST_CTL1=0x02 POLLS=50000 · HT_REQ_AVAIL=0
Kapattığı: Clock/timeout kusuru fiziksel olarak doğrulandı ve ayrıldı. C09 PMU kaynak ailesi kapanmadı; HT yine gelmedi.
Risk: Düşük — yalnız host SDHCI register erişim genişliği değişti; firmware, reset ve PMU yazmaları aynı kaldı.
R101KoşulduC05
İlk D11 wrapper yazması issue ediliyor mu?
Değişiklik / kapsam: R100 timeout düzeltmesi korunarak tek D11 CMD53 yazmasının issue/complete/busy makbuzu alınır; sonraki reset yolu değiştirilmez.
Neden bu sırada: R100 timeout'u korudu ama R101 ilk D11 yazmasında DAT inhibit nedeniyle issue edilmeden durdu. Bu sonuç, sonraki adayların cihazda gerçekten yazma yapıp yapmadığını ayıran transport kapısını görünür kılar.
CR4CTRL PHASE=D11 ABORTED=1 ISSUED=0 COMPLETE=0 BUSY=1 PSTATE=0x017f0206
Kapattığı: C05'in wrapper yazma taşıması bu koşuda uygulanmış sayılmaz; ilk yazma issue edilmedi. C05 açık kalır.
Risk: Düşük-orta — yeni yazma varyantı yok; sonuç host DAT inhibit durumuna duyarlı.
R102KoşulduC10 · C07 · C08
Host DATA kurtarma + wrapper + HT sonrası runtime sınırı
Değişiklik / kapsam: Birleşik adayda DATA reseti, 18-op wrapper, HT isteği ve scan runtime aynı cold boot içinde gözlenir.
Neden bu sırada: R101'deki DAT inhibit'i ayırmak için host DATA reseti eklendi; R102, HT erişilebilir olduktan sonra ilk FullMAC yazmasının gerçek sonucunu ölçtü.
CR4HOSTDATA READY=1 · CR4CTRL COMPLETE=1 · HT_REQ_AVAIL=1 · WIFISCAN_RESULT STATUS=INIT_ERROR
Kapattığı: C10/C07/C08 kapanmadı. Host kurtarma ve HT kapıları geçti; gerçek FullMAC kontrol cevabı gelmeden firmware-ready veya Wi-Fi PASS denemez.
Risk: Orta — birden fazla geçiş aynı koşuda; sonuç sonraki R103 transaction-owned ölçümüyle daraltıldı.
R103KoşulduC06 · C14 · C07 · C08
CMD53 sonucu kendi işlemiyle sahiplenilir
Değişiklik / kapsam: Tamamlanmış CMD53'ün kendi completion/R5/error/byte-count sonucu kullanılır; sonraki settle CMD52 cevabı geriye dönük hata kanıtı sayılmaz.
Neden bu sırada: R102'de iç CMD53 temiz olmasına rağmen sonraki dummy CMD52'nin RESP0 değeri önceki yazmaya mal edildi. R103 bu response ownership sınırını ayırır.
HT_REQ_AVAIL=1 · WIFIPROTO STARTED=1 READY=0 · WIFISCAN_RESULT Session(Wire(Truncated))
Kapattığı: R102'nin outer-rejection açıklaması daraldı; R103 parser'ın hangi RX zarfında durduğunu basmadığı için C07/C08 açık kaldı.
Risk: Düşük — transport sonucu sahipliği düzeltildi; yeni FIFO/control retry eklenmedi.
R104KoşulduC06 · C07 · C08
Boş Event/Data zarfları tanılanır
Değişiklik / kapsam: Doğrulanmış empty Event/Data çerçevesi sequence/credit akışını koruyarak tüketilir; kontrol cevabı için ayrı RX ve hata makbuzu basılır.
Neden bu sırada: R103'te Truncated hata yolunda RX içeriği yoktu. R104 boş zarfı güvenle ayırıp parser'ın kontrol cevabına kadar ilerleyip ilerlemediğini ölçer.
WIFIRX LEN=12 DOFF=12 EMPTY=1 SEQ=0/1 · WIFIFAIL FRAMES_RECEIVED=2 HEADER_ONLY=2 CONTROLS_REPLIED=0
Kapattığı: Boş Event/Data tanısı doğrulandı; C07/C08 kapanmadı çünkü READY=1 veya kontrol cevabı yok.
Risk: Orta — parser hata sınırı değişti; raw, README ve kaynak yamaları web kanıt paketi olarak mühürlendi.
R105KoşulduC06 · C07 · C08 · C16 (ertelendi)
BCDC GET_VAR çerçeve uzunluğu düzeltilir
Değişiklik / kapsam: İlk kontrol çerçevesinde veri uzunluğu max(isim, kapasite) yerine isim + kapasite olarak hesaplanır.
Neden bu sırada: R104 iki boş Event/Data zarfı ve ControlTimeout gösterdi. R105, kontrol header'ının beklenen 48 bayt olup olmadığını fiziksel olarak ayırır; BCDC aritmetiği RX cevabından bağımsız sınanır.
WIFICTRLTX FRAMELEN=48 XFER=48 BCDCLEN=20 SEQ=255 TXWIN=21 SENT=1 REPLIED=0
Kapattığı: BCDC uzunluk hipotezi kapandı: doğru istek gönderildi. C07/C08 ve kontrol cevabı/RX transport sınırı açık; C16 DDR50 en son ve ayrı tutuluyor.
Risk: Düşük — yalnız BCDC request buffer uzunluğu; yeni register/reset/clock varyantı yok.
R106KoşulduC06 · C07 · C08
RX başlığı doğrulanır, INTSTATUS Read32 sınırı ayrılır
Değişiklik / kapsam: R105'in değişmez BCDC isteği korunur; RX çerçevesinin ham başlık/payload, sequence/credit ve control-reply durumu basılır. R106'da görülen core+INTSTATUS Read32 hatası ayrı sahiplik adımı olarak kaydedilir.
Neden bu sırada: İki header-only RX frame fiziksel olarak görüldü, fakat kontrol cevabı gelmeden host Read32(INTSTATUS) SDIO Transfer/R5 hatasıyla durdu. Bu koşu RX parser'ı veya BCDC aritmetiğini değiştirmeden gerçek hata sınırını mühürler.
WIFICTRLTX FRAMELEN=48 XFER=48 BCDCLEN=20 · WIFIRX_RAW HEADER_HEX/PAYLOAD_LEN · WIFICTRLSTATE SENT=1 REPLIED=0 · Read32 INTSTATUS Transfer/R5
Kapattığı: C07/C08 kapanmadı; RX görünürlüğü doğrulandı ancak READY=1 veya doğrulanmış FullMAC control reply/IOReady makbuzu yok.
Risk: Düşük — R106 tanısını kaynakta değişmez tutar; yeni Wi-Fi retry, BCDC aritmetiği veya association davranışı eklenmez.
R107KoşulduC06 · C07 · C08
R107 fiziksel açılışı ve Read32 sınırı
Değişiklik / kapsam: R106'nın BCDC 48/20 isteği ve RX parser'ı korunarak R107 imajı gerçek Pi 5 üzerinde çalıştırılır; açılış akışı, RX başlıkları ve terminal hata mühürlenir.
Neden bu sırada: R106'nın hedeflediği Read32 makbuzu için ilk gerçek fiziksel koşu yapıldı. Kart + güç + boot artık ayrı kanıt; ancak capture güç geçişinden sonra bağlandığı için bu kayıt Read32 issue/complete/R5/error sahipliğini geriye dönük iddia etmez.
FWSTAGE OK=1 · NVRAM OK=1 · CR4HOSTDATA READY=1 · WIFIRX SEQ=0/1 · WIFICTRLSTATE SENT=1 REPLIED=0 · WIFISCAN_RESULT STATUS=ERROR ControlTimeout
Kapattığı: Fiziksel açılış kanıtı kapandı; C06/C07/C08 ve INTSTATUS Read32 issue/complete/R5/error sınırı açık kaldı. Bu basamak Wi-Fi PASS değildir.
Risk: Düşük — kart ve imaj değişmedi; yeni register/reset/clock veya BCDC/RX davranışı eklenmedi.
R108KoşulduC06 · C07 · C08
UART ön-arm ile INTSTATUS CMD53 Read32 sahipliği ayrıştırılır
Değişiklik / kapsam: Kart Pi'de takılı bırakılır; UART capture güç döngüsünden önce arm edilir. BCDC 48/20, RX parser ve R107 imajı korunur; yalnız Read32 issue/complete/bytes-read/R5/error makbuzu tam boot sınırında toplanır.
Neden bu sırada: R107 fiziksel açılışı ve ControlTimeout sınırını doğruladı, fakat capture güç geçişinden sonra bağlandı. Ön-arm edilmiş tek bir güç döngüsü, kartı tekrar tekrar söküp takmadan açılış ile Read32 hedefini aynı kayda alır.
WIFIREAD OP=Read32 FUNCTION=1 ADDRESS=0x18004020 · ISSUED=1 COMMAND_COMPLETE=0 BUFFER_READY=0 TRANSFER_COMPLETE=0 BYTES_READ=0 R5_FLAGS=0x10 ERROR_STATUS=0x0020
Kapattığı: Read32 sınırı artık ölçüldü: ilk F1 aktarımı data-CRC/transfer hatasıyla düştü. C06/C07/C08 ve gerçek control reply/IOReady açık kaldı; bu basamak Wi-Fi PASS değildir.
Risk: Düşük — tek host read tanısı; BCDC, RX parser, clock/reset ve association davranışı değişmez.
R109KoşulduC06 · C07 · C08
Read32 data-CRC/end-bit sonucu ayrıştırılır
Değişiklik / kapsam: R108'in değişmez BCDC/RX akışı korunarak F1 Read32 CMD53 status, R5, error, present-state ve reset sonrası durumu birlikte mühürlenir.
Neden bu sırada: R108 ilk F1 Read32'de ERROR_STATUS=0x0020 ve komut tamamlanmadan düşen bir aktarım gösterdi. Bu veri-CRC/end-bit sınırı, control-response sahipliğini firmware veya BCDC uzunluğu ile karıştırmadan daraltılmalıdır.
WIFIREAD OP=Read32 · STATUS=0x00608001 · R5_FLAGS=0x10 · ERROR_STATUS=0x0060 · COMMAND_COMPLETE=0 · TRANSFER_COMPLETE=0 · BUS_WAS_BUSY=0
Kapattığı: F1 Read32 aktarımının data-CRC/end-bit hata dalı görüldü; ancak control response/IOReady ve CR4 yürütme hâlâ kanıtlanmadı.
Risk: Düşük — yalnız mevcut Read32 tanısının tam makbuzu; firmware, BCDC aritmetiği ve association değişmez.
R110KoşulduC06 · C07 · C08
D11 başlangıç yazmasının transport sahipliği
Değişiklik / kapsam: F1 Read32 fallback'ine geçmeden önce ölçülen D11 başlangıç yazmasının issue/complete/busy/R5/error sonucu mühürlenir.
Neden bu sırada: R109'un F1 data-CRC/end-bit sonucu, R110'da D11 başlangıç yazması aynı transport kapısında ayrıştırılmadan yorumlanamaz.
CR4CTRL PHASE=D11 ABORTED=1 REASON=TRANSPORT OPS=1 ISSUED=1 CMD=1 BUF=1 XFER=1 BYTES=4 R5=0x10 ERR=0x0010
Kapattığı: R110'da D11 başlangıç yazması ayrı bir transport hatası olarak görüldü; R109 fallback'i bu koşuda çalışmadı. D11 transport varyansı R113'te bounded retry ile sınırlandı.
Risk: Düşük-orta — yalnız ölçülmüş D11 yazma hatasına tek bounded retry eklenir; Wi-Fi başarı sonucu çıkarılmaz.
R111KoşulduC06 · C07 · C08
D11 retry sonrası SDPCM kontrol timeout'u
Değişiklik / kapsam: R110'un ölçülmüş D11 transport dalına bounded retry uygulanır; FIFO/RX ve ilk BCDC isteği korunur.
Neden bu sırada: D11 temiz geçtiğinde ilk fiziksel SDPCM kontrol sınırına dönmek gerekir; retry'nin kendisi başarı sayılmaz ve yalnız ölçülmüş timeout/CRC koşulunda çalışır.
CR4CTRL COMPLETE=1 ERR=0x0000 D11_RETRY_ATTEMPTED=0 · WIFIRX SEQ=0/1 EMPTY=1 TXWIN=21 · WIFICTRLTX FRAMELEN=48 XFER=48 BCDCLEN=20 · REPLIED=0
Kapattığı: D11/SDPCM başlangıç yolu geçti; ilk control reply/READY=1 yok. Retry dalı bu koşuda tetiklenmedi.
Risk: Orta — bounded retry güvenlik kapısıyla sınırlı; ikinci fiziksel transport varyansı hâlâ ölçülmelidir.
R112KoşulduC06 · C07 · C08
SDPCM FIFO drain sıralaması
Değişiklik / kapsam: İlk initialization/scan/control isteğinden önce bekleyen F2 RX FIFO frame'leri tüketilir; BCDC 48/20 isteği ve RX parser değişmez.
Neden bu sırada: R111'de iki header-only frame ve cevapsız BCDC isteği görüldü. Linux sıralamasına yaklaştırılan drain bariyeri, bekleyen RX frame ile yeni TX control isteğinin sahipliğini ayırır.
FWSTAGE OK=1 · NVRAM OK=1 · CR4HOSTDATA READY=1 · D11_RESET=1 D11_IOCTL=0x00000007 · CR4CTRL PHASE=CR4 OPS=17 ADDR=0x18102408 ABORTED=1 R5=0x10 ERR=0x0020
Kapattığı: R112 SDPCM FIFO drain davranışını ölçemedi; D11 geçtikten sonraki CR4 activation yazısı data-CRC ile düştü. Bu koşu CR4 transport varyansını görünür kıldı, FIFO hipotezini kapatmadı.
Risk: Düşük — yalnız bekleyen RX frame tüketim sırası; hata dalı başarı gibi yorumlanmaz.
R113KoşulduC06 · C07 · C08
D11 CRC/timeout retry kapısı ve ilk BCDC sınırı
Değişiklik / kapsam: R112'nin FIFO sırası korunur; ilk D11 yazısı data-timeout/CRC hata koşulunda en çok bir kez yeniden denenir ve ilk control-response bekleyişi mühürlenir.
Neden bu sırada: R110'un D11 DATA_TIMEOUT sonucu bounded retry gerektiriyordu; DATA_CRC aynı veri-taşıma sınıfı olarak fail-closed biçimde kapsandı. R112 raw hatası CR4 activation'da olduğundan bu retry onun exact işlemini kapsamaz. R113 temiz dalda retry'yi tetiklemeden sonraki ilk control sınırını yeniden ölçtü.
CR4HOSTDATA READY=1 · CR4CTRL COMPLETE=1 R5=0x10 ERR=0x0000 D11_RETRY_ATTEMPTED=0 · CR4START STARTED=0 OK=0 · WIFIRX SEQ=0/1 · WIFICTRLTX FRAMELEN=48 XFER=48 BCDCLEN=20 · WIFICTRLWAIT CAPTURED=1 · REPLIED=0
Kapattığı: D11 temiz geçişi ve iki header-only RX doğrulandı; CR4 yürütme, ilk control reply, READY=1 ve Wi-Fi PASS açık kaldı. Sıradaki dar kapı R114'tür.
Risk: Düşük-orta — retry yalnızca ölçülmüş ERR_DATA_TIMEOUT/ERR_DATA_CRC için bir kez; R113'te branch tetiklenmedi.
R114KoşulduC06 · C07 · C08
İlk BCDC control-response receive/interrupt sahipliği
Değişiklik / kapsam: R113 davranışı, firmware/NVRAM, D11, FIFO sırası, RX parser ve BCDC 48/20 isteği sabit; yalnız timeout-sonrası salt-okunur TX/interrupt/FIFO/host makbuzları eklenir.
Neden bu sırada: R113 doğru uzunluklu ilk isteği gönderdi, iki header-only frame aldı, INTSTATUS=Some(0) ve REPLIED=0 ile ControlTimeout'a düştü. Yeni firmware veya BCDC uzunluğu değişikliği bu sınırı karıştırır.
IMAGE_SHA=d82ce641084d… · WIFICTRLTX_RAW REQUEST_ID=1 LOGGED=48 · WIFIREAD_FALLBACK ERR=0x0060 RESULT=PASS VALUE=0 · SBADDR_LOW Write8 INHIBIT issued=false PSTATE=0x01ff0206 · WIFICTRLWAIT CAPTURED=0
Kapattığı: Exact ilk TX doğrulandı; ancak koşu timeout snapshot'ından önce fallback-sonrası DAT_INHIBIT dalında durdu. Control-response interrupt/FIFO sahipliği açık kaldı.
Risk: Düşük — R114 yalnız tanı ekledi; ölçülen kırılma timeout-sonrası tanı okumalarından önce oluştu.
R115KoşulduC06 · C07 · C08
F1 Read32 fallback sonrası host-data idle kapısı
Değişiklik / kapsam: Sayaçlar request gönderiminde sıfırlanır; pending-control I/O hatasında terminal host/F1 snapshot alınır; CMD52 fallback yalnız bounded passive post-check host idle ise başarı sayılır.
Neden bu sırada: R114, CMD53 0x0060 fallback'inin VALUE=0 döndürmesine rağmen PRESENT_STATE=0x01ff0206 durumunu temizlemediğini ve sonraki SBADDR_LOW erişiminin issue edilmeden Inhibit ile durduğunu fiziksel olarak ölçtü.
IMAGE_SHA=7f7ca549198b… · WIFIREAD_FALLBACK ERR=0x0020 RESULT=PASS VALUE=0 HOST_IDLE=0 PSTATE_B=0x01ff0206 PSTATE_A=0x017f0206 POLLS=100000 DAT0=1 · WIFICTRLWAIT CAPTURED=1 PENDING_BEFORE=1 AGE_MS=994 · request-local CORE_OR/FIFO/CTRL=0
Kapattığı: Fallback false-success kusuru kapandı ve host data engine'in kendiliğinden idle olmadığı ölçüldü. IENx/FIFO sahipliği hâlâ okunamadı; sıradaki dar kapı R116'dır.
Risk: Düşük-orta — yeni register yazması yok; bounded passive bekleme ve fail-closed başarı koşulu eklenir.
R116KoşulduC06 · C07 · C08
Tek exact runtime SDHCI DATA recovery
Değişiklik / kapsam: Yalnız discovered SDIO-core INTSTATUS saf DATA_CRC=0x0020 + valid fallback + 100.000 poll HOST_IDLE=0 dalında bus ömründe bir host-only SOFTWARE_RESET_DAT uygulanır; CMD52×4 checked eşleşen readback ve idle doğrulanmadan sonuç kabul edilmez.
Neden bu sırada: R115, DAT0 yüksek ve CMD hattı boşken host veri motorunun 0x0206 durumunda takılı kaldığını ölçtü. Aynı boot'ta pre-CR4 host-only DATA reset aynı deseni iki poll'da 0x0000'a temizledi; runtime kullanımı yine ayrı fiziksel hipotezdi.
IMAGE_SHA=39e7de9d9256… · WIFIREAD_RECOVERY USED_BEFORE=0 ELIGIBLE=1 APPLIED=1 CLEARED=1 RESET_FIRST=0x04 RESET_POLLS=2 ELAPSED_US=10 PSTATE_B=0x017f0206 PSTATE_A=0x017f0000 HOST_IDLE=1 CONFIG_SAME=1 RECOVERY_OK=1 POST_READ_OK=1 POST_MATCH=1 POST_HOST_IDLE=1 ACCEPTED=1 · ikinci olay USED_BEFORE=1 ELIGIBLE=0 · terminal ERR=0x0060 · PENDING_POLLS=121 AGE_MS=2183
Kapattığı: Tıkanan tarafın host SDHCI veri motoru olduğu ölçüldü: 100.000 pasif kontrolün açamadığı yolu tek reset 10 µs'de açtı, konfigürasyon değişmedi ve bir kez kullanım disiplini tuttu. Wi-Fi hazır olmadı; arıza aynı registerda 0x0020'den 0x0060'a taşındı, sıradaki dar kapı R117'dir.
Risk: Orta — yalnız host SDHCI data hattına tek reset; kart/core/WLAN reseti ve CMD53 retry yok.
R117KoşulduC06 · C07 · C08
Arıza anında salt-okuma matrisi
Değişiklik / kapsam: R116 kararı hesaplandıktan sonra, bus ömründe bir kez, aynı pencerede üç salt-okuma probu: ChipCommon chipid'de CMD52×4, bayraklı 4 baytlık byte-mode CMD53 ve tek-blok 64 baytlık CMD53. Her prob yalnız host idle iken denendi; yazma, reset, pencere değişimi ve CMD53 tekrarı yok.
Neden bu sırada: R116, firmware'in konuştuğunu ve host veri motorunun reset ile açıldığını ölçtü; buna rağmen 0x18004020 CMD53 okuması kırıldı. Geriye ayrılabilir üç değişken kalmıştı: veriyolu durumu, adres, transfer modu.
IMAGE_SHA=e4e1583dcc9c… · WIFIREAD_MATRIX CMD52_OK=1 BYTE_OK=1 BLOCK_OK=1 hepsi V=0x15264345 M=1 ERR=0x0000 · TAIL_IDLE=1 TAIL_POLLS=0 TAIL_PSTATE=0x01ff0000 · VERDICT=ADDRESS_SPECIFIC · WIFICTRLWAIT READ_FAILURES=0 CLOCK=0xd2 SLEEP=0x03 IO_READY=0x06 F2_ENABLED=0x06 MAILBOX=0x00040002 INTSTATUS=0 · terminal ControlTimeout AGE_MS=2500
Kapattığı: Veriyolu durumu ve transfer modu elendi: kırılma adrese özgü. Taşıma sona kadar ayakta kaldı, hiçbir tanı okuması düşmedi ve arıza sınıfı BusError'dan ControlTimeout'a döndü — sorun artık host taşıması değil, dongle'ın cevap üretmemesi. Açık kalan soru: 136 kez yoklanan INTSTATUS=0 değeri 4-baytlık erişim bayrağı olmadan okunuyor.
Risk: Düşük — yazma, reset veya pencere değişimi yok; problar yalnız host idle iken çalıştı ve hattı tamamen boş bıraktı.
R118KoşulduC06 · C07 · C08
Bayraklı/bayraksız backplane okuma karşılaştırması
Değişiklik / kapsam: Aynı R117 kapısı içinde, bus ömründe bir kez, host idle iken: SDIO çekirdeği INTSTATUS (+0x20) ve pozitif kontrol tohostmailboxdata (+0x4c), her iki backplane erişim yoluyla dört denetlenmiş CMD52 baytıyla okunur. Veri hattı, yazma ve CMD53 yok.
Neden bu sırada: R117'de sürücünün 136 kez yokladığı INTSTATUS=0 değeri bayraksız yoldan okunuyordu; kırılan CMD53 ise bayraklı okuyor. Doğrulanmamış bir yoldan okunan sıfır 'firmware sessiz' sonucunu taşıyamaz.
IMAGE_SHA=db5809cb08ac… · ilk hata 0x0060 (0x0020 değil) · WIFIREAD_RECOVERY ELIGIBLE=0 · WIFIREAD_MATRIX CMD52_SKIP=1 tüm problar A=0 · WIFICORE_ACCESS INT_SKIP=1 INT_PLAIN=None MBOX_PLAIN=None VERDICT=INCOMPLETE · TAIL_IDLE=0 TAIL_POLLS=100000 TAIL_PSTATE=0x017f0206
Kapattığı: Hiçbir şey kapatmadı; soru açık kaldı. Kapattığı tek şey bir yanılgı riskiydi: takılı host ölçülmedi, zorlanmadı. Ölçtüğü yeni olgu, ilk hata sınıfının koşudan koşuya değiştiği — dolayısıyla ölçüm, kapı saf 0x0020'ye daraldığı sürece hangi dala düşüldüğüne bağlı bir yazı-tura.
Risk: Düşük — komut hattı dışında hiçbir şeye dokunulmadı; problar zaten hiç çalışmadı.
R119KoşulduC06 · C07 · C08
Sahiplenilmiş DATA reset kapısı veri-hatası sınıfının tamamına açılır
Değişiklik / kapsam: Tek yüklem: bus ömründe bir kez uygulanan host-only SDHCI DATA reset artık DATA_CRC'li her veri hatası (0x0020 veya 0x0060) için uygun; başka hiçbir koşul değişmez.
Neden bu sırada: R118'de ilk hata 0x0060 geldiği için dar kapı reddetti, host idle olmadı ve hiçbir prob çalışamadı. İki bit veri fazının nasıl kırıldığını söyler, host-only reset'in doğru cevap olup olmadığını değil.
IMAGE_SHA=c2818abf67d0… · bu boot'ta HİÇ veri hatası olmadı, kapı sınanmadı · READ_FAILURES=0 PENDING_POLLS=144 AGE_MS=2500 PRESENT_STATE=0x01ff0000 · terminal ControlTimeout
Kapattığı: Kapıyı sınamadı ama daha önemlisini ölçtü: taşıma arızası aralıklı, yani belirti; kök neden değil. Beş koşuda ilk hata 0x0020 / 0x0020 / 0x0020 / 0x0060 / yok. 0x18004020 her zaman okunamaz değil.
Risk: Düşük — yeni bir eylem eklemedi; zaten iki kez ölçülmüş tek reset'in kapsamını genişletti.
R120KoşulduC06 · C07 · C08
Bluetooth bring-up izolasyonu
Değişiklik / kapsam: R119'dan tek fark rpi5-bt-isolate feature'ı: BT_ON'u süren ve UARTA'ya yazan bring_up atlanır. Salt-okunur BT envanteri ve Wi-Fi yolu aynen kalır.
Neden bu sırada: BCM43455'te BT ve WLAN aynı kalıpta PMU/saat paylaşır ve R117 kaydında BT_ON, SDPCM başlamadan hemen önce yükseliyordu (BTHCI 288, WIFIPROTO 311).
IMAGE_SHA=2f220c4bbcdf… · BTHCI SKIPPED=1 BT_ON_DRIVEN=0 UARTA_WRITES=0 · PINMUX BT_ON=0 WRITES=0 · WIFIPWR BT_ON_TOUCHED=0 · sonuç R119 ile birebir: READ_FAILURES=0 PENDING_POLLS=144 AGE_MS=2500 INTSTATUS=IEN=INT_PENDING=0 2 çerçeve/0 cevap terminal ControlTimeout
Kapattığı: Bluetooth bring-up'ı eler. BT hiç açılmamışken arıza alan alan aynı; Linux'ta bu çip için bildirilen miniuart-bt çözümü bizimkinden başka bir arızaya bakıyor. Geriye kalan adaylar: çerçeve hatalı biçimlendiği için reddediliyor, yanlış yere yazılıyor, ya da firmware ioctl'den önce yapılmayan bir adım bekliyor.
Risk: Düşük — saf çıkarma; hiçbir yeni yazma eklenmedi. Bu imaj Bluetooth iddiası taşımaz.
R122KoşulduC06 · C07 · C08
F2 watermark 0x60 → 0x08
Değişiklik / kapsam: R120 tabanı + R119 BT bring-up'ı geri; tek fark function 1 SBSDIO_WATERMARK (0x10008) 0x60 yerine 0x08. R121'in diğer üç farkı bu revizyonda yok.
Neden bu sırada: R121, Linux'un ilk 48 baytlık kontrol çerçevesinden hemen önce bu kayda 0x08 yazdığını ölçtü; sürücü 0x60 yazıyordu. 0x60 yazım hatası değil, daha yeni brcmfmac sabiti — ama bu Pi ve bu firmware izde 0x08 kullanmış.
IMAGE_SHA=8fd85b5a7e38… · CR4CTRL PHASE=D11 ABORTED=1 REASON=TRANSPORT WIN_OK=0 WIN_W=0x18100000 WIN_R=0x18181800 ISSUED=0 · CR4START RSTVEC_OK=0 · WIFISCAN_RESULT STATUS=UNAVAILABLE CORE_READY=0 · watermark yazılmadı
Kapattığı: Değişkeni sınamadı. Kapattığı şey bir yanılgı: bu boot'un ControlTimeout olmadığı, üçüncü imzanın CMD52 pencere uyuşmazlığı olduğu. F2 watermark hakkında ne lehte ne aleyhte kanıt.
Risk: Düşük — tek bayt, CR4 start sonrası; bu boot o noktaya gelmedi.
R123KoşulduC06 · C07 · C08
SDIO taşıma sayımı
Değişiklik / kapsam: R122 üzerine sıfır davranış. CMD52/CMD53 gövdeleri inner'a taşındı; sarmalayıcılar yalnız sayar ve inner sonucu aynen döndürür. F2 watermark 0x08 duruyor.
Neden bu sırada: R118, R119 ve R122 kendi değişkenlerini hiç icra edemedi; her koşu tek veri noktası ve kırılma yeri kayıyor. Üç imza (CMD53 CRC, cevapsız BCDC, CMD52 pencere uyuşmazlığı) oran olmadan ayırt edilemez.
IMAGE_SHA=8ab16337d0e0… · WIFIBUSCENSUS STAGE=ERROR CMD52_OPS=612077 CMD52_FAIL=83469 CMD53R_OPS=164 CMD53R_INCOMPLETE=2 CMD53W_OPS=15 CMD53W_INCOMPLETE=0 ERR_CRC_ONLY=1 ERR_CRC_ENDBIT=1 WINDOW_MISMATCH=0 · WIFIPROTO STARTED=1 · XFER=48 REPLIED=0 · ControlTimeout AGE_MS=2500
Kapattığı: Aralıklı CMD53 yazma bozulmasını cevapsız ioctl'ün tek nedeni olmaktan çıkarır: yazmalar 0/15 incomplete, pencere 0, çerçeve XFER=48, bekleme READ_FAILURES=0. F2 watermark 0x08 bu boot'ta icra edildi ve cevap üretmedi. Arama protokole döner.
Risk: Yok — yazma, retry, reset veya fail-closed gevşetme yok; atomik artırım.
R124KoşulduC06 · C07 · C08
CCCR INT_ENABLE 0x03 → 0x07
Değişiklik / kapsam: R123 tabanı + R122 watermark 0x08 durur. Tek davranış: fonksiyon 0 CCCR INT_ENABLE (0x04) Linux izindeki gibi önce 0x03 sonra 0x07 (IENM|IEN1|IEN2). WAKEUPCTRL ve CCCR 0x000f0 bu revizyonda yok. CMD52 sayımı STAGE/OTHER kırılımı ekler; cmd52_inner değişmez.
Neden bu sırada: R121 bu yazmayı ölçtü; R115–R123 IEN=Some(0) okuyor. R123 sayımı veriyolu yazma yolunu temiz saydı, INTSTATUS=0'ı her iki erişimle doğruladı ve watermark'ı eledi. Kalan ölçülmüş farkların ilki, firmware'in kesme kaldırmamasını doğrudan ilgilendiren kayıttır.
IMAGE_SHA=644ed7aad9ea… · CR4CTRL PHASE=D11 ABORTED=1 ERR=0x0020 WIN_OK=1 ISSUED=1 XFER=0 ADDR=0x18101800 · WIFIEN yok · WIFIBUSCENSUS STAGE=UNAVAILABLE CMD52_STAGE_FAIL=78837 CMD52_OTHER_FAIL=0/457 CMD53R_INCOMPLETE=2/9 · UNAVAILABLE CORE_READY=0
Kapattığı: Değişkeni sınamadı. Kapattığı şey census kırılımı: 78.837 CMD52 fail'in tamamı STAGE, OTHER 0/457. INT_ENABLE hakkında ne lehte ne aleyhte kanıt.
Risk: Düşük-orta — Linux'un yazdığı CCCR kesme maskesi; bu boot o noktaya gelmedi.
R125KoşulduC06 · C07 · C08
CCCR INT_ENABLE, R124 imajı tekrar
Değişiklik / kapsam: R124 ile aynı bayt. Tek fark yeni güç döngüsü: D11 CRC bu boot'ta olmadı, Function2Ready'ye ulaşıldı, 0x03 sonra 0x07 yazıldı.
Neden bu sırada: R124 değişkeni hiç icra edemedi. Aynı imaj, aynı tek değişken, protokol yoluna kadar.
IMAGE_SHA=644ed7aad9ea… · WIFIEN W1=Some(3) W2=Some(7) READBACK=Some(7) IEN_TIMEOUT=Some(7) · IEN=Some(7) INT_PENDING=Some(0) · XFER=48 REPLIED=0 · ControlTimeout AGE_MS=2500 · CMD52_OTHER_FAIL=0/535
Kapattığı: CCCR INT_ENABLE=0 cevapsız ioctl'ün nedeni değil. Kapı Linux gibi açıldı, latch etti, firmware yine cevap vermedi. R121'de WAKEUPCTRL=0x02 ve CCCR 0x000f0=0x06 kaldı.
Risk: Yok — R124 ile aynı imaj.
R126KoşulduC06 · C07 · C08
fn1 WAKEUPCTRL = 0x02 — icra edildi ve ELENDİ
Değişiklik / kapsam: R125 tabanı (watermark 0x08, INT_ENABLE 0x03→0x07 durur). Tek davranış eklemesi: fonksiyon 1 SBSDIO_FUNC1_WAKEUPCTRL (0x1001e) = 0x02 (HT-wait), Linux'un yazdığı noktada — watermark ile CCCR INT_ENABLE çiftinin arasında. Kaydın yazmadan önceki ve sonraki okuması gözlemdir. CCCR 0x000f0 bu revizyonda yok.
Neden bu sırada: R121 bu yazmayı ölçtü; biz hiç yazmıyorduk. R123 watermark'ı, R125 INT_ENABLE'ı cihazda icra edip elemişti. Kalan iki hazırlık farkından, firmware'in kesme kaldırmasını doğrudan ilgilendiren olan buydu.
IMAGE_SHA=0e4fb7ae33ad… · WIFIWAKEUP BEFORE=Some(0) WROTE=Some(2) READBACK=Some(2) EXPECT_R80_WROTE=0x02 · WIFIEN W1=Some(3) W2=Some(7) READBACK=Some(7) · CR4CTRL PHASE=COMPLETE ABORTED=0 WIN_OK=1 · CR4START RSTVEC_OK=1 ALIAS_OK=1 HT_REQ_AVAIL=1 HT_CSR_FIN=0xd0 · WIFIPROTO STARTED=1 READY=0 · iki header-only RX SEQ=0/1 TXWIN=21 · XFER=48 SENT=1 REPLIED=0 · IEN=Some(7) INT_PENDING=Some(0) CORE_OR=0x00000000 FRAME_IND_SEEN=0 · ControlTimeout AGE_MS=2500 PENDING_POLLS=144 · CMD52_OTHER_FAIL=0/531 CMD53W_INCOMPLETE=0/15
iki paket: attempt-r126-wakeupctrl-uart-capture (tam boot, D11'de düştü, değişken icra edilmedi) ve attempt-r126-wakeupctrl-uart-capture-repeat-01 (reflash YOK, yeni güç döngüsü, değişkeni icra etti; yakalama güçten sonra kurulduğu için BAŞI EKSİK — README'de beyan edildi)
Kapattığı: fn1 WAKEUPCTRL=0x02 cevapsız ioctl'ün nedeni DEĞİL. Kartın güç-açılış değeri Some(0) ölçüldü — yani 0x02 gerçek bir değişiklikti, boş yazma değil; yazıldı, latch etti, firmware yine cevap vermedi. Bu, R121'in dört ölçülmüş hazırlık farkından ÜÇÜNCÜSÜNÜN cihazda elenmesidir (watermark R123, INT_ENABLE R125, WAKEUPCTRL burada). GERİYE BİR TANE KALDI: fn0 CCCR 0x000f0 = 0x06. Kombinasyon ihtimalini kapatmaz: dördü hiç aynı anda doğru olmadı ve Linux'ta olmayan iki fazlalığımız hiç kaldırılmadı.
Risk: Düşük — Linux'un yazdığı tek bayt; yeni core/WLAN reseti yok.
R127KoşulduC06 · C07 · C08
Tek boot, on iki deneme — motor çalıştı, iki denemede durdu
Değişiklik / kapsam: R126 tabanı davranış olarak değişmez. Tek yapısal ekleme: transport'a opt-in süpürme yeteneği. Deneme 0 hiçbir şey uygulamaz — R126'nın tek-değişkenli koşusunun ta kendisi. Sonra on bir hazırlık profili, her biri aynı 48/20 isteğini kendi BCDC request id'siyle gönderir. 'Yazmayı kaldırmak' atlamakla değil tersini yazmakla yapılır; güç-açılış baytları boot bloğundan önce örneklenir.
Neden bu sırada: R121'in dört farkı hiç aynı anda doğru olmadı ve CCCR 0x000f0 hiç kodlanmamıştı. Neden tek kayıt değil de kombinasyonsa, tek-değişkenli yöntem onu yapısal olarak bulamaz.
IMAGE_SHA=882c67867b88… · İLK BOOT: D11'de düştü, WIFITRIALPLAN bile basılmadı, hiçbir deneme koşmadı — ama CMD52_FAIL=0/611999 (kayıttaki en temiz CMD52 boot'u) iken CMD53W_INCOMPLETE=2/2 · TEKRAR BOOT: WIFITRIALPLAN ARMED=1 TOTAL=11 · TRIAL=0 BASE_R126 XFER=48 REPLIED=0 POLLS=144 AGE_MS=2500 ControlTimeout (R126 tabanı birebir) · TRIAL=1 LINUX_EXACT APPLIED=1 POWERON_MISSING=0 — WM 0x08, WC 0x02, DEVCTL 0x10→0x00, MESBUSY 0xd0→0x00, CARDCAP 0x00→0x06, IEN 0x07, hepsi geri okumayla doğrulandı · sonra WriteFifo fn=2 error_status=0x20 (saf veri CRC) · CMD53W_OPS=16 INCOMPLETE=1 · STOP TRIALS_RUN=1/11 REPLIED=0
iki paket: attempt-r127-prereq-sweep-uart-capture (tam boot, D11'de düştü) ve attempt-r127-prereq-sweep-uart-capture-repeat-01 (tam boot, motor koştu, iki deneme)
Kapattığı: Hiçbir şeyi elemez — ama üç şeyi kurar. (1) Süpürme motoru cihazda çalışıyor: arm oldu, denemeler koştu, makbuzlar basıldı, tek sonlandırma işareti ile yakalama temiz kapandı. (2) Deneme 0, R126 tabanını üçüncü kez birebir doğruladı. (3) ZİNCİRDE İLK KEZ tam Linux hazırlık eşitliği karta uygulandı ve geri okumayla doğrulandı — CCCR 0x000f0=0x06 dahil, ki hiçbir koşuda karta ulaşmamıştı. LINUX_EXACT ELENMEDİ: çerçevesi hiç iletilemedi, sorusu sorulmadı.
Risk: Gerçekleşen risk sıralamaydı. En riskli deneme ikinci sıradaydı; veri CRC'si aldı ve Io kalıcı terminal olduğu için sonraki dokuz denemeyi öldürdü. ADAY (n=1): DEVICE_CTL bit 4'ü (kaynağımızın F2WM_ENAB dediği bit) temizleyen tek deneme oydu ve o boot'taki on altı CMD53 yazmasından düşen tek yazma hemen ardından geldi. Doğruysa o 'fazlalık' bizim transport'umuz için fazlalık değil. Bitin upstream adı bu pakette doğrulanmadı ve DEVICE_CTL hiç tek başına temizlenmedi.
R128KoşulduC06 · C07 · C08
Sıralanmış matris — R127'nin adayı ÇÜRÜDÜ
Değişiklik / kapsam: Süpürme motoru R127 ile aynı. Üç fark: matris artan riske göre sıralandı (CARDCAP_06 birinci ve tek başına, BASE_CONTROL riskli aileden önce, LINUX_EXACT sonuncu), durma sebebi ayrıştırıldı, deneme 0 kendi kayıt kaydını taşır.
Neden bu sırada: R127'de en riskli profil ikinci sıradaydı, veri CRC'si aldı, ve Io kalıcı terminal olduğu için dokuz deneme sorusunu soramadı. Ayrıca kirlenme kontrolü en sonda olduğu için hiç ölçülemedi.
IMAGE_SHA=19d1caafb30d… · D11 GEÇTİ (yeni flash olmasına rağmen) · TRIAL=0 BASE_R126 XFER=48 REPLIED=0 POLLS=134 ControlTimeout · TRIAL=1 CARDCAP_06 APPLIED=1 — DEVICE_CTL 0x10→0x10 KORUNDU (geri okumayla), MESBUSY 0xd0→0xd0, tek değişiklik CARDCAP 0x00→0x06 · yine WriteFifo fn=2 addr=0x8000 hatası · CMD53W_OPS=16 INCOMPLETE=1 · STOP=NOT_REARMABLE TRIALS_RUN=1/11 · deneme 0 güç-açılış durumunu kaydetti: WM=0x20 WC=0x00 DEVCTL=0x00 MESBUSY=0x00 CARDCAP=0x00 IEN=0x00
attempt-r128-prereq-sweep-ordered-uart-capture (tam boot; ayrıca reflash deseni 0/4'ten 1/5'e indi)
Kapattığı: R127'nin ürettiği adayı ÇÜRÜTÜR. R127'de düşen deneme DEVICE_CTL bit 4'ü temizliyordu; R128'de düşen deneme o biti KORUDU (geri okumayla doğrulandı) ve aynı işlemde aynı hatayı aldı. İki boot, adayın adını verdiği bitte farklılaşan iki profil, birebir aynı sonuç. DEVICE_CTL sebep değil. Ayrıca kartın gerçek güç-açılış watermark'ı 0x20 ölçüldü — ne bizim 0x60'ımız ne Linux'un 0x08'i.
Risk: Geriye tek ortak nokta kaldı ve daha keskin: her iki düşen yazma da CEVAPSIZ KALAN bir çerçeveden SONRAKİ ilk çerçeveydi; iki boot'ta da 16 CMD53 yazmasından düşen tek yazma oydu. İki okuma var: (a) yeniden kurmamız eksik — Linux'un DPC'sinin çerçeveler arası yaptığı hiçbir şeyi yapmıyoruz, her mühürlü koşuda FIFO_READS=0; (b) kart bir çerçeveyi yoksaydıktan sonra F2 yazması kabul etmiyor. Paket ikisi arasında seçim yapmıyor. Süpürme bu çözülmeden deneme 1'i geçemez.
R129KoşulduC06 · C07 · C08
Denemeler arası kurtarma — tek değişken
Değişiklik / kapsam: R128 imajı, matrisi ve profilleri aynen durur. Tek ekleme: her yeniden kurmadan ÖNCE bir kurtarma adımı — maskeli core INTSTATUS okunur ve sıfır değilse geri yazılır; fonksiyon-2 FIFO'sundan FRAME_IND beklemeden TEK sınırlı first-64 okuması yapılır; host veri motoru durumu örneklenir. Boşaltma profilden ÖNCE koşar, böylece kuyrukta bekleyen bir çerçeve denemenin göndermek üzere olduğu isteğe cevap sanılamaz.
Neden bu sırada: R128 tek ortak noktayı bıraktı: düşen yazma her seferinde cevapsız kalan bir çerçeveden sonraki ilk çerçeve. Her mühürlü koşuda kart FRAME_IND kaldırmadı ve biz F2'den hiç okumadık (FIFO_READS=0) — yani 'yeniden kurmamız eksik' okuması hiç sınanmadı.
IMAGE_SHA=aedd2f1c1450… · tam boot · TRIAL=0 BASE_R126 XFER=48 REPLIED=0 POLLS=137 ControlTimeout · WIFIRECOVER ATTEMPTED=1 INTSTATUS=Some(0) CLEARED=0 FIFO_OK=1 FIFO_FAILED=0 LENGTH=Some(0) LEN_COMPLEMENT_OK=0 PSTATE=Some(33488896)=0x01ff0000 · TRIAL=1 CARDCAP_06 APPLIED=1 · ikinci WriteFifo fn=2 addr=0x8000 aynı veri CRC'siyle düştü · CMD53R=168, CMD53W=16/INCOMPLETE=1, CMD52_OTHER_FAIL=0/531 · STOP=NOT_REARMABLE
attempt-r129-inter-trial-recovery-uart-capture (tam boot) · build/rpi5-wifi-scan-r129/aselsanos-rpi5-radio.img · sha256 aedd2f1c1450fabb34a0bbec0bff1ee3a6c71bf6d2f8e286152e33df49734c4a
Kapattığı: R129'un sınadığı biçimiyle 'yeniden kurma eksik' okumasını ve 'kart, toplamadığımız bir cevabı F2 FIFO'da tutuyor' okumasını çürütür. Kurtarma başarılıydı, FIFO boştu, kesme yoktu ve host idle'dı. Üç boot'un ortak ifadesi daha dar: cevapsız bir çerçeveden sonra function 2 okumayı kabul ediyor, yazmayı reddediyor.
Risk: Gözlenen risk aynı kaldı: ikinci F2 yazması transport'u terminal yaptı ve süpürme trial 1'de durdu. Recovery'nin kendisi hatasız tamamlandı; yeni bir arıza üretmedi.
R130KoşulduC06 · C07 · C08
Fonksiyon-2 IO_ABORT — ikinci yazmadan hemen önce
Değişiklik / kapsam: R129 matrisi ve kurtarması aynen durur. Tek davranış eklemesi: CARDCAP_06 profilinin son CMD52'sinden sonra, yeniden kurulan ikinci F2 yazmasından hemen önce function 0 CCCR IO_ABORT (0x06) kaydına function 2 seçimi (0x02) yazılır. Function-2 kapat/aç ve block-size re-assert yoktur.
Neden bu sırada: R129, düşüş anında function-2 okumasının çalıştığını ve FIFO'nun boş, core INTSTATUS'ın sıfır, host veri motorunun idle olduğunu ölçtü. Geriye kartın F2 yazma tarafındaki durum kaldı; IO_ABORT SDIO'nun bu durumu sonlandırmak için tanımladığı ve hiçbir koşuda issue edilmemiş mekanizmadır.
IMAGE_SHA=670818f2326d… · tam boot · TRIAL=0 BASE_R126 XFER=48 REPLIED=0 POLLS=132 ControlTimeout · WIFIRECOVER INTSTATUS=Some(0) FIFO_OK=1 LENGTH=Some(0) PSTATE=Some(33488896)=0x01ff0000 · WIFIF2ABORT ATTEMPTED=1 OK=1 FAILED=0 · TRIAL=1 CARDCAP_06 APPLIED=1 · hemen sonraki WriteFifo fn=2 addr=0x8000 error_status=0x0020 veri CRC'siyle düştü · CMD53R_OPS=165 INCOMPLETE=2 · CMD53W_OPS=16 INCOMPLETE=1 · CMD52_OTHER_OPS=535 FAIL=0 · STOP=NOT_REARMABLE
attempt-r130-f2-io-abort-uart-capture (tam boot) · build/rpi5-wifi-scan-r130/aselsanos-rpi5-radio.img · sha256 670818f2326d84f7f50a1571bf466823abeb8cdd7badf0fb89ae81741e93bfdc
Kapattığı: IO_ABORT tek başına elendi. Kart function-2 abort yazmasını kabul etti ve sürücü OK=1 makbuzunu verdi; buna rağmen hemen sonraki ikinci F2 yazması aynı işlemde, aynı veri CRC sınıfıyla düştü. Bu sonuç abort komutunun hiç gönderilmediği ya da başarısız olduğu okumasına açık kapı bırakmaz.
Risk: Gözlenen risk gerçekleşmedi: IO_ABORT başarılı oldu ve kurtarma okumaları çalıştı. Transport yalnız hemen sonraki ikinci F2 yazmasında terminal oldu; süpürme trial 1'de durdu.
R131KoşulduC06 · C07 · C08
Fonksiyon-2 kapat/aç — hazır bitleriyle doğrulanan yaşam döngüsü
Değişiklik / kapsam: R130 matrisi, kurtarması ve CARDCAP_06 profili aynen durur. Tek mekanizma: ikinci yazmadan önce CCCR IO_ENABLE (0x02) okunur; F2 enable biti temizlenirken F1 korunur, IO_READY (0x03) üzerinde F2'nin düştüğü sınırlı beklemeyle doğrulanır; F2 yeniden açılır ve hazır biti yükselene kadar sınırlı beklenir. Block-size yeniden yazılmaz.
Neden bu sırada: R130, function-2 IO_ABORT'un başarıyla issue edilmesinin kartın ikinci F2 yazmasını kabul ettirmediğini gösterdi. Abort'tan daha güçlü fakat hâlâ dar bir sonraki kart-tarafı mekanizması, fonksiyonun enable/ready yaşam döngüsünü gerçekten kapatıp yeniden kurmaktır.
IMAGE_SHA=877a1b96ba3d… · tam boot · TRIAL=0 XFER=48 REPLIED=0 POLLS=144 ControlTimeout · WIFIRECOVER INTSTATUS=Some(0) FIFO_OK=1 LENGTH=Some(0) PSTATE=0x01ff0000 · WIFIF2REENABLE BEFORE_ENABLE=Some(6) DISABLE_OK=1 READY_CLEAR=1 CLEAR_POLLS=1 ENABLE_OK=1 READY_SET=1 SET_POLLS=1 FAILED=0 BLOCK_SIZE_REWRITE=0 · hemen sonraki ikinci WriteFifo fn=2 addr=0x8000 error_status=0x0020 ile düştü · HOST_INT=1 CORE_OR=0x00000080 · CMD52_OTHER_FAIL=0/531 · STOP=NOT_REARMABLE
attempt-r131-f2-reenable-uart-capture (tam boot) · build/rpi5-wifi-scan-r131/aselsanos-rpi5-radio.img · sha256 877a1b96ba3df93034c31d93991986605c6447d38dfdd3076f39ecf0954f892f
Kapattığı: F2 enable/ready yaşam döngüsü gerçekten tamamlandı; yalnızca register yazılmış sayılmadı. Yeni kesmeyi servis etmeden yapılan bu tam kapat/aç ikinci yazmayı kurtarmadı. Ancak R130'da CORE_OR=0 olan aynı sınır R131'de 0x80 oldu; pre-lifecycle INTSTATUS=0 olduğundan bu yeni fark ayrıca sınanmalıdır.
Risk: Yaşam döngüsünün kendisi hatasız tamamlandı. Transport yine yalnız ikinci F2 yazmasında terminal oldu. Yeni HOST_INT, sonucu block-size'a atlamadan önce yakın bir post-lifecycle ack kapısına yönlendirir.
R132KoşulduC06 · C07 · C08
F2 yaşam döngüsü sonrası HOST_INT örnekle/ack — ikinci yazmadan hemen önce
Değişiklik / kapsam: R131'in kurtarması, CARDCAP_06 profili ve doğrulanan F2 kapat/aç zinciri aynen kalır. Tek ekleme: READY_SET=1 sonrasında core INTSTATUS okunur; maskeli HOST_INT 0x80 varsa aynı registera write-one-to-clear yazılır ve geri okuma alınır. Sonra ikinci F2 yazması yapılır. Block-size registerlarına dokunulmaz.
Neden bu sırada: R131 öncesinde recovery INTSTATUS=0 iken tam yaşam döngüsünden sonraki trial 1'de HOST_INT=1 / CORE_OR=0x80 görüldü; R130'un aynı sınırında ikisi de sıfırdı. Bu, R131'in ürettiği tek yeni ayırt edici kart durumudur.
IMAGE_SHA=3fddd839a9e9… · tam boot · TRIAL=0 XFER=48 REPLIED=0 POLLS=132 ControlTimeout · WIFIRECOVER INTSTATUS=Some(0) FIFO_OK=1 LENGTH=Some(0) PSTATE=0x01ff0000 · WIFIF2REENABLE DISABLE_OK=1 READY_CLEAR=1 ENABLE_OK=1 READY_SET=1 FAILED=0 · WIFIF2POSTIRQ BEFORE=Some(128) MASKED=Some(128) ACK_ATTEMPTED=1 ACK_OK=1 AFTER=Some(0) FAILED=0 · hemen sonraki ikinci WriteFifo fn=2 addr=0x8000 error_status=0x0020 ile düştü · HOST_INT=0 CORE_OR=0x00000000 · CMD52_OTHER_FAIL=0/535 · STOP=NOT_REARMABLE
attempt-r132-post-lifecycle-host-int-uart-capture (tam boot) · build/rpi5-wifi-scan-r132/aselsanos-rpi5-radio.img · sha256 3fddd839a9e9f31830d62f17da1f1f3907fa6b6990c9c6c4911a656075ab2582
Kapattığı: Post-lifecycle HOST_INT açıklamasını kapatır: 0x80 READY_SET sonrasında gerçekten vardı, ack tamamlandı, readback sıfırdı ve trial 1 boyunca core status sıfır kaldı; buna rağmen aynı yazma aynı veri CRC'siyle düştü. R131'deki 0x80'in yalnız sonuç sonrası gürültü olmadığı da zaman olarak daraldı.
Risk: Ack hedeflenen durumu değiştirdi ve başka bir terminal hata üretmedi. Transport yalnız hemen sonraki ikinci F2 yazmasında terminal oldu; block-size ayrı değişken olarak kaldı.
R133KoşulduC06 · C07 · C08
Fonksiyon-2 block-size 512 re-assert — geri okumayla
Değişiklik / kapsam: R132'nin kurtarması, F2 yaşam döngüsü ve post-lifecycle HOST_INT temizliği aynen kalır. Tek ekleme: ikinci yazmadan hemen önce function 0 F2 block-size low/high registerlarına 0x210=0x00 ve 0x211=0x02 yazılır, ikisi geri okunur. IO_ABORT yoktur ve başka profile/lifecycle değişikliği yapılmaz.
Neden bu sırada: F2 block-size başlangıçta 512 olarak programlandı, fakat cevapsız çerçeve ve tam function lifecycle sonrasında hiç yeniden doğrulanmadı. IO_ABORT, kapat/aç ve onun ürettiği kesmenin ack'i ayrı ayrı elendi; sıradaki önceden ayrılmış kart-tarafı durum bu iki bayttır.
İlk iki tam boot değişkene erişmeden kapandı: ilki trial 0 Read32 error_status=0x0060, ikincisi CR4CTRL PHASE=D11 ABORTED=1 / D11_RETRY_PRIMARY_ERR=0x0010. Üçüncü tam boot karar verdi: IMAGE_SHA=c58ee8c1fa30… · FWSTAGE/NVRAM OK=1 · TRIAL=0 XFER=48 SENT=1 REPLIED=0 POLLS=144 ControlTimeout · WIFIRECOVER FIFO_OK=1 LENGTH=Some(0) PSTATE=0x01ff0000 · F2REENABLE FAILED=0 · F2POSTIRQ BEFORE=Some(128) ACK_OK=1 AFTER=Some(0) FAILED=0 · WIFIF2BLKSZ ATTEMPTED=1 BEFORE_LOW=Some(0) BEFORE_HIGH=Some(2) WRITE_LOW_OK=1 WRITE_HIGH_OK=1 READBACK_LOW=Some(0) READBACK_HIGH=Some(2) MATCH_512=1 FAILED=0 · bitişik ikinci WriteFifo fn=2 addr=0x8000 R5=0x10 ERROR_STATUS=0x0020 BUS_WAS_BUSY=0 PSTATE=0x01ff0000 · trial 1 HOST_INT=0 CORE_OR=0x00000000
attempt-r133-f2-block-size-repeat-2-uart-capture (tam boot) · build/rpi5-wifi-scan-r133/aselsanos-rpi5-radio.img · sha256 c58ee8c1fa30a776e1b67a4253353e6df1609cd8e020dd4d4cf58201c7509c37 · raw sha256 a2a9776becfedda57d3be7c81b554bbec0387b09b9253e16f8560b2a00af083b
Kapattığı: F2 block-size kaybını ve bayat programlamayı kapatır: değer reassert öncesinde zaten 512'ydi, iki yazma ve iki readback tamamlandı; buna rağmen aynı ikinci yazma aynı veri CRC'siyle düştü.
Risk: Mekanizma eksiksiz tamamlandı ve kart-tarafı block-size durumu doğrulandı. Tek terminal işlem hemen sonraki ikinci F2 yazmasıdır; sonuç Wi-Fi PASS değildir.
R134KoşulduC06 · C07 · C08
İkinci F2 yazması öncesi host-only SDHCI DATA reset
Değişiklik / kapsam: R133'ün recovery, F2 yaşam döngüsü, HOST_INT ack ve block-size readback zinciri aynen korunur. Tek ekleme: MATCH_512=1 sonrasında ve ikinci F2 yazmasından hemen önce host tarafında bir SDHCI DATA reset uygulanır; resetin temizlendiği ve host konfigürasyonunun değişmediği doğrulanır. Reset, rearm sonunda değil send_control'ün write_fifo sınırındadır — reset ile ikinci yazma arasına hiçbir SDIO işlemi girmez. Kart reseti, IO_ABORT, ek F2 yaşam döngüsü veya profil değişikliği yoktur.
Neden bu sırada: R133 kart tarafındaki FIFO, interrupt, F2 enable/ready ve block-size durumlarını tek tek sağlıklı doğruladığı hâlde ikinci yazma veri CRC'siyle düştü. R116 host-only DATA resetin uygulanıp doğrulanabilen somut bir primitive olduğunu gösterdi; fakat bu primitive ikinci F2 yazmasının tam önündeki sınırda hiç denenmedi. R24'ün meşgul-hatta-reset GERİLEMESİ ile R116'nın arıza-sonrası kurtarması arasında kalan bu üçüncü yerleşim ayrı bir fiziksel hipotezdi.
İlk koşu değişkene ulaşmadan kapandı (varışsızlık): WIFIHOSTDATA_PLAN ARMED=1 basıldı fakat trial 0 sonrası F1 Read32 INTSTATUS 0x18004020 ikinci kez 0x0020 ile düştü, ikinci reset bus-ömründe-bir-kez kuralıyla reddedildi (USED_BEFORE=1 ELIGIBLE=0), NOT_REARMABLE. Tekrar koşu karar verdi: IMAGE_SHA=b3910252804b… · FWSTAGE/NVRAM OK=1 · TRIAL=0 POLLS=134 ControlTimeout · WIFIRECOVER FIFO_OK=1 · F2REENABLE FAILED=0 · F2POSTIRQ ACK_OK=1 AFTER=Some(0) · F2BLKSZ MATCH_512=1 · WIFIHOSTDATA ATTEMPTED=1 MEASURED=1 APPLIED=1 CLEARED=1 READY=1 CONFIG_SAME=1 POLLS=2 ELAPSED_US=10 PSTATE_B=0x017f0000 PSTATE_A=0x017f0000 RESET_FIRST=0x04 CARD_COMMANDS=0 · UART'ta WIFIHOSTDATA ile bitişik ikinci WriteFifo fn=2 addr=0x8000 R5=0x10 ERROR_STATUS=0x0020 · trial 1 HOST_INT=0 CORE_OR=0 · STOP=NOT_REARMABLE TRIALS_RUN=1/11
attempt-r134-host-data-reset-at-send-boundary-uart-capture (varışsızlık) · attempt-r134-host-data-reset-at-send-boundary-uart-capture-repeat (karar) · build/rpi5-wifi-scan-r134/aselsanos-rpi5-radio.img · sha256 b3910252804ba69fb8ed40c90f52abf4c886d9849c77ac64961f5efd059f1cf0 · repeat raw sha256 c409d7fcd52b9202c7e2bc5fdef2a3230f2874d5e708582e04edd2403767500e
Kapattığı: Send sınırındaki temiz host DATA reset elendi: reset uygulandı, temizlendi, konfigürasyon korundu ve reset ile ikinci yazma arasına hiçbir SDIO işlemi girmedi; buna rağmen aynı ikinci yazma aynı 0x0020 data CRC'siyle düştü. R24 (meşgul hatta), R116 (arıza sonrası kurtarma) ve R134 (send sınırı) birlikte, host SDHCI DATA reset eyleminin — hangi yerleşimde olursa olsun — ikinci yazmanın 0x0020'sinin nedeni olmadığını mühürler.
Risk: Reset öncesi host inhibit yoktu (PSTATE_B=0x017f0000) ve CARD_COMMANDS=0; aksiyonun kendisi yeni bir arıza üretmedi. İlk koşunun varışsızlığı ayrıca kaydedildi; karar yalnız tekrar koşusunun makbuzundan alındı. Sonuç Wi-Fi PASS değildir.
R135KoşulduC06 · C07 · C08
İkinci F2 yazması 64 bayt byte-mode — ELENDİ
Değişiklik / kapsam: R134'ün elenen send-sınırı reset'i zincirden çıkarıldı (R25 emsali); R129–R133 zinciri aynen korundu. Tek değişken: yeniden kurulan ikinci F2 yazmasının transfer byte sayısı 48 → 64 oldu (16 bayt sıfır dolgu), byte-mode aynı kaldı. İlk yazma (trial 0 bootstrap) değişmedi. Yeni kayıt yazması yok, kart komutu yok.
Neden bu sırada: Masabaşı kararı (docs/radio/R135-second-write-shape-desk.md): R80 izinde Linux fn=2 adres=0x8000'e HİÇ 48 bayt yazmıyor; kısa-çerçeve yazma birimi 64 bayttır (1456 adet). Bizim düşen ikinci yazmamız 48 bayt byte-mode gidiyordu — kip aynı, byte sayısı farklı; eleme zincirinde kalan tek trace-görünür şekil farkı buydu.
IMAGE_SHA=db93f033197a844046dda915ac79e1d23690e48a9cab867be0e77ec94999aa2d · WIFIF2WRITE64_PLAN ARMED=1 UNIT=64 PAD_ZERO=1 FIRST_WRITE_UNCHANGED=1 CARD_COMMANDS=0 HOST_RESET=0 · üçüncü boot: TRIAL=0 FRAMELEN=48 XFER=48 ControlTimeout → WIFIRECOVER ATTEMPTED=1 FIFO_OK=1 LENGTH=Some(0) → F2REENABLE FAILED=0 → F2POSTIRQ ACK_OK=1 AFTER=Some(0) → F2BLKSZ MATCH_512=1 FAILED=0 → WIFIREAD OP=WriteFifo BYTES_READ=64 ERROR_STATUS=0x0020 · WIFIHOSTDATA 0 adet · STOP=NOT_REARMABLE TRIALS_RUN=1/11
üç paket: attempt-r135-f2-write64-uart-capture (varışsızlık 0x0060), attempt-r135-f2-write64-uart-capture-repeat-01 (varışsızlık 0x0020), attempt-r135-f2-write64-uart-capture-repeat-02 (ELENDİ — BYTES_READ=64 ERROR_STATUS=0x0020)
Kapattığı: 64 baytlık ikinci yazma da aynı 0x0020 ile düştü: transfer byte-count şekli (48 ve 64'ün ikisi) elendi. İlk iki boot mühürlü varışsızlık paketidir (F1 Read32 0x0060 / 0x0020, WIFIF2BLKSZ ATTEMPTED=0). Sıradaki aday re-arm→yazma zamanlamasıdır (R26 emsali) — R136.
Risk: Düşük gerçekleşti: dolgu baytları SDPCM için anlamsızdı ve bootstrap yolu korundu. Kaynakta veya trace'te görülmeyen kayıt yazması yok.
R136KoşulduC06 · C07 · C08
SDPCM glom biçimi — SDIO duvarı KIRILDI, cevap yok
Değişiklik / kapsam: Kodlayıcı, Linux'un aynı kartta ölçülen host→card çerçeve biçimine taşındı: HW(4) + 8 baytlık glom eklentisi + SW(8, dat_offset=20) + BCDC dcmd(20..36) + veri; toplam uzunluk 8-bayta hizalı. R134'ün elenen send-sınırı reset'i ve R135'in elenen 64-bayt deneyi imajdan çıkarıldı; flags kodlaması (id<<16 | ifidx<<12 | SET) değişmedi.
Neden bu sırada: R136 Linux yakalaması (linux-r136-first-frame-v3) Linux'un ilk kontrol çerçevelerini ölçtü ve bizim çerçevemizin 8 bayt kısa olduğunu, dcmd'ın 12. yerine 20. baytta olması gerektiğini gösterdi; brcmfmac v6.18 kaynağı (hdpack/tx_ctrlframe) bunu doğruladı.
IMAGE_SHA=940ff0ae798cca612f4481bf5b8b22c81c0ac5753b33d764ab5a11ce5c8fa246 · Linux ölçümü iki bağımsız çekirdekte doğrulandı (RPi OS 97 ve Ubuntu 235 yazma çerçevesi, hepsi glom; glomsuz 0) · WIFICTRLTX_RAW HEX=3800c7ff3400000100000000ff00001400000000060100001400000000000100… · TRIAL=0 FRAMELEN=56 XFER=56 ControlTimeout · WIFIF2BLKSZ MATCH_512=1 · TRIAL=1 SENT=2 FRAMELEN=56 XFER=56 REPLIED=0 ControlTimeout (WriteFifo hatası YOK) · TRIAL=2 SENT=3 · WIFITRIALEND STOP=NOT_REARMABLE TRIALS_RUN=2/11 REPLIED=0
attempt-r136-glom-control-frame-uart-capture (tek boot, WHOLE BOOT, 45.849 bayt)
Kapattığı: Tel biçimi sınırını KAPATIR: yeniden kurulan ikinci F2 yazması ilk kez kabul edildi ve süpürme birden fazla denemeye ilerledi. Cevap getirmedi: firmware çerçeveyi işlemiyor (REPLIED=0, FRAME_IND=0, HOST_INT=0). Sıradaki aday R137: seq (255 vs Linux'un artan değeri), dcmd türü/id ve Linux'un preinit sırası — önce masabaşı notu.
Risk: Gerçekleşen: yok — kart yeni biçimi kabul etti, hata sınıfı değişmedi. Kapsam dışı: R116/R119 kurtarma-yolu reset'i ve kart komutları değişmedi.
R137KoşulduC06 · C07 · C08
Mailbox el sıkışması tanığı — taşıma sağlam, FWREADY YOK
Değişiklik / kapsam: R136 zinciri ve glom biçimi aynen durur. Tek ekleme salt-okunur bir tanık: protokol fazında her sekizinci poll'da tohostmailboxdata (SDIO çekirdeği + 0x4c) örneklenir, değişen her değer Linux'un yaptığı gibi ACK'lenir ve sürüm/DEVREADY/FWREADY bitleri makbuza yazılır. Çerçeve baytı, kayıt yazması, reset veya komut değişmez.
Neden bu sırada: R136 dongle'ın mailbox'ında DEVREADY'yi görüp FWREADY'yi görmemişti; FWREADY 'protokol aktivitesi için hazır' bitidir ve kalkmadan kontrol isteklerinin cevaplanması beklenmez. Çerçeve içeriği denemeleri bu soru cevaplanmadan yanlış katmana bakar.
IMAGE_SHA=68cad3b57b5c34bbe4a306d0314904e9241bcf9672111eb11901d88dc821ad76 · WIFIMBOXWATCH SAMPLES=87 CHANGES=0 DEVREADY_SEEN=0 FWREADY_SEEN=0 VERSION=0 LAST=0x00040002 · TRIAL=0..3 FRAMELEN=56 XFER=56 BCDCLEN=20 SENT=1..4 REPLIED=0 · WIFITRIALEND STOP=NOT_REARMABLE TRIALS_RUN=4/11 REPLIED=0
attempt-r137-mailbox-handshake-uart-capture (tek boot, WHOLE BOOT, 74.047 bayt)
Kapattığı: Taşıma sorusunu KAPATIR: glom biçimi dört çerçeve boyunca kararlı, makbuz alanları doğru. Cevapsızlığı çerçeve içeriğinden çıkarır: dongle protokol hazır bayrağını hiç kaldırmıyor. Sıradaki aday R138: hostmail ACK'inin ve sürüm yazmasının zamanlaması.
Risk: Gerçekleşen: yok — salt-okunur örnekleme + kodda zaten var olan ACK yazması. Kapsam dışı: yeni kayıt yazması, reset, kart komutu yok.
R138KoşulduC06 · C07 · C08
Hostmail el sıkışması — ELENDİ: dongle yine hazır olmadı
Değişiklik / kapsam: Tel biçimi, R133 zinciri ve bootstrap çerçevesi donuk. Tek davranış değişikliği iki mevcut yazmanın ZAMANLAMASI: her mailbox okumasında koşulsuz SMB_INT_ACK (0x40 ← 2) ve okunan değerde DEVREADY/FWREADY varsa protokol sürümünün yeniden yazımı (0x48 ← 4<<16). Tanık bayrakları artık her örnekte değerlendirilir.
Neden bu sırada: Linux `brcmf_sdio_hostmail` her okumada ACK yazar ve hazır bayrağında sürümü yeniden yazar; R137'de ACK yalnız değişimde, sürüm yalnız F2-hazır yolunda bir kez gidiyordu ve dongle sessizdi.
IMAGE_SHA=e125208d4eb9d73bd0d7a71985766ce0fa172be9f4a2b975523bc80e57536b39 · WIFIHOSTMAIL_PLAN ARMED=1 ACK_EVERY_READ=1 VERSION_REWRITE_ON_READY=1 · WIFIMBOXWATCH SAMPLES=32 CHANGES=0 DEVREADY_SEEN=1 FWREADY_SEEN=0 VERSION=4 ACKS=32 VERSION_WRITES=32 LAST=0x00040002 · TRIAL=0/1 FRAMELEN=56 XFER=56 BCDCLEN=20 SENT=1/2 REPLIED=0 · WIFITRIALEND STOP=NOT_REARMABLE TRIALS_RUN=1/11
üç paket: attempt-r138-hostmail-complete-uart-capture (D11 varışsızlığı), attempt-r138-hostmail-complete-uart-capture-repeat-01 (değişken icra, erken kapanış), attempt-r138-hostmail-complete-uart-capture-repeat-02 (karar)
Kapattığı: Host el sıkışması adayını KAPATIR: 32 örnekte her okuma ACK'lendi ve sürüm yeniden yazıldı, dongle yine FWREADY kaldırmadı ve iki çerçeveye cevap vermedi. Duvar host el sıkışmasında değil. Sıradaki aday R139: CR4 yürütme + host SDHCI hatalarının ayrıştırılması.
Risk: Gerçekleşen: yok — iki yazma da kodda mevcuttu, yalnız zamanlaması değişti. Kapsam dışı: yeni kayıt, reset, kart komutu ve çerçeve baytı değişmedi.
R139KoşulduC06 · C07 · C08
Reset vektörü Linux taşımasıyla — TAŞIMA KAPANDI, yürütme yok
Değişiklik / kapsam: Tel biçimi, R133 zinciri, R138 hostmail tamamlama ve tüm register değerleri donuk. Tek değişken: reset vektörünün backplane adres 0'a Linux'un yaptığı gibi **4-baytlı bayraklı CMD53** ile yazılması (brcmf_sdio_buscore_activate → ramrw); inmediyse doğrulanmış CMD52 yazması sınırlı geri dönüş olarak kullanılır.
Neden bu sırada: R139 Linux ölçümü CR4 başlatma değerlerinin birebir aynı olduğunu gösterdi; kritik yolda kalan tek yapısal fark bu yazmanın taşımasıydı ve R88'in 0x0060 veri CRC'si R94'ün CMD53 disiplin düzeltmesinden önceydi.
IMAGE_SHA=a7d06727d947bdaa1aad452a83eb9ea21bff8156e35378ee4b65e9b8ed438eaa · WIFIRSTVEC_PLAN ARMED=1 MODE=CMD53_4B_FLAGGED FALLBACK=CMD52 · CR4START RSTVEC_OK=1 RSTVEC_C53=1 RSTVEC_B=4 RSTVEC_ERR=0x0000 RSTVEC_CMD52_FALLBACK=0 HT_REQ_AVAIL=1 MBOX=0 INTSTAT=0 SHARED_RAW=0 EXECUTED=0 STARTED=0 · WIFIMBOXWATCH SAMPLES=18 ACKS=18 VERSION_WRITES=17 FWREADY_SEEN=0 · WIFITRIALEND TRIALS_RUN=1/11 REPLIED=0
attempt-r139-rstvec-cmd53-uart-capture (tek boot, WHOLE BOOT, 55.546 bayt)
Kapattığı: Kritik yoldaki taşıma sorusunu KAPATIR: Linux'un rstvec taşıması bizde de hatasız iniyor ve CMD52 geri dönüşü gerekmiyor. CR4 yürütme sorusunu getirmez: tanıklar sıfır. Sıradaki aday R140: firmware staging taşıması ya da F1 yazma güvenilirliği.
Risk: Düşük gerçekleşti: aynı adrese aynı değer yazıldı, yalnız taşıma Linux'a çevrildi; CMD52 geri dönüşü hazır bekledi ve kullanılmadı.
R140KoşulduC06 · C07 · C08
"Host hazır" yazmasının yeri — DUVAR KIRILDI: dongle 30 ms'de FWREADY dedi
Değişiklik / kapsam: Tek değişken: "host hazır" protokol sürümü yazmasının YERİ. Linux `brcmf_sdio_firmware_callback` (sdio.c:4261-4262) `SDPCM_PROT_VERSION << 16` değerini `tosbmailboxdata`ya (0x18004048) CR4 bırakıldıktan hemen sonra yazar; R139 tel izinde bırakma t=143.630543, yazma t=143.630617 (~74 µs), F2 enable ve hostintmask'ten ÖNCE. R136–R139 aynı yazmayı protokol fazındaki posta nöbetinde, bırakılıştan saniyeler sonra yapıyordu. Adres, değer, genişlik, çerçeve, saat ve reset donuk.
Neden bu sırada: R139 Linux ölçümü değerlerin ve rstvec taşımasının birebir aynı olduğunu gösterdi; kritik yolda kalan tek fark bu yazmanın zamanı/yeriydi.
IMAGE_SHA=12595cd216f02de34ba7c320360d6abd39aed982c91f41173d46530287cf7471 · WIFIHOSTREADY_PLAN ARMED=1 WHERE=AFTER_CR4_RELEASE VALUE=0x00040000 REGISTER=0x18004048 WATCH_VERSION_REPEAT=0 EARLY_WITNESS_MS=600 WRITES=0 · WIFIHOSTREADY ATTEMPTED=1 BEFORE=0x00000000 WRITE_OK=1 AFTER=0x00040000 AFTER_RELEASE_MS=5 · WIFIEARLYMBOX SAMPLES=7 CHANGES=1 FIRST=0x00000000 LAST=0x00040008 INT_OR=0x208000c0 FWREADY_MS=30 WINDOW_MS=600 WRITES=0 · WIFIMBOXWATCH_R140 VERSION_AT_START=1 WATCH_VERSION_WRITES=0 WATCH_ACKS=30 LAST=0x00040002 · WIFITRIALEND STOP=NOT_REARMABLE TRIALS_RUN=1/11 REPLIED=0
attempt-r140-hostready-at-start-uart-capture (tek boot, WHOLE BOOT, 57.712 bayt)
Kapattığı: Zamanlama hipotezini DOĞRULAR: "host hazır" yazması Linux'un yerinde olunca dongle 30 ms'de FWREADY yazıp host kesmesini kaldırıyor. El sıkışmanın tamamlanmasını getirmez: pencere salt-okunurdu, posta ACK'siz kaldı ve dongle DEVREADY'ye geri düştü. Sıradaki adım R141: aynı pencerede Linux ISR'inin cevabı (tosbmailbox ← SMB_INT_ACK, intstatus write-1-to-clear).
Risk: Düşük gerçekleşti: aynı yazma yalnızca daha erken yapıldı; yeni kayıt, değer, çerçeve veya reset yok.
R141KoşulduC06 · C07 · C08
Posta cevabı indi ve el sıkışma oturdu — ama duvar artık DAT1 hattı
Değişiklik / kapsam: Tek değişken: R140'ın salt-okunur erken penceresinin KENDİ iki kaydı artık Linux ISR'inin yazdığı gibi yazılıyor — her posta okumasından sonra `tosbmailbox` (0x18004040) ← SMB_INT_ACK=2 (brcmf_sdio_hostmail) ve `intstatus` (0x18004020) ← okunan & 0x200000f0 write-1-to-clear (brcmf_sdio_intr_rstatus); el sıkışma oturunca pencere erken kapanır. Yeni kayıt, değer, çerçeve, saat ayarı veya reset yok.
Neden bu sırada: R140 dongle'ın FWREADY'sini (+30 ms) ve host kesmesini (0x208000c0) ölçtü ama pencere salt-okunur olduğu için el sıkışma onaylanmadı ve posta kutusu DEVREADY'ye düştü; Linux aynı pencerede postayı ACK'liyor ve intstatus'ı temizliyor (R139 tel izi: 0x18004040 ← 2, 0x18004020'ye ~70 write-1-to-clear).
IMAGE_SHA=044266fbe0a4b9b616feca094abab47352bef9c6606e1a69a9e9a090dac5d765 · WIFIMBOXANSWER_PLAN ARMED=1 WHERE=EARLY_WINDOW ACK_REGISTER=0x18004040 ACK_VALUE=0x0002 INTSTATUS_MASK=0x200000f0 WRITE_ONE_TO_CLEAR=1 EARLY_EXIT=1 WRITES=2 · WIFIEARLYMBOX SAMPLES=7 CHANGES=1 LAST=0x00040008 INT_OR=0x208000c2 FWREADY_MS=25 WRITES=2 · WIFIMBOXANSWER ATTEMPTED=1 ACKS=7 INT_WRITES=2 INT_MASKED=0x200000c0 SETTLED=1 FWREADY_ACKED_MS=25 · WIFIMBOXWATCH SAMPLES=13 FWREADY_SEEN=0 LAST=0x00040002 · WIFITRIALEND TRIALS_RUN=0/11 · WIFIFAIL HOST_CARD_INT=true SDHCI_INT_SIGNAL_ENABLE=0 READ_FAILURES=5 · WIFISCAN_RESULT STATUS=ERROR F1 Read32 0x18004020 error_status=0x0020
attempt-r141-mailbox-answer-uart-capture (tek boot, WHOLE BOOT, 52.965 bayt)
Kapattığı: Cevabın kendisini KAPATIR: posta ACK'i ve intstatus temizliği hatta çıkıyor ve el sıkışma oturuyor (SETTLED=1). El sıkışmanın kalıcılığını getirmez: dongle protokol fazında DEVREADY'ye düşüyor. Ayrıca veri hattı çakışmasını doğrudan gösterir: kart DAT1'i sürüyor (HOST_CARD_INT=true), biz bu kesmeyi servis etmiyoruz (SDHCI_INT_SIGNAL_ENABLE=0) ve 4 baytlık CMD53 okumaları CRC ile düşüyor.
Risk: Düşük gerçekleşti: pencerenin kendi iki kaydı yazıldı; yeni kayıt, değer, çerçeve veya reset yok.
R142KoşulduC06 · C07 · C08
CCCR master biti temiz — kart DAT1'i yine sürdü (hipotez elendi)
Değişiklik / kapsam: Tek değişken: CCCR `INT_ENABLE` (F0 0x04) çiftinin master kesme biti. R124'ten beri Linux'un çifti yazılıyordu (0x03 → 0x07); bu imajda aynı iki yazma master biti temiz yapar (0x02 → 0x06). Kayıt, yazma şekli, fonksiyon bitleri (F1/F2), çerçeve, saat, reset ve komutlar donuk.
Neden bu sırada: R141 arıza makbuzu kartın DAT1'i sürdüğünü (HOST_CARD_INT=true) ve bu kesmenin servis edilmediğini (SDHCI_INT_SIGNAL_ENABLE=0) gösterdi; izin bu çiftten geliyordu.
IMAGE_SHA=6de90c05876cf2fd28fa01781c53e96cecb2fde5392407cb10a31c7cee4edc11 · WIFIINTEN_PLAN ARMED=1 REGISTER=0x04 W1=0x02 W2=0x06 MASTER_BIT=0 · WIFIEN W1=Some(2) W2=Some(6) READBACK=Some(6) · WIFIFRAMECOUNT HOST_CARD_INT=false,true,true READ_FAILURES=0,5 · WIFITRIALEND TRIALS_RUN=2/11 REPLIED=0 · WIFISCAN_RESULT F1 Read32 0x18004020 veri CRC
attempt-r142-int-enable-off-uart-capture (tek boot, WHOLE BOOT, 60.507 bayt)
Kapattığı: CCCR fonksiyon/master bitlerinin bu silikonda DAT1 hattını kapatmadığını KAPATIR. Koşu biraz ilerledi (TRIALS_RUN=2) ve tanığın dinamik olduğunu gösterdi. Sıradaki aday R143: SDIO çekirdeği host kesme maskesi.
Risk: Düşük gerçekleşti: aynı iki yazmanın tek biti değişti.
R143KoşulduC06 · C07 · C08
Host kesme maskesi de kapı değil — DAT1 dinamik, koşu 3 denemeye ilerledi
Değişiklik / kapsam: Tek değişken: SDIO çekirdeği host kesme maskesine yazılan değer (`0x18004024`): Linux'un `0x200000f0` değeri yerine `0x00000000`. Yoklamalı tasarım `intstatus`ı doğrudan okuduğu için hat gerekmez; maske yalnızca sürekli çekili DAT1 üretiyordu.
Neden bu sırada: R142 CCCR master bitini temizledi ve kart DAT1'i yine sürdü; bu sürücünün yazdığı tek diğer kesme etkinleştirmesi hostintmask'ti (R121 farkı).
IMAGE_SHA=79e05167ce0bf84fbc8d2fdaa2b207f1c08a9f6e6ecc31506be2b91127d2eb80 · WIFIHOSTINTMASK_PLAN ARMED=1 REGISTER=0x18004024 VALUE=0x00000000 LINUX_VALUE=0x200000f0 · WIFIFAIL hostintmask_written: Some(0) · WIFIFRAMECOUNT HOST_CARD_INT=true ×4 · WIFITRIALEND TRIALS_RUN=3/11 REPLIED=0 · WIFIMBOXWATCH SAMPLES=62 FWREADY_SEEN=0 LAST=0x00040002 · WIFIREAD_RECOVERY PRIMARY_ERR=0x0020 APPLIED=1 RECOVERY_OK=1 POST_VALUE=Some(0)
attempt-r143-hostintmask-off-uart-capture (tek boot, WHOLE BOOT, 66.321 bayt)
Kapattığı: İki kesme-etkinleştirme hipotezini (CCCR ve SDIO çekirdeği maskesi) KAPATIR; DAT1'in dongle posta donanımından sürüldüğünü ve tanığın dinamik olduğunu gösterir. Kalan tek ölçülü kusur aralıklı veri hattı CRC'si; kurtarma yolu çalışıyor ama yoklama döngüsüne bağlı değil — R144'ün tek değişkeni bu.
Risk: Düşük gerçekleşti: tek bir yazma değeri değişti (Linux'a benzeyen değer kaldırıldı, gerekçesi makbuzda).
R144KoşulduC06 · C07 · C08
Yoklama hatasına tek yeniden deneme — dongle'ın kesmesi İLK KEZ görüldü
Değişiklik / kapsam: Tek değişken: yoklamadaki `Read32 0x18004020` hatası artık turu düşürmüyor. Taşıma katmanının zaten yaptığı sınırlı kurtarmadan (SDHCI reset + tek okuma; WIFIREAD_RECOVERY RECOVERY_OK=1 POST_READ_OK=1 POST_VALUE=Some(0)) sonra okuma BİR KEZ yinelenir; ikinci hata yine fatal. Yeni kayıt, değer, çerçeve, saat ayarı veya reset yok; özellik kapalıyken R143 davranışı birebir korunur.
Neden bu sırada: R141/R142/R143 koşularının üçü de aynı yerde (F1 Read32 0x18004020 veri CRC'si) kapandı ve kurtarma yolunun hatayı temizleyebildiği makbuzla kanıtlıydı; eksik olan sonucu kullanmaktı.
IMAGE_SHA=81323546eef41f6eff9437e597e5307dad8e8c547988675ef7941486dc09a2f3 · WIFIPOLLRETRY_PLAN ARMED=1 REGISTER=0x18004020 MAX_RETRY=1 SECOND_FAILURE_FATAL=1 · WIFIPOLLRETRY RETRIES=0 RETRY_OK=0 RETRY_FAILED=0 · WIFIFAIL frame_ind_seen=1 host_int_seen=1 interrupt_status_or=192(0xc0) fifo_reads=0 · WIFITRIAL_RESULT TRIAL=0 FRAME_IND=1 HOST_INT=1 CORE_OR=0x000000c0 · WIFISCAN_RESULT ERROR=ReadFifo fn=2 addr=0x8000 transfer_complete=false bytes_read=64 error_status=0x20 timeout_transfer=true · WIFIMBOXANSWER SETTLED=1 FWREADY_ACKED_MS=25
attempt-r144-poll-retry-uart-capture-repeat-01 (2. boot; 1. boot non-arrival, 52.910 bayt)
Kapattığı: Yoklama hatasının ölçümü bloke etmesini KAPATIR: koşu artık F2 çerçeve yoluna ulaşıyor ve dongle'ın host kesmesi ilk kez görülüyor (0xc0). F2 okumasının kendisini kapatmaz: yeni duvar orada. Sıradaki adım R145 — aynı yeniden deneme kuralını F2 FIFO okumasına uygulamak.
Risk: Düşük gerçekleşti: yalnızca hata yolu değişti; başarılı okuma davranışı ve tüm değerler aynı kaldı.
R145KoşulduC06 · C07 · C08
Aynı kural F2 okumasına — taşıma 8 denemeye çıktı, dongle sustu
Değişiklik / kapsam: Tek değişken: R144'ün tek-yeniden-deneme kuralı F2 FIFO okumalarına da uygulandı (64 baytlık başlık okuması ve gerekiyorsa devamı): taşıma katmanının sınırlı kurtarmasından sonra okuma BİR KEZ yinelenir, ikinci hata fatal kalır. Okuma geometrisi, çerçeve baytları, saat ve resetler donuk.
Neden bu sırada: R144 koşusu dongle'ın kesmesini ilk kez gördü ve F2 okumasında düştü (ReadFifo fn=2 addr=0x8000, bytes_read=64, error_status=0x20, timeout_transfer=true).
IMAGE_SHA=167cb2334c20a188c9af717f19c96f3e3b5d235ad049dc7e48f2375f8d163739 · WIFIFIFORETRY_PLAN ARMED=1 FUNCTION=2 ADDRESS=0x8000 MAX_RETRY=1 · boot1: WIFIPOLLRETRY RETRIES=1 RETRY_FAILED=1, WIFITRIALEND TRIALS_RUN=1 · boot2 (repeat-01): WIFIFIFORETRY RETRIES=0 FIFO_READS=0, WIFITRIALEND TRIALS_RUN=8/11 REPLIED=0, her denemede CORE_OR=0x00000000, WIFIMBOXWATCH SAMPLES=158 FWREADY_SEEN=0 LAST=0x00040002, WIFIRECOVER FIFO_OK=1 LENGTH=Some(0) ×9
attempt-r145-fifo-retry-uart-capture (1. boot) + -repeat-01 (2. boot, 100.443 bayt)
Kapattığı: F2 okuma yolunun koşuyu düşürmesini KAPATIR: taşıma 8 denemeyi taşıyor ve kurtarma okumaları bayrak takılmadığını doğruluyor. Dongle'ın susmasını kapatmaz: posta kutusu DEVREADY'de kalıyor ve kontrol çerçeveleri cevapsız. Sıradaki adım R146 — R140'ın ölçülmüş tetikleyicisini koşullu yinelemek.
Risk: Düşük gerçekleşti: yalnızca hata yolu; başarılı okuma davranışı ve tüm değerler aynı kaldı.
R146KoşulduC06 · C07 · C08
Dongle kendi beyanını verdi: firmware canlı, sağlıklı, konsolu yayında
Değişiklik / kapsam: Tek değişiklik: SALT-OKUNUR tanık. Koşunun en sonunda dongle'ın yayınladığı SDPCM paylaşım alanı okunur (Linux `brcmf_sdio_readshared`: RAM tepesi-4'teki işaretçi, sonra yapının ilk 12 sözcüğü); ChipCommon chipid okuma öncesi/sonrası nöbetçi olarak örneklenir. Hiçbir şey yazılmaz.
Neden bu sırada: R145 taşımanın 8 denemeyi taşıdığını ama dongle'ın sustuğunu gösterdi; eksik bilgi dongle'ın kendi durumuydu. Linux bu bilgiyi tam olarak bu yapıdan okur.
IMAGE_SHA=6b7e0c2116e8c6568b9f30b54f4451c125b58ca066141ec09bac8f2da0314b4e · WIFISHARED SENT_B_OK=1 SENT_B=0x15264345 SENT_A_OK=1 SENT_A=0x15264345 · PTR_ADDR=0x0025fffc PTR=0x00201cc0 PTR_PLAUSIBLE=1 STRUCT_OK=1 · W0_FLAGS=0x00000001 W1_TRAP=0x0 W2=0x0 W3=0x0 W4=0x0 W5_CONSOLE=0x0025debc W6_MSGTRACE=0x0 W7=0xb677b91b W8=0x47424544 W9=0x1 W10=0xb677b91b W11=0x35342e37 WRITES=0 · WIFITRIALEND TRIALS_RUN=3/11 REPLIED=0 · WIFIMBOXWATCH SAMPLES=54 FWREADY_SEEN=0 LAST=0x00040002
attempt-r146-shared-witness-uart-capture (tek boot, WHOLE BOOT, 67.678 bayt)
Kapattığı: "Firmware yürüyor mu, çöktü mü?" sorusunu KAPATIR: firmware canlı, sağlıklı (ASSERT/TRAP/FAIL yok), paylaşım alanını ve konsol adresini yayınlamış, kimliği bizim blobumuzla aynı. Kontrol çerçevesinin cevapsızlığını kapatmaz; ama artık firmware'in kendi konsol metni elimizde — sıradaki adım R147: o konsolu okumak.
Risk: Yok denecek kadar düşük: WRITES=0; okuma koşunun sonuna konuldu ve nöbetçiyle doğrulandı (R97 kararma uyarısı).
R147KoşulduC06 · C07 · C08
Konsol okundu: firmware WLAN yığınını kuruyor (salt-okunur)
Değişiklik / kapsam: Tek değişiklik: SALT-OKUNUR. R146'nın bulduğu konsol adresinden (W5_CONSOLE) 16 başlık sözcüğü, başlıktaki ilk hizalı RAM işaretçisinden 128 bayt (düzen varsayılmadan) ve konsol adresinin kendisinden 128 bayt okunur; ASCII olarak basılır. Yazma yok.
Neden bu sırada: R146 firmware'in sağlıklı olduğunu ve konsol adresini yayınladığını gösterdi; eksik bilgi firmware'in ne yazdığıydı.
IMAGE_SHA=9a51d4a3b407a8272bc2a03a73218bf0f6c3fab871d00a6c28c4300ab7e0b147 · WIFISHAREDCONSOLE CONSOLE_ADDR=0x0025debc HEADER_OK=1 BUF_PTR=0x0025dab4 BUF_OK=1 PRINTABLE=124 WRITES=0 · HEADER: 0x00000000 0x00000000 0x0025dab4 0x00000400 0x00000177 0x00000177 0x00000001 · TEXT: '1024..000000.061 wl0: wlc_channels_commit: no valid channel for "#n" nbands 2 bandlocked 0..000000.062 wl0: Broadcom BCM4345 80'
attempt-r147-console-witness-uart-capture-repeat-01 (2. boot; 1. boot non-arrival, 55.257 bayt)
Kapattığı: Konsolun okunabildiğini ve firmware log biçiminin/yapısının tutarlı olduğunu KAPATIR. Tam logu getirmez: 367 baytın yalnız ilk 128'i okundu. Sıradaki adım R148 — tam log.
Risk: Yok: salt-okunur; okuma koşunun sonunda ve nöbetçiyle (SENT_B_OK=0 not edildi).
R148KoşulduC06 · C07 · C08
Tam log: 'sdpcmd_sendheader: tx submit failed!!' — neden yazılı
Değişiklik / kapsam: Tek değişiklik: SALT-OKUNUR. Konsol başlığındaki ÖLÇÜLEN düzenle (W2 tampon, W3 boy, W4 indeks) TAM log tamponu okunur (≤1024 bayt) ve tüm yazdırılabilir metin basılır; nöbetçi konsol okumasından önce 8 kez yinelenir (R147 SENT_B_OK=0 kaydı). Yazma yok.
Neden bu sırada: R147 ilk 128 baytı okudu ve firmware'in wl0 satırlarını gösterdi; tamponda 367 bayt yazılıydı ve kalan satırlar çerçevelerimize dair olabilirdi.
IMAGE_SHA=f5c772b4892b8da5060463a62786f0a1bcad397b7ecb552c22f95e602a108e69 · WIFISHAREDCONSOLE_FULL SIZE=1024 IDX=527 READ=1024 PRINTABLE=991 SENT_RETRIES=0 WRITES=0 · LOG: '000002.919 sdpcmd_dpc: Enable' … '000006.022 sdpcmd_dpc: Disable' + 'sdpcmd_tx: device disabled' + 'sdpcmd_sendheader: tx submit failed!!' + 'sdpcmd_dpc: Enable' · 'wl0: wlc_stf_txcore_shmem_write: No clock' · 'wlc_channels_commit: no valid channel for "#n"' · 'BCM4345 … 7.45.265 (28bca26 CY)' · WIFITRIALEND TRIALS_RUN=1/11 REPLIED=0
attempt-r148-console-full-uart-capture (tek boot, WHOLE BOOT, 60.174 bayt)
Kapattığı: "Dongle neden cevap vermiyor?" sorusunu KAPATIR: firmware'in kendi logu, çerçevemizin cihaz devre dışıyken gönderildiğini ve düştüğünü yazıyor. Ayrıca iki iç eksikliği bildiriyor: PHY/TX çekirdeğine saat yok ve geçerli kanal yok. Sıradaki adım R149 — Linux'un FORCE_HT değeri (0xd2).
Risk: Yok: salt-okunur (WRITES=0), nöbetçi temiz.
R149KoşulduC06 · C07 · C08
FORCE_HT indi ama firmware'in 'No clock'u sürüyor
Değişiklik / kapsam: Tek değişken: HT beklemesinden sonra `CHIPCLKCSR`'ye Linux'un CR4 bırakılışı sonrası yazdığı `saveclk | FORCE_HT` değeri (0xd0 → 0xd2). Kayıt, konum (HT isteğinden sonra, host-hazır yazmasından önce) ve diğer her şey donuk.
Neden bu sırada: R148'in tam konsol logu firmware'in 'wl0: wlc_stf_txcore_shmem_write: No clock' yazdığını ve SDPCM veri yolunun kapanıp çerçevemizin 'device disabled' durumunda düştüğünü gösterdi; Linux'un aynı noktada yazdığı değer R139 izinde 0xd2.
IMAGE_SHA=3e348bd06eaa86223c7df9470e531a45f1f803bb762c57b8d7705174cab46d27 · WIFIFORCEHT ATTEMPTED=1 BEFORE=0xd0 WROTE=0xd2 WRITE_OK=1 AFTER=0xd2 · CR4START HT_CSR_FIN=0xd2 · WIFISHAREDCONSOLE_FULL SIZE=1024 IDX=375 READ=1024 PRINTABLE=992 · LOG: '000002.951 sdpcmd_dpc: Enable' … 'wl0: wlc_stf_txcore_shmem_write: No clock' (AYNEN) · WIFITRIALEND TRIALS_RUN=0/11 REPLIED=0
attempt-r149-force-ht-uart-capture (tek boot, WHOLE BOOT, 55.407 bayt)
Kapattığı: FORCE_HT'in firmware'in iç saat şikâyetini gidermediğini KAPATIR (ama veri yolu bu boot'ta kapanmadı). Sıradaki adım R150: D11/PHY çekirdeğini reset'te tutmayı bırakmak — 'No clock' satırının en doğrudan açıklaması.
Risk: Düşük gerçekleşti: tek bit; Linux'un ölçülmüş değeri yazıldı.
R150KoşulduC06 · C07 · C08
D11 reset'i kaldırıldı — firmware'in 'No clock'u KAYBOLDU
Değişiklik / kapsam: Tek değişken: D11 (PHY/TX) çekirdeğinin reset'i, ioctl 0x07 yazıldıktan sonra kaldırılır (`BCMA_RESET_CTL ← 0`); reset aynı şekilde assert edilip doğrulanır. Linux'un R139 tel izinde D11 için hiç reset-ctl yazması yok.
Neden bu sırada: Firmware kendi logunda 'TX çekirdeği shmem'e yazamıyorum: saat yok' diyordu; reset'te tutulan çekirdeğin saati olmaz ve bu, firmware'in şikâyetiyle birebir örtüşen tek bizim-taraflı farktı.
IMAGE_SHA=7889fea1c1f8919182fcb96c0abbde04fdca7557ccfe10e391b65e8b406f541d · WIFID11RELEASE ATTEMPTED=1 RST_BEFORE=0x00000001 WROTE=0x00000000 RST_AFTER=0x00000000 RELEASED=1 · WIFISHAREDCONSOLE_FULLTEXT: 'No clock' satırı YOK · kalıp: 'sdpcmd_dpc: Disable' + 'sdpcmd_sendheader: tx submit failed!!' ×4 (6.082/9.048/12.014/14.979) · WIFITRIALEND TRIALS_RUN=4/11 REPLIED=0
attempt-r150-d11-release-uart-capture (tek boot, WHOLE BOOT, 76.580 bayt)
Kapattığı: Firmware'in çekirdek-saati eksikliğini KAPATIR: D11 reset'te tutulduğu için PHY/TX saati yokmuş, kaldırılınca 'No clock' kayboldu. Cevabı getirmez: veri yolu ~2,97 s'de bir kapanıyor ve çerçevemiz o pencerelerde gönderiliyor. Sıradaki adım R151 — iki zaman çizgisini hizalamak.
Risk: Orta-düşük gerçekleşti: D11 dizisine tek yazma eklendi, assert+doğrulama korundu ve sonuç ölçüldü.
R151KoşulduC06 · C07 · C08
Host zaman çizgisi kuruldu ama damgalar 0 (kaynak hatası)
Değişiklik / kapsam: Ölçüm revizyonu: CR4 bırakılışı kaydedilir ve kritik host olayları (deneme başlangıcı/sonucu, kurtarma, konsol okuması) o andan itibaren ms ile damgalanır. Davranış değişmez.
Neden bu sırada: Firmware logu kendi damgalarını taşıyor, host tarafı damgasızdı; Disable'ın tetikleyicisi ölçülemiyordu.
IMAGE_SHA=b9b2560f26c6e1208b99a0de2f24c687822a5a2074ac0ef59d266fc2de7d2b27 · WIFITIMELINE T0_MS=2018624513 (ham sayac) · bütün T_MS=0 · konsolda 'No clock' VAR, 'tx submit failed' 0 kez · WIFITRIALEND TRIALS_RUN=0? (REPLIED=0)
attempt-r151-host-timeline-uart-capture (tek boot, WHOLE BOOT, 55.720 bayt)
Kapattığı: Altyapının kurulduğunu gösterir, ölçümü KAPATMAZ: ms kaynağı frekansı ilk çağrıda bulamadığı için T0 ham sayac oldu ve hizalama okunamadı. Düzeltme R152.
Risk: Yok: yalnızca damga; davranış aynı.
R152KoşulduC06 · C07 · C08
Zaman çizgileri hizalandı — Disable'ı BİZİM çerçevemiz tetikliyor
Değişiklik / kapsam: Ölçüm revizyonu + düzeltme: `host_now_ms()` artık frekansı kendisi kaydettirir (`freq_cached()` makul değilse `timer::init()`), böylece T_MS alanları gerçek ms olur. Davranış, değerler, çerçeveler ve resetler aynı.
Neden bu sırada: R151'de ölçüm altyapısı kuruldu ama T0 ham sayac olduğu için bütün damgalar 0 çıktı; hizalama yapılamadı.
IMAGE_SHA=0d6349ce99ca3f35fb0ecbae3c774fb5aa7f0f88107cc07194e3e5ec42b4d7df · WIFITIMELINE T0_MS=196494 · TRIAL T_MS=5702/8686/11652/14619/17586 · RESULT T_MS=5752/8736/11703/14669/17636 · RECOVER T_MS=6101/9068/12035/15001/17968 · konsol: Disable+tx submit failed ×5 (firmware t=6.095/9.062/12.029/14.996/17.963 s) · fark SABİT ~326 ms · konsol okuması T_MS=35503 · WIFITRIALEND TRIALS_RUN=5/11 REPLIED=0
attempt-r152-timeline-fix-uart-capture (tek boot, WHOLE BOOT, 82.550 bayt)
Kapattığı: Veri yolunu neyin kapattığını KAPATIR: bizim kontrol çerçevemiz. Dongle çerçeveyi alıyor, sonra cihaz devre dışı kalıyor ve `sendheader` düşüyor. Cevaplanmayı getirmez: REPLIED=0. Sıradaki adım R153 — R136'da ölçülen tek çerçeve farkı: seq 0xFF vs Linux 0x02.
Risk: Yok: yalnızca ms kaynağı düzeltildi; davranış ve değerler aynı.
R153KoşulduC06 · C07 · C08
Seq baytı Linux'un değerine çevrildi — desen sürdü (hipotez elendi)
Değişiklik / kapsam: Tek değişken: oturumun başlangıç SDPCM `tx_sequence` değeri 255 → 0. İlk kontrol çerçevesi böylece seq=0 taşır; artış kuralı (0,1,2…) ve çerçevenin diğer bütün baytları, glom geometrisi, BCDC dcmd (20. bayt), kayıtlar, saatler ve resetler donuk.
Neden bu sırada: R152'nin hizalı zaman çizgisi dongle'ın bizim çerçevemizi alıp veri yolunu kapattığını gösterdi; R136 mühründe kalan tek ölçülü çerçeve farkı seq baytıydı (Linux 0x02, bizde 0xFF).
IMAGE_SHA=c8a51ce7203b897e56b92e3b7ee0ddd04926da7e188152fcbd2ef83c7ee80b74 · WIFISEQ_PLAN ARMED=1 FIRST_SEQ=0 PREVIOUS=0xFF LINUX_MEASURED=0x02 · TRIAL=0 SEQ=0 REPLIED=0 T_MS=5765 · TRIAL=1 SEQ=1 REPLIED=0 T_MS=7098 · konsol: Disable + tx submit failed!! (t=6.106 s) · WIFITRIALEND TRIALS_RUN=1/11 REPLIED=0
attempt-r153-seq-zero-uart-capture-repeat-01 (2. boot; 1. boot non-arrival, 71.834 bayt)
Kapattığı: Seq numaralandırmasının tetikleyici olmadığını KAPATIR (hipotez elendi). Cevabı getirmez. Kalan aday kredi/pencere sözleşmesidir (TXWIN=21 bizim varsayımımız; dongle'ın ilan ettiği pencere hiç görülmedi) — R154.
Risk: Düşük gerçekleşti: tek bayt; tel biçimi ve geometri aynı kaldı (kredi hesabı trial 0'da 22 → 21 oldu, kayda geçti).
R154KoşulduC06 · C07 · C08
Ölçülen preinit çerçevesi: 'tx submit failed' deseni KAYBOLDU (karar için tekrar boot)
Değişiklik / kapsam: Tek değişken: oturumun İLK kontrol çerçevesinin dcmd içeriği — bizim GET'imiz (cmd=262, id=1) yerine Linux'un mühürlü preinit çerçevesi: cmd=263, flags=0x00040002 (id=4, SET), len=20, veri `cur_etheraddr\0` + aynı kartta ölçülen 6 bayt MAC; reply kapasitesi 0. Tel biçimi (R136 glom, dat_offset=20, kuyruk dolgusu), seq=0, kayıtlar, saatler ve resetler donuk.
Neden bu sırada: R153 seq baytını eledi; geriye ilk çerçevenin içeriği kaldı. R152'nin hizalı zaman çizgisi veri yolunu kapatanın bizim çerçevemiz olduğunu göstermişti.
IMAGE_SHA=0d930016cab64c745088291621e130fccd82665f6ca9c4915eeff9b78df98024 · WIFIPREINIT USED=1 CMD=263 ID=4 SET=1 DATA_LEN=20 · WIFITRIAL_RESULT TRIAL=0 REQ_ID=4 CMD=263 FRAMELEN=56 XFER=56 BCDCLEN=20 SEQ=0 SENT=1 REPLIED=0 T_MS=5700 · konsolda 'Disable'/'tx submit failed!!' YOK · WIFISHAREDCONSOLE_FULL IDX=375 T_MS=21452
attempt-r154-preinit-first-uart-capture (1. boot, WHOLE BOOT, 56.000 bayt)
Kapattığı: İlk çerçevenin içeriğinin veri yolunu kapatma desenini durdurduğunu GÖSTERİR (ilk olumlu sinyal) ama cevabı getirmez; tek boot karar için yetmez. Sıradaki adım: aynı imajın 2. ve 3. boot'u.
Risk: Düşük gerçekleşti: yalnızca ilk çerçevenin dcmd içeriği değişti.
R155KoşulduC06 · C07 · C08
Kurtarma damgaları kuruldu; bu boot'ta Disable hiç olmadı
Değişiklik / kapsam: Ölçüm revizyonu (davranış değişmez): `WIFIREAD_RECOVERY` makbuzuna CR4 bırakılışından itibaren monoton ms damgası (`T_MS=`) eklendi; zaman çizgisi yardımcıları tüm imajlarda derlenir, sıfır noktası yalnız ilgili özellik açıkken işaretlenir. Yeni yazma, kayıt değeri, çerçeve veya reset yok.
Neden bu sırada: R152/R154 deseni bizim çerçevemizden ~326–328 ms sonra geliyor ama her boot'ta gelmiyor; SDHCI hat sıfırlaması içeren kurtarma olaylarının zamanı bilinmiyordu.
IMAGE_SHA=4f7b59a7b91eae4b7d4a14e75c91c23e3fc52c3e79f9985473c26463aa8a7abe · WIFIREAD_RECOVERY T_MS=1 APPLIED=1 (PRIMARY_ERR=0x0020) ve T_MS=0 APPLIED=0 (0x0060) · TRIAL T_MS=5740/8707/11674/14640/17326 · konsolda Disable YOK, tx submit failed 0, No clock YOK · WIFITRIALEND TRIALS_RUN=4/11 REPLIED=0
attempt-r155-recovery-timeline-uart-capture (1. boot, WHOLE BOOT, 78.172 bayt)
Kapattığı: Ölçüm altyapısını KURAR (kurtarma zamanı artık biliniyor) ve desen varyansını belgeler (R152 5, R153 1, R154-1 0, R154-2 1, R155 0). Soruyu kapatmaz: bu boot'ta Disable hiç olmadığı için hizalama yapılamadı. Sıradaki adım R156 — tekrar boot'lar.
Risk: Yok: yalnızca damga; davranış ve değerler aynı.
R156KoşulduC06 · C07 · C08
Hizalama kapandı: Disable'ı ÇERÇEVEMİZ tetikliyor; glom pazarlığı yapılmamış
Değişiklik / kapsam: Yeni değişken yok (aynı R155 imajının 2. boot'u): kurtarma T_MS'leri firmware Disable damgasıyla hizalandı.
Neden bu sırada: R155'te desen görülmemişti; hizalamanın tamamlanması için desenin görüldüğü bir boot gerekiyordu.
IMAGE_SHA=4f7b59a7b91eae4b7d4a14e75c91c23e3fc52c3e79f9985473c26463aa8a7abe · WIFIREAD_RECOVERY T_MS=1 APPLIED=1 ve T_MS=0 APPLIED=0 · WIFITRIAL_RESULT TRIAL=0 T_MS=5907 REPLIED=0 · konsol: '000006.239 sdpcmd_dpc: Disable … tx submit failed!!' (No clock var) · WIFITRIALEND TRIALS_RUN=1/11 REPLIED=0 · Linux preinit sırası: GET ulp_sdioctrl (glomsuz) → SET bus:rxglom=1 (glomsuz) → SET cur_etheraddr (glomlu)
attempt-r155-recovery-timeline-uart-capture-repeat-01 (2. boot, WHOLE BOOT, 64.275 bayt)
Kapattığı: Tetikleyicinin çerçeve olduğunu KAPATIR (kurtarma yolu elendi) ve yeni bir yapısal fark ölçer: Linux glom'u ikinci çerçevede pazarlık ediyor, bizim ilk çerçevemiz ise glomlu. R157 ölçülen preinit sırasını uygular.
Risk: Yok: yeni değişken getirmedi, aynı imajın tekrar boot'u.
R157KoşulduC06 · C07 · C08
Düzeltilmiş glom pazarlığı: preinit sırası yoklamanın öncesinde (temiz güç döngüsü bekliyor)
Değişiklik / kapsam: Tek değişken: oturumun ilk üç kontrol çerçevesi Linux'un ölçülmüş preinit sırası — (1) GET `ulp_sdioctrl` GLOMSUZ (data_offset=12, seq=0, cmd=262, id=2, len=29 + 15 bayt cevap yeri), (2) SET `bus:rxglom`=1 GLOMSUZ (seq=1, cmd=263, id=3, len=15), (3) SET `cur_etheraddr`=MAC GLOMLU (glom ext, data_offset=20, seq=2, cmd=263, id=4, len=20). Glom yalnız pazarlıktan sonra kullanılır. İlk R157 boot'unda çağrı yeri yanlıştı (istek dalının içinde) ve sıra hiç çıkmadı; çağrı artık taşıma hazır olur olmaz, yoklamanın öncesinde çalışıyor.
Neden bu sırada: R156 hizalaması deseni çerçevenin tetiklediğini gösterdi; mühürlü Linux listesi ilk iki çerçevenin glomsuz olduğunu ve glom'un ikinci çerçevede pazarlık edildiğini ölçüyor — bizim ilk çerçevemiz glomluydu.
İki boot: IMAGE sha256 fccf3ee52e94038d6f521cbf9880f8e3e91425f2c5b0bba9c9f6795f751b408d (1.) ve 3b3f3a5ae2fa736ccc79f0c03527a447653580cc1d37eaf44820d2e0e2519af0 (düzeltilmiş, 2.) · WIFIPREINITSEQ SENT=0 (her ikisi) · WIFIFAIL frames_received=1-2 frame_ind_seen=1 host_int_seen=1 interrupt_status_or=192 · WIFIFAIL_RX FRAME_LEN=12 HEX=0c00f3ff0001000c00150000 (seq=0, kanal=1, yüksüz — dongle'dan okunan İLK çerçeve) · ERR=WriteFifo F2 0x8000 T_MS=3271 · TRIALS_RUN=0/11
attempt-r157-glom-negotiation-uart-capture (74.652 bayt) · attempt-r157-glom-negotiation-uart-capture-repeat-01 (52.302 bayt)
Kapattığı: Pazarlık sırası çıkarsa (SENT=3) ve konsolda Disable/tx-submit-failed kaybolursa glom pazarlığı kapanır; sıra çıkar ama desen sürerse kalan aday kredi/pencere sözleşmesidir; koşu F2 yazma hatasıyla kapanırsa o hata bir sonraki tek değişken olur.
Risk: Düşük: üç çerçevenin biçimi ve içeriği mühürlü ölçümden bayt bazında sabitlendi; sonraki çerçeveler ve tüm değerler aynı.
R158KoşulduC06 · C07 · C08
"Önce boşalt, sonra yaz" indi: F2 kapısına rağmen ilk yazma yine düştü
Değişiklik / kapsam: Tek değişken: F2 yazması artık FIFO boşalana kadar erteleniyor — sıra `DRAIN_THEN_WRITE`, kapı `FIFO_IDLE`, kaynak R157'nin ikinci boot'undaki okuma (dongle'ın ilk çerçevesi) ve Linux'un `brcmf_sdio_bus_txdata` öncesi boşaltma sırası. Yeni yazma, kayıt değeri, çerçeve içeriği veya reset yok.
Neden bu sırada: R157'nin iki boot'u F2 yazma hatasının tekrarladığını gösterdi; ilk aday hatanın yazmadan hemen önce F2'de biriken dongle çerçevesinden kaynaklanmasıydı (okuma yapılmadan yazma denendiğinde FIFO meşgul olabilir).
IMAGE_SHA=0dc09cba370d4a28e06595a51cc061148cdfbcaca1fa18d458210e77f241efa4 · üç boot: WIFIDRAINFIRST_PLAN ARMED=1 ORDER=DRAIN_THEN_WRITE GATE=FIFO_IDLE (her üçünde) · 1. ve 2. boot RSTVEC_OK=0 (CR4 oturumu tamamlanmadı, yorumlanmadı) · 3. boot RSTVEC_OK=1 ALIAS_OK=1 RSTVEC_C53=1 RSTVEC_ERR=0x0000 · WIFITRIAL_RESULT TRIAL=0 SENT=0 REPLIED=0 FRAME_IND=1 HOST_INT=1 CORE_OR=0x000000c0 T_MS=3360 ERR=WriteFifo (F2 0x8000, present_state=0x01FF0000) · WIFIPREINITSEQ SENT=0 · WIFITRIALEND TRIALS_RUN=0/11
attempt-r158-drain-first-uart-capture (1. boot) · -repeat-01 (2. boot) · -repeat-02 (3. boot, 52.900 bayt)
Kapattığı: Hipotezi ELEDİ: boşaltma kapısı açıkken de ilk F2 yazması aynı hatayla düşüyor, yani hata F2'de bekleyen veriden gelmiyor. Koşu ayrıca hata anında denetleyicinin aktif-transfer durumunu ölçtü (present_state=0x01FF0000) ve bu R159'un adayını doğurdu.
Risk: Düşük: yalnızca yazmanın zamanlaması/kapısı değişti; çerçeve baytları ve tüm değerler aynı.
R159KoşulduC06 · C07 · C08
64 baytlık yazma birimi de duvarı açmadı; işaret denetleyici durumuna kaydı
Değişiklik / kapsam: Tek değişken: glomsuz preinit çerçevelerinin F2 yazma birimi 4 baytlık hizadan Linux'un ölçtüğü 64 bayta çıkarıldı (`UNIT=64`, `PREVIOUS=ALIGN4`, kaynak R80/R136 izleri, `WRITES=3`). Çerçeve baytları, sıra, kimlikler ve tüm kayıt değerleri aynı.
Neden bu sırada: R158 boşaltmanın sorun olmadığını gösterdi; kalan geometri adayı yazma birimiydi — Linux aynı noktada 64 baytlık birimle yazıyor, biz 4 baytlık hizada kalıyorduk.
IMAGE_SHA=402bc5a783d474c49cbe567ef75f263d31329f3ddbb44edae9a98eaf3dcd8ec4 · WIFIF2UNIT_PLAN ARMED=1 UNIT=64 APPLIES=PREINIT_PLAIN_FRAMES PREVIOUS=ALIGN4 SOURCE=R80_R136_64B WRITES=3 · CR4START RSTVEC_OK=1 ALIAS_OK=1 RSTVEC_C53=1 RSTVEC_ERR=0x0000 IOCTL_TERM=0x00000001 (oturum kuruldu) · WIFIFIFORETRY FIFO_READS=3 RETRIES=0 · WIFITRIAL_RESULT TRIAL=0 SENT=0 REPLIED=0 FRAME_IND=1 HOST_INT=1 CORE_OR=0x000000c0 T_MS=3370 ERR=WriteFifo (F2 0x8000, present_state=0x01FF0000) · WIFIPREINITSEQ SENT=0 · WIFITRIALEND TRIALS_RUN=0/11
attempt-r159-f2-write-unit-uart-capture (1. boot, WHOLE BOOT, 52.947 bayt)
Kapattığı: Yazma birimi hipotezini ELEDİ: 64 baytlık birimle de ilk F2 yazması aynı hatayla ve aynı anda (T_MS≈3,37 s) düşüyor. Dört koşunun ortak paydası artık çerçeve değil, yazma anındaki denetleyici durumu: `present_state=0x01FF0000` write/read transfer active bitlerini gösteriyor. R160 bu durumu tek değişken yapar.
Risk: Düşük: yalnızca yazma birimi değişti; çerçeve içeriği, sıra ve değerler aynı.
R160KoşulduC06 · C07 · C08
Duvar bizim kabul kuralımızdı: ölçülen preinit sırası ilk kez tamamen çıktı
Değişiklik / kapsam: Tek değişken: R159'un mühürlü `WIFIREAD` makbuzunun ölçtüğü sınıfın kabul kuralı — F2 yazması (a) `WriteFifo`, (b) `reason=Transfer`, (c) `ISSUED+COMMAND_COMPLETE+BUFFER_READY+TRANSFER_COMPLETE`, (d) istenen bayt sayısı tam, (e) hiç zaman aşımı ve meşgul bayrağı yok, (f) `error_status == ERR_DATA_CRC` (yalnız bit 5, başka bit yok), (g) `r5_flags & R5_ERROR_MASK == 0`, (h) pencere tam ise FATAL değil; sayılır, basılır ve devam edilir. Başka her yazma hatası fatal kaldı (`WRITE_FAULTS`). Çerçeve baytları, 64 baytlık birim, sıra, geometri ve tüm kayıtlar aynı.
Neden bu sırada: R159'un makbuzu yazmanın kart tarafından reddedilmediğini ölçtü: aktarım bitti, bayt sayısı tam, R5'te hata yok; tek şikâyet SDHCI veri CRC bayrağıydı ve `error_status == 0` kuralı bu yüzden dört koşudur sırayı birinci çerçevede öldürüyordu.
IMAGE_SHA=f0185b74794ae09164fc9ca6545ec5f8d808d522cd8be413505ec9f2dab2d599 · WIFIF2CRC_PLAN ARMED=1 RULE=CRC_ONLY_COMPLETED … SILENT_ACCEPT=0 · WIFIF2CRC ACCEPTED=1 ×3 (REQUESTED=64 BYTES=64 R5_FLAGS=0x10 R5_ERROR=0 ERR_STATUS=0x0020 TIMEOUTS=0 WINDOW_OK=1) · WIFIPREINITSEQ SENT=3 EXPECTED=3 CRC_ACCEPTED=3 WRITE_FAULTS=0 · konsolda Disable 0, tx submit failed 0; günlük `000003.092 sdpcmd_dpc: Enable` ile bitiyor · sonraki (56 baytlık kontrol) yazmada aynı sınıf: WIFIREAD BYTES_READ=56 ERROR_STATUS=0x0020 TRANSFER_COMPLETE=1, WIFITRIAL_RESULT T_MS=3475 CORE_OR=0x000000c0, WIFITRIALEND TRIALS_RUN=0/11 REPLIED=0
attempt-r160-f2-crc-accept-uart-capture (1. boot, WHOLE BOOT, 54.133 bayt)
Kapattığı: Hipotezi DOĞRULADI: preinit sırasını durduran şey kart değil, bizim tamlık kuralımızdı; sıra tamamen çıktı ve firmware veri yolunu artık kapatmıyor. Kalan duvar kuralın kapsamıdır — aynı sınıf sıradan kontrol çerçevesinin yazmasında (`send_control`) hâlâ fatal.
Risk: Düşük: yalnız kabul kararı değişti; hiçbir bayt, kayıt veya geometri değişmedi ve kabul sessiz değil (bayrak + sayaç + satır).
R161KoşulduC06 · C07 · C08
Yol açıldı: 3 deneme koştu; firmware her çerçevemizi `device disabled` ile reddediyor
Değişiklik / kapsam: Tek değişken: R160'ta preinit sırası için doğrulanan kabul kuralının KAPSAMI — aynı saf kural (`crc_only_completed_write`) artık sıradan kontrol çerçevesinin F2 yazmasında da geçerli ve her kabul ayrı sayılıyor (`control_crc_accepted`). Kuralın kendisi, çerçeve baytları, 64 baytlık birim, sıra ve geometri aynı kaldı.
Neden bu sırada: R160 koşusu tam bu duvarda düşmüştü: aynı ölçülen sınıf 56 baytlık kontrol çerçevesi yazmasında geliyordu ve `send_control` onu hâlâ fatal sayıyordu.
IMAGE_SHA=5642a8bbea0fe105762a91d2ca8c018229078d0826e3b36869f67d59f64b72ce · 1. boot CR4 oturumunu tamamlamadı (RSTVEC_OK=0, yorumlanmadı) · 2. boot RSTVEC_OK=1 RSTVEC_C53=1 · WIFIF2CRCSCOPE ACCEPTED_PREINIT=3 ACCEPTED_CONTROL=1 WRITE_FAULTS=0 · WIFIF2CRC ACCEPTED=1 ×4 (REQUESTED=64 ×3, REQUESTED=56 ×1; hepsi R5_ERROR=0 ERR_STATUS=0x0020 SILENT_ACCEPT=0) · WIFIPREINITSEQ SENT=3 CRC_ACCEPTED=3 · WIFITRIALEND TRIALS_RUN=3/11 REPLIED=0 · denemeler ControlTimeout (AGE_MS=2500) · konsol: `000003.118 Enable`, sonra her çerçevemizde `Disable` + `sdpcmd_tx: device disabled` + `sdpcmd_sendheader: tx submit failed!!` (6.303/9.287/12.267 s) · 4. denemede F1 Read32 0x18004020 düştü (PRESENT_STATE=0x01ff0206)
attempt-r161-f2-crc-scope-uart-capture (1. boot, YORUMLANMADI) · -repeat-01 (2. boot, WHOLE BOOT, 75.049 bayt)
Kapattığı: Kapsam hipotezini DOĞRULADI ve F2 yazma duvarını tamamen kapattı: taşıma 0/11'den 3/11'e ilerledi. Yeni duvar artık kart değil firmware sözleşmesi: dongle çerçevemizi alıyor ama SDPCM TX yolu `device disabled`. Ayrıca R160'ın "konsolda Disable yok" gözleminin boot varyansı olduğu bu boot'ta ölçüldü (Disable 3).
Risk: Düşük: kural aynı ve saf; yalnız kapsam genişledi, her kabul bayrağıyla basıldı ve sayıldı.
R162KoşulduC06 · C07 · C08
Kimlik devam ettirildi (id 5→14, tekrar yok); süpürme 9/11'e ilerledi, duvar aynı
Değişiklik / kapsam: Tek değişken: preinit sırasından SONRA gelen kontrol çerçevelerinin KİMLİĞİ — dcmd id preinit'in kullandığı 2,3,4'ten sonra 5'ten devam eder ve her çerçevede artar (`CTRL_ID_FIRST_AFTER_PREINIT`); ayrıca R154'ün ilk-çerçeve geçersiz kılması, preinit sırası o çerçeveyi zaten gönderdiyse artık uygulanmaz (tekrar yok). Bayt biçimi, uzunluk, 64 baytlık birim, kabul kuralı ve kayıtlar aynı.
Neden bu sırada: R160/R161 makbuzları aynı üç isteğin iki kez gittiğini ölçüyordu (id 2,3,4 sonra 4,2,3,4 — hem tekrar hem azalan), mühürlü Linux çerçeve listesinde ise id her istekte artıyor (0x8f, 0x90, 0x91 …); dongle tam o tekrar çerçevelerde SDPCM TX'ini kapatıyordu.
IMAGE_SHA=ac24e6352d1f7a3cab592d9f3826cc55ef118c88a05f9501a5cbef025befc865 · WIFICTRLID_PLAN ARMED=1 RULE=MONOTONIC_UNIQUE FIRST_ID=5 PREINIT_IDS=2,3,4 REPEAT=0 · WIFICTRLID CONTINUED=10 · WIFITRIAL_RESULT REQ_ID=5,6,7,8,9,10,11,12,13,14 (hepsi CMD=262) SENT=1…10 REPLIED=0 T_MS=5976…32398 · WIFITRIALEND TRIALS_RUN=9/11 REPLIED=0 · WIFIF2CRCSCOPE ACCEPTED_PREINIT=3 ACCEPTED_CONTROL=6 WRITE_FAULTS=0 · konsol: her denemede (≈2,98 s) `Disable` + `sdpcmd_tx: device disabled` + `sdpcmd_sendheader: tx submit failed!!` + `Enable` · masa: last_tx_evidence Linux'un mühürlü `SET cur_etheraddr` çerçevesiyle aynı yerleşim (HW 3800c7ff, glom 34000001/00000000, doff=20)
attempt-r162-ctrl-id-continuation-uart-capture (1. boot, WHOLE BOOT, 109.996 bayt)
Kapattığı: Kimlik hipotezini ELEDİ ama taşımayı ilerletti (3/11 → 9/11). Duvarın çerçeve kimliğinde/içeriğinde olmadığını, dongle'ın SDPCM TX kapısında olduğunu ölçtü; masa karşılaştırması çerçeve biçimini de eledi, geriye host'un kesme/posta-kutusu kablolaması kaldı.
Risk: Düşük: yalnız id alanı ve ilk-çerçeve geçersiz kılmasının koşulu değişti; hiçbir bayt düzeni, kayıt veya geometri değişmedi.
R163KoşulduC06 · C07 · C08
Duvar toggle'dı: dongle artık SDPCM TX'ini kapatmıyor; kalan duvar F1 okuması
Değişiklik / kapsam: Tek değişken: yazma öncesi fonksiyon-2 yaşam döngüsü "önce SOR" olur — F2 zaten açık (`IO_ENABLE` biti) ve READY (`IO_READY` biti) ise dongle'ın SDIO cihazı kapatılmaz; R131 disable/ready-clear/enable/ready-set dizisi yalnız F2 gerçekten hazır değilse, değişmeden uygulanır. Çerçeve baytları, 64 baytlık birim, kimlik devamlılığı, kabul kuralı ve diğer tüm kayıtlar aynı.
Neden bu sırada: R162'nin mühürlü kaydı, her deneme öncesi yapılan toggle'ın dongle'ın `sdpcmd_dpc: Disable` + `sdpcmd_tx: device disabled` + `sdpcmd_sendheader: tx submit failed!!` üçlüsüyle milisaniye düzeyinde çakıştığını ölçtü (≈2,98 s periyot, tam bizim deneme kadansımız); toggle yapmayan preinit yazmalarında ise o üçlü hiç görünmüyordu.
IMAGE_SHA=afd84d4bd34a6bff2150445be13388274d2ef6d742291576bcb51a0241316fea · 2. boot NETBOOT KONTROLÜ: bootloader `Boot mode: NETWORK (02) order f1` dedi ve config.txt + DTB + **çekirdek (3.882.720 bayt)** + epoch blob’u + overlay’i Mac’ten TFTP ile çekti (`TFTP_GET` satırları, DHCP 10.42.0.1); SD kart hiç kullanılmadı. Aynı koşu netboot’un ortaya çıkardığı bağımlılığı da ölçtü: `FWREAD PART_LBA=0 VOL_OK=0` (SD boot’ta `PART_LBA=32768 VOL_OK=1`) — çekirdeğin SD okuması, kartın bootloader tarafından önceden başlatılmış olmasına sessizce bağımlıymış · WIFIF2READYFIRST_PLAN ARMED=1 RULE=VERIFY_THEN_TOGGLE · WIFIF2READYFIRST SKIPPED_THIS_TRIAL=1 ACTION=VERIFY_ONLY · WIFIF2REENABLE ATTEMPTED=1 BEFORE_ENABLE=Some(6) DISABLE_OK=0 READY_CLEAR=0 ENABLE_OK=0 READY_SET=0 (toggle hiç yapılmadı) · konsol: Disable=0 tx submit failed=0 (R162: 6 / 8) · WIFIPREINITSEQ SENT=3 CRC_ACCEPTED=3 WRITE_FAULTS=0 · WIFIF2CRCSCOPE ACCEPTED_PREINIT=3 ACCEPTED_CONTROL=2 · WIFICTRLID CONTINUED=2 REPEAT=0 · WIFITRIAL_RESULT TRIAL=0 SENT=1 REPLIED=0 ControlTimeout; TRIAL=1'de F1 Read32 0x18004020 düştü (PRESENT_STATE=0x01ff0206) · WIFITRIALEND TRIALS_RUN=1/11 · WIFIAUTORESET ARMED=1 PETS=7 COMMANDS=0 RADIO_REGISTERS=0
attempt-r163-f2-ready-first-uart-capture (1. boot, WHOLE BOOT, 70.169 bayt)
Kapattığı: Toggle hipotezini dongle konsolunda DOĞRULADI (Disable 6→0): yazma yolu artık dongle'ın TX'ini kapatmıyor. Kalan duvar F1 okuma yoludur (INTSTATUS okuması kart meşgulken düşüyor) ve cevap hâlâ yok (`REPLIED=0`). Ayrıca hands-free otomasyonu (PM watchdog + sürekleme) ilk kez donanımda doğrulandı: ARMED=1, PETS=7, yanlış reset yok.
Risk: Düşük: yalnız toggle koşullu hale geldi; yaşam döngüsü silinmedi ve hazır değilse aynı. İmaj ayrıca radyo-dışı otomasyon bayrağı taşıyor (makbuzda RADIO_REGISTERS=0).
R164KoşulduC06 · C07 · C08
Netboot hattı çalıştı: payload ağdan indi, radyo zinciri SD ile aynı noktaya geldi
Değişiklik / kapsam: Altyapı (radyo değişkeni YOK): Wi-Fi payload'ı — BRCMFW.BIN, BRCMNVR.TXT, BRCMCLM.BLB — çekirdekle aynı yoldan, firmware'in `initramfs` mekanizmasıyla ağdan taşınır. Boot blob'u 32 baytlık epoch + `ASLNPAY1` konteyneridir (kayıt başına offset/uzunluk/CRC-32/SHA-256; evrensel duvar saati ABI'si değişmez). Çekirdek önce FAT yolunu dener, yalnız kullanılamıyorsa konteynerden okur; her kaydın CRC'si yeniden hesaplanır. Çerçeve, sıra, kabul kuralı ve radyo kayıtları değişmez.
Neden bu sırada: Ağ boot'unda bootloader SD karta hiç dokunmuyor: `FWREAD PART_LBA=0 VOL_OK=0 FOUND=0` ölçüldü ve firmware yüklenemediği için radyo zinciri hiç başlamadı. Soğuk-kart SD başlatması dört netboot koşusunda uçtan uca denendi (ray açık `RAIL_VCC=1 RAIL_3V3=1`, denetleyici sıfırlandı `PSTATE_A=0x1fff0000 INHIBIT_CLR=1`, saat kararlı, 74 darbe, güç döngülü tekrar `RETRIES=1`) ve kart yine CMD0'a cevap vermedi (`CMD0=0`); dört olay `evidence/rpi5/radio/boot-incidents/` altında mühürlendi. Bağımlılığı kovalamak yerine kaldırmak seçildi.
KOŞTU (netboot): `FWPAYLOAD PRESENT=1 ADDR=0x10000000 WINDOW=1048576 ENTRIES=3 VERSION=1 SOURCE=INITRAMFS` · `FWPAYLOAD FW SRC=INITRAMFS BYTES=609309 SECTORS=1190 FIRST_WORD=0xb83ef198 CRC32=0xb8b12ced SHA256=d608f866…36c3 VERIFIED=1` (SD yolundan okunanla birebir aynı imza) · `FWPAYLOAD NVRAM … VERIFIED=1` ve `CLM … VERIFIED=1` · `FWSTAGE SECTORS_DONE=1190 OK=1` · `NVRAM FOUND=1 VERIFIED=437 OK=1 FW_INTACT=1` · `CR4START RSTVEC_OK=1 RSTVEC_C53=1` · `WIFIPREINITSEQ SENT=3 CRC_ACCEPTED=3` · `WIFITRIALEND TRIALS_RUN=1/11 REPLIED=0` · `WIFISCAN_RESULT STATUS=ERROR ERROR=Session(CommandDeadline(Mac))` · `WIFIAUTORESET ARMED=1`. Kart KULLANILMADI (bootloader `Boot mode: NETWORK (02)`). İmaj sha256 `d878ee04a6591eb37964d26fc49a95cdc377430eea787aeb75aeed5e1dfeae88` · `build/rpi5-wifi-scan-r164/aselsanos-rpi5-radio.img` · yayın: `PUBLISHED.txt` (kernel_sha256 aynı) · şimdiye kadarki dört netboot boot'u **varışsız** ve `evidence/rpi5/radio/boot-incidents/` altında mühürlü (hizalama panic'i, devralınan DAT inhibit, tam soğuk-başlatma tanılaması, DTB fault'u) · beklenen: `FWPAYLOAD PRESENT=1 ADDR=0x10000000 WINDOW=1048576 ENTRIES=3 SOURCE=INITRAMFS`, ardından `FWPAYLOAD FW SRC=INITRAMFS BYTES=609309 SHA256=d608f866…36c3 VERIFIED=1`, `FWPAYLOAD NVRAM SRC=INITRAMFS`, `FWPAYLOAD CLM SRC=INITRAMFS` ve `FWSTAGE … OK=1` + `NVRAM … OK=1`; sonra radyo zinciri SD boot'takiyle aynı makbuzları vermeli. SD boot'ta bu dal hiç çalışmaz.
attempt-r164-initramfs-payload-uart-capture (1. boot, NETBOOT, WHOLE BOOT)
Kapattığı: Payload ağdan yüklenip radyo zinciri başladı: firmware'in SHA-256'sı SD yolundan okunanla birebir aynı (`d608f866…36c3`), CR4 oturumu kuruldu ve süpürme SD boot ile aynı ilk-deneme davranışını verdi (`TRIALS_RUN=1`, `REPLIED=0`); ikinci deneme yeni bir adla kapandı: `Session(CommandDeadline(Mac))`. Eller serbest hat tamamlanır: çekirdek ve payload TFTP'den, reset PM watchdog/UART ile, kart hiç takılmasa bile. Başlamazsa konteyner/CRC makbuzu hangi kaydın düştüğünü adıyla söyler. R163'te ölçülen F1 okuma yolu değişkeni (INTSTATUS okuması kart meşgulken düşüyor) bu altyapı işi nedeniyle bir sonraki radyo basamağına, R165'e taşındı.
Risk: Düşük: FAT yolu önce denenir ve SD boot'ta davranış bit bit aynı kalır; konteyner yalnız FAT kullanılamadığında okunur. Taşınan beyan (SHA-256) CRC doğrulanmadan makbuza geçmez.
R165KoşulduC06 · C07 · C08
Okuma öncesi sınırlı host-idle kapısı: iki boot varışsız (CR4 D11 transport), değişken sınanmadı
Değişiklik / kapsam: Tek değişken (radyo): F1 backplane Read32 ve F2 read_fifo yollarından ÖNCE sınırlı bir host-idle kapısı. Yüklem bu kartta R114/R115'te fiziksel olarak kanıtlanmış runtime_host_idle (CMD/DAT inhibit temiz VE DAT0 serbest); bekleme READ_GATE_MAX_POLLS=4096 ile sınırlı. Kapı yalnız BEKLER: hiçbir kayıt yazmaz, hiçbir komut göndermez. Kapsam okuma yollarının tamamıdır (tek ofset değil); yazma yolu, çerçeve baytları, 64 baytlık birim, geometri, kabul kuralı ve kimlik devamlılığı değişmez.
Neden bu sırada: R163 süpürmenin ikinci denemesini tam burada kapattı: WIFIREAD OP=Read32 FN=1 ADDR=0x18004020 REASON=Transfer PRESENT_STATE=0x01ff0206 (DAT_INHIBIT|DAT_LINE_ACTIVE) ve WIFITRIALEND TRIALS_RUN=1/11. Aynı koşuda pasif bekleme sınırının tamamı (POLLS=100000) harcandı ve HOST_IDLE=0 kaldı; latch'i açan şey 2 poll / 10 µs süren R116 host-only DATA reset'iydi. R164 netboot koşusu bu tabanı ölçmedi (WIFIREAD makbuzu 0, READ_FAILURES=0; iki deneme de kontrol cevabı zaman aşımı), bu yüzden R165'in hedefi R163'te ÖLÇÜLEN duvardı.
KOŞULDU ama değişken HİÇ SINANMADI (ATTEMPTED=0): iki boot da radyo zincirine varmadı. 1. boot mühürlü (evidence/rpi5/radio/attempt-r165-read-gate-uart-capture, VARİŞ YOK / YORUMLANMADI): CR4CTRL PHASE=D11 ABORTED=1 REASON=TRANSPORT OPS=1 ADDR=0x18101408 WRITE=1 WIN_OK=0 · CR4START RSTVEC_OK=0 ALIAS_OK=0 RSTVEC_C53=0 RAM_W=0 · WIFISCAN_RESULT STATUS=UNAVAILABLE CORE_READY=0 CLM_LOADED=1 · konsol Disable=0, tx submit failed=0, REPLIED=1 satırı 0 · FWSTAGE SECTORS_DONE=1190 OK=1 ve NVRAM VERIFIED=437 OK=1 FW_INTACT=1 (mühürlü PASS 119 → 120). 2. boot (…-repeat-01, mühür bekliyor) aynı sınıfta: FWSTAGE SECTORS_DONE=1190 WORDS_V=152320 OK=1 · NVRAM WRITTEN=313 VERIFIED=437 OK=1 FW_INTACT=1 · CR4CTRL PHASE=D11 ABORTED=1 REASON=TRANSPORT OPS=7 ADDR=0x18101800 WRITE=0 WIN_OK=1 · CR4START RSTVEC_OK=0 · WIFISCAN_RESULT STATUS=UNAVAILABLE CORE_READY=0. Varışsızlık değişkene bağlanamadı: kapı yalnız runtime WifiSdioBus okuma yollarında (read32 ve read_fifo) bekler; cr4_start serbest backplane yardımcılarını (cmd52, backplane_read32_cmd53, backplane_write32_cmd53) kullanır ve R164'ün aynı netboot yolu CR4CTRL PHASE=COMPLETE OPS=21 ile RSTVEC_OK=1 vermişti.
attempt-r165-read-gate-uart-capture (1. boot, MÜHÜRLÜ, VARİŞ YOK / YORUMLANMADI) · attempt-r165-read-gate-uart-capture-repeat-01 (2. boot, MÜHÜRLÜ, VARİŞ YOK / YORUMLANMADI, aynı sınıf; ham kayıt netboot DHCP/TFTP izini taşır) · imaj sha256 84cd5a0b878e87c8872ff17d305c970cfb80b51ea8f6915591d78841ade34a62
Kapattığı: Ölçülen: firmware/NVRAM yolu iki boot'ta da geçti ve imaj mühürlü PASS sayısını 119'dan 120'ye taşıdı; buna karşılık okuma kapısı hakkında TEK bir veri noktası üretilemedi (WIFIREADGATE satırı hiç basılmadı çünkü okuma yolu çalışmadı). Aynı kapı kodu R166 imajında overlay olarak devralındı; değişken orada da sınanmayacak, orada asıl değişken reset bütçesidir.
Risk: Ölçülen risk: bu imajın hiçbir boot'u okuma yoluna ulaşmadı. Kapı salt-okunur ve sınırlı olduğu için bir çıktı değişikliği üretemez; cr4_start yolunda bulunmadığı için de varışsızlığa bağlanamadı. Varışsızlık sınıfı daha önce mühürlenen netboot olaylarıyla aynı ailede ve tekrarla ayrıştırılacak.
R166KoşulduC06 · C07 · C08
Okuma-hattı kurtarması: bütçe duvarı kalktı — süpürme 1'den 5 triale ilerledi, duvar oturum/cevap yoluna taşındı
Değişiklik / kapsam: Tek değişken (radyo): host-only SDHCI DATA reset'inin OCCURRENCE BUDGET'i — runtime bus ömrü boyunca 1 yerine 4 (READ_RESET_BUDGET). Diğer her R116/R119 koşulu aynen kalır: keşfedilen SDIO çekirdeğinin INTSTATUS adresi, DATA_CRC hata sınıfı (DATA_END_BIT'li ya da değil, başkası değil), geçerli CMD52x4 fallback değeri, tam 100.000 poll'lik pasif sınır, DAT0 serbest, CMD inhibit temiz, veri motoru hâlâ aktif; reset dizisi, sonrasındaki CMD52 doğrulaması ve diğer tüm hataların fatal davranışı değişmez. Yeni kayıt değeri, yeni komut, CMD53 yinelemesi yok; yazma yolu, çerçeve baytları, 64 baytlık birim, geometri, kabul kuralı ve kimlik devamlılığı aynı. R165'in okuma kapısı overlay olarak taşınır: yalnız PRESENT_STATE örnekler, hiçbir kayıt yazmaz ve komut öncesi inhibit beklemesi (aynı iki bit, 50.000 poll) onu domine ettiği için çıktıyı değiştiremez.
Neden bu sırada: R163'ün mühürlü trial 1'i duvarı adıyla veriyor: latch ilk olayda reset ile açıldı (USED_BEFORE=0 ELIGIBLE=1 APPLIED=1 CLEARED=1 RESET_POLLS=2 ELAPSED_US=10 RECOVERY_OK=1 POST_MATCH=1), latch AYNI trial içinde tekrar armlandı ve ikinci olayda bütçe yoktu (USED_BEFORE=1 ELIGIBLE=0 APPLIED=0 CLEARED=0) — sonuç WIFIREAD REASON=Transfer PRESENT_STATE=0x01ff0206 ve WIFITRIALEND TRIALS_RUN=1/11. Beklemek işe yaramıyor: aynı koşuda pasif sınırın tamamı (POLLS=100000) iki kez harcandı ve HOST_IDLE=0 kaldı. Yani duvar okuma yolu değil, resetin bus başına BİR olan politikasıydı; R165 bu ölçümü hiç tekrarlayamadı (varışsız).
KOŞULDU, DEĞİŞKEN SINANDI ve VARDI: 1. boot mühürlü VARİŞ VAR (yorumlanabilir) — evidence/rpi5/radio/attempt-r166-read-budget-4-uart-capture (boot yolu netboot, reset yolu manual). WIFIRESETBUDGET_PLAN ARMED=1 BUDGET=4 SUBJECT=SDIO_INTSTATUS ERROR_CLASS=DATA_CRC+DATA_END_BIT PREVIOUS=R116_ONE_PER_RUNTIME_BUS WRITES=0 SOURCE=attempt-r163-read-recovery · CR4START PHASE=COMPLETE ABORTED=0 RSTVEC=0xb83ef198 RSTVEC_OK=1 ALIAS_OK=1 RSTVEC_C53=1 RSTVEC_B=4 D11_RESET=1 D11_IOCTL=0x00000007 HT_CLR_OK=1 HT_REQ_OK=1 HT_CSR_FIN=0xd2 HT_REQ_MS=4 HT_REQ_AVAIL=1 WRITE_OK=1 · üç WIFIREAD_RECOVERY (OP=Read32 FN=1 ADDR=0x18004020): USED_BEFORE=0 REMAINING=4 PRIMARY_ERR=0x0060 T_MS=12888 · USED_BEFORE=1 REMAINING=3 PRIMARY_ERR=0x0020 T_MS=17961 · USED_BEFORE=2 REMAINING=2 PRIMARY_ERR=0x0020 T_MS=20121 — üçünde de ELIGIBLE=1 APPLIED=1 CLEARED=1 RESET_POLLS=2 ELAPSED_US=10 CONFIG_SAME=1 RECOVERY_OK=1 POST_READ_OK=1 POST_MATCH=1 POST_HOST_IDLE=1 ACCEPTED=1 · WIFITRIALEND STOP=NOT_REARMABLE TRIALS_RUN=5 TRIALS_PLANNED=11 UNMATCHED_TOTAL=0 REPLIED=0 · WIFISCAN_RESULT STATUS=ERROR ERROR=Session(CommandDeadline(Mac)) · konsol Disable=0 tx submit failed=0 No clock=1. Ön-kayıtlı karar tablosunun ilk satırı gerçekleşti: TRIALS_RUN>1 (R163'te 1 idi) ve latch başına bir kurtarma → bütçe duvardı — ve tükenmedi (BUDGET=4, kullanılan 3) — süpürme artık sıradaki duvarla sınırlı; o duvarı makbuz adlandırıyor: oturum yeniden armlanamadı (STOP=NOT_REARMABLE) ve cevap gelmedi (REPLIED=0, CommandDeadline(Mac)). SD taşıması aynı gün ölçülerek elendi: bootloader kartı iki denemede de açamadı (Failed to open device: 'sdcard', cmd 81a0010 status 0) — kayıt boot-incidents/2026-09-14-r166-sd-not-detected; koşu netboot ile alındı ve R165 de netboot olduğu için tek değişken korundu.
build/rpi5-wifi-scan-r166/aselsanos-rpi5-radio.img sha256 89cd08281922114297df808f7d26238300aa6d5578c98e9408f3f1c1f6d8bc1d · PROFILE.txt sha256 fcd0a03e9a7f4cbfdcedcdcd8cd403e5308558cfa99c54b8db35886c7272df0e · attempt-r166-read-budget-4-uart-capture (1. boot, MÜHÜRLÜ, VARİŞ VAR / yorumlanabilir)
Kapattığı: Ölçülen: reset bütçesini 1'den 4'e çıkarmak duvarı kaldırdı — aynı okuma adresinde (0x18004020) latch üç kez üst üste kurtarıldı (USED_BEFORE 0→1→2) ve üç kurtarma da kabul edildi (ACCEPTED=1 POST_MATCH=1 RECOVERY_OK=1); süpürme R163'ün 1 trialından 5 triale ilerledi. Duvarın yeni yeri okuma latch'i değil: oturum yeniden armlanamıyor ve komut cevabı gelmiyor. R167'nin tek değişkeni bu ölçülen duvarı adlandıracak.
Risk: Ölçülen: koşu varışlı ve değişken sınandı; Wi-Fi PASS iddiası yok (REPLIED=0, WIFISCAN_RESULT STATUS=ERROR). Bütçe hâlâ SINIRLI (4) ve her olay adıyla makbuza giriyor; reset host-only ve yapılandırmayı koruyor (CONFIG_SAME=1, 2 poll / 10 µs). Açık kalan ölçüm: boot yolu netboot olduğu için SD taşıması bu koşuda sınanmadı (ayrı olay kaydı var) ve tek boot alındı — imaj başına 3 boot hakkının 2'si kullanılmadı.
R167KoşulduC06 · C07 · C08
R127'nin tek sınırlı çıkışına kabul edilen sınıf genişletildi: CommandDeadline kabul edildi, duvar bütçe tükenmesine taşındı
Değişiklik / kapsam: Tek değişken (radyo): R127'nin State::Failed'dan TEK sınırlı çıkışının kabul ettiği hata sınıfı — ControlTimeout → ControlTimeout + CommandDeadline. Gerekçe ölçülmüştür: R166'nın mühürlü makbuzu bütçenin tükenmediğini (BUDGET=4, USED_BEFORE 0→1→2, üç kurtarma da ACCEPTED=1) ve süpürmenin 5 triale ilerlediğini gösterdi, ama koşu STOP=NOT_REARMABLE ile kapandı; oturum katmanının adım zaman aşımı (Error::CommandDeadline(Step)) transport poll'undan ÖNCE döndüğü için R127 uygunluğu hiç kurulmadı. Kredi kuralı, silahlı süpürme koşulu, profil sınırı, prereq_stop adları, reset bütçesi (4, R166'nın ölçülmüş tabanı), okuma kapısı, yazma yolu, çerçeve biçimi ve diğer tüm hata sınıflarının fatal davranışı aynen kalır. Kabul, feature kapılı bir sabitle (REARM_ADMITS_COMMAND_DEADLINE) beslenen runtime bir değerdir: böylece R127 varsayılanı aynı ağaçtan yeniden kurulabilir ve MockBus testleri hem kabul hem ret yolunu koşar.
Neden bu sırada: Ölçülen ilerleme sayaçlıdır: R163 TRIALS_RUN=1/11 (bütçe yok) → R166 TRIALS_RUN=5/11 (bütçe 4). Aynı okuma adresinde (0x18004020) üç kurtarma da kabul edildi. Süpürmeyi artık durduran şey reset politikası değil; bunu R166 profilinin ön-kayıtlı karar tablosu zaten öngörmüştü: 'TRIALS_RUN>1 → bütçe duvardı, süpürme artık sıradaki duvarla sınırlı'. Sıradaki duvarın adı makbuzda: oturum yeniden armlanamıyor ve cevap gelmiyor.
KOŞULDU, DEĞİŞKEN SINANDI ve VARDI: 1. boot mühürlü VARİŞ VAR (yorumlanabilir) — evidence/rpi5/radio/attempt-r167-rearm-deadline-uart-capture (boot yolu netboot, reset yolu manual). WIFIREARM_PLAN ARMED=1 ADMITTED=ControlTimeout+CommandDeadline PREVIOUS=R127_CONTROL_TIMEOUT_ONLY SUBJECT=SESSION_STEP_DEADLINE WRITES=0 SOURCE=attempt-r166-not-rearmable · altı WIFIREARM satırı: ERROR_CLASS=ControlTimeout ADMITTED=1 (×4) · ERROR_CLASS=CommandDeadline STEP=Mac ADMITTED=1 (R166'da tam bu satır STOP=NOT_REARMABLE idi) · ERROR_CLASS=Other ADMITTED=0 STOP=NOT_REARMABLE (fatal sınıf korunuyor) · dört WIFIREAD_RECOVERY (ADDR=0x18004020): USED_BEFORE=0/1/2/3 REMAINING=4/3/2/1 PRIMARY_ERR=0x0060/0x0020/0x0020/0x0020 T_MS=4104/7220/10554/16020; dördü de ELIGIBLE=1 APPLIED=1 CLEARED=1 RESET_POLLS=2 ELAPSED_US=10 CONFIG_SAME=1 RECOVERY_OK=1 POST_READ_OK=1 POST_MATCH=1 POST_HOST_IDLE=1 ACCEPTED=1 · beşinci olayda USED_BEFORE=4 REMAINING=0 ELIGIBLE=0 APPLIED=0 CLEARED=0 (bütçe tükendi) · WIFITRIALEND STOP=NOT_REARMABLE TRIALS_RUN=5 TRIALS_PLANNED=11 UNMATCHED_TOTAL=0 REPLIED=0 · WIFISCAN_RESULT STATUS=ERROR ERROR=Session(Transport(Io(BusError { op: Read32, address: 0x18004020, reason: Transfer, status: 0x207f01, present_state: 0x01ff0206, Cmd53Read { issued: true, command_complete: false, buffer_ready: false, bytes_read: 0, r5_flags: 16, error_status: 32 } }))) · CR4START PHASE=COMPLETE ABORTED=0 RSTVEC_OK=1 · konsol Disable=0 tx submit failed=0 No clock=1. Ölçülen sonuç: R166'nın öldüğü sınıf kabul edildi (adım zaman aşımı artık tek sınırlı çıkıştan geçebiliyor) ve aynı okuma adresinde dört reset üst üste harcandı; duvar bütçeye taşındı ve son hata artık bir adım zaman aşımı değil, taşıma hatasıdır. Koşu, netboot ön koşulunun link ile çakışması yüzünden radio-auto-run.sh yerine manuel orkestre edildi (arm → temizlik kanıtı → güç → onaylı mühür aracı); sapma boot-incidents/2026-09-14-netboot-precondition-link-conflict altında kayıtlıdır.build/rpi5-wifi-scan-r167/aselsanos-rpi5-radio.img sha256 d330628077abe249f5043703d3096fd578b99d83aa99e8602474d0eba34e6929 · PROFILE.txt sha256 305df4ba90a6104ab5557c9d4c4a7afb5185bc708ba9f9d75ed0b8db6ac823ff · attempt-r167-rearm-deadline-uart-capture (1. boot, MÜHÜRLÜ, VARİŞ VAR / yorumlanabilir)
Kapattığı: Ölçülen: kabul edilen sınıf genişletmesi hedefini tuttu — R166'nın STOP=NOT_REARMABLE ile kapandığı CommandDeadline olayı R167'de ADMITTED=1 ile geçti ve latch aynı adreste dört kez kurtarıldı (R166'da üç). Bütçe 4/4 tükendi; sıradaki duvar artık reset sayısı değil, latch'in her alışverişte yeniden armlanma nedenidir.
Risk: Ölçülen: koşu varışlı ve değişken sınandı; Wi-Fi PASS iddiası yok (REPLIED=0, STATUS=ERROR). Bütçe sınırlı kaldı (4) ve artık tükendiği makbuzda adıyla görünüyor (ELIGIBLE=0 APPLIED=0); fatal sınıflar (Other → ADMITTED=0) korundu. Açık kalan ölçüm: tek boot alındı — imaj başına 3 boot hakkının 2'si kullanılmadı.
R168KoşulduC06 · C07 · C08
Okuma latch'i bu boot'ta hiç oluşmadı: süpürme 11/11 tamamlandı, duvar reply yoluna taşındı (tanık icra edilmedi)
Değişiklik / kapsam: Tek değişken (radyo): her okuma-latch olayında KART-SAHİPLİĞİ ve KREDİ durumunu ölçen SALT-OKUNUR tanık — kart tarafında CCCR IO_ABORT (0x06), F2 IO_ENABLE (0x02) ve F2 IO_READY (0x03) CMD52 okumaları; host tarafında kurtarmanın zaten aldığı sınırlı host-idle örneklemi (CMD inhibit, DAT0, PRESENT_STATE) ve taşımanın SDPCM kredisi (tx_window/tx_sequence). Hiçbir şey değişmez: yeni yazma yok, yeni komut dizisi yok, reset/retry/CMD53 yinelemesi yok; tanık R116/R119 kararı HESAPLANDIKTAN SONRA koşar (R117'nin okuma matrisi gibi) ve dönen değeri ya da yüzeye çıkan hatayı değiştiremez. Yazma yolu, çerçeve baytları, 64 baytlık birim, geometri, kabul kuralı ve kimlik devamlılığı aynı kalır. Gerekçe: R167'nin karar tablosu sıradaki değişkeni 'latch NEDEN yeniden armlanıyor (kart kredisi / bekleyen veri sahipliği)' diye adlandırdı ama hangisi olduğunu ÖLÇMEDİ; deponun sırası önce tanık sonra mekanizmadır (R114/R115 → R116, R117 → R119, R146 → kullanım).
Neden bu sırada: Ölçülen ilerleme sayaçlıdır: R163 TRIALS_RUN=1/11 (bütçe yok) → R166 TRIALS_RUN=5/11 (üç kurtarma kabul) → R167 TRIALS_RUN=5/11 ama dört kurtarma kabul ve bütçe tükendi. R167'nin hedefi olan CommandDeadline sınıfı kabul edildi; son hata artık bir adım zaman aşımı değil, taşıma hatasıdır (Session(Transport(Io(BusError { op: Read32, address: 0x18004020, reason: Transfer, Cmd53Read { issued: true, command_complete: false, bytes_read: 0, r5_flags: 16, error_status: 32 } }))).
KOŞULDU ve VARDI, ama DEĞİŞKENİ İCRA EDİLMEDİ: 1. boot mühürlü VARİŞ VAR (yorumlanabilir) — evidence/rpi5/radio/attempt-r168-read-owner-uart-capture (netboot/manual; link, güç verildiğinde geldi ve betik `link hazır: en7=10.42.0.1` bastı). Kimlik: ASELSAN/CLOCK … EPOCH=1789383047 (R168 TFTP yayınının epoch'u) ve yalnız bu derlemede bulunan ASELSAN/WIFIREADOWNER_PLAN ARMED=1 SUBJECT=CARD_OWNERSHIP REGISTERS=CCCR_02+CCCR_03+CCCR_05+CCCR_07 HOST=PSTATE+DAT0 WRITES=0 · CR4START PHASE=COMPLETE ABORTED=0 RSTVEC_OK=1 · WIFIREARM ERROR_CLASS=CommandDeadline STEP=Mac ADMITTED=1 ve ControlTimeout ADMITTED=1 (×N), hepsi STOP=RUNNING · **WIFITRIALEND STOP=EXHAUSTED TRIALS_RUN=11 TRIALS_PLANNED=11 UNMATCHED_TOTAL=0 REPLIED=0** · WIFISCAN_RESULT STATUS=ERROR ERROR=Session(CommandDeadline(Mac)) · konsol Disable=0 tx submit failed=0 No clock=1. Kritik ölçüm: kayıtta WIFIREAD_FALLBACK / WIFIREAD_RECOVERY / WIFIREAD_OWNER / fatal WIFIREAD satırı YOK — yalnız WIFIREADGATE ve WIFIREADOWNER_PLAN var. Yani okuma latch'i bu boot'ta hiç oluşmadı, bütçe 0/4 kaldı ve süpürme tasarlandığı gibi on bir profilin tamamını tüketti. Tanık latch olayına bağlı olduğu için sahiplik/kredi hakkında tek veri noktası üretmedi; merdiven kuralı gereği değişken SINANMADI sayılır (R126'nın 'değişken icra edilmedi' sınıfı) ve üç boot'un tamamı kullanıldı: boot 2 (…-repeat-01) VARİŞ YOK / YORUMLANMADI — CR4CTRL PHASE=D11 ABORTED=1 REASON=TRANSPORT OPS=1 ADDR=0x18101408 WRITE=1, R165'in iki boot'uyla aynı imza — ve boot 3 (…-repeat-02) VARİŞ VAR: latch İLK KEZ oluştu ve tanık İLK KEZ veri üretti. Ölçülen tanık: ASELSAN/WIFIREAD_OWNER ATTEMPTED=1 ERROR_STATUS=0x0020 F2_ENABLE=0x06 F2_READY=0x06 INT_PENDING=0x00 BUS_IFACE=0x42 F2_IOE2=1 F2_IOR2=1 CMD_INHIBIT=0 DAT0_RELEASED=1 PSTATE_AFTER=0x01ff0000 HOST_IDLE_AFTER=1 RECOVERY_OK=1 USED_BEFORE=0 WRITES=0 — yani kart tarafı SAĞLIKLI: F2 hem etkin hem hazır, bekleyen kesme yok, komut inhibit temiz, DAT0 bırakılmış, host boşta. Karar tablosunun 2. dalı gerçekleşti: yeniden armlanmanın nedeni kart sahipliği DEĞİL. Ölçülmüş seri: R163 1/11 → R166 5/11 → R167 5/11 → R168 11/11 (boot 1 ve boot 3).
build/rpi5-wifi-scan-r168/aselsanos-rpi5-radio.img sha256 c4343fc6e9b65d74798e89564b789c7023b25e7582fa81de1243faaac0943aaa · PROFILE.txt sha256 dfb740133f032f5ce293d84fb6c1af1c21cd4ba77b86deaf9a5d058f875479ca · attempt-r168-read-owner-uart-capture (1. boot, MÜHÜRLÜ, VARİŞ VAR / yorumlanabilir; tanık icra edilmedi)
Kapattığı: Ölçülen: okuma latch'i deterministik bir duvar değil — R163 onu ilk trialda, R167 aynı adreste dört kez gördü, bu boot'ta hiç görülmedi. Latch oluşmadığı için bütçe hiç harcanmadı ve süpürme 11/11 ile kapandı; duvar reply yoluna taşındı (REPLIED=0, terminal Session(CommandDeadline(Mac))). R168'in tanığı, latch'i geri getirecek bir tekrarda veri üretecek.
Risk: Ölçülen: koşu varışlı ve imaj kimliği kanıttan doğrulandı; Wi-Fi PASS iddiası yok (REPLIED=0, STATUS=ERROR). Karıştırıcı uyarısı: R168 ile R167 arasındaki tek fark latch SONRASI çalışan opt-in tanıktır (latch öncesi yola girmez), ama tek bir boot'tan 'tanık latch'i engelledi' sonucu çıkarılamaz — kod yerleşimi/zamanlama etkisi dışlanamaz; bu yüzden yokluk boot'lar arası değişkenlik olarak yorumlandı ve tekrarla sınanmalıdır. Açık kalan ölçüm: 1 boot alındı, 2 hak duruyor.
R169KoşulduC06 · C07 · C08
Kredi tanığı: latch üç boot'ta da oluşmadı, süpürme 11/11 — değişken icra edilmedi (üç boot hakkı da kullanıldı)
Değişiklik / kapsam: Tek değişken (radyo): TAŞIMA KATMANI KREDİ TANIĞI — okuma latch'i/kurtarması anında SDPCM tx_window ve tx_sequence değerlerinin SALT-OKUNUR kaydı. Gerekçe ölçülmüştür: R168 boot 3'te latch ilk kez oluştu ve bus katmanı tanığı kartı SAĞLIKLI buldu (F2_IOE2=1 F2_IOR2=1 INT_PENDING=0x00 CMD_INHIBIT=0 DAT0_RELEASED=1 PSTATE_AFTER=0x01ff0000 HOST_IDLE_AFTER=1), yani yeniden armlanmanın nedeni kart sahipliği değil; kalan iki aday host veri motorunun bıraktığı durum ve kredi muhasebesidir. Kredi taşıma katmanında yaşadığı için bus katmanından görünmez; R169 onu aynı kurtarma anında salt-okunur kaydeder ve hiçbir şeyi değiştirmez (yeni yazma, reset, retry ya da CMD53 yinelemesi yok). Duvar hâlâ reply yolu: üç boot'un ikisi varışlıydı ve ikisinde de süpürme 11/11 tükendi, REPLIED=0 kaldı; üçüncü boot D11 transport abort'uyla varışsız kaldı. Basamak KOŞULDU: imaj kimliği kanıttan doğrulandı, tanık kuruldu, ama latch oluşmadığı için değişken icra edilmedi ve ölçüm tetikleyiciyi adlandırdı (R170).
Neden bu sırada: Ölçülen seri: R163 TRIALS_RUN=1/11 → R166 5/11 → R167 5/11 → R168 11/11 → R169 11/11 (iki varışlı boot). R168'de okuma latch'i hiç oluşmadı ve bütçe harcanmadı; süpürmeyi durduran şey artık profil sayısı (EXHAUSTED) ve cevapsızlıktır. R169'un iki varışlı boot'unda da aynı tablo ölçüldü (CR4 PHASE=COMPLETE, süpürme 11/11, REPLIED=0); üçüncü boot D11 transport abort'uyla varışsız kaldı ve yorumlanmadı. Yani okuma-hattı ve bütçe duvarları bu boot'larda yoktu; kalan duvar reply yoludur. Latch altı boot'ta bir kez görüldüğü için kredi sorusu ölçülemedi; bu yüzden sıradaki tek değişken örnekleme ANIDIR (R170).
KOŞULDU ve VARDI, ama DEĞİŞKENİ İCRA EDİLMEDİ: 1. boot mühürlü VARİŞ VAR (yorumlanabilir) — evidence/rpi5/radio/attempt-r169-credit-witness-uart-capture (netboot/manual; yakalama 1 baytta temiz arm edildi, hat sessizleşince gözcü kendiliğinden arm etti ve güç verilince betik link hazır: en7=10.42.0.1 bastı). Kimlik: ASELSAN/WIFIREADCREDIT_PLAN ARMED=1 SUBJECT=SDPCM_CREDIT FIELD=tx_window+tx_sequence SOURCE=TRANSPORT_CENSUS PREVIOUS=R168_WITNESS_CARD_HEALTHY WRITES=0 ve yayın epoch'u · CR4START PHASE=COMPLETE ABORTED=0 · WIFIREARM ERROR_CLASS=CommandDeadline (×2) ve ControlTimeout (×10), hepsi ADMITTED=1 · WIFITRIALEND STOP=EXHAUSTED TRIALS_RUN=11 TRIALS_PLANNED=11 UNMATCHED_TOTAL=0 REPLIED=0 · WIFISCAN_RESULT STATUS=ERROR ERROR=Session(CommandDeadline(Mac)). Kritik: kayıtta WIFIREAD_RECOVERY / WIFIREAD_OWNER / WIFIREAD_CREDIT satırı YOK — okuma latch'i bu boot'ta da oluşmadı, bütçe 0/4 kaldı, kredi tanığı veri üretmedi. Latch görülme sıklığı dört boot'ta bir: R167 4 kez, R168 boot 1 0, R168 boot 3 1, R169 boot 1 0. Yan not: ilk netboot denemesi TFTP'de erken sonlandı (Early terminate, kernel transferi yarıda kaldı → BOOT ERROR code 7); bootloader yeniden denedi ve ikinci denemede çekirdek yüklendi — kayıt her iki denemeyi de taşır. Boot 2 (…-repeat-01) de mühürlü ve yine latchsiz: CR4CTRL PHASE=COMPLETE ABORTED=0 REASON=NONE OPS=21 (bu boot'un CR4 zinciri eksiksiz), CR4START RSTVEC_OK=1, WIFITRIALEND TRIALS_RUN=11/11 REPLIED=0, terminal Session(CommandDeadline(Mac)) ve yine WIFIREAD_RECOVERY / WIFIREAD_OWNER / WIFIREAD_CREDIT satırı YOK. Boot 3 (…-repeat-02) VARİŞ YOK / YORUMLANMADI: CR4CTRL PHASE=D11 ABORTED=1 REASON=TRANSPORT OPS=4 ADDR=0x18101800 WRITE=0 — R165 ve R168 boot 2'nin D11 sınıfı, radyo zincirine hiç girilmedi ve latch yine oluşmadı. Üç boot hakkı da kullanıldı; kredi tanığı ÜÇÜNDE DE icra edilmedi ve ölçüm bu yüzden tetikleyiciyi adlandırdı: R170 örneklemeyi tur sınırına taşır (imaj hazır).
build/rpi5-wifi-scan-r169/aselsanos-rpi5-radio.img sha256 bc8292b446c06e72718a8ece3ed21682f433f40333e82084eb71eb98b6ece5d6 · PROFILE.txt sha256 a095ae5ec21b056f2d490432dbc002cce2ed4b941a74e876a3e4adce5bcf761a · attempt-r169-credit-witness-uart-capture (boot 1 ve boot 2 MÜHÜRLÜ, ikisi de VARİŞ VAR / yorumlanabilir; kredi tanığı iki boot'ta da icra edilmedi)
Kapattığı: Ölçülen: kredi tanığı kuruldu ve imaj kimliği kanıttan doğrulandı, ama latch oluşmadığı için kredi hakkında tek veri noktası yok; süpürme 11/11 tükendi ve duvar reply yolunda kaldı (REPLIED=0). Latch'in seyrekliği (beş boot'ta bir: R167 4 kez, R168 boot 1 0, R168 boot 3 1, R169 boot 1 0, R169 boot 2 0) tek boot'luk ölçümlerin neden çoğu kez tanığı icra edemediğini açıklıyor.
Risk: Ölçülen: koşu varışlı, imaj kimliği kanıttan doğrulandı; Wi-Fi PASS iddiası yok (REPLIED=0, STATUS=ERROR). Karıştırıcı not: TFTP'deki geçici erken-sonlanma aynı boot içinde bootloader'ın yeniden denemesiyle aşıldı ve çekirdek yüklendi; koşu geçerlidir. Açık kalan ölçüm: tanık üç boot'ta da icra edilmedi (latch altı boot'ta bir); R170 tetikleyiciyi değiştirir, ölçümü değil.
R170KoşulduC06 · C07 · C08
Kredi örneklemesinin ANI: tur sınırında 12 örnek — kredi VAR, cevap YOK; duvar cevabı üreten tarafta
Değişiklik / kapsam: Tek değişken (radyo): ÖRNEKLEME ANI. R169 imajı SDPCM tx_window + tx_sequence değerlerini yalnız okuma latch'i/kurtarması anında salt-okunur kaydediyordu; R170 aynı yayınlanmış atomikleri, aynı salt-okumayı ve aynı WRITES=0 sözleşmesini korur, yalnız kaydı latch anından HER TUR SINIRINA taşır (boot başına 11 örnek). Gerekçe ölçülmüştür: latch altı boot'ta bir kez görüldü (R167 4 · R168 boot 1 0 · R168 boot 3 1 · R169 1/2/3 hepsi 0), yani latch'e bağlı bir tanık bu hat üzerinde imaj başına üç boot'luk bütçeyle güvenilir biçimde icra edilemiyordu; kredi ise tanım gereği her turda okunabilir. Değişen tek şey zamanlama, ölçülen büyüklük değil: WINDOW/SEQUENCE/CREDIT ve PUBLISHED sayacı aynıdır. Latch tetikli WIFIREAD_CREDIT tanığı, sahiplik overlay'i (WIFIREAD_OWNER), bütçe (4), kabul edilen sınıf ve okuma latch'i aynen armed kalır.
Neden bu sırada: Ölçülen seri: R163 TRIALS_RUN=1/11 → R166 5/11 → R167 5/11 → R168 11/11 → R169 11/11 → R170 11/11. R170 örneklemeyi latch anından tur sınırına taşıdı ve ölçüm ilk kez kredi hakkında konuştu: on iki örnekte WINDOW=Some(21) sabit kaldı, SEQUENCE 4→10 ilerledi, CREDIT 17→11 düştü ve PUBLISHED 6→12 arttı — yani dongle pencere veriyor, host çerçeveleri gönderiyor ve kredi tükeniyor. Buna karşılık on bir turun on birinde REPLIED=0, FRAME_IND=0, HOST_INT=0, CORE_OR=0x00000000 ve FIFO_READS=0 okundu: dongle kabul edilen çerçeveye tek bir işaret vermiyor. Ön-kayıtlı karar tablosunun ikinci dalı gerçekleşti (CREDIT>0, REPLIED=0): duvar kredide değil, cevabı üreten tarafta. Üçüncü dal (pencere turlar boyunca değişiyor) gerçekleşmedi: pencere sabitti, değişen yalnız host'un kendi dizisiydi.
KOŞULDU ve DEĞİŞKEN İCRA EDİLDİ: 2. boot mühürlü VARİŞ VAR (yorumlanabilir) — evidence/rpi5/radio/attempt-r170-credit-sample-uart-capture-repeat-01 (boot yolu netboot, reset yolu manual; yakalama ilk bootloader satırından başlıyor ve güç kesilince betik sessizliği görüp yakalamayı tazeleyip arm etti). Kimlik: ASELSAN/WIFIREADCREDITSAMPLE_PLAN ARMED=1 SUBJECT=SDPCM_CREDIT FIELD=tx_window+tx_sequence AT=TRIAL_BOUNDARY SOURCE=TRANSPORT_CENSUS PREVIOUS=R169_LATCH_TRIGGER_UNEXERCISABLE WRITES=0 · FWSTAGE SECTORS_DONE=1190 WORDS_V=152320 OK=1 · NVRAM FOUND=1 TOKEN_OK=1 WORDS=437 VERIFIED=437 OK=1 FW_INTACT=1 (firmware 130. kez doğrulandı) · CR4CTRL PHASE=COMPLETE ABORTED=0 REASON=NONE OPS=21. ÖLÇÜLEN: on iki ASELSAN/WIFIREADCREDIT_SAMPLE satırı, hepsinde WINDOW=Some(21) ve WRITES=0; SEQUENCE 4,5,5,6,6,7,7,8,8,9,9,10; CREDIT 17,16,16,15,15,14,14,13,13,12,12,11; PUBLISHED 6,7,7,8,8,9,9,10,10,11,11,12. Her turda ASELSAN/WIFITRIAL_RESULT … SENT=1 REPLIED=0 CTRL_SEEN=0 FRAME_IND=0 HOST_INT=0 CORE_OR=0x00000000 ve ASELSAN/WIFIIRQWAIT … FRAME_IND_SEEN=0 HOST_INT_SEEN=0 FIFO_READS=0 ZERO_MARKERS=0. Tur matrisi on bir satır (watermark 8/96, yazma sayısı 0/2, DAT kontrol maskesi set/clear, mailbox Set(208)/PowerOn, card control Observe/Set(6), IEN None/Some(3), son satır LINUX_EXACT) ve hiçbiri işaret üretmedi. Sonuç: WIFITRIALEND STOP=EXHAUSTED TRIALS_RUN=11 TRIALS_PLANNED=11 UNMATCHED_TOTAL=0 REPLIED=0 ve tek terminal sınıfı WIFISCAN_RESULT STATUS=ERROR ERROR=Session(CommandDeadline(Mac)). Dongle'ın kendi konsolu t=3.252 sn'de sdpcmd_dpc: Enable satırında duruyor; mailbox DEVREADY_SEEN=1 FWREADY_SEEN=0 VERSION=4 ACKS=126.
build/rpi5-wifi-scan-r170/aselsanos-rpi5-radio.img sha256 f1e1826a46470de9757ee8a290596670cf72c0d5805a6caecd628dcada9b923c · PROFILE.txt sha256 757cd766ca21c6fa0c5da09b6c32aa017d11bf8004cadb5dacf965df4452c263 · attempt-r170-credit-sample-uart-capture-repeat-01 (boot 2 MÜHÜRLÜ, VARİŞ VAR / yorumlanabilir; boot 1 gözetlenmeden geçti, ölçüm üretmedi)
Kapattığı: Kredi sorusu KAPANDI: süpürme kredi açlığı çekmiyor. Duvar iki adaydan birine indi ve R171 hangisi olduğunu ölçer: firmware çerçeveyi görüp tepki veriyorsa duvar onun işleyişinde, hiç görmüyorsa duvar yazmanın kendisinde. C06/C07/C08 bu ölçümle kapanmadı; ikisi de artık tek bir soruya bağlı.
Risk: Ölçülen taban: süpürme iki varışlı boot'ta 11/11 tükendi ve on iki kredi örneği WRITES=0 ile alındı; imaj riski düşük çıktı. Varışsız boot sınıfı (D11) yorumlanmaz; bu imajın üç boot hakkından biri gözetlenmeden geçti, ölçüm ikincisinde geldi.
R171KoşulduC06 · C07 · C08
FWREADY bariyeri yanlış fazda kuruldu: pulse +25 ms'de gelmişti
Değişiklik / kapsam: Tek değişken: ilk kontrol çerçevesinden önce dongle'ın tohostmailboxdata (0x1800404c) üzerindeki FWREADY bitini sınırlı süre beklemek. Yeni CMD52/CMD53 yazması, çerçeve, retry, reset veya TCM/shared-area okuması yok; FWREADY gelmezse kontrol çerçevesi gönderilmeden ProtocolTimeout ile kapanır.
Neden bu sırada: R170 kredinin pozitif olduğunu ve cevapsızlığın kredi açlığı olmadığını gösterdi. R171'in read-only kapısı iki mühürlü boot'ta EXHAUSTED=1 ile kapandı ve posta kutusu 0x00040002 (yalnız DEVREADY) okundu. Ancak aynı boot'un erken penceresi FWREADY'yi +25 ms'de görmüş ve host onu onaylamıştı: kapı, pulse geri döndükten SONRA, protokol fazında kurulduğu için kendi kaçırdığı bir olayın yokluğunu ölçtü. R171 bir 'dongle hazır olmuyor' kanıtı değil, bir faz hatası kanıtıdır.
KOŞULDU ve DEĞİŞKEN İCRA EDİLDİ: aynı R171 imajının boot 1 ve boot 2 koşuları mühürlü — evidence/rpi5/radio/attempt-r171-fwready-gate-final-2-uart-capture ve ...-repeat-01. Kimlik: image_sha256=69c753195066a586a58e800ce76e41351207a8b0f27d5c8a014224aaf1f61116 · ASELSAN/WIFIFWREADY_GATE_PLAN ARMED=1 SUBJECT=CONTROL_FRAME_PREPAREDNESS REGISTER=0x1800404c MAX_WAIT_MS=600 WRITES=0 · her iki boot'ta ASELSAN/WIFIFWREADY_GATE ATTEMPTED=1 FWREADY_SEEN=0 POLLS=27 LAST=0x00040002 EXHAUSTED=1 WRITES=0 · WIFITRIALEND TRIALS_RUN=0/11 REPLIED=0 · WIFISCAN_RESULT STATUS=ERROR ERROR=Session(Transport/ProtocolTimeout). AYNI boot'un erken penceresi: WIFIEARLYMBOX SAMPLES=7 CHANGES=1 FIRST=0x00000000 LAST=0x00040008 INT_OR=0x208000c2 DEVREADY_MS=4294967295 FWREADY_MS=25 WRITES=2 ve WIFIMBOXANSWER ATTEMPTED=1 ACKS=7 INT_WRITES=2 INT_MASKED=0x200000c0 SETTLED=1 FWREADY_ACKED_MS=25. CR4START boot 1/2'de RSTVEC_OK=1 ve PHASE=COMPLETE; firmware staging ve NVRAM doğrulamaları geçti.
Kapattığı: R171'in karar tablosunun üçüncü dalı ('FWREADY 600 ms içinde hiç gelmedi') yazıldığı gibi gerçekleşmedi: FWREADY geliyordu ve kapı onu göremedi. Soru 'dongle neden hazır olmuyor' değil, 'hazır sinyali neden kalıcı olmuyor' olarak yeniden yazıldı; bu, R141'in karar tablosundaki 'dongle tek kesme onayından fazlasını istiyor (F2 önce etkinleşmeli)' satırıdır. C06/C07/C08 frame hipotezleri açık kalır. Bu kayıt Wi-Fi PASS değildir.
Risk: Düşük — kapı yalnız okuma ve sınırlı beklemedir; iki koşuda WRITES=0, TRIALS_RUN=0 ve frame gönderilmedi. UART reconnect yarışındaki Resource busy denemesi yakalama altyapısı düzeltmesiyle kanıtlandı; ham pre-reset kayıtlar ve retry logları ayrı tutuldu.
R172KoşulduC06 · C07 · C08
F2 erken etkinleştirildi: FWREADY artık kalıcı
Değişiklik / kapsam: Tek değişken: F2 (CCCR IO_ENABLE, F0 0x02) etkinleştirmesinin YERİ. F2, erken posta penceresinin İÇİNDE — host-ready yazmasından hemen sonra, Linux'un ölçülen `sdio_enable_func` konumunda — açılır; bugüne kadar firmware/NVRAM staging'inden sonra, saniyeler sonra açılıyordu. Frame baytı, SDPCM seq, kredi kuralı, reset, retry, watermark, WAKEUPCTRL, CCCR INT_ENABLE çifti ve hostintmask politikası değişmedi. R171'in protokol fazındaki bariyeri bu imaja taşınmadı: kendi makbuzu onun yalnız geri dönmüş posta kutusunu görebildiğini kanıtlamıştı.
Neden bu sırada: R171 aynı boot'ta FWREADY_MS=25 ile FWREADY_SEEN=0'ı birlikte yazdı: dongle hazır sinyalini veriyor, host onaylıyor (SETTLED=1), ama sinyal kalıcı olmuyor ve posta kutusu 0x00040002'ye dönüyordu. Linux aynı kartta F2'yi pulse'tan hemen sonra açıyor (R139 izi: CR4 bırakılışı +74 ms) ve preinit'i tamamlıyor (R75). R172 bu tek farkı ölçtü.
KOŞULDU ve DEĞİŞKEN İCRA EDİLDİ — aynı imajın iki boot'u mühürlü. Kimlik: image_sha256=4f81a934c560480f10d7a891941f168815615c4a9eb7aea887b1dbf96587665c · her iki boot'ta ASELSAN/WIFIEARLYF2 ATTEMPTED=1 WRITE_OK=1 BEFORE=0x02 AFTER=0x02 READY=1 MS=36 SOURCE=sdio_enable_func · ASELSAN/WIFIFWREADY_PERSIST LATCHED=1 EARLY_FWREADY_MS=25 F2_MS=36 PROTOCOL_MAILBOX=0x00040008 PROTOCOL_FWREADY_SEEN=1 REVERTED=0 WRITES=0. Boot 1 (attempt-r172-f2-at-start-uart-capture) taşımada düştü: WIFIPREINITSEQ SENT=0/3 WRITE_FAULTS=1, terminal Session(Transport(Io(BusError { op: WriteFifo, transfer_complete=false, bytes_read=64, r5_flags=0x10, error_status=0x0020, timeout_transfer=true }))), TRIALS_RUN=0/11. Boot 2 (…-repeat-01) R170 tabanını birebir tekrarladı ve ÖLÇÜMÜ TAMAMLADI: WIFIPREINITSEQ SENT=3/3 CRC_ACCEPTED=3 WRITE_FAULTS=0 · WIFIF2CRCSCOPE ACCEPTED_PREINIT=3 ACCEPTED_CONTROL=1 WRITE_FAULTS=0 · WIFITRIALEND STOP=EXHAUSTED TRIALS_RUN=11/11 REPLIED=0 · WIFISCAN_RESULT STATUS=ERROR ERROR=Session(CommandDeadline(Mac)). Karşılaştırma: R170 boot 2 de 11/11 trial ve REPLIED=0 ölçmüştü; R172'nin farkı, aynı boot'ta posta kutusunun FWREADY'de yakalanmasıdır.build/rpi5-wifi-scan-r172/aselsanos-rpi5-radio.img sha256 4f81a934c560480f10d7a891941f168815615c4a9eb7aea887b1dbf96587665c · PROFILE.txt sha256 3006c72ae029d70905bbcadabfa0c77c17303007882ecec9dfeba33c19c8635a · attempt-r172-f2-at-start-uart-capture (boot 1: transport düşüşü, TRIALS_RUN=0) ve attempt-r172-f2-at-start-uart-capture-repeat-01 (boot 2: MÜHÜRLÜ, VARİŞ VAR / yorumlanabilir, TRIALS_RUN=11/11 REPLIED=0)
Kapattığı: R141'in karar tablosundaki 'dongle tek kesme onayından fazlasını istiyor (F2 önce etkinleşmeli)' satırı doğrulandı: F2 +36 ms'de açılınca FWREADY pulse'ı geri dönmedi (REVERTED=0) ve erken pencere R170/R171'de olduğu gibi DEVREADY'ye düşmedi. Buna karşılık aynı boot'un protokol fazı posta nöbeti 124 örnekte 0x00040002 (yalnız DEVREADY) ve VERSION_WRITES=0 okudu: F2 zamanlaması el şıkışmayı KURUYOR ama hazır bayrağını protokol fazı boyunca KORUMUYOR. Sıralama hipotezi kapandı; açık kalan duvar kontrol cevabıdır (C06/C07/C08). Bu kayıt Wi-Fi PASS değildir.
Risk: Düşük — tek yazma F2 enable biti; TCM/shared okuma eklenmedi, reset/retry/frame değişmedi. İmaj üç boot hakkının ikisini kullandı; boot 1'in varışsız transport düşüşü sınıflandırıldı ve yorumlanmadı.
R173KoşulduC06 · C07 · C08
Sürüm 113 kez yeniden yazıldı: hazır bayrağı geri gelmiyor
Değişiklik / kapsam: Tek değişken: posta nöbetinin (protokol fazı) hazır bayrağını KORUMASI. R172'de erken pencere FWREADY'yi yakaladı ve F2 +36 ms'de açıldı (REVERTED=0), ama aynı boot'un protokol fazı WIFIMBOXWATCH SAMPLES=124 CHANGES=0 DEVREADY_SEEN=1 FWREADY_SEEN=0 VERSION_WRITES=0 LAST=0x00040002 okudu: her posta okuması SMB_INT_ACK ile cevaplanıyor, sürüm yeniden yazılmıyor ve posta kutusu DEVREADY'ye düşüyor. R173, R140'ın ertelediği sürüm yazmasını yeniden silahlandırır: hazır biti (DEVREADY veya FWREADY) hâlâ görünürken aynı yazma (aynı kayıt 0x18004048, aynı değer 0x00040000, aynı 4 baytlık CMD53) yapılır; bit çoktan dönmüşse yazma YAPILMAZ ve makbuz bunu söyler. Frame baytı, SDPCM seq, kredi, reset ve retry değişmez.
Neden bu sırada: R172 sıralama hipotezini kapattı: F2 doğru anda açıldı, FWREADY pulse'ı geri dönmedi, süpürme R170 tabanını birebir tekrarladı (WIFIPREINITSEQ SENT=3/3 WRITE_FAULTS=0, WIFIF2CRCSCOPE ACCEPTED_CONTROL=1, TRIALS_RUN=11/11) ve cevap yine gelmedi (REPLIED=0, CommandDeadline(Mac)). Geriye kalan ölçülü fark, hazır bayrağının protokol fazında görünmemesidir; Linux aynı yerde posta okumasını cevaplarken sürüm yazmasını da yineler (brcmf_sdio_hostmail + brcmf_sdio_firmware_callback sırası).
KOŞULDU ve DEĞİŞKEN İCRA EDİLDİ — boot 1 mühürlü: evidence/rpi5/radio/attempt-r173-fwready-preserve-uart-capture. Kimlik: image_sha256=70284d1ff6855a3bc32ae8419fd12abf6e6795a780a1b19169cb377b0987ed8c · ASELSAN/WIFIFWREADYPRESERVE ATTEMPTED=1 WRITES=113 FWREADY_BEFORE=0 DEVREADY_BEFORE=1 LAST_SEEN=0x00040002 REVERTED_AT_SAMPLE=0 SAMPLES=113 VERSION_WRITES=113 REGISTER=0x18004048 VALUE=0x00040000 · ASELSAN/WIFIMBOXWATCH SAMPLES=113 CHANGES=0 DEVREADY_SEEN=1 FWREADY_SEEN=0 VERSION=4 ACKS=113 VERSION_WRITES=113 LAST=0x00040002 · WIFIPREINITSEQ SENT=3/3 CRC_ACCEPTED=3 WRITE_FAULTS=0 · WIFIF2CRCSCOPE ACCEPTED_PREINIT=3 ACCEPTED_CONTROL=7 WRITE_FAULTS=0 · WIFITRIALEND STOP=EXHAUSTED TRIALS_RUN=11/11 REPLIED=0 · WIFISCAN_RESULT STATUS=ERROR ERROR=Session(CommandDeadline(Mac)). Aynı koşunun konsol halkası (WIFISHAREDCONSOLE_FULL SIZE=1024 IDX=375 PRINTABLE=992 WRITES=0 T_MS=27762) firmware'in KENDİ ağzından son sözü veriyor: `000003.300 sdpcmd_dpc: Enable` ve sonrasında 27,7 saniye boyunca TEK BİR yeni satır yok — R148'de çerçevemiz reddedildiğinde yazılan `sdpcmd_tx: device disabled` / `sdpcmd_sendheader: tx submit failed!!` satırları bu koşuda HİÇ görünmüyor.
build/rpi5-wifi-scan-r173/aselsanos-rpi5-radio.img sha256 70284d1ff6855a3bc32ae8419fd12abf6e6795a780a1b19169cb377b0987ed8c · PROFILE.txt sha256 9fd39e7b0762cc308fbb6ec5d9d0a92975d5c43d553c62c79896652d12ff6f97 · attempt-r173-fwready-preserve-uart-capture (boot 1 MÜHÜRLÜ, VARİS VAR / yorumlanabilir, TRIALS_RUN=11/11 REPLIED=0)
Kapattığı: Hipotez ELENDİ: sürüm yazması nöbet boyunca 113 kez yinelendi (Linux'un konumu ve değeriyle) ve posta kutusu tek örnekte bile FWREADY'ye dönmedi (FWREADY_BEFORE=0, LAST=0x00040002); süpürme R170 tabanını yineledi (TRIALS_RUN=11/11 REPLIED=0, CommandDeadline(Mac)). Hazırlık sinyali ve el sıkışma hattı artık kapalı bir konudur; açık kalan tek duvar frame yoludur (C06/C07/C08). Konsol halkası, firmware'in çerçevelerimiz için HİÇBİR hata yazmadığını gösterdi — R148'de yazmıştı; bu, çerçevenin ya işlendiğini ama cevapsız kaldığını ya da firmware'in veri yoluna hiç ulaşmadığını söyler ve sıradaki değişken bu iki şıkkı ayırmalıdır. Bu kayıt Wi-Fi PASS değildir.
Risk: Düşük — tek yazma zaten ölçülmüş sürüm yazmasıdır; TCM/shared okuma eklenmedi, frame/seq/kredi/reset/retry değişmedi. Konsol okuması koşunun EN SONUNDA tek kez yapıldı (bilinen TCM-karartması riski önceki ölçümleri susturamaz). Boot 1 ölçümü tamamladı; iki boot hakkı kaldı.
R174KoşulduC06 · C07 · C08
Dongle protokol fazında hiç yazmadı: çerçeve canlı veri yoluna ulaşmadı
Değişiklik / kapsam: Tek değişken: süpürme bittikten SONRA dongle'ın kendi paylaşılan alanını BİR KEZ okumak — yapı işaretçisi, ilk sözcük (sürüm/bayraklar) ve konsol adresi sözcüğü. Aynı koşuda her tarama imajının zaten taşıdığı run-sonu konsol dökümü AYNI yapıyı okur (BUF_PTR ve BUF_IDX yayınlar), böylece iki okuma karşılaştırılabilir: firmware kontrol çerçevelerimiz beklerken kendi konsoluna yazmaya devam ettiyse yazma indeksi iki okuma arasında ilerler. Salt-okunur; kayıt yazılmaz, frame yolu ve F2/erken pencere ayarları R173'teki gibi donar.
Neden bu sırada: R173 hazırlık hattını kapattı ve iki olguyu yan yana koydu: host on bir kontrol çerçevesi yazdı ve F2CRC yedisini kabul etti (ACCEPTED_CONTROL=7, WRITE_FAULTS=0), buna karşılık dongle koşu boyunca YALNIZCA iki çerçeve gönderdi (SEQ=0 ve SEQ=1, ikisi de CHANNEL=1 EMPTY=1 TXWIN=21) ve her trial CTRL_SEEN=0 CTRL_UNMATCHED=0 FRAME_IND=0 HOST_INT=0 okudu; konsol halkası 3,300 sn'deki sdpcmd_dpc: Enable satırından sonra 27,7 saniye boyunca tek satır yazmadı. Bu, ya çerçevenin firmware'in veri yoluna hiç ulaşmadığını ya da ulaşıp cevaplanmadığını söyler; iki şık farklı kapı gerektirir.
KOŞULDU ve DEĞİŞKEN İCRA EDİLDİ — boot 3 mühürlü: evidence/rpi5/radio/attempt-r174-fw-probe-at-end-uart-capture-repeat-02 (VARİS VAR / yorumlanabilir). Kimlik: image_sha256=655e338c6bdbe2c50d1793c4680e5b122f2eeca22304c00212af54a6baa7a08c · ASELSAN/WIFIFWPROBE_AT_END ATTEMPTED=1 WHERE=AFTER_SWEEP PTR=0x00201cc0 PTR_OK=1 FLAGS=0x00000001 CONSOLE_ADDR=0x0025debc STRUCT_READ_OK=1 SENT_BEFORE_OK=1 SENT_AFTER_OK=1 WRITES=0 · ASELSAN/WIFISHAREDCONSOLE SENT_B_OK=0 SENT_A_OK=1 CONSOLE_ADDR=0x0025debc HEADER_OK=1 BUF_PTR=0x0025dab4 BUF_OK=1 PRINTABLE=124 WRITES=0 · ASELSAN/WIFISHAREDCONSOLE_FULL SIZE=1024 IDX=375 READ=1024 PRINTABLE=992 SENT_RETRIES=0 WRITES=0 T_MS=31960 · ASELSAN/WIFIPREINITSEQ SENT=3 EXPECTED=3 CRC_ACCEPTED=3 WRITE_FAULTS=0 · ASELSAN/WIFIF2CRCSCOPE ACCEPTED_PREINIT=3 ACCEPTED_CONTROL=1 WRITE_FAULTS=0 · ASELSAN/WIFITRIALEND STOP=NOT_REARMABLE TRIALS_RUN=5 TRIALS_PLANNED=11 REPLIED=0 · ASELSAN/WIFISCAN_RESULT STATUS=ERROR ERROR=Session(Transport(Io(BusError { op: Read32, function: 1, address: 402669600, reason: Transfer, status: 2129921, response: 4096, present_state: 33489414, ... }))). Karşılaştırma (R173 run-sonu): BUF_PTR=0x0025dab4 ve IDX=375 AYNI; bayrak sözcüğü 0x00000001 (ASSERT 0x0200 / TRAP 0x0400 bitleri YOK). Boot 1 ve repeat-01 varışsız sınıfta kaldı ve yorumlanmadı.build/rpi5-wifi-scan-r174/aselsanos-rpi5-radio.img sha256 655e338c6bdbe2c50d1793c4680e5b122f2eeca22304c00212af54a6baa7a08c · PROFILE.txt sha256 4adc4712f9bba278cab92a4b63b6831f65646cc9ad9948175510912efc88eddf · attempt-r174-fw-probe-at-end-uart-capture-repeat-02 (boot 3 MÜHÜRLÜ, VARİS VAR / yorumlanabilir, TRIALS_RUN=5/11 REPLIED=0)
Kapattığı: R173'ün 'çerçeve ulaşıyor mu, işlenmiyor mu' sorusu salt-okunur tek ölçümle ayrıldı: konsol yazma indeksi R173'ün run-sonu değeriyle AYNI kaldı (IDX=375), bayrak sözcüğü trap/assert taşımadı ve WIFIFWPROBE_AT_END WRITES=0 okudu — dongle protokol fazında HİÇ yazmadı, yani çerçeve canlı bir veri yoluna ulaşmadı. Karar tablosunun ikinci dalı gerçekleşti ve sıradaki kapı host tarafına döndü: ilk kontrol çerçevesinin tam baytları Linux'un aynı kartta ölçülmüş ilk kontrol çerçevesiyle karşılaştırılır (R121 geometriyi eşitlemiş, içeriği ölçmemişti). Bu kayıt Wi-Fi PASS değildir.
Risk: Düşük — sıfır yazma; paylaşılan alan okuması süpürmeden SONRA tek kez yapıldı ve nöbetçi (ChipCommon chipid) probu iki yandan kuşattı (SENT_BEFORE_OK=1, SENT_AFTER_OK=1). İmaj üç boot hakkını kullandı; boot 3 ölçümü tamamladı ve mühürlendi.
R175KoşulduC06 · C07 · C08
Preinit sırası Linux ölçümüyle birebir; cevap yine yok
Değişiklik / kapsam: Tek değişken: preinit sırasının İÇERİĞİ, Linux'un aynı kartta ölçülen sırasıyla birebir. Ölçüm mühürlü izden mekanik çıkarılır (scripts/extract-linux-preinit-frames.py; çıpa = izdeki en büyük yazma-arası boşluk). Dört çerçeve: (1) SET bus:txglomalign=8, GLOMSUZ, seq=255, cmd=263 id=1, len=20; (2) GET ulp_sdioctrl, GLOMSUZ, seq=0, cmd=262 id=2, len=29 (13 bayt ad + 16 bayt yanıt alanı); (3) SET bus:rxglom=1, GLOMSUZ, seq=1, cmd=263 id=3, len=15; (4) SET cur_etheraddr=MAC, GLOM, seq=2, cmd=263 id=4, len=20. Taşıma birimi ölçülen ALIGN8(frame_len) olur (48/64/48/56) ve SDPCM sayacı ölçülen ardıldan (3) devam eder. Ayrıca R173'ün elenen hazır-bayrağı onayı en çok 3 kez yinelenip bırakılır (FWREADY_PRESERVE_MAX_WRITES=3).
Neden bu sırada: R174, çerçevenin protokol fazında canlı bir veri yoluna ulaşmadığını ölçtü (konsol IDX=375 R173 ile aynı, FLAGS=0x00000001 trap/assert taşımıyor, WRITES=0) ve kapıyı host tarafına döndürdü. Mühürlü Linux izi üç fark verdi: Linux'un İLK kontrol çerçevesi transport başlangıcındaki bus:txglomalign'dır ve R157'nin üç çerçeveli sırası onu tamamen atlıyordu; ölçülen ulp_sdioctrl declared uzunluğu 29'dur (R157 15 kullanıyordu); ve Linux çerçeveyi sabit 64 değil ALIGN8(frame_len) baytla yazar. R175 bu üçünü tek değişkende birleştirdi.
KOŞULDU ve DEĞİŞKEN İCRA EDİLDİ — boot 2 mühürlü: evidence/rpi5/radio/attempt-r175-preinit-measured-uart-capture-repeat-01 (VARİS VAR / yorumlanabilir; aynı imajın boot 1'i CR4 abort'uydu ve yorumlanmadı). Kimlik: image_sha256=d58d532fde53ba7f71e5fc8a9a0e5fbd51b38050a25b9246c6be0bab5fd13277 · CR4START RSTVEC_OK=1 ALIAS_OK=1 RSTVEC_C53=1 PHASE=COMPLETE ABORTED=0 · ASELSAN/WIFIPREINITSEQ SENT=4 EXPECTED=4 CRC_ACCEPTED=3 WRITE_FAULTS=0 SOURCE=linux-r136-preinit-measured · dört ASELSAN/WIFIPREINITBYTES satırı Linux ölçümüyle BAYT BAYT aynı: FRAME=0 SEQ=255 FRAMELEN=48 XFER=48 CMD=263 ID=1 SET=1 · FRAME=1 SEQ=0 FRAMELEN=57 XFER=64 CMD=262 ID=2 SET=0 · FRAME=2 SEQ=1 FRAMELEN=43 XFER=48 CMD=263 ID=3 SET=1 · FRAME=3 SEQ=2 FRAMELEN=56 XFER=56 CMD=263 ID=4 SET=1; HEK'lerin tamamı extract-linux-preinit-frames.py çıktısıyla eşit · ASELSAN/WIFIFWREADYCAP_PLAN ARMED=1 MAX_WRITES=3 CONCLUSION=HYPOTHESIS_ELIMINATED · ASELSAN/WIFIFWREADYPRESERVE ATTEMPTED=1 WRITES=3 CAPPED=1 MAX_WRITES=3 FWREADY_BEFORE=0 DEVREADY_BEFORE=1 LAST_SEEN=0x00040002 SAMPLES=97 VERSION_WRITES=3 (R173'te 113 yazmaydı) · ASELSAN/WIFIMBOXWATCH SAMPLES=97 CHANGES=0 DEVREADY_SEEN=1 FWREADY_SEEN=0 VERSION_WRITES=3 LAST=0x00040002 · ASELSAN/WIFIF2CRC ACCEPTED=1 REQUESTED=48 BYTES=48 ERR_STATUS=0x0020 (ALIGN8 birimi telde) · ASELSAN/WIFITRIALEND STOP=NOT_REARMABLE TRIALS_RUN=9 TRIALS_PLANNED=11 UNMATCHED_TOTAL=0 REPLIED=0 · konsol Disable=0 tx_submit_failed=0.
build/rpi5-wifi-scan-r175/aselsanos-rpi5-radio.img sha256 d58d532fde53ba7f71e5fc8a9a0e5fbd51b38050a25b9246c6be0bab5fd13277 · PROFILE.txt sha256 0473b8d2b5c1f5a33d7906111cd59280858a7aa030390a4f13e50be3b0de2405 · attempt-r175-preinit-measured-uart-capture-repeat-01 (boot 2 MÜHÜRLÜ, VARİS VAR / yorumlanabilir, TRIALS_RUN=9/11 REPLIED=0)
Kapattığı: R174'ün ikinci dalı (çerçeve canlı veri yoluna ulaşmadı) host tarafında ölçüldü: dört preinit çerçevesi alan alan ve bayt bayt Linux'un aynı kartta ölçtüğü sırayla aynı çıktı ve R173'ün 113 yinelemesi 3'e indi (CAPPED=1) — buna rağmen dongle tek bir cevap vermedi (REPLIED=0, süpürme 9/11 trialda kapandı). Yani çerçeve İÇERİĞİ ve SIRASI host tarafında elendi; eşleştirmediğimiz ilk çerçeve artık ölçülen sıranın BEŞİNCİSİDİR (glom, seq=3, cmd=98, id=5, len=68, veri ad taşımıyor); bizim sweep orada GET cur_etheraddr (cmd=262, id=5) gönderiyor. Bu kayıt Wi-Fi PASS değildir.
Risk: Düşük — yeni kayıt yazması, reset veya retry yok; preinit çerçeveleri pending kurmaz ve cevap beklemez; elenen R173 onayı 3 yazmada bırakılır. İmaj üç boot hakkının ikisini kullandı (boot 1 varışsız, boot 2 ölçümü tamamladı).
R176KoşulduC06 · C07 · C08
Ölçülen beşinci çerçeve: glom, seq=3, cmd=98, id=5 — cevap yok
Değişiklik / kapsam: Tek değişken: sweep'in İLK kontrol çerçevesinin içeriği. R175 dört preinit çerçevesini Linux ölçümüyle bayt bayt eşitledi; ölçülen sıranın beşinci çerçevesi glom düzeninde, seq=3, cmd=98 (262/263 değil), id=5, declared len=68 ve verisi bir iovar adı taşımıyor. Bizim sweep aynı sırada GET cur_etheraddr (cmd=262, id=5) gönderiyordu. R176 yalnız bu ilk kontrol çerçevesini ölçülen beşinci çerçeveyle değiştirdi; preinit sırası, taşıma birimi (ALIGN8), seq devamlılığı (3), kabul kuralı ve R173 sınırı (3 yazma) dondu.
Neden bu sırada: R175 host tarafındaki en güçlü iki adayı eledi: çerçeveler Linux ölçümüyle birebir ve sıra doğru (WIFIPREINITBYTES ×4 eşit), buna karşılık REPLIED=0 ve süpürme 9/11 trialda kapandı. Geriye kalan ölçülü fark ilk ÇAĞRI çerçevesinin kimliğiydi: Linux aynı noktada cmd=98 taşıyan 104 baytlık glom çerçevesini gönderiyor (dcmd id=5), biz ise cmd=262 GET gönderiyorduk.
KOŞULDU — iki mühürlü boot. Boot 1 (attempt-r176-measured-fifth-frame-uart-capture, uart10.raw 67.995 bayt, success=true) mekanizmasına varamadan kapandı: WIFITRIALEND STOP=NOT_REARMABLE TRIALS_RUN=0 TRIALS_PLANNED=11 REPLIED=0. Boot 2 (attempt-r176-measured-fifth-frame-uart-capture-repeat-01, uart10.raw 155.238 bayt, success=true) değişkeni tam icra etti: ASELSAN/WIFIREVINFO_PLAN ARMED=1 CMD=98 ID=5 SEQ=3 FRAMELEN=104 XFER=104 BCDCLEN=68 LAYOUT=GLOM ve on iki kez ASELSAN/WIFIREVINFO ANSWERED=0 (EXPECT_LINUX_VENDORID=0x14e4 EXPECT_LINUX_DEVICEID=0x43ab EXPECT_LINUX_CHIPNUM=0x4345); ANSWERED=1 hiç görülmedi. Terminal makbuzlar: WIFIPREINITSEQ SENT=4 EXPECTED=4 CRC_ACCEPTED=3 WRITE_FAULTS=0 · WIFITRIALEND STOP=EXHAUSTED TRIALS_RUN=11 TRIALS_PLANNED=11 UNMATCHED_TOTAL=0 REPLIED=0 · WIFISCAN_RESULT STATUS=ERROR ERROR=Session(CommandDeadline(RevInfo)) · CR4START PHASE=COMPLETE HT_CSR_FIN=0xd2 HT_REQ_AVAIL=1.
Kapattığı: R175'in karar tablosunun ikinci dalı gerçekleşti. Koşu öncesi bilinen en güçlü olgu şuydu: AYNI mühürlü izde, AYNI kartta, AYNI fazda dongle tam bu çerçeveye CEVAP VERİYOR (satır 162/164, 96 bayt = 12+16+68, vendorid=0x14e4, deviceid=0x43ab, chipnum=0x4345). Cevap gelmediğine göre bu, çerçeve yolunun daraltılması değil KAPATILMASIDIR: içerik (R175) ve kimlik (R176) host tarafında elendi. Kapı artık çerçeve katmanında değildir. Wi-Fi PASS değildir.
Risk: Yok — koşu tamamlandı ve iki paket de mühürlendi. UYARI: R176'nın paylaşılan kod değişiklikleri (TX_EVIDENCE_BYTES 48→64 ve makbuz satırları) R175 imajını da etkiler; diskteki mühürlü R175 imajı (d58d532f…) DEĞİŞMEDİ ve kasten yeniden derlenmedi, ama bugün yeniden derlenseydi bayt-özdeş olmazdı (R127'deki aynı durum).
R177KoşulduC06 · C07 · C08
Post-CR4 saat yeniden isteği: kredi ve saat katmanı elendi
Değişiklik / kapsam: Tek değişken: firmware callback'inden sonra HT saatinin yeniden istenmesi (linux-brcmf_sdio_firmware_callback yolu). ÖLÇÜM SINIRI: bu imaj R176'nın revinfo-first değişkenini de taşır, yani R175'e göre İKİ değişken değişmiştir; ayrıştırma ancak R176'nın kendi mühürlü boot'larıyla karşılaştırarak yapılabilir.
Neden bu sırada: R176 ölçülen beşinci çerçeveyi gönderdi ve cevap alamadı. İki soru açıktı: saat katmanı cevabı engelliyor mu, ve SDPCM kredi penceresi tükeniyor mu. R177 ikisini de aynı boot'ta ölçer.
KOŞULDU ve MÜHÜRLENDİ — attempt-r177-post-cr4-clock-uart-capture-repeat-02, uart10.raw 159.535 bayt sha256 2d9e7fd33f6ddbc789d1a164077ec09438f857493219380407ae637aed177ee0, mode 0444, capture_closed=true terminal_seen=true grace_complete=true success=true. SAAT: ASELSAN/WIFICLOCKRECOVERY ATTEMPTED=1 BEFORE=0xd2 AFTER_REQ=0xd0 FINAL=0xd0 POLLS=1 AVAIL=1 WRITES=2 — HT_AVAIL biti (0x80) hem önce hem sonra set; yeniden istek yalnız FORCE_HT bitini (0x02) temizledi. CR4START HT_CSR_FIN=0xd2 HT_REQ_AVAIL=1, R176 ile aynı. KREDİ: ASELSAN/WIFIREADCREDIT_SAMPLE on bir denemenin tamamında WINDOW=21 sabit, SEQUENCE 4→10, CREDIT 17→11, PUBLISHED 8→14 — host altı kredi harcadı, on bir kredi arttı, pencere hiç tükenmedi. Terminal: WIFITRIALEND STOP=EXHAUSTED TRIALS_RUN=11 TRIALS_PLANNED=11 UNMATCHED_TOTAL=0 REPLIED=0 · WIFISCAN_RESULT STATUS=ERROR ERROR=Session(CommandDeadline(RevInfo)) · WIFIPREINITSEQ SENT=4 EXPECTED=4 WRITE_FAULTS=0 · WIFIF2CRCSCOPE ACCEPTED_PREINIT=3 ACCEPTED_CONTROL=5 SILENT_ACCEPT=0 · PINMUXW VERIFIED=10/10. İmaj: build/rpi5-wifi-scan-r177/aselsanos-rpi5-radio.img sha256 4686a43d6e4accb94fbccb07ee0533246d161290cdff1fec1bf2209afda76ef4.
Kapattığı: İki hipotezi ölçerek kapatır. KREDİ: tx_window on bir denemede hiç ilerlemedi ve host'un kredisi hiç bitmedi — akış kontrolü duvar değildir; WINDOW'un donuk kalması firmware'in tek bir SDPCM çerçevesi bile göndermediğini söyler. SAAT: R176 repeat-01 (post-CR4 yeniden isteği YOK) ile R177 (VAR) aynı sonucu verdi — TRIALS_RUN=11/11, REPLIED=0, Session(CommandDeadline(RevInfo)), HT_CSR_FIN=0xd2; iki koşu arasındaki tek fark FORCE_HT bitidir ve sonucu değiştirmemiştir. Ayrıca R75 makbuzu firmware, NVRAM ve CLM'in Linux'un aynı Pi 5'te kullandığı dosyalarla BAYT-ÖZDEŞ olduğunu gösterir (ca709be8… · d608f866… · 9823842c…) ve firmware konsolu NVRAM'ımızı uyguladığını kendi ağzından söyler (Overriding vendor id = 0x14e4, Overriding device id = 0x43ab). Wi-Fi PASS değildir.
Risk: Yok — koşu tamamlandı ve mühürlendi.
R178Gereksiz — önceki koşu kapsadıC06 · C07 · C08
Post-CR4 saatsiz izolasyon — R176 repeat-01 zaten kapattı
Değişiklik / kapsam: Tek değişken: R177'nin post-CR4 saat yeniden isteği (WIFICLOCKRECOVERY) olmadan aynı çerçeve yolunu tekrarlamak. R176 repeat-01 tam olarak bu değişkendi — iki koşu arasındaki TEK fark firmware callback'inden sonraki HT saat yazmalarıdır.
Neden bu sırada: R177 kredi ve saat katmanını aynı boot'ta ölçerek iki hipotezi kapattı. Ancak tek-değişken disiplini gereği, saat katmanının bağımsız etkisini ayırmak için saatsiz bir koşu gerekir. R178 bu koşu olarak planlandı — ancak R176 repeat-01 zaten aynı imaj, aynı kod tabanı ve saatsiz yoldu.
GEREKSİZ — imaj derlendi (build/rpi5-wifi-scan-r178/aselsanos-rpi5-radio.img sha256 dbaeda475519410235ba25b7eec1b2432be9e0d9d92b6c1ace29d78b40e9eb95) ancak flash edilmedi.
KARŞILAŞTIRMA: R176 repeat-01 (saatsiz) vs R177 (saatli) — iki koşu arasındaki TEK fark WIFICLOCKRECOVERY'dır.
R176 repeat-01 R177 repeat-02
İmaj 5be9f31b… 4686a43d…
WIFICLOCKRECOVERY YOK ATTEMPTED=1 BEFORE=0xd2
AFTER_REQ=0xd0 FINAL=0xd0
POLLS=1 AVAIL=1 WRITES=2
HT_CSR_FIN 0xd2 0xd2 (aynı)
TRIALS_RUN 11/11 11/11 (aynı)
REPLIED 0 0 (aynı)
STOP EXHAUSTED EXHAUSTED (aynı)
SCAN_RESULT CommandDeadline CommandDeadline
(RevInfo) (RevInfo) (aynı)
KREDİ WINDOW 21 sabit 21 sabit (aynı)
KREDİ SEQUENCE 4→10 4→10 (aynı)
KREDİ CREDIT 17→11 17→11 (aynı)
KREDİ PUBLISHED 8→14 8→14 (aynı)
PINMUXW VERIFIED=10/10 VERIFIED=10/10 (aynı)
F2CRC 0x0020 her yazma 0x0020 her yazma (aynı)
SONUÇ: Post-CR4 saat yeniden isteği (FORCE_HT biti 0x02 temizleme) sonucu
DEĞİŞTİRMEDİ. HT_AVAIL (0x80) her iki koşuda da set; HT saati duvar değildir.
Kredi penceresi her iki koşuda da özdeş ilerledi — akış kontrolü duvar değildir.
R178 neden koşulmadı: R176 repeat-01 (imaj 5be9f31b…) zaten saatsiz yoldur.
R178 (imaj dbaeda47…) R176 repeat-01 ile FONKSİYONEL ÖZDEŞ olacaktır — aynı
çerçeve yolu, aynı kredi davranışı, aynı REPLIED=0 sonucu. Tek-değişken
disiplini gereği, R176 repeat-01 R178'in yerini tutar ve R178 flash edilmemiştir.
R75 Linux kontrolü çapraz doğrulama: Aynı Pi 5'te Linux/brcmfmac firmware
konsolunu döker (ca709be8… · d608f866… · 9823842c… = AselsanOS blob'larıyla
bayt-özdeş) ve 'Overriding vendor id = 0x14e4, Overriding device id = 0x43ab'
ile NVRAM'ımızı uyguladığını söyler. Wi-Fi PASS değildir.Kapattığı: Hiçbir hipotezi kapatmaz — R176 repeat-01 zaten kapatmıştı. Aşağıdaki karşılaştırma tablosu R177'nin tek-değişken izolasyonunu doğrular.
Risk: Yok — koşulmadı, hiçbir donanım etkilenmedi.
R179KoşulduC06 · C07 · C08
Linux kontrolü: firmware iç başlatma hipotezi kapandı
Değişiklik / kapsam: Tek değişken ölçümün yapıldığı taraftı; AselsanOS imajı DEĞİŞMEDİ. Aynı Pi 5 Model B Rev 1.1 üzerinde Raspberry Pi OS (trixie, çekirdek 6.18.50+rpt-rpi-2712) USB bellekten açıldı ve brcmfmac BCM43455'i eksiksiz bring-up etti.
Neden bu sırada: R177'nin ham kaydındaki firmware konsolu iki satır taşıyordu: 'wlc_stf_txcore_shmem_write: No clock' ve 'wlc_attach_antgain_init: Invalid antennas available in srom, using 2dB'. Bu satırların ARIZA mı iyi huylu mu olduğu ölçülmemişti ve firmware iç başlatma (Katman 3) hipotezinin tek dayanağıydı.
KOŞULDU ve MÜHÜRLENDİ — evidence/rpi5/radio/linux-r179-control (6 dosya, 0444, EVIDENCE_SHA256SUMS 6/6 OK). PLANLANAN ÖLÇÜM YAPILAMADI: stok Raspberry Pi çekirdeğinde CONFIG_BRCMDEBUG derlenmemiş, bu yüzden /sys/kernel/debug/brcmfmac/ hiç oluşmuyor ve fwcon dökümü bu çekirdekle mümkün değil. YERİNE ölçülen iki şey soruyu daha keskin cevapladı. (1) GİRDİLER BAYT-ÖZDEŞ, canlı doğrulama: çalışan sistemin Pi 5 için çözdüğü dosyalar d608f866…6b4a36c3 (bin), ca709be8…a3ce9e3d (txt), 9823842c…0eee29cc1 (clm_blob) — üçü de AselsanOS'un firmware/wifi/ blob'larıyla aynı. (2) İLK BCDC KONTROL KOMUTU CEVAPLANIYOR: brcmfmac: brcmf_c_preinit_dcmds: Firmware: BCM4345/6 wl0: Aug 29 2023 01:47:08 version 7.45.265 (28bca26 CY) FWID 01-b677b91b — bu dize firmware'in ver iovar cevabından basılır. Çip de aynı: F1 signature read @0x18000000=0x15264345. Tarama 12 ağ gördü (üçüncü taraf SSID'leri kasıtlı kaydedilmedi).
Kapattığı: Katman 3'ü kapatır. Aynı firmware, aynı NVRAM, aynı CLM ve aynı çiple, 'No clock' ve 'Invalid antennas' satırlarını üreten attach yolundan geçildikten SONRA firmware Linux'a cevap veriyor. Dolayısıyla o satırlar kontrol cevabı üretilmesini engellemiyor ve AselsanOS'taki REPLIED=0 duvarı host sıralamasındadır. SINIR: firmware konsolu Linux tarafında dökülmedi; sonuç konsol diff'inden değil cevap alınmasından gelir. Wi-Fi PASS değildir.
Risk: Yok — yalnız okuma yapıldı; Pi'de hiçbir değişiklik yapılmadı, AselsanOS imajı ve mühürlü paketler etkilenmedi.
R180KoşulduC06 · C07 · C08
F2 okuma tarafı: FRAME_IND=1 ilk kez görüldü, BYTES_READ=64, DATA_CRC=0x0020
Değişiklik / kapsam: Tek değişken: her kontrol çerçevesinden sonra kesme durumunu servis etmek ve F2'yi KOŞULSUZ okumak. Çerçeve içeriği, kimliği, preinit sırası, taşıma birimi ve sınırlar donar.
Neden bu sırada: R175 çerçeve içeriğini, R176 çerçeve kimliğini, R177 krediyi ve saati, R179 firmware iç başlatmasını eledi. Geriye host sıralamasında tek adlandırılmış boşluk kaldı ve mühürlü R177 kaydı onu sayıyla gösteriyor: on bir denemenin tamamında FIFO_READS=0 ve FRAME_IND=0. R128 aynı boşluğu kendi sonucunda adlandırmıştı: düşen iki yazmanın ikisi de cevapsız kalan bir çerçeveden sonraki ilk yazmaydı ve Linux'un DPC'sinin çerçeveler arası yaptığı hiçbir şey bizde yok.
KOŞULDU ve MÜHÜRLENDİ — attempt-r180-f2-post-send-uart-capture, uart10.raw sha256 a30bd4188efbf1b28b6e0f7673ce9d1cd6492402533f13d9fe5b1c0cfbca68f0, mode 0444, capture_closed=true. F2 OKUMA: ASELSAN/WIFIREAD OP=ReadFifo FUNCTION=2 ADDRESS=0x00008000 BYTES_READ=64 R5_FLAGS=0x10 ERROR_STATUS=0x0020 TIMEOUT_TRANSFER=1 COMMAND_COMPLETE=1 — ilk kez F2'den veri okundu (BYTES_READ=64) ancak SDIO DATA_CRC hatası (0x0020). TRIAL: FRAME_IND=1 HOST_INT=1 CORE_OR=0x000000c0 ERR=Session(Transport(Io())) — ilk kez frame indication ve host interrupt birlikte görüldü; SDIO transport katmanında Io hatasıyla kapandı. CR4START: RSTVEC_OK=1 PHASE=COMPLETE ABORTED=0 HT_CSR_FIN=0xd2 HT_REQ_AVAIL=1 WRITE_OK=1 MBOX=0x00000000 INTSTAT=0x00000000 EXECUTED=0 STARTED=0 HT_AVAIL=0. İmaj: build/rpi5-wifi-scan-r180/aselsanos-rpi5-radio.img sha256 5604031a4eaac00068ec95e560170d6b39acf84c08d0f4783fdb6b310d0e40c6.
Kapattığı: F2 okuma tarafını AÇAR: R177'de FIFO_READS=0/FRAME_IND=0 olan boşluk, R180'de BYTES_READ=64/FRAME_IND=1 oldu — yani kart F2'ye veri koydu ve host okudu. Ancak okuma 0x0020 DATA_CRC hatasıyla düştü; PRESENT_STATE=0x01ff0206 DAT_INHIBIT+DAT_LINE_ACTIVE set — bus önceki yazmadan boşalmamış. REPLIED=0 hâlâ; okunan 64 bayt geçerli bir tümleyen taşımadı. Duvar okuma TARAFINDA değil, okuma YOLUNDA (bus zamanlama). Wi-Fi PASS değildir.
Risk: Yok — okuma eklendi, yazma yolu değişmedi. DATA_CRC hatası bir sonraki kapıyı adlandırdı: R181 DAT_INHIBIT bekleme.
R181Yorum geri çekildi — mühürsüz ya da varışsızC06 · C07 · C08
DAT_INHIBIT bekleme — varışsız koşu; bus contention SINANMADI
Değişiklik / kapsam: Tek değişken (plan): F2 okumasından ÖNCE SDHCI PRESENT_STATE (0x24) okunarak DAT_INHIBIT+DAT_LINE_ACTIVE bitlerinin temizlenmesini beklemek.
Neden bu sırada: R180 F2'den 64 bayt okudu (FRAME_IND=1) ama okuma DATA_CRC=0x0020 ile düştü; PRESENT_STATE=0x01ff0206 DAT_INHIBIT ve DAT_LINE_ACTIVE bitlerini gösteriyordu.
DÜZELTME (2026-09-17). evidence/rpi5/radio/attempt-r181-dat-inhibit-wait-uart-capture mühürlü DEĞİL: EVIDENCE_SHA256SUMS ve README yok, dosyalar 0444 değil. İkinci dizin (…-uart-capture-uart-capture) 132 baytta capture_closed=true success=false terminal_seen=false ile kapanmış.
Ham kayıt, 11:43'te derlenen rpi5-wifi-scan-r181 imajının (bootloader: Read aselsanos-rpi5-radio.img bytes 3903208) TEK açılışıdır. Aynı kayıtta WIFIR185, WIFIR185B, WIFIR190, WIFIR190WAIT ve WIFIR191 satırları da basılıdır; satırların bir kısmı bayt kaybıyla bozuk. Aynı kayıtta WIFIPREINITSEQ SENT=0 EXPECTED=4 ve WIFITRIAL_RESULT SENT=0: hiçbir çerçeve gönderilmedi.
Önceki metnin PSTATE=0x00000000 → 'bus tamamen boştaydı' okuması yanlış. Boştaki hat 0x01ff0000 okur: bit 24 CMD, bit 23:20 DAT[3:0] seviyeleridir ve boşta yüksektir. Tamamen sıfır geçerli bir hat okuması değildir (R1'de 0x000f0000 'çip beslenmiyor' diye okunmuştu). FRAME_IND=0, HOST_INT=0 ve FIFO_READS=0 ile koşu değişkene ulaşmadı.
Kapattığı: Hiçbir hipotezi kapatmaz. 'Bus contention elendi' ve 'duvar yazma tarafında' sonuçları geri çekildi. Wi-Fi PASS değildir.
Risk: Düşük — salt-okunur PRESENT_STATE yoklaması.
R182Yorum geri çekildi — mühürsüz ya da varışsızC06 · C07 · C08
SDIO saat /16 — mühürsüz; '/16 backplane için çok hızlı' sonucu geri çekildi
Değişiklik / kapsam: Tek değişken (plan): SDIO saat bölücüsü /256 → /16.
Neden bu sırada: Yazma yolundaki DATA_CRC=0x0020'nin saat hızına bağlı olup olmadığı sorulmuştu.
DÜZELTME (2026-09-17). Bu basamak için mühürlü kanıt paketi yok (evidence/rpi5/radio altında bu numarayla EVIDENCE_SHA256SUMS taşıyan dizin bulunmuyor). Rozet 'gereksiz' iken metin 'koşuldu' diyordu.
'/16 backplane yazmaları için çok hızlı' sonucu sayfanın mühürlü geçmişiyle çelişir: R54–R58 609 KB firmware'in tamamını /16'da yükledi (R58 PASS ×2). R192 USB baz koşusu (attempt-r192-usb-baseline-uart-capture) staging'i SDCLK DIV=0x08 ile yaptı, ardından WIFIR191 CLK=0x0207 HS50=1 ile CR4CTRL PHASE=COMPLETE ERR=0x0000 aldı.
Frekans etiketleri de doğrulanmalı: WIFIINV CAPS=0x55eec832 taban saati 0xc8 = 200 MHz bildiriyor. SDHCI 3.00 bölücüsüyle 0x80 ≈ 781 kHz, 0x08 = 12,5 MHz, 0x02 = 50 MHz eder; sayfadaki ~390 kHz ve 6,25 MHz etiketleri 100 MHz taban varsayar.
Kapattığı: Hiçbir hipotezi kapatmaz. Wi-Fi PASS değildir.
Risk: Düşük — saat bölücüsü yazıldı, çip resetlenmedi.
R183Yorum geri çekildi — mühürsüz ya da varışsızC06 · C07 · C08
SDIO saat /64 — mühürsüz; yorumlanmadı
Değişiklik / kapsam: Tek değişken (plan): SDIO saat bölücüsü /64.
Neden bu sırada: R182'nin geri çekilen '/16 çok hızlı' sonucuna dayanıyordu.
DÜZELTME (2026-09-17). Bu basamak için mühürlü kanıt paketi yok (evidence/rpi5/radio altında bu numarayla EVIDENCE_SHA256SUMS taşıyan dizin bulunmuyor). CMD52 zaman aşımının saat hızına bağlanması R182'nin geri çekilen sonucuna dayanır; ölçülmüş bir sınır değildir.
Kapattığı: Hiçbir hipotezi kapatmaz. Wi-Fi PASS değildir.
Risk: Düşük — saat bölücüsü yazıldı, çip resetlenmedi.
R184Yorum geri çekildi — mühürsüz ya da varışsızC06 · C07 · C08
F2 ilk okuma — kod çalışmadı (varışsız); yerleşim sonucu kanıtlanmadı
Değişiklik / kapsam: Tek değişken (plan): CR4 başlangıcından sonra ilk F2 okuması.
Neden bu sırada: Linux DPC'sinin ilk F2 okumasını taklit etmek.
DÜZELTME (2026-09-17). Bu basamak için mühürlü kanıt paketi yok (evidence/rpi5/radio altında bu numarayla EVIDENCE_SHA256SUMS taşıyan dizin bulunmuyor). Önceki metin kodun hiç çalışmadığını kendisi söylüyor (wifi_scan_core=None, HT_REQ_WRITE_OK=0). Değişkene ulaşmayan bir koşu, sayfanın kuralı gereği bir yerleşim sonucunu 'kanıtlayamaz'. 'Saat değişikliği CR4START'tan sonra yapılmalı' bir hipotez olarak kalır.
Kapattığı: Hiçbir hipotezi kapatmaz. Wi-Fi PASS değildir.
Risk: Düşük — kod çalışmadı.
R185Yorum geri çekildi — mühürsüz ya da varışsızC06 · C07 · C08
F2 okuması: 12 baytlık boş EVENT zarfı — başlık çözümü ve 'ilk kez' iddiaları düzeltildi
Değişiklik / kapsam: Tek değişken (plan): CR4 oturumu başladıktan sonra F2 FIFO'dan okuma.
Neden bu sırada: R180'deki F2 okumasını temiz bir bağlamda tekrarlamak.
DÜZELTME (2026-09-17). Bu basamak için mühürlü kanıt paketi yok (evidence/rpi5/radio altında bu numarayla EVIDENCE_SHA256SUMS taşıyan dizin bulunmuyor). Aynı tanı satırı R192'nin mühürlü USB baz koşusunda da basılıdır: WIFIDBG R185=11 FLEN=12 CH=15 SEQ=256 INT=0x008000c0 B0=0c00f3ff0001000c.
Baytların brcmfmac SDPCM başlığına göre çözümü:
bayt 0–1 uzunluk 0x000c = 12
bayt 2–3 tümleyen 0xfff3 (0x000c XOR 0xfff3 = 0xffff — kontrol GEÇER)
bayt 4 seq = 0
bayt 5 kanal = 1 (EVENT), bayrak = 0
bayt 6 nextlen = 0
bayt 7 doff = 0x0c = 12 → yükü olmayan 12 baytlık EVENT zarfı.
'CH=15', 'SEQ=256' ve 'bayt 8 = 0xf3 = tx_window 21' okumaları yanlış: 0xf3 tümleyenin düşük baytıdır; kredi penceresi 9. bayttadır ve bu satırda basılmadı.
'İLK KEZ' iddiaları mühürlü geçmişle çelişir: dongle kesmesi INT_OR=0x208000c0 R140'ta, FRAME_IND=1/HOST_INT=1 R144 ve R157'de, TXWIN=21 R10x'ten beri, kredi penceresi (WINDOW=21) R170–R177'de ölçülmüştü.
Kapattığı: Hiçbir hipotezi kapatmaz. Wi-Fi PASS değildir.
Risk: Düşük — salt-okunur F2 okuması.
R186Yorum geri çekildi — mühürsüz ya da varışsızC06 · C07 · C08
Kredi enjeksiyonu — mühürsüz; 'İLK PREINIT' iddiası geri çekildi
Değişiklik / kapsam: Tek değişken (plan): R185 okumasından kredi değeri türetip gönderim kredisine yazmak.
Neden bu sırada: Gönderimin kredi yokluğundan durduğu düşünülmüştü.
DÜZELTME (2026-09-17). Bu basamak için mühürlü kanıt paketi yok (evidence/rpi5/radio altında bu numarayla EVIDENCE_SHA256SUMS taşıyan dizin bulunmuyor). Önceki metin 243 (0xf3) değerinin 'alt bitinden' 21 türetiyordu; bu mümkün değildir (0xf3 & 0x1f = 19, 0xf3 & 0x3f = 51). 21 değeri, UART'ta bozulmuş bir satırdan elle 'kurtarılmıştır'.
Preinit ve kontrol çerçeveleri daha önce defalarca hatta çıkmıştı: R136 SENT=2, R154 SENT=1, R157–R175 WIFIPREINITSEQ SENT=3/4. Aynı dönemin R181 dizinindeki kaydında ise WIFIPREINITSEQ SENT=0 EXPECTED=4.
Kapattığı: Hiçbir hipotezi kapatmaz. Wi-Fi PASS değildir.
Risk: Düşük — kredi değeri yazıldı.
R187Yorum geri çekildi — mühürsüz ya da varışsızC06 · C07 · C08
HOST_CTL1 4-bit — değişiklik boş işlem; 'abort düzeltildi' iddiası geri çekildi
Değişiklik / kapsam: Tek değişken (plan): HOST_CTL1'e 4-bit veri genişliği yazmak.
Neden bu sırada: DATA_CRC=0x0020'nin 1-bit/4-bit uyumsuzluğundan gelip gelmediği sorulmuştu.
DÜZELTME (2026-09-17). Bu basamak için mühürlü kanıt paketi yok (evidence/rpi5/radio altında bu numarayla EVIDENCE_SHA256SUMS taşıyan dizin bulunmuyor). R192 USB baz koşusunda WIFIR187 HOST_CTL1 BEFORE=0x02 AFTER=0x02: yazma zaten var olan değeri yazıyor. HOST_CTL1'in 4-bit olduğu ölçümü doğrudur ve bus-genişliği hipotezini zayıflatır.
Değişmeyen bir yazma belirlenimsiz bir abort'u 'düzeltemez'; tek koşudaki ABORTED=0 açılışlar arası varyanstır (D11 abort'u R165 ve R169'da aynı imajda açılıştan açılışa değişmişti).
Kapattığı: Ölçüm: HOST_CTL1=0x02 (4-bit). Abort hakkında sonuç yok. Wi-Fi PASS değildir.
Risk: Düşük.
R188Yorum geri çekildi — mühürsüz ya da varışsızC06 · C07 · C08
Paylaşım işaretçisi 0x63 — o koşu varmadı; 'hipotez elendi' geri çekildi
Değişiklik / kapsam: Tek değişken (plan): RAM tepesindeki sdpcm_shared işaretçisini okumak.
Neden bu sırada: Firmware'in paylaşım alanını yayımlayıp yayımlamadığı sorulmuştu.
DÜZELTME (2026-09-17). Bu basamak için mühürlü kanıt paketi yok (evidence/rpi5/radio altında bu numarayla EVIDENCE_SHA256SUMS taşıyan dizin bulunmuyor). Aynı değer R192 USB baz koşusunun WIFIDBG satırında da var (R188=0x00000063).
Paylaşım alanı R146–R177 arasında defalarca okundu: PTR=0x00201cc0, STRUCT_OK=1, konsol 0x0025debc, FWID 01-b677b91b. RAM tepesinde 0x63 okunması, o açılışta firmware'in işaretçiyi (henüz) yayımlamadığını ya da okumanın yanlış adres veya zamanda yapıldığını gösterir; bir hipotezi elemez. '0x63 bir Thumb kod adresi' yorumu ölçüm değildir.
Kapattığı: Hiçbir hipotezi kapatmaz. Wi-Fi PASS değildir.
Risk: Düşük — salt-okunur backplane okuması.
R189Yorum geri çekildi — mühürsüz ya da varışsızC06 · C07 · C08
CMD53 block mode — öncül R80 Linux iziyle çelişiyor; basamak iptal edildi
Değişiklik / kapsam: Tek değişken (plan): F2 yazmalarında CMD53 argümanının bit 27'sini (block mode) set etmek.
Neden bu sırada: 'Linux F2'ye block mode ile yazıyor' varsayımı.
DÜZELTME (2026-09-17). İmaj hiç üretilmedi: yayımlanan sha256 64 sıfırdan oluşuyordu ve build/rpi5-wifi-scan-r189 dizini yok.
Öncül yanlış. Sayfanın mühürlü R80 Linux izi 'fn=2 adres=0x8000 yazmalarının TAMAMI byte-mode: 64B ×1456, 2B ×365, 296B ×49, 456B ×38, …' diyor. Linux sdio_io_rw_ext_helper() blok boyundan (F2 için 512) kısa aktarımları byte-mode gönderir; 104 baytlık preinit çerçevesi de byte-mode gider. Önceki metindeki 'Linux BLOCK (bit 27=1), ERR 0x0000' karşılaştırma tablosu ölçüm değildir.
Kapattığı: Basamak iptal edildi; bir hipotezi sınamadı.
Risk: —
R190Yorum geri çekildi — mühürsüz ya da varışsızC06 · C07 · C08
19 ms bekleme + ek F2 okumaları — ayrı koşu değil
Değişiklik / kapsam: Tek değişken (plan): F2 hazır olduktan sonra 19 ms bekleme ve üç ek F2 okuması.
Neden bu sırada: Linux'un F2 hazır ile ilk yazma arasındaki beklemesini taklit etmek.
DÜZELTME (2026-09-17). Ayrı bir koşu yok: önceki metin 'R181 UART capture'ında ölçüldü' diyor. O kayıt mühürsüz tek bir açılıştır ve R181, R185, R190 ve R191 tanılarını birlikte taşır. Tek-değişken koşusu olmadığı için 'Linux zamanlaması yeterli değil' sonucu çıkarılamaz.
Kapattığı: Hiçbir hipotezi kapatmaz. Wi-Fi PASS değildir.
Risk: Düşük — salt-okunur okumalar ve bekleme.
R191Yorum geri çekildi — mühürsüz ya da varışsızC06 · C07 · C08
SDHCI DAT reset ve 'UART FIFO taşması' — çözüm ve donanım yorumu düzeltildi
Değişiklik / kapsam: Tek değişken (plan): SDHCI Software Reset (0x2f) DAT hattı reseti.
Neden bu sırada: F2 okumalarının ardından DAT hattının meşgul kaldığı düşünülmüştü.
DÜZELTME (2026-09-17). Ayrı mühürlü koşu yok; önceki metin de R181 kaydına dayanıyor.
(1) PSTATE=0x01ff0000 'DAT hatları hepsi düşük' diye çözülmüştü. SDHCI PRESENT_STATE'te bit 24 CMD, bit 23:20 DAT[3:0] seviyesidir; 0x01ff0000 CMD ve DAT[3:0] hatlarının HEPSİNİN YÜKSEK olduğunu, yani boşta beklenen durumu gösterir.
(2) 'Linux brcmf_sdio_dpc() sonunda DAT reset yapar' iddiası yanlış. brcmfmac SDHCI kayıtlarına dokunmaz; kurtarması kart tarafındadır (brcmf_sdio_rxfail: CCCR IO_ABORT, SFC_RF_TERM, gerekirse NAK).
(3) Bu adım sayfanın 'Host SDHCI DATA reset yerleşimleri elendi; yeniden denenmez' kuralını çiğner.
(4) 'BCM2712 UART FIFO taştı' bir donanım bulgusu değildir. kernel/src/uart.rs write_byte() TXFF bayrağını en fazla 100.000 tur bekliyor ve süre dolunca baytı yine de yazıyor; kayıp bu sınırlı bekleyişten gelir. Yakalama tarafında da bootloader satırları bozuk geliyor. Sonuç: bir UART satırının YOKLUĞU tek başına bir olayın yokluğunu kanıtlamaz.
Kapattığı: Hiçbir hipotezi kapatmaz. UART kaybı açık bir kanıt-bütünlüğü sorunudur. Wi-Fi PASS değildir.
Risk: Düşük — SDHCI yazılım reseti, çip resetlenmedi.
R192KoşulduC06 · C07 · C08
Gömülü firmware + HT saat sırası — mühürlü USB baz koşusu: FWREADY 60 ms, ilk protokol okuması düştü
Değişiklik / kapsam: Üç değişiklik birden, tek değişken DEĞİL: (1) BRCMFW.BIN, BRCMNVR.TXT ve BRCMCLM.BLB kernel/src/driver/wifi_fw_embedded.rs içinde include_bytes! ile imaja gömüldü (RF-01 İHLALİ). (2) HT saat isteği firmware yüklemesinden sonraya taşındı. (3) Firmware yükleme koşulu genişletildi.
Neden bu sırada: DÜZELTME (2026-09-17). Önceki gerekçe 'FWREAD VOL_OK=0: firmware bulunamıyor' idi. Payload konteyneri (aselsanos-epoch.bin, initramfs) R16x netboot hattından beri firmware, NVRAM ve CLM'yi taşıyor; VOL_OK=0 payload modunda beklenen değerdir (bu koşuda da FWREAD VOL_OK=0 FOUND=1 FW_BYTES=609309). 'Firmware koşmadan HT saati üretilemez' gerekçesi de R10x'ten beri görülen HT_REQ_AVAIL=1 ve R177'deki 'HT_AVAIL her iki koşuda set' ölçümüyle çelişir.
KOŞULDU ve MÜHÜRLENDİ — evidence/rpi5/radio/attempt-r192-usb-baseline-uart-capture (EVIDENCE_SHA256SUMS; uart10.raw sha256 f0ca105ee558fb5159ccb60fbf705afe508cbdca47ce1c3b0f2a2e82750d5119).
İmaj: build/rpi5-wifi-scan/aselsanos-rpi5-radio.img sha256 8779b7e047752d3597c4abf7a9b1e2648802abac59d70765cbd60321ec4e709c (özellikler board-rpi5,rpi5-wifi-hostintmask-off; yeniden derlemede bayt-özdeş). Açılış: power-on-reset 1, Boot mode: USB-MSD, 'Read aselsanos-rpi5-radio.img bytes 4464352'.
Makbuzlar:
WIFICMD5 OCR=0xb0ffff00 READY=1 PSTATE=0x006f0000
WIFIBP CHIPID=0x15264345 NAME=BCM43455
FWSTAGE SECTORS_DONE=1190 WORDS_V=152320 RETRIES=0 BYTES=609280 OK=1
NVRAM WORDS=437 VERIFIED=437 TOKEN_OK=1 FW_INTACT=1 OK=1
CLMEMBEDDED LOADED=1 BYTES=2676
WIFIR191 CLK=0x0207 HS50=1
CR4CTRL PHASE=COMPLETE ABORTED=0 ERR=0x0000
CR4START RSTVEC_OK=1 RSTVEC_C53=1 RSTVEC_ERR=0x0000
WIFIHOSTREADY AFTER=0x00040000 AFTER_RELEASE_MS=15
WIFIEARLYMBOX LAST=0x00040008 INT_OR=0x208000c2 FWREADY_MS=60
WIFIMBOXANSWER ACKS=14 SETTLED=1 FWREADY_ACKED_MS=60
WIFIPROTO STARTED=1 READY=0
WIFIREAD OP=Read32 ADDRESS=0x18004020 ISSUED=0 BUS_WAS_BUSY=1 PRESENT_STATE=0x01ff0206
WIFICTRLSTATE SENT=0 REPLIED=0 TIMEOUT_CAUSE=Session(Transport(Io(BusError { op: Read32 …
WIFIFAIL STATE_B=Starting STATE_A=Failed
WIFIBUSCENSUS CMD52_OPS=611629 CMD52_FAIL=93061 CMD52_STAGE_FAIL=93061 CMD52_OTHER_FAIL=0 CMD53R_OPS=23 CMD53R_INCOMPLETE=5
BTHCI TX=4 ANSWERED=0
Yakalama aracı WIFISCAN_RESULT satırı başlarken durdu; satır kayıtta 'STATUS' sözcüğünde kesik. Oturumun sonucu hemen önceki WIFIFAIL ve WIFICTRLSTATE satırlarındadır.Kapattığı: Firmware+NVRAM yüklemesi ve FWREADY el sıkışması (R140/R141 bulgusu) bu imajda tekrarlandı. Tarama yok: ilk protokol okuması hat meşgulken (DAT_INHIBIT) düştü ve tek kontrol çerçevesi gönderilmedi. Staging sırasında CMD52 komutlarının %15,2'si hata verdi; staging dışındaki 599 CMD52'nin hiçbiri düşmedi. Wi-Fi PASS değildir.
Risk: İmaj üç tescilli blob'u gömülü taşır (RF-01 İHLALİ).
R193KoşulduC06 · C07 · C16
SDIO2 pad pull'ları — taşıma duvarı kalktı: CMD52 hatası 93.061 → 0, ilk çerçeve hatta çıktı
Değişiklik / kapsam: Tek değişken: mux yazmasından sonra, WL_ON ve CMD0'dan ÖNCE BCM2712 D0 pinctrl pad kelimeleri 5 ve 6'da gpio30..35'in 2 bitlik pull alanları DTB'deki gibi yazıldı: gpio30 NONE (0), gpio31..35 UP (2). Oku-değiştir-yaz; başka hiçbir bit değişmedi. Yerleşim Linux pinctrl-bcm2712.c bcm2712_d0_gpio_pin_regs tablosundan: pad biti pr*32+pb*2. Cargo özelliği: rpi5-wifi-sdio-pulls.
Neden bu sırada: Yazma yönündeki kalıcı hatalar (her F2 yazmasında 0x0020, TCM CMD53'te 0x0060) ve staging'deki CMD52 hataları sinyal bütünlüğüne işaret ediyordu; Linux aynı kartta DDR50'de hatasız çalışıyor. Dört dayanak: (1) DTB sdio2_30_pins CMD ve DAT0..3 için bias-pull-up, CLK için bias-disable istiyor; (2) AselsanOS pad/pull kelimelerine hiç yazmıyordu; (3) brcmfmac dongle'ın iç pull'larını SDIOPULLUP=0 ile kapatır çünkü hatta host pull'ları vardır — R28'de aynı yazma bizde bütün CMD52/53'leri düşürmüştü; (4) R192 baz koşusunda CMD5 anında PSTATE=0x006f0000, yani CMD, DAT0 ve DAT3 boşta düşüktü.
KOŞULDU ve MÜHÜRLENDİ — evidence/rpi5/radio/attempt-r193-sdio-pulls-uart-capture (EVIDENCE_SHA256SUMS; uart10.raw sha256 165d7ac4afd9723b22edea26afe07e29c183042f001c6a82abf863448b037dde). İmaj build/rpi5-wifi-scan-r193/aselsanos-rpi5-radio.img sha256 6a3e2466aa1429a37896dd60c95770e36c32d17a6f59ab886c56c5592915b42c. Açılış: power-on-reset, Boot mode: USB-MSD, 'Read aselsanos-rpi5-radio.img bytes 4468448'.
ÖLÇÜLEN PAD DURUMU — pad'ler açılışta PULL-DOWN:
ASELSAN/SDIOPULL MAP=D0 ALLOWED=1 W5=0x15555655->0x28555655 W6=0x0aaaa595->0x0aaaa5aa
PULL_B=[1, 1, 1, 1, 1, 1] → altı hattın hepsi pull-down (DTB'nin istediğinin tersi)
PULL_A=[0, 2, 2, 2, 2, 2] VERIFIED=6/6 UNPLANNED=0x00000000 MUX_INTACT=1
R192 (baz) → R193 (pull-up):
CMD5'te hat seviyesi PSTATE=0x006f0000 → 0x01ff0000 (CMD ve DAT[3:0] boşta yüksek)
CMD52 hata/toplam 93.061 / 611.629 → 0 / 611.629
Veri CRC / end-bit / timeout 2 / 1 / 0 → 0 / 0 / 0
CMD53 okuma eksik/toplam 5 / 23 → 1 / 190
Firmware doğrulama WORDS_W=84214 → 152320 (tam)
NVRAM yazma 233 → 437 kelime (tam)
Kontrol çerçevesi SENT=0 → SENT=1 (FRAMELEN=56 XFER=56 BCDCLEN=20 SEQ=255 TXWIN=21)
Terminal Session(Transport(Io(BusError…))) → Session(Transport(ControlTimeout(cmd 262, id 1)))
Diğer makbuzlar: FWSTAGE SECTORS_DONE=1190 OK=1; NVRAM TOKEN_OK=1 FW_INTACT=1 OK=1; CR4CTRL PHASE=COMPLETE ERR=0x0000; CR4START RSTVEC_OK=1; WIFIEARLYMBOX FWREADY_MS=60 LAST=0x00040008; WIFIMBOXANSWER ACKS=14 SETTLED=1; WIFIIRQWAIT CORE_OR=0x00000000 FRAME_IND_SEEN=0 HOST_INT_SEEN=0 PENDING_POLLS=144 AGE_MS=2500; WIFIBUSCENSUS ERR_CRC_ONLY=0 ERR_CRC_ENDBIT=0 ERR_DATA_TIMEOUT=0; BTHCI TX=4 ANSWERED=0; WIFISCAN_RESULT STATUS=ERROR ERROR=Session(Transport(ControlTimeout(…))).
Kapattığı: Host pad yapılandırmasını KÖK NEDEN olarak doğrular: pinler mux'lanıyor ama pull ayarı hiç yazılmıyordu ve donanımın açılış değeri pull-down'dı. R16'dan beri kovalanan 0x0020 veri CRC'si, 0x0060 end-bit hatası ve staging CMD52 düşmeleri bu koşuda hiç oluşmadı. C16'nın (1,8 V) ertelenme gerekçesi olan '3,3 V'ta CMD52 sorunsuz' önermesi artık ÖLÇÜLMÜŞ durumda: pull'lar doğruyken 3,3 V SDR'de 611.629 CMD52'nin hiçbiri düşmüyor. Duvar yer değiştirdi: taşıma temiz, çerçeve telde, firmware cevap vermiyor (REPLIED=0). DİKKAT: R16–R192 arasında 'elendi' denen taşıma hipotezlerinin çoğu bozuk bir hat üzerinde ölçüldü; temiz hatta yeniden sınanmaları gerekir. Wi-Fi PASS değildir.
Risk: Düşük: yalnız 12 bit, RMW ve geri okuma; güç döngüsünde sıfırlanır. İmaj R192 gibi üç blob'u gömülü taşır (RF-01).
R194KoşulduC06 · C07
Glomsuz kontrol çerçevesi — pazarlık edilmemiş glom düzeni
Değişiklik / kapsam: Tek değişken: kontrol çerçeveleri 8 baytlık SDPCM glom eklentisi OLMADAN kodlanır (doff=12, toplam 48 bayt; R193'te doff=20, 56 bayt). Çerçeve içeriği, dcmd kimliği, sıra numarası, kredi, pad pull'ları ve F2 yazma yolu değişmez. Cargo özelliği: rpi5-wifi-plain-control.
Neden bu sırada: Linux tx_hdrlen'i 12'de tutar ve 8 baytlık glom eklentisini ancak dongle 'bus:rxglom = 1' isteğini kabul ettikten SONRA ekler (brcmf_sdio_bus_preinit). Bu imaj o isteği hiç göndermiyor, ama ilk çerçeveden beri glom düzeni kullanıyor. R156'nın mühürlü Linux listesi de aynı şeyi söylüyor: ilk iki kontrol çerçevesi glomsuz (data_offset=12), glom ikinci çerçevede pazarlık ediliyor. R193 hattı temizledi (CMD52_FAIL=0, veri CRC 0) ve çerçeve telde çıktı (SENT=1) ama cevap gelmedi; R80 izine göre kalan ölçülü tel farkı bu düzendir. R136'nın glom'a geçişi, pad pull'ları yanlışken bozuk bir hat üzerinde ölçülmüştü.
KOŞULDU ve MÜHÜRLENDİ — evidence/rpi5/radio/attempt-r194-plain-control-uart-capture/uart10.raw. İlk MAC GET ve sürüm GET yanıtlandı: WIFIRX LEN=48 ve LEN=160; üçüncü bus:txglom SET yanıtı LEN=43 geldi ama eski parser eşleştirmedi (SENT=3 REPLIED=2). WIFISCAN_RESULT STATUS=ERROR ControlTimeout(cmd 263 id 3). Bu koşu tarama PASS değildir.
build/rpi5-wifi-scan-r194/aselsanos-rpi5-radio.img sha256 5fc20f9039436441df6c1944c867bdef917882b3555d6a0519d70103e509cad7
Kapattığı: Düz kontrol biçimi iki gerçek firmware yanıtı verdi; sonraki ayrım SET yanıtının ayrıştırılmasıydı. R211'de ayrıca CLM ve escan tamamlandı.
Risk: Düşük — yalnız çerçeve başlığı düzeni değişir; içerik, sıra ve kredi aynı. Özellik kapatılarak geri alınır.
R195Sohbet UART özeti — bağımsız makbuz yokSET yanıtı · feature bağımlılığı
SET cevabı ayrıştırması ve FWREADY çelişkisi
Değişiklik / kapsam: R194'te eşleşmeyen SET yanıtı için rpi5-wifi-set-reply özelliği denendi; R195b'deki kesin feature bağımlılığı mühürlü imajla sabitlenmedi.
Neden bu sırada: R194'te üçüncü 43B bus:txglom SET yanıtı fiziksel olarak görülmüş ama eski parser REPLIED=2'de kalmıştı.
Sohbet UART özetinde R195b FWSTAGE OK=1, NVRAM OK=1, UI/PRESENT çalışırken 74 saniye FWREADY görülmedi; PREINIT başlamadı. firmware/rpi5-wifi-scan-r195-profile.txt yanlışlıkla R181 DAT_INHIBIT planını taşıyor ve bu koşunun makbuzu değildir. R196 profilindeki 'R195 FWREADY' iddiasıyla çelişki çözülmedi; R195 ham UART mühürlü değil.
Kapattığı: SET ayrıştırmasının başarılı olduğunu kanıtlamaz; FWREADY ve preinit ayrı kapılar olarak izlendi.
Risk: Feature bağımlılığı ve açılış sırası birlikte etkilenmiş olabilir; bu kayıt tek değişkenli kök neden kanıtı değildir.
R196Sohbet UART özeti — bağımsız makbuz yokhost DATA kapısı
İlk F1 isteğinden önce sınırlı host DATA reseti
Değişiklik / kapsam: F1 INTSTATUS CMD53 busy kapısı 100.000 pasif yoklamada açılmazsa tek SOFTWARE_RESET.DAT; yalnız host konfigürasyonu korunursa devam.
Neden bu sırada: R196 profilindeki temel gözlem, FWREADY'den sonraki ilk F1 isteğinin DAT_INHIBIT nedeniyle issue edilmemesidir.
firmware/rpi5-wifi-scan-r196-profile.txt bir aday/ön kabul metnidir; R197 profili R196'nın FWREADY'ye ulaşıp preinit göndermeden düştüğünü söyler. R195'le çelişen FWREADY anlatımı için bağımsız mühürlü R196 ham UART yok.
Kapattığı: Resetin uygulandığı bildirilir, ancak ilk preinit yanıtı ya da tarama kanıtlanmadı; R197 yazılım giriş kapılarını tanıladı.
Risk: Host DATA reseti koşullu olmalı; kart/firmware reseti sanılmamalı.
R197Sohbet UART özeti — bağımsız makbuz yoksession/request tanısı
FWREADY geldi, ilk preinit çıkmadı
Değişiklik / kapsam: R196 radyo davranışı korunarak WIFISCAN_INIT, WIFISCAN_REQUEST ve sonuç makbuzları eklendi.
Neden bu sırada: FWREADY'yi görmek session.start ve ilk F2 preinit yazmasının başarıyla gerçekleştiği anlamına gelmiyordu.
Sohbet karşılaştırmasında FWREADY yaklaşık 60 saniyede görüldü; PREINIT SENT=0. INTSTATUS clear CMD52, ERROR_STATUS=0x0010 verse bile FWREADY kapısını engellemedi. r197-profile.txt plan/diagnostic içerir, ham UART mührü yok.
Kapattığı: FWREADY ile ilk F2 gönderimini ayırdı; sonraki INTSTATUS-clear varyantları R198/R199'da denendi.
Risk: 0x0010 hatası başarı diye yeniden etiketlenmemeli; neden-sonuç çıkarımı özet makbuzla sınırlı.
R198Sohbet UART özeti — bağımsız makbuz yokINTSTATUS clear A/B
CMD52 başarısızlığından sonra CMD53 retry — FWREADY kayboldu
Değişiklik / kapsam: INTSTATUS clear için CMD52'den sonra CMD53 retry eklendi; diğer yolun aynı kaldığı sohbet tablosunda bildirildi.
Neden bu sırada: R197'de CMD52 clear 0x0010 vermişti; bunun sonraki preinit'i etkileyip etkilemediği sınanmak istendi.
Sohbet UART özetinde 92 saniyede FWREADY yok, preinit yok. r198-profile.txt R197 metninin kopyasıdır; bu varyantı bağımsız doğrulamaz. Ham UART mühürlü değil.
Kapattığı: Retry FWREADY'yi iyileştirmedi; clear yolunun zamanlama/yan etki riski R199 varyantlarında ayrıldı.
Risk: Özet farkı nedensellik ispatı değildir; retry'nin tek sebep olduğu söylenemez.
R199aSohbet UART özeti — bağımsız makbuz yokINTSTATUS clear A/B
INTSTATUS clear atlandı
Değişiklik / kapsam: R197'deki clear işlemi atlanarak FWREADY davranışı karşılaştırıldı.
Neden bu sırada: Clear hatalı dönse de R197 FWREADY gördüğü için işlemin gerekip gerekmediği ayrı sınandı.
Sohbet tablosu: yaklaşık 83 saniye FWREADY yok, preinit yok; preissue reset ve PRESENT de görülmedi. r199a-profile.txt R197 kopyası, R199a ham arşivi yok.
Kapattığı: Clear'ı atlamak iyileştirmedi; R199b kontrollü çift-clear zamanını denedi.
Risk: Bu özet başka boot varyansını dışlamaz; tarama PASS değildir.
R199bSohbet UART özeti — bağımsız makbuz yokINTSTATUS clear A/B
CMD52 → 200 µs → CMD52
Değişiklik / kapsam: İlk CMD52 clear başarısızsa 200 µs beklenip ikinci CMD52 yazıldı.
Neden bu sırada: R199a atlama denemesi FWREADY'yi geri getirmedi; tek clear'ın oturma süresi olasılığı ölçülmek istendi.
Sohbet karşılaştırması FWREADY yok, preinit yok; preissue reset/PRESENT görüldü. r199b-profile.txt R197 kopyasıdır; ayrı mühürlü raw yok.
Kapattığı: İki clear da FWREADY kapısını açmadı; R199c tek clear öncesi beklemeyi ayırdı.
Risk: 200 µs değeri yalnız sohbet özetine dayanır; kesin kök neden çıkarılmaz.
R199cSohbet UART özeti — bağımsız makbuz yokINTSTATUS clear A/B
1 ms bekleme → CMD52
Değişiklik / kapsam: Clear'dan önce 1 ms beklendi, ardından tek CMD52 uygulandı.
Neden bu sırada: R199b çift yazma başarısızdı; clear öncesi zamanlama ayrı sınandı.
Sohbet tablosunda FWREADY yok ve preinit yok; preissue reset/PRESENT görüldü. r199c-profile.txt R197 kopyasıdır; ham UART mühürlü değil.
Kapattığı: Bu varyantlar sonuç vermeyince R200, R197'nin erken clear yoluna dönüp pre-session F2 tanı blokunu ayırdı.
Risk: R198/R199 karşılaştırması yön gösterir; mühürlü tek-değişken nedensel kanıt değildir.
R200Fiziksel UART/profil — ham kayıt mühürsüzF2 FIFO sahipliği
Pre-session F2 tanı okuması kaldırıldı
Değişiklik / kapsam: R197'nin erken INTSTATUS-clear yolu korunurken session.start sonrası beş F2 debug okuması, DAT reseti ve 19 ms bekleme kaldırıldı; birlikte bağlı bir tanı bloku değişti.
Neden bu sırada: Bu blok transport açılmadan F2 verisini tüketiyor veya host DATA motorunu bozuyor olabilirdi.
r200/r201 profillerindeki fiziksel özet: ilk boot CR4 öncesi durdu; ikinci boot FWREADY_MS=55 ve tx_window=21 içeren 12B header-only F2 zarfı aldı. Sonraki stale-latch okuması INTSTATUS=0x00800000 iken 0x0020 ile düştü; PREINIT SENT=0. Ham UART mühürlü değil.
Kapattığı: Header-only zarf kontrol yanıtı değildi; receive_pending latch'i R201'de ayrı ele alındı.
Risk: Blok birden çok bağlı davranış içerdiğinden hangi alt parçanın etkili olduğu tek başına ayrılmadı.
R201Fiziksel UART/profil — ham kayıt mühürsüzRX pending latch
Boş 12B zarf sonrası receive_pending temizlendi
Değişiklik / kapsam: Tam header-only Event/Data zarfından sonra receive_pending temizlenir; yalnız yeni FRAME_IND/mailbox ile yeniden kurulur.
Neden bu sırada: R200'de yeni interrupt olmadan ikinci F2 okuması zorlanmış ve 0x0020 ile düşmüştü.
r201/r202 profillerine göre iki boot FWREADY_MS=55'e ulaştı; ilk 48B preinit F2 yazması kabul edildi, ikinci 64B yazma DATA_TIMEOUT=0x0010 ile durdu. Ham UART mühürlü değil.
Kapattığı: Preinit başladı; R202 tam 64B yazmayı CMD53 byte-mode ile ayrı denedi.
Risk: Taze bildirim olmadan bekleyen ikinci çerçeveyi kaçırma olasılığı fiziksel RX ile sınanmalıydı.
R202Fiziksel UART/profil — ham kayıt mühürsüz64B F2 taşıması
64 bayt preinit yazmalarında CMD53 byte-mode
Değişiklik / kapsam: Yalnız 64B F2 yazması block-mode yerine byte-mode; payload, kredi ve hata kabulü sabit.
Neden bu sırada: R201'in ikinci 64B preinit aktarımı iki boot'ta DATA_TIMEOUT verdi.
r203 profiline göre FWREADY ve dört preinit yazması ile ilk sıradan kontrol isteği çıktı; F2 yazmalarında DATA_CRC=0x0020, F1 INTSTATUS okumalarında 0x0060 kaldı. Konsol discard edilmiş SDPCM frame bildirdi. Escan tamamlanmadı; raw mühürsüz.
Kapattığı: Boyut kipi ilk TX duvarını açtı fakat RX/CRC ve firmware kabulü belirsizdi; R203 saat A/B'si kuruldu.
Risk: Tamamlanmış CRC-only F2 yazması kontrol yanıtı veya geçerli firmware çerçevesi değildir.
R203Fiziksel UART/profil — ham kayıt mühürsüzSDIO saat A/B
Runtime SDIO saatini 50 → 25 MHz indirme
Değişiklik / kapsam: Firmware staging sonrası clock divider 0x02→0x04; diğer R202 davranışı korunur.
Neden bu sırada: R202'de F2 DATA_CRC ve INTSTATUS okuma end-bit/CRC görüldüğü için hız etkisi yalıtıldı.
r204 profilindeki fiziksel özet: iki boot ikinci 64B preinit yazmasında DATA_TIMEOUT=0x0010 verdi; iyileşme yok. R203 profil dosyası yalnız plan/ön kabul içerir; ham UART mühürlü değil.
Kapattığı: 25 MHz onarım sayılmadı; 50 MHz R202 tabanına dönülüp R204 düz sıradan kontrol çerçevesi denendi.
Risk: Saat değişimi ilk preinit'e varmayan boot'ta yorumlanamaz; iki varışlı koşu ayrıca belirtildi.
R204Fiziksel UART/profil — ham kayıt mühürsüzkontrol çerçevesi
Preinit korunurken düz revinfo kontrolü
Değişiklik / kapsam: Dört ölçülen preinit çerçevesi korunup sıradan kontrol rpi5-wifi-plain-control ile 104B glom yerine 96B düz kodlandı.
Neden bu sırada: R194 düz ilk kontrolde iki yanıt almıştı; R202 glomlu revinfo yanıtlanmadı.
r205 profiline göre ikinci boot PREINIT=4/4, ilk 96B istek SENT=1 ve FRAME_IND=1; dört INTSTATUS CMD53 data hatası ve ardından F2 RX DATA_CRC, yanıt ayrıştırılamadı. Ham UART mühürlü değil.
Kapattığı: Çerçeve çıktı ama RX yolu temiz değildi; R205 INTSTATUS okumayı CMD52×4 ile ayırdı.
Risk: R194'ün başka preinit sırası, R204 için otomatik yanıt garantisi değildir.
R205Fiziksel UART/profil — ham kayıt mühürsüzINTSTATUS okuma
INTSTATUS dört denetimli CMD52 ile okundu
Değişiklik / kapsam: Yalnız SDIO core INTSTATUS (+0x20), atomik CMD53 yerine checked CMD52×4; host-idle koşulu korunur.
Neden bu sırada: R204'te FRAME_IND sonrası INTSTATUS CMD53 okumaları hata bütçesini tüketti.
r206 profiline göre iki boot FWREADY ve PREINIT=4/4 gördü; CMD52×4 yolu DATA reset gerektirmedi, fakat ilk 96B düz kontrol yazması DATA_TIMEOUT=0x0010 ile düştü (SENT=0). Ham UART mühürlü değil.
Kapattığı: Okuma yolu açıldı ama ilk kontrol TX düşüyordu; R206 R194'te yanıt alan kısa bootstrap'a döndü.
Risk: Dört ayrı bayt okuması atomik 32-bit snapshot değildir; tüm baytlar checked değilse fail-closed.
R206Fiziksel UART/profil — ham kayıt mühürsüzR194 bootstrap A/B
Preinit/revinfo kapatılıp düz MAC GET ile başlandı
Değişiklik / kapsam: İlk istek R194 gibi plain GET cur_etheraddr; preinit ve revinfo-first birlikte devre dışı (tek bağımsız değişken değil, bootstrap paketi).
Neden bu sırada: R205'te 96B revinfo yazması iki boot'ta timeout verdi; daha kısa ve önceden cevaplanmış R194 yoluyla A/B kuruldu.
r207 profiline göre FWREADY_MS=55; ilk F2 kontrol yazmasından önce F1 backplane Write32 0x18004040, DATA_CRC=0x0020; SENT=0. Ham UART mühürlü değil.
Kapattığı: İlk kontrol değerlendirilmedi; R207, R194'ün D0 pull-up konfigürasyonunu geri ekledi.
Risk: Preinit'in yanlış olduğunu kanıtlamaz; iki başlangıç davranışı beraber değişmiştir.
R207Fiziksel UART/profil — ham kayıt mühürsüzSDIO pull-up
D0 CLK none, CMD/DAT pull-up geri getirildi
Değişiklik / kapsam: rpi5-wifi-sdio-pulls özelliği R206'ya eklendi; diğer çerçeve/clock/INTSTATUS ayarları sabit.
Neden bu sırada: R206 F1 DATA_CRC ile ilk isteğe varamadı; R193/R194 aynı kartta doğru pad pull'larıyla yanıt görmüştü.
r208 profiline göre iki boot'ta SDIOPULL 6/6, firmware/NVRAM ve FWREADY geçti; yedi düz MAC GET gönderildi, 11 trial sonunda REPLIED=0. Ham UART mühürlü değil.
Kapattığı: Hat düzeldi ama kontrol yanıtı yoktu; R208 R194'ün atomik CMD53 INTSTATUS yolunu geri aldı.
Risk: Pull-up başarıyla geri okunsa bile tek başına firmware cevabı değildir.
R208Fiziksel UART/profil — ham kayıt mühürsüzINTSTATUS A/B
CMD52×4 yerine atomik CMD53 INTSTATUS
Değişiklik / kapsam: rpi5-wifi-intstatus-cmd52 çıkarıldı; SDIO core INTSTATUS tek CMD53 ile okundu.
Neden bu sırada: R207'nin yedi isteği cevapsızdı; R194 aynı pull-up+düz çerçeveyle CMD53 yolunda iki yanıt almıştı.
r209 profiline göre 11 trialda yedi MAC GET, REPLIED=0; FIFO_READS=1 boş zarf, 1891 CMD53 okuması; escan başlamadı. Ham UART mühürlü değil.
Kapattığı: Atomik okuma tek başına yeterli değildi; R209 pre-session F2 debug blokunu geri aldı.
Risk: R194 farkının yalnız INTSTATUS okuması olduğu varsayılmamalıydı.
R209Fiziksel UART/profil — ham kayıt mühürsüzpre-session F2
R194 pre-session F2 tanı bloku geri geldi
Değişiklik / kapsam: rpi5-wifi-runtime-owned-fifo çıkarıldı: beş erken F2 okuması, kredi enjeksiyonu, DAT reset ve 19 ms bekleme birlikte döndü.
Neden bu sırada: R208'de FIFO_READS=1 ve REPLIED=0; R194'ün cevaplanan bootstrap'ında bu blok vardı.
r210 profilindeki fiziksel özet: WIFIDBG R194 ile aynı, yedi 48B MAC GET fakat REPLIED=0 ve FIFO_READS=1; CMD53 yazma/CRC/timeout sayımı temiz. Ham UART mühürlü değil.
Kapattığı: Pre-session blok yeterli değildi. Kod incelemesi post-send F2 debug okumasının yanıt baytlarını parser'a vermeden attığını gösterdi; R210 yalnız onu çıkardı.
Risk: Tek feature anahtarı birden çok bağlı davranışı değiştirir; R209 sonucu alt etkilere ayrı ayrı bağlanamaz.
R210Fiziksel UART/profil — ham kayıt mühürsüzF2 yanıt sahipliği
Post-send ham F2 okuması çıkarıldı — üç kontrol yanıtı
Değişiklik / kapsam: rpi5-wifi-f2-post-send çıkarıldı; kontrol yazmasından sonraki F2 baytları artık tanıda tüketilip atılmaz.
Neden bu sırada: R209 yedi temiz MAC GET'e rağmen REPLIED=0 idi; post-send dalı RX başlığını basıp tüm FIFO verisini discard ediyordu.
R211 profiline kaydedilen fiziksel gözlem: SENT=3 REPLIED=3 (MAC GET, version GET, bus:txglom SET). Sonraki 1400B CLM parçası 1448B düz çerçeve oluşturdu, F2 512B planlama sınırında WriteFifo InvalidArgument verdi; CMD53W_INCOMPLETE=0. R210 ham UART mühürlü değil.
Kapattığı: İlk üç kontrol yanıtı gerçekti, tarama yoktu; CLM aktarım boyutu R211'de tek değişken olarak küçültüldü.
Risk: Yanıt başarısı CLM veya escan PASS değildir.
R211Fiziksel UART/profil — ham kayıt mühürsüzCLM · escan
CLM 448B dilimler ve fiziksel Wi-Fi tarama PASS
Değişiklik / kapsam: CLM_CHUNK_LEN 1400→448; 28B plain başlık + 20B envelope + 448B = 496B, F2'nin 512B sınırı altında.
Neden bu sırada: R210'da kontrol yanıtları gelmişti, fakat 1448B ilk CLM çerçevesi SDIO komutu issue edilmeden InvalidArgument ile reddedildi.
Pi 5 TFTP açılışında gözlenen ve firmware/rpi5-wifi-scan-r211-profile.txt'ye yazılan sonuç: FWSTAGE OK=1, NVRAM OK=1, FWREADY_MS=55, üç ilk kontrol yanıtı, altı CLM yanıtı/CLM_ACK=2676, WIFIPROTO READY=1, escan ScanAccepted, BSS/RSSI/kanal/SSID, WIFISCAN_RESULT GEN=2/5/6 STATUS=Complete COUNT=16 TRUNCATED=1. Ham UART dosyası henüz bağımsız mühürlü arşiv değildir; USB bellek yeniden yazılmadı.
build/rpi5-wifi-scan-r211/aselsanos-rpi5-radio.img sha256 4fa0cc4883e736be7e2133184e51b539ade5699d9ba88ee42671e853dcde3b90
Kapattığı: Pasif Wi-Fi tarama kapısı geçti; association/WPA/ping ve Bluetooth ayrı kanıt ister. 16 kayıt sınırı TRUNCATED=1 üretir.
Risk: Sabit NVRAM macaddr=b8:27:eb:74:f2:6c kart-özel kimlik olarak doğrulanmalı; R211 ham UART tekrarı mühürlenmeli.
R212Planlı — kodlanmadıtarama sonrası kanıt ve kimlik
R211 tarama tekrarını mühürle; kapasite ve MAC kimliğini ayır
Değişiklik / kapsam: R211 ham UART'ı bağımsız tekrar koşusunda mühürle; 16 kayıt sınırı ve NVRAM sabit MAC için ayrı A/B kabul testleri planla.
Neden bu sırada: R211 escan GEN=2/5/6 Complete ile tarama kapandı; kalanlar sonuç sunumu ve kart-özel kimlik sınırlarıdır.
Planlıdır; R212 imajı veya fiziksel PASS yok. R211 profilindeki UART gözlemi mühürsüz olarak etiketlenir.
Kapattığı: Tarama başarısı değil; tekrar edilebilir kanıt, liste kapasitesi ve MAC kimliği.
Risk: Ham UART arşivlemesi salt-okunur; davranış değişiklikleri ayrıca onaylanıp bağımsız denenmelidir.
BT-1Ayrı hat — CR4'ten bağımsızC18
Bluetooth patchram (.hcd) hattı
Değişiklik / kapsam: BCM4345C0.raspberrypi,5-model-b.hcd karta konur; HCI Reset'ten sonra patchram indirme dizisi eklenir.
Neden bu sırada: 83 mühürlü koşuda TX=4 / ANSWERED=0. Linux aynı çipi BCM4345C0 diye tanıyıp bu yamayı yüklüyor; dosya bizde yok. Wi-Fi CR4 duvarıyla değişken paylaşmaz, paralelde yürütülebilir.
BTHCI ANSWERED= PATCH_BYTES= PATCH_OK=
Kapattığı: C18.
Risk: Düşük — ayrı UART, ayrı çip bloğu. Wi-Fi yolunu etkilemez.
Bu merdiven, koşulan ve planlanan adımları kanıt düzeyiyle ayırır. R194 son mühürlü tarihsel radyo koşusudur; R195–R199 sohbet özetleri bağımsız makbuz değildir, R200–R211 profil/UART gözlemlerinin ham akışı henüz mühürlü değildir. Bazı adımlar tek değişken değil, birleşik bootstrap veya feature paketidir; kartlarında açıkça belirtilir. R211 pasif tarama PASS'ıdır, ağa bağlanma ya da Bluetooth PASS'ı değildir; R212 yalnız plandır.