🛠 Débriquage FEL/xfel et boot SPI NOR sur le Lichee RV Dock

Sipeed Lichee RV Dock (Allwinner D1 / T-Head XuanTie C906) · avance · Schéma : IMG-sipeed-lichee-rv-dock-avance-3-licheerv-fel-xfel-spi-recovery.svg — chaîne de récupération du Lichee RV Dock : bouton FEL du Dock forçant le BROM Allwinner en mode FEL sur le port USB-C, outil xfel côté PC lisant la DRAM/exécutant un SPL en RAM, et pastille SPI NOR SOP8 soudée sur le Dock pour un boot autonome sans microSD

Objectifs

Quand la microSD est morte ou le bootloader corrompu, le D1 reste récupérable grâce au BROM Allwinner : en maintenant le bouton FEL du Dock puis en alimentant via l'USB-C du module, la puce attend un outil FEL. L'utilitaire open source xfel (xboot/xfel) parle ce protocole : lire l'identifiant de puce, envoyer un SPL+OpenSBI+U-Boot en DRAM et démarrer sans toucher au stockage — la porte de secours pour rebriquer la carte, mais aussi la voie de production : le Dock embarque une pastille SPI NOR (empreinte SOP8) et le module des pastilles SD-NAND, pour un boot autonome sans carte. Ce tutoriel couvre les deux.

Matériel

Code complet

# 1) Entrer en FEL : maintenir FEL, brancher l'USB-C, relâcher
lsusb | grep -i '1f3a:efe'          # Allwinner FEL (1f3a = sunxi)
sudo xfel version                    # version du BROM détectée
sudo xfel sid                        # ID unique de la puce

# 2) Démarrer un SPL en RAM sans toucher au stockage (ex. image Buildroot) :
sudo xfel write 0x200000 u-boot-sunxi-with-spl.bin   # adresse SPL D1
sudo xfel exec 0x200000                              # saute dedans
# -> U-Boot démarre sur la série, peut booter un kernel depuis l'USB/TFTP

# 3) Reprogrammer le SPI NOR (puce soudée sur l'empreinte SOP8 du Dock) :
sudo xfel spiflash id                # la NOR répond ?
sudo xfel spiflash erase 0 -l $((16*1024*1024))
sudo xfel spiflash write 0 u-boot-sunxi-with-spl.bin
#   puis retirer le mode FEL : le BROM boote le SPL SPI quand la microSD est absente

# 4) Dépannage bas niveau :
sudo xfel read 0x4100000 64 -o dram.bin   # lire la DRAM (test)
sudo xfel help spiflash

Vérification attendue

En maintenant FEL à la mise sous tension, lsusb montre un périphérique 1f3a:efe8 (BROM FEL) et sudo xfel version affiche la version du BROM — preuve que la liaison USB est vivante même carte « briquée ». xfel write + xfel exec font démarrer U-Boot, visible sur la console série. Après programmation SPI et retrait de la microSD, la carte redémarre seule sur le SPL du NOR : le boot continue sans carte, validant un montage sans fente accessible.

Erreurs fréquentes

Autres tutoriels pour cette carte

Exemples de code pour cette carte

← Retour à la fiche 🛠 Tous les tutoriels