저는 NOR 플래시, DDR3, eMMC 및 CPU를 갖춘 맞춤형 보드를 가지고 있습니다. Uboot는 잘 작동하며 Linux 커널을 eMMC에 다운로드/업로드할 수 있습니다. 애플리케이션을 실행하면 커널은 첫 번째 단계 이후에만 시작됩니다. 오류로 인해 2단계에서 멈췄습니다. 오류: rootfs를 찾을 수 없습니다.
Uboot에서 RAMBOOT 명령을 실행하면 전체 이미지가 RAM에 업로드되었는지 확인할 수 있나요? 임피던스 값이 잘못된 것인지 알고 싶습니다. 아니면 다른 것이라면.
제대로 업로드된 것 같습니다. 아래 로그를 참조하세요.
4107712 bytes read in 759 ms (5.2 MiB/s)
## Loading kernel from FIT Image at 740000000 ...
Using 'custom_emmc' configuration
Trying 'kernel' kernel subimage
Description: Linux kernel
Type: Kernel Image
Compression: gzip compressed
Data Start: 0x7400000c4
Data Size: 3825195 Bytes = 3.6 MiB
Architecture: AArch64
OS: Linux
Load Address: 0x700080000
Entry Point: 0x700080000
Verifying Hash Integrity ... OK
## Loading ramdisk from FIT Image at 740000000 ...
Using 'custom_emmc' configuration
Trying 'ramdisk' ramdisk subimage
Description: ramdisk
Type: RAMDisk Image
Compression: uncompressed
Data Start: 0x7403a5f98
Data Size: 233472 Bytes = 228 KiB
Architecture: AArch64
OS: Linux
Load Address: unavailable
Entry Point: unavailable
Verifying Hash Integrity ... OK
## Loading fdt from FIT Image at 740000000 ...
Using 'custom_emmc' configuration
Trying 'fdt_custom_emmc' fdt subimage
Description: Flattened Device Tree blob
Type: Flat Device Tree
Compression: uncompressed
Data Start: 0x7403e7ff4
Data Size: 9897 Bytes = 9.7 KiB
Architecture: AArch64
Verifying Hash Integrity ... OK
Booting using the fdt blob at 0x7403e7ff4
Uncompressing Kernel Image
Loading Ramdisk to 703fc7000, end 704000000 ... OK
Loading Device Tree to 0000000703fc1000, end 0000000703fc66a8 ... OK
Reserved memory region for spin-table: addr=77ff04be8 size=18
Starting kernel ...
Starting kernel ...
00:00:00 Stage 1 booted. Starting stage2 boot @ 649 ms
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!! ERROR at line: 1065, errno: 2 error: No such file or directory
!!!! MSG: No rootfs_data partition could be found!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
00:00:00 Overall: 41 ms, ubifs = 1 ms
00:00:02 Starting application...
편집: Uboot를 조정하면 다음과 같은 결과가 나타납니다.
앞으로:mtdparts=spi0.0:1m(Uboot),256k(Env),256k(Env.bk),20m(Linux),20m(linux.bk)
뒤쪽에:mtdparts=spi0.0:1m(Uboot),256k(Env),256k(Env.bk),20m(Linux),20m(linux.bk),32m(rootfs_data)
Starting kernel ...
[ 3.975684] blk_update_request: I/O error, dev mmcblk0, sector 0 op 0x0:(READ) flags 0x0 phys_seg 1 prio class 0
[ 4.510251] blk_update_request: I/O error, dev mmcblk0, sector 1 op 0x0:(READ) flags 0x0 phys_seg 1 prio class 0
[ 5.044804] blk_update_request: I/O error, dev mmcblk0, sector 2 op 0x0:(READ) flags 0x0 phys_seg 1 prio class 0
[ 5.579362] blk_update_request: I/O error, dev mmcblk0, sector 3 op 0x0:(READ) flags 0x0 phys_seg 1 prio class 0
[ 6.113917] blk_update_request: I/O error, dev mmcblk0, sector 4 op 0x0:(READ) flags 0x0 phys_seg 1 prio class 0
[ 6.648469] blk_update_request: I/O error, dev mmcblk0, sector 5 op 0x0:(READ) flags 0x0 phys_seg 1 prio class 0
[ 7.183045] blk_update_request: I/O error, dev mmcblk0, sector 6 op 0x0:(READ) flags 0x0 phys_seg 1 prio class 0
[ 7.717610] blk_update_request: I/O error, dev mmcblk0, sector 7 op 0x0:(READ) flags 0x0 phys_seg 1 prio class 0
[ 7.727829] Buffer I/O error on dev mmcblk0, logical block 0, async page read
00:00:16 Timeout. Device /dev/mmcblk0p1 not found
00:00:16
00:00:16 Devices found:
.
..
mmcblk0boot0
mmcblk0boot1
mmcblk0
ubi_ctrl
i2c-155
i2c-154
i2c-153
i2c-152
i2c[ 16.350287] reboot: Restarting system