У меня проблемы с разделом U-Boot mmc hw хранилища eMMC, припаянным к встроенному модулю 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!
Итак, похоже, что MMC уже был аппаратно разбит на разделы раньше. Согласно патчу , если он разделен на аппаратные части, это необратимо.
Неужели нет возможности заново переделать распаянную eMMC? Должен ли я выбросить весь модуль i.MX6 и купить новый, если мне понадобится другое аппаратное разделение?
Да - аппаратное разделение является постоянной операцией, которую можно выполнить только один раз. Вам придется заменить eMMC или приобрести новую плату, если вы хотите повторно выполнить аппаратную разметку.
Аппаратная разметка (не путать с "обычной" разметкой с помощью программ типа fdisk) включает в себя:
Эти настройки хранятся в регистре ECSD (Extended CSD) в eMMC, откуда uBoot и считывает эти настройки.
Из стандарта 4.51 JEDEC (стр. 19):
Размеры и атрибуты разделов загрузочной и RPMB областей определяются производителем памяти (только для чтения), в то время как размеры и атрибуты разделов области общего назначения Размеры и атрибуты разделов общего назначения могут быть запрограммированы хостом только только один раз в жизненном цикле устройства (одноразовое программирование).
Глядя на ваш вывод, кажется, что надежность записи уже установлена, поэтому логично, что ее нельзя переразделить.