]> git.ipfire.org Git - thirdparty/u-boot.git/commit
virtio: mmio: Return error codes on probe failures
authorKuan-Wei Chiu <visitorckw@gmail.com>
Tue, 7 Apr 2026 09:49:00 +0000 (09:49 +0000)
committerTom Rini <trini@konsulko.com>
Wed, 22 Apr 2026 17:07:55 +0000 (11:07 -0600)
commit70101c3217aec849d509040554ef0cf7c0f1ef56
tree998e1ca58b719deba637de8393bbaa6e49107605
parent7fbed708d92879a8b199f5113d5e3c3db51c43d3
virtio: mmio: Return error codes on probe failures

Currently, virtio_mmio_probe() returns 0 when it encounters an invalid
magic value, an unsupported version, or a dummy device (ID 0). In
U-Boot's driver model, returning 0 indicates a successful probe. This
causes the system to incorrectly register and activate invalid or
placeholder devices, potentially leading to undefined behavior or
crashes later on.

Update the probe function to return appropriate error codes (-ENODEV
for invalid magic values and dummy devices, and -ENXIO for unsupported
versions). This fix correctly instructs the DM to abort the binding
process.

Fixes: fdc4aca89ecb ("virtio: Add virtio over mmio transport driver")
Signed-off-by: Kuan-Wei Chiu <visitorckw@gmail.com>
Acked-by: Daniel Palmer <daniel@thingy.jp>
drivers/virtio/virtio_mmio.c