如何查明整个内核是否已加载到 RAM 中

如何查明整个内核是否已加载到 RAM 中

我有一块带有 NOR 闪存、DDR3、eMMC 和 CPU 的定制板。 Uboot 工作正常,我可以将 Linux 内核下载/上传到 eMMC。当我运行应用程序时,内核仅在第一阶段之后启动。它因错误而卡在第二阶段。错误:未找到 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

相关内容