Não é possível acessar a partição nand ou emmc do linux

1

Eu tenho uma placa baseada em i.mx6 rodando usando buildroot e linux. Esta placa tem dois armazenamentos, nand e emmc. O nand tinha rootfs completos e kernel em si mesmo. Estou agora a arrancar a partir do cartão SD. Nos logs de inicialização, consigo ver a partição nand e emmc sendo detectada

[    3.440294] 5 ofpart partitions found on MTD device gpmi-nand
[    3.446084] Creating 5 MTD partitions on "gpmi-nand":
[    3.451148] 0x000000000000-0x000000200000 : "boot"
[    3.456431] 0x000000200000-0x000000500000 : "scratch"
[    3.461632] 0x000000500000-0x000000b00000 : "kernel"
[    3.467091] 0x000000b00000-0x000001100000 : "recovery"
[    3.472521] 0x000001100000-0x000010000000 : "rootfs"
[    3.481312] gpmi-nand 112000.gpmi-nand: driver registered.

e emmc

[    4.318175]  mmcblk0: p1 p2

Eu posso ver que os dispositivos para nand são registrados e mostrados em /dev/mtd* . Agora estou usando nand and mmc-utils fornecido pelo buildroot. Eu estou tentando escrever alguns dados em nand como este.Escrevendo um arquivo de texto simples test.txt,

#nandwrite -b 1 -n /dev/mtd0 -p /test.txt

Veja o log de erros completo em PasteBin

#flash_erase /dev/mtd0

flash_erase: error!: no start erase block specified
flash_erase: error!: no erase block count specified
flash_erase: error!: Try '--help' for more information

Alguém pode dizer a maneira correta / passos a serem seguidos em caso de interação nand, sd. Eu segui este tópico

StackExchange: como-posso-apagar-flash-mtd0

Da mesma forma, não consigo fazer flash ou fazer nada com o emmc.

#mmc status get /dev/mmcblk0
SEND_STATUS response: 0x00000900

Isso parece ok, mas como realmente escrever ou apagar mmc? Existem muitos comandos associados com mmc, e não sei qual devo usar,

página de manual do mmc-utils

Mais algumas verificações

# mtdinfo 
Count of MTD devices: 5
Present MTD devices: mtd0, mtd1, mtd2, mtd3, mtd4
Sysfs interface supported: yes
# mtd
mtd_debug mtdev-test mtdev2tuio mtdinfo
# mtdev
mtdev-test mtdev2tuio
# mtdev-test 
Usage: mtdev <device>
# mtdev-test /dev/mtd0
error: could not grab the device

Eu estou supondo que talvez alguns dispositivos estejam bloqueados, mas como verificar isso?

Quais são os pré-requisitos / etapas para acessar o nand?

    
por android_noob_xx 14.10.2018 / 09:41

0 respostas