🛠 Installer et booter le système sur un SSD NVMe (M.2 M-Key)

Radxa ROCK 3B (Rockchip RK3568) · intermediaire · Schéma : IMG-radxa-rock-3b-intermediaire-1-rock3b-boot-nvme.svg — Radxa ROCK 3B avec SSD NVMe 2280 vissé dans le slot M.2 M-Key, chaîne de boot BootROM → SPI NOR → NVMe, touche de recovery et mode MaskROM

Objetivos

Aprovechar el slot M.2 M-Key 2280 de la ROCK 3B — eléctrico PCIe 3.0 x2 (confirmado por el device tree mainline que activa el controlador pcie3x2; la «x1» del artículo de CNX es una errata, su propia lista de especificaciones indica x2) — para instalar Radxa OS en un SSD NVMe y arrancar desde él. También verá la recuperación en modo MaskROM cuando el bootloader está dañado.

Hardware

Código completo

# 1. Depuis Radxa OS sur microSD : vérifier vue et vitesse du lien
sudo lspci -vv | grep -A2 -i nvme    # attendu : LnkSta Speed 8GT/s (Gen3), Width x2
sudo fdisk -l | grep nvme            # /dev/nvme0n1

# 2. Écrire une image système directement sur le NVMe (depuis le PC) :
#    balenaEtcher / Rufus / dd ciblent /dev/nvme0n1 — voir docs « Install the
#    system to NVME » ; le chargeur U-Boot est posé sur la SPI NOR de la carte.
sudo dd if=radxa-os.img of=/dev/nvme0n1 bs=4M status=progress conv=fsync

# 3. Benchmark (DÉTRUIT les données du disque cible — SSD vierge uniquement)
sudo apt install fio
sudo fio --name=nvme --rw=randrw --bs=4k --size=512M --runtime=30 \
     --filename=/dev/nvme0n1 --ioengine=libaio --direct=1 --group_reporting

# 4. Recouvrement si la carte ne boote plus (MaskROM) :
#    éteindre -> maintenir la touche de recovery -> USB-C vers le PC ->
#    lsusb : « Rockchip USB Peripheral » ; puis rkdeveloptool ld / wl / rst.
#    Si le bootloader SPI est vérouillé : page docs « Clear SPI Flash manually ».

Verificación esperada

Tras reiniciar sin microSD: lsblk muestra / en /dev/nvme0n1, lspci muestra el enlace a 8 GT/s con ancho x2, y fio supera ampliamente a SATA (hasta ~1,5 GB/s en secuencial según el SSD). En MaskROM, lsusb lista el dispositivo Rockchip y rkdeveloptool ld responde.

Errores frecuentes

Otros tutoriales para esta placa

Ejemplos de código para esta placa

← Volver a la ficha 🛠 Todos los tutoriales