This series adds a simple implementation of legacy/native mode switching for PCI IDE controllers and updates the via-ide device to use it.
The approach I take here is to add a new pci_ide_update_mode() function which handles management of the PCI BARs and legacy IDE ioports for each mode to avoid exposing details of the internal logic to individual PCI IDE controllers. As noted in [1] this is extracted from a local WIP branch I have which contains further work in this area. However for the moment I've kept it simple (and restricted it to the via-ide device) which is good enough for Zoltan's PPC images whilst paving the way for future improvements after 8.2. Signed-off-by: Mark Cave-Ayland <mark.cave-ayl...@ilande.co.uk> [1] https://lists.gnu.org/archive/html/qemu-devel/2023-10/msg05403.html Mark Cave-Ayland (2): ide/pci.c: introduce pci_ide_update_mode() function hw/ide/via: implement legacy/native mode switching hw/ide/pci.c | 90 ++++++++++++++++++++++++++++++++++++++++++++ hw/ide/via.c | 20 +++++++++- include/hw/ide/pci.h | 1 + 3 files changed, 109 insertions(+), 2 deletions(-) -- 2.39.2