This series contains a bunch of mischallaneous fixes to the BIOSEMU codebase to get display output working in u-boot using an Aspeed AST2600 PCIE VGA card on a RISC-V system that doesn't support I/O ports. This was tested by passing the card through to a qemu riscv64 VM, but should work on any board supporting PCIe in u-boot.
v2 of this series only contains the first 5 patches from v1, which are misc fixes to drivers/bios_emulator. Based on the feedback from v1, the last 3 patches implementing a aspeed_video driver/overriding the biosemu functionality in a hacky manner have been dropped. This will be implemented in a manner where the video driver can provide custom ops that override biosemu's read/write calls, and will be sent in the future. There some checkpatch warnings, but these are from existing pieces of code that I've copied/refer to, so I haven't tried fixing/changing them. Signed-off-by: Anirudh Srinivasan <[email protected]> --- Changes in v2: - Dropped patches 6-8. Those will be implemented using custom ops for reads/writes that the driver can override (like Simon suggested) and be sent at a later date - Cleaned up typos based on Simon's feedback - Changed BE_inw to use 2 BE_inb calls instead of VGA_inb - Link to v1: https://patch.msgid.link/20260719-aspeed_vbios_fixes-v1-0-c94026f28...@oss.tenstorrent.com --- Anirudh Srinivasan (5): bios_emulator: select X86EMU_RAW_IO only on x86 bios_emulator: don't free a caller-supplied BIOS image in biosemu_run bios_emulator: use driver-model functions for PCI config acceses bios_emulator: support 16-bit reads on VGA port bios_emulator: extend VGA I/O ports to include ports 0x3B4-0x3DA drivers/bios_emulator/Kconfig | 4 ++-- drivers/bios_emulator/atibios.c | 2 +- drivers/bios_emulator/besys.c | 50 ++++++++++++++++++++++++++++++++--------- 3 files changed, 43 insertions(+), 13 deletions(-) --- base-commit: 5c215cb75c3723cbf77c36cbac3e60b001721c79 change-id: 20260718-aspeed_vbios_fixes-d4890ce2587c Best regards, -- Anirudh Srinivasan <[email protected]>
