Après un respring, SpringBoard restait bloqué dans IOServiceClose : la sortie TV émulée ne produisait que deux interruptions pour toute la vie de QEMU. Chaque soumission est désormais traitée, avec masque et acquittement indépendants. Le LCD sépare également ses registres d’état et de masque.
Le reset matériel réinitialise les états LCD, MIPI, TV et tactile, ainsi que l’IRQ SPI. Le périphérique MIPI est désormais réalisé par la machine, ce qui permet réellement d’appeler son reset. Les commandes ipod-emu respring -W et ipod-emu reset -W synchronisent la NAND, attendent les nouveaux marqueurs du journal et vérifient le déverrouillage.
Validation sur des sessions séparées iPhone OS 2.2.1 (5H11a) et 2.1.1 (5F138) : trois resprings et deux resets complets par firmware, PID QEMU/relais conservés, fichier témoin persistant, HTTP local et calculatrice au premier plan. Le tactile permet 7 × 8 = 56 après les relances sur les deux versions.
Tests reproductibles ajoutés : trois régressions d’affichage sous ASan/UBSan ; neuf tests tactile/SPI passent, dont un reset au milieu d’un transfert ; cinq tests du lanceur ; trois resets QMP/QTest des vrais périphériques d’affichage, CPU arrêté et NAND en lecture seule. test-display-session.py reproduit les cycles natifs avec un firmware local. Documentation et passation mises à jour.
La session utilisateur sur VNC 5900 conserve le binaire précédemment déployé. Le correctif est prêt à être installé après merge. Aucun changement Docker Compose ni firmware distribué.
Après un `respring`, SpringBoard restait bloqué dans `IOServiceClose` : la sortie TV émulée ne produisait que deux interruptions pour toute la vie de QEMU. Chaque soumission est désormais traitée, avec masque et acquittement indépendants. Le LCD sépare également ses registres d’état et de masque.
Le reset matériel réinitialise les états LCD, MIPI, TV et tactile, ainsi que l’IRQ SPI. Le périphérique MIPI est désormais réalisé par la machine, ce qui permet réellement d’appeler son reset. Les commandes `ipod-emu respring -W` et `ipod-emu reset -W` synchronisent la NAND, attendent les nouveaux marqueurs du journal et vérifient le déverrouillage.
Validation sur des sessions séparées iPhone OS 2.2.1 (5H11a) et 2.1.1 (5F138) : trois resprings et deux resets complets par firmware, PID QEMU/relais conservés, fichier témoin persistant, HTTP local et calculatrice au premier plan. Le tactile permet `7 × 8 = 56` après les relances sur les deux versions.
Tests reproductibles ajoutés : trois régressions d’affichage sous ASan/UBSan ; neuf tests tactile/SPI passent, dont un reset au milieu d’un transfert ; cinq tests du lanceur ; trois resets QMP/QTest des vrais périphériques d’affichage, CPU arrêté et NAND en lecture seule. `test-display-session.py` reproduit les cycles natifs avec un firmware local. Documentation et passation mises à jour.
La session utilisateur sur VNC 5900 conserve le binaire précédemment déployé. Le correctif est prêt à être installé après merge. Aucun changement Docker Compose ni firmware distribué.
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Après un
respring, SpringBoard restait bloqué dansIOServiceClose: la sortie TV émulée ne produisait que deux interruptions pour toute la vie de QEMU. Chaque soumission est désormais traitée, avec masque et acquittement indépendants. Le LCD sépare également ses registres d’état et de masque.Le reset matériel réinitialise les états LCD, MIPI, TV et tactile, ainsi que l’IRQ SPI. Le périphérique MIPI est désormais réalisé par la machine, ce qui permet réellement d’appeler son reset. Les commandes
ipod-emu respring -Wetipod-emu reset -Wsynchronisent la NAND, attendent les nouveaux marqueurs du journal et vérifient le déverrouillage.Validation sur des sessions séparées iPhone OS 2.2.1 (5H11a) et 2.1.1 (5F138) : trois resprings et deux resets complets par firmware, PID QEMU/relais conservés, fichier témoin persistant, HTTP local et calculatrice au premier plan. Le tactile permet
7 × 8 = 56après les relances sur les deux versions.Tests reproductibles ajoutés : trois régressions d’affichage sous ASan/UBSan ; neuf tests tactile/SPI passent, dont un reset au milieu d’un transfert ; cinq tests du lanceur ; trois resets QMP/QTest des vrais périphériques d’affichage, CPU arrêté et NAND en lecture seule.
test-display-session.pyreproduit les cycles natifs avec un firmware local. Documentation et passation mises à jour.La session utilisateur sur VNC 5900 conserve le binaire précédemment déployé. Le correctif est prêt à être installé après merge. Aucun changement Docker Compose ni firmware distribué.