uboot cartão mmc já particionado

0

Eu tenho alguns problemas com um hwpartition de um armazenamento eMMC soldado em um módulo integrado i.MX6:

TX6UL U-Boot > mmc info
Device: FSL_SDHC
Manufacturer ID: 11
OEM: 100
Name: 004G6 
Tran Speed: 52000000
Rd Block Len: 512
MMC version 5.0
High Capacity: Yes
Capacity: 8 MiB
Bus Width: 4-bit
Erase Group Size: 4 MiB
HC WP Group Size: 4 MiB
User Capacity: 8 MiB WRREL
Boot Capacity: 2 MiB ENH
RPMB Capacity: 512 KiB ENH
GP1 Capacity: 8 MiB WRREL
GP2 Capacity: 1.8 GiB ENH WRREL

TX6UL U-Boot > mmc hwpartition set user wrrel on complete
Partition configuration:
        No enhanced user data area
        User partition write reliability: on
        No GP1 partition
        No GP2 partition
        No GP3 partition
        No GP4 partition
Card already partitioned
Failed!

Então parece que o mmc já foi particionado por hardware antes. De acordo com o patch , uma vez que ele é particionado por hardware, não é reversível.

Não há realmente nenhuma maneira de reparticionar o eMMC soldado novamente? Tenho que jogar fora todo o módulo i.MX6 e comprar um novo se precisar de outro particionamento de hardware?

    
por Achim 07.09.2016 / 22:27

1 resposta

2

Sim - o particionamento de hardware é uma operação permanente que só pode ser executada uma vez. Você precisará substituir seu eMMC ou obter uma nova placa se desejar refazer o particionamento de hardware.

O particionamento de hardware (não confundir com o particionamento "normal" usando programas como o fdisk) inclui:

  • Indo para o modo avançado (MLC- > SLC)
  • Particionando as GPP (General Purpose Partitions)
  • Ativando o modo de confiabilidade de gravação.

Essas configurações são armazenadas no registro ECSD (Extended CSD) no eMMC, que é onde o uBoot está lendo essas configurações.

Do padrão 4.51 JEDEC (página 19):

Boot and RPMB Area Partitions' sizes and attributes are defined by the memory manufacturer (read-only), while General Purpose Area Partitions' sizes and attributes can be programmed by the host only once in the device life-cycle (one-time programmable).

Olhando para a sua saída, parece que a confiabilidade de gravação já foi definida, então faz sentido que ela não possa ser particionada novamente.

    
por 21.03.2017 / 21:08