-
Porter SerenityOS sur du matériel réel
- J'ai décidé de m'impliquer davantage dans le projet SerenityOS parce que la base de code ne s'exécutait qu'avec QEMU et ne tournait pas sur du matériel réel. Pour résoudre ce problème, j'ai choisi un Chromebook Dell 3100.
-
Pourquoi choisir un Chromebook
- Les Chromebook sont abordables et faciles à trouver, et la puce de sécurité Cr50 permet de déboguer même en mode verrouillé. J'ai choisi le modèle Dell 3100 car il est bon marché, et son clavier était meilleur que celui des modèles plus haut de gamme.
-
Problème avec cros_ec
- La puce Cr50 du Chromebook est utile pour le débogage, mais elle ne fonctionnait pas correctement sur le modèle Dell 3100. J'ai essayé plusieurs hacks matériels, sans succès.
-
Recherche d'alternatives
- La puce Cr50 ne fonctionnant pas, j'ai mis en place une solution de débogage alternative avec une carte Raspberry Pi Pico. Cela a permis de connecter l'UART et la flash SPI pour rendre le débogage possible.
-
Côté logiciel
- J'ai utilisé CircuitPython pour implémenter la connexion avec un périphérique USB, et implémenté le protocole serprog en CircuitPython pour flasher l'EEPROM.
-
Débogage de SerenityOS
- Pour déboguer le noyau SerenityOS, j'ai configuré Alpine Linux et mis en place un environnement qui télécharge et teste automatiquement le noyau via GRUB.
-
Comprendre le 16550 UART
- Le 16550 UART est une interface standard pour la communication série présente sur la plupart des PC. Cependant, sur le Dell 3100, il est implémenté avec du MMIO, ce qui a rendu le débogage initial difficile.
-
Implémentation du pilote eMMC
- Pour implémenter le pilote eMMC, j'ai compris la différence entre SD et MMC, et mis en œuvre la séquence d'initialisation. J'ai découvert qu'un mauvais réglage du registre de contrôle de l'alimentation était le problème, puis je l'ai corrigé.
-
Conclusion
- Ce projet a duré six mois et a constitué une étape importante pour faire fonctionner SerenityOS sur du matériel réel. Davantage de débogage et d'améliorations restent nécessaires.
1 commentaires
Avis sur Hacker News