linux 如何在QEMU x86_x64上启用M25P80闪存设备仿真

clj7thdc  于 2023-04-20  发布在  Linux
关注(0)|答案(1)|浏览(357)

我尝试在QEMU(Linux)上启用ST M25 P80模拟器,以便使用MTD/mtd-utils进行访问:The ST M25P80 allows you to emulate all SPI flash devices based on the m25p80 command set
在QEMU启动期间,我没有看到任何这些设备被调用,所以我假设我必须以某种方式手动启用它们。我在x86上运行,所以没有设备树或u-boot。我也没有访问硬件模拟器的Kconfig,因为我运行的是旧版本的QEMU。
主要是停留在如何启用m25 p80模拟器以及如何将其“连接”到MTD子系统上。
最终目标是使用mtd子系统通过模拟的SPI接口与M25 P80仿真器进行通信,以执行基本任务(读、写、锁定等)。
我对QEMU/Linux还比较陌生,所以如果我没有正确地描述它,我道歉。
我尝试用mtd设备(不是专门的M25 p80)according to these instructions引导QEMU

des4xlb0

des4xlb01#

QEMU不支持为x86-64客户机创建这种设备。M25 P80设备仿真是一个SPI设备,必须连接到具有SSI总线的控制器。QEMU中的所有仿真SSI控制器都是硬连线到板模型中的,大多数是Arm的。没有“PCI卡上的SSI控制器”或类似的模型,可以让您将控制器插入x86-64机器类型,然后将M25 P80插入该控制器。
这是QEMU设计的一个更一般方面的一个特定案例:它不是一组“乐高积木”,然后你可以随意地连接在一起,它是一组特定机器类型的模型(例如x86 PC、使用aspeed SoC的Arm板)。这些机器类型中的一些支持特定种类的可插拔设备,就像PC机类型支持可插拔PCI设备的方式一样。但是作为一个终端-用户唯一的灵活性是将可插拔设备类型插入到支持该设备类型的机器类型中。你可以插入一个新的PCI图形卡,但你通常不会尝试将新的芯片焊接到主板上。

相关问题