Am 8. April 2025 16:09:58 UTC schrieb Guenter Roeck <li...@roeck-us.net>:
>On 4/6/25 11:08, Bernhard Beschow wrote:
>[ .. ]
>
>>>> Yeah, it works with Buildroot as described in the handbook. When I append
>>>> `-netdev user,id=net0 -device virtio-net-pci,netdev=net0` on the cli I can
>>>> `wget http://www.google.com` successfully. When I omit it there is no
>>>> network connectivity. This is with a 6.6.23 vendor kernel.
>>>>
>>>
>>> I had no luck with virtio-net-pci. virtio-pci works for me, but I can not
>>> get real PCI devices
>>> (such as nvme or scsi adapters) to work.
>>
>> I now tested with the latest Buildroot recipe, changing to upstream kernel
>> version 6.14 and using the defconfig. The `wget` command still works for me
>> with virtio-net-pci. However, I can confirm that I need your xhci patches
>> for the usb storage device to be detected.
>>
>
>Following up on this, my problem is that adding "-netdev user,id=net0 -device
>virtio-net-pci,netdev=net0"
>to the command line adds a _second_ Ethernet interface, in addition to the
>default one.
>This results in
> qemu-system-arm: warning: nic imx.enet.0 has no peer
>reported when qemu starts.
I get this too when using virtio-net-pci successfully.
>
>I can not get that second interface to work, probably because of some
>userspace issue.
>
>Anyway, I never see any interrupts on the virtual PCI interface. From
>/proc/interrupts:
>
>277: 0 PCI-MSI 524288 Edge virtio0-config
>278: 0 PCI-MSI 524289 Edge virtio0-input.0
>279: 0 PCI-MSI 524290 Edge virtio0-output.0
I get:
206: 0 0 0 0 PCI-MSI 524288 Edge
virtio0-config
207: 3 0 0 0 PCI-MSI 524289 Edge
virtio0-input.0
208: 8 0 0 0 PCI-MSI 524290 Edge
virtio0-output.0
Note that I'm using four CPUs, i.e. `-smp 4`.
>
>That may work for virtio-net-pci, but it doesn't work for other PCI(e) drivers.
>If I try to attach any other PCIe devices, the device is reported with lspci
>but
>then its initialization times out because it does not get any interrupts.
Indeed, trying with e1000e:
205: 0 0 0 0 PCI-MSI 0 Edge PCIe PME
206: 74 0 0 0 PCI-MSI 524288 Edge
eth1-rx-0
207: 20 0 0 0 PCI-MSI 524289 Edge
eth1-tx-0
208: 32 0 0 0 PCI-MSI 524290 Edge eth1
But I get this repeatedly with varying CPUs:
[ 14.657163] e1000e 0000:01:00.0 eth1: NIC Link is Up 1000 Mbps Full Duplex,
Flow Control: Rx/Tx
[ 19.980452] e1000e 0000:01:00.0 eth1: NETDEV WATCHDOG: CPU: 0: transmit
queue 0 timed out 5312 ms
[ 19.982491] e1000e 0000:01:00.0 eth1: Reset adapter unexpectedly
>
>Tt turns out that sabrelite has the same problem.
Did it work with QEMU 9.2?
Best regards,
Bernhard
>
>Please let me know if you have an idea how to get the interrupts to work.
>
>Thanks,
>Guenter
>