1

我按照以下步骤构建和刷新我的内核QEMU

  1. make ARCH=arm distclean
  2. make ARCH=arm versatile_defconfig
  3. make ARCH=arm menuconfig
    在这里您需要启用以下功能。
    Kernel Features ---> [*] 使用ARM EABI编译内核。(启用此功能)。
  4. make ARCH=arm CROSS_COMPILE=arm-none-linux-gnueabi- uImage
  5. qemu-system-arm -M versatilepb -m 128M -kernel arch/arm/boot/uImage -append "console=tty1"
    在这里你会得到控制台说内核恐慌。为避免这种情况,请传递您的rootfs参数。
    我猜你是从busybox构建的rootfs,如果是这样的话,试试下面的命令来完全引导系统
  6. qemu-system-arm -M versatilepb -m 128M -kernel arch/arm/boot/uImage -initrd rootfs.img -append "root=/dev/ram mem=128M rdinit=/sbin/init" -serial stdio

在运行时,内核是否使用设备树来加载设备?如果是,如何确认以及设备树位于何处?(我需要对设备树文件(.dts)进行更改,但无法找到该文件的位置)请帮助

4

1 回答 1

2

设备树位于arch/arm/boot/dts/versatile-pb.dts

于 2014-03-16T17:04:22.607 回答