qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [PATCH 0/4] ARM: Add support for a generic PCI Express


From: Claudio Fontana
Subject: Re: [Qemu-devel] [PATCH 0/4] ARM: Add support for a generic PCI Express host bridge
Date: Wed, 7 Jan 2015 15:26:37 +0100
User-agent: Mozilla/5.0 (Windows NT 6.1; rv:24.0) Gecko/20100101 Thunderbird/24.0.1

On 07.01.2015 15:07, Alexander Graf wrote:
> 
> 
> 
>> Am 07.01.2015 um 14:52 schrieb Claudio Fontana <address@hidden>:
>>
>> Hi Alexander, happy new year!
>>
>>> On 06.01.2015 17:03, Alexander Graf wrote:
>>> Linux implements a nice binding to describe a "generic" PCI Express host 
>>> bridge
>>> using only device tree.
>>>
>>> This patch set adds enough emulation logic to expose the parts that are
>>> "generic" as a simple sysbus device and maps it into ARM's virt machine.
>>>
>>> With this patch set, we can finally spawn PCI devices on ARM VMs. I was able
>>> to have a fully DRM enabled virtual machine with VGA, e1000 and XHCI (for
>>> keyboard and mouse) up and working.
>>>
>>> It's only a small step for QEMU, but a big step for ARM VM's usability.
>>
>> I tried to test your patches, but I get in trouble quite early:
>>
>> I usually run qemu-system-aarch64 for pci for OSv with the following command 
>> line (using the patches from Alvise):
>>
>> ./qemu-system-aarch64 -nographic -machine type=virt -enable-kvm -kernel 
>> ./loader.img -cpu host -m 1024M -drive 
>> file=usr.img,if=none,id=hd0,media=disk -device 
>> virtio-blk-pci,id=blk0,bootindex=0,drive=hd0,scsi=off,vectors=0 -device 
>> virtio-rng-pci -netdev 
>> user,id=un0,net=xxx.xxx.xxx.xxx/xx,host=xxx.xxx.xxx.xxx -redir tcp:2222::22 
>> -device virtio-net-pci,netdev=un0,vectors=0
>>
>> and with this series I get:
>>
>> qemu-system-aarch64: Unknown device 'gpex-pcihost' for default sysbus
>>
>> Is there something I need to mention in the command line to enable the 
>> gpex-pcihost maybe?
> 
> If I had to guess I'd say you're missing the object file in your binary. Did 
> you run configure again after applying the patches?
> 
> Alex

Yes I did but it seems it's not picking up the CONFIG_PCI_GENERIC=y for some 
reason.
If I force hw/pci-host/Makefile.objs to build it by making it a common-obj-y 
then it builds.

I see the CONFIG_PCI_GENERIC in default-configs/arm-softmmu.mak,

and there is a default-configs/aarch64-softmmu.mak which says

include arm-softmmu.mak

but still it does not seem to pick it up over here..

while it picks up the CONFIG_PCI from the other mak files for example.

Wierd.. does it build on AArch64 for you? Or did you test only 32bit?

Ciao,

Claudio

> 
>>
>> Thank you,
>>
>> Claudio
>>
>>
>>>
>>>
>>> Happy new year!
>>>
>>> Alexander Graf (4):
>>>  pci: Split pcie_host_mmcfg_map()
>>>  pci: Add generic PCIe host bridge
>>>  arm: Add PCIe host bridge in virt machine
>>>  arm: enable Bochs PCI VGA
>>>
>>> default-configs/arm-softmmu.mak |   3 +
>>> hw/arm/virt.c                   |  83 +++++++++++++++++++--
>>> hw/pci-host/Makefile.objs       |   1 +
>>> hw/pci-host/gpex.c              | 156 
>>> ++++++++++++++++++++++++++++++++++++++++
>>> hw/pci/pcie_host.c              |   9 ++-
>>> include/hw/pci-host/gpex.h      |  56 +++++++++++++++
>>> include/hw/pci/pcie_host.h      |   1 +
>>> 7 files changed, 302 insertions(+), 7 deletions(-)
>>> create mode 100644 hw/pci-host/gpex.c
>>> create mode 100644 include/hw/pci-host/gpex.h
>>>



reply via email to

[Prev in Thread] Current Thread [Next in Thread]