如何在不修改主线源代码的情况下添加新的QEMU机器类型?

问题描述 投票:0回答:3
imu.

pi

pandaboard。 我知道Meego的Qemu叉子支持Pandaboard,但我试图坚持使用Apt-Get软件包管理器可以管理的主流QEMU。现在,QEMU现在支持Beagleboard Rev C和Beagleboard XM,这些XM以前仅在Meego Fork中得到支持。

无需重新编译QEMU或编写代码?

arm qemu raspberry-pi device-emulation pandaboard
3个回答
4
投票
没有。必须有一些特定于设备仿真的代码,例如覆盆子Pi或Pandaboard实施视频输出的方式。这不仅仅是几个配置文件。

我已经能够用

qemu-system-arm -M <MachineType>

https://raspberry.stackexchange.com/questions/165/165/emulation-on-a-a-linux-pc/53991#53991

后来在QEMU 2.6中添加。 Maybe此功能可以实现,请参阅我添加新平台设备的经验:

1
投票
,我只需要添加一条线即可将新设备附加到

-M versatilepb

-M raspi2
因此,也许我们可以拥有一个包含类型行的配置文件:

versatilepb 相关:开林设备:

如何创建doftree qemu设备?

从技术上讲,这是不可能在编译QEMU中添加新机器类型的,但也许您可以通过从网站下载QEMU树的另一个副本来添加它,但是您需要知道一件事:

您必须向机器及其源代码添加一个
sysbus_create_simple("lkmc_platform_device", 0x101e9000, pic[18]);

type name regid irq sysbus lkmc_platform_device 0x101e9000 18
文件。这可以通过指定要调用的计算机,然后将计算机类型添加到
meson.build

目录中的文件和Kconfig文件中来完成。在其中,您应该将

Kconfig

0
投票
meson.build

添加到

hw

文件中。完成这些步骤后,开始制作机器代码。

一旦您完成这些步骤,您现在可以尝试编译QEMU。如果您遇到错误,说它无法编译,请检查代码或配置文件。仔细检查您的机器类型是否有效很重要。
如果您使用添加的机器类型成功编译QEMU,则应对其进行测试。使用您考虑的参数并将其输入机器。 一个例子是:
subdir('machine_name')
我在QEMU副本中添加的机器类型是VMapple,这是一个最初由Alexander Graf开发的项目,该项目是从github上的S-U命令。
结论,在编译或没有代码的情况下,不可能为Qemu创建新的机器类型,从技术上讲,没有参数可以创建新机器(如果有的话,这是很酷的),但是可以添加它是Qemu的未编译的树。
我希望这会有所帮助! 
	
最新问题
© www.soinside.com 2019 - 2025. All rights reserved.