Добрый день. Может быть у кого-то есть опыт работы с u-boot? У меня возникла проблема на одноплатнике (кастомном): uboot не может определить таблицу разделов на emmc (в то же время загруженный дистрибутив без проблем работает с этой же emmc).
* U-Boot > mmc dev 2
...
CMD_TRACE:
...
CMD_SEND:8
ARG 0x000001AA
RET: -19 , 0xffffffed
MMC_RSP_R1,5,6,7 0x2FF67610
CMD_SEND:55
ARG 0x00000000
RET: -19 , 0xffffffed
MMC_RSP_R1,5,6,7 0x2FF67610
...
CMD_SEND:8
ARG 0x00000000
RET: -19 , 0xffffffed
MMC_RSP_R1,5,6,7 0x00000900
...
===> mmc_bread: buff start=0, cur=1, value=0x2ef575e0
===> mmc_bread: blkcnt=1
===> test_block_type error 1: (buffer[DOS_PART_MAGIC_OFFSET + 0] != 0x55) || (buffer[DOS_PART_MAGIC_OFFSET + 1] != 0xaa)
bad MBR sector signature: 0x9966
===> test_part_dos error: test_block_type(buffer) != DOS_MBR
switch to partitions #0, OK
mmc2(part 0) is current device
Паспорт устройства читается без каких-либо проблем:
* U-Boot > mmc info
Device: FSL_SDHC
Manufacturer ID: 90
OEM: 14a
Name: H8G1e
Tran Speed: 52000000
Rd Block Len: 512
MMC version 5.0
High Capacity: Yes
Capacity: 7.3 GiB
Bus Width: 1-bit
Erase Group Size: 512 KiB
HC WP Group Size: 8 MiB
User Capacity: 7.3 GiB WRREL
Boot Capacity: 4 MiB ENH
RPMB Capacity: 512 KiB ENH
Загруженный дистрибутив нормально определяет память и работает с ней:
# fdisk -l /dev/mmcblk3
Disk /dev/mmcblk3: 7.3 GiB, 7818182656 bytes, 15269888 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x3f1bef1e
Device Boot Start End Sectors Size Id Type
/dev/mmcblk3p1 2048 133119 131072 64M 83 Linux
Может быть у кого-нибдуь есть идеи, почему такое с uboot может быть? Что за ошибка -19 (не могу нигде найти описание кода ошибки)? Благодарю.