On 4/8/25 12:57, Bernhard Beschow wrote:
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`.
I think I found it. Previously I needed to add .psci_conduit to struct
arm_boot_info.
No idea why; without it, the kernel would crash almost immediately. Now it seems
that _adding_ that line causes the PCIe hiccup. Oh well :-(. Sorry for the
noise.
Guenter