[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH v2 00/10] Resolve isabus global
From: |
Bernhard Beschow |
Subject: |
Re: [PATCH v2 00/10] Resolve isabus global |
Date: |
Mon, 30 Jan 2023 17:05:01 +0000 |
+ Mark whom I've discussed "multiple ISA buses" before
Am 26. Januar 2023 21:17:30 UTC schrieb Bernhard Beschow <shentey@gmail.com>:
>This series resolves the global "isabus" variable and is basically a v2 of [1].
>
>Note that the majority of the work consists of fixing ISA API calls in PIIX IDE
>
>which implicitly rely on the usage of the isabus global.
>
>
>
>Rather than adding an ISABus pointer in PCIIDEState as in [1] this series uses
>
>a qemu_irq array which is roughly the approach outlined in [2]. Moreover, this
>
>series considers backwards compatibility for user-created PIIX IDE
>
>"Frankensten" devices by fishing out TYPE_ISA_BUS from the QOM tree inside
>
>the PIIX IDE device model. This hack can be removed again once a deprecation
>
>period of user-createable PIIX IDE devices is over. This deprecation wasn't
>
>announced yet but now might be a good time.
>
>
>
>This series is structured as follows: The first three patches massage the ISA
>
>code for patch 8. Patches 4-8 change the PIIX IDE device models to not use the
>
>isabus global implicitly. Finally, the last two patches clan up and remove the
>
>isabus singleton.
>
>
>
>Based-on: <20230109172347.1830-1-shentey@gmail.com>
>
> 'Consolidate PIIX south bridges'
>
>
>
>v2:
>
>- Big rework sticking closer to [1], giving it more credit and reusing one
>patch
>
>- Add io port cleanup
>
>- Rebase onto [4] so changes to PIIX could be done once and centrally
>
>
>
>Testing done:
>
>* `make check`
>
>* `./qemu-system-x86_64 -M x-remote -device piix3-ide` still fails gracefully
>with
>
> `qemu-system-x86_64: -device piix3-ide: No ISA bus found while piix3-ide
> requires one`
>
>* `qemu-system-x86_64 -M pc -m 2G -cdrom
>manjaro-kde-21.3.2-220704-linux515.iso`
>
>* `qemu-system-x86_64 -M q35 -m 2G -device piix4-ide -cdrom \
>
> manjaro-kde-21.3.2-220704-linux515.iso`
>
>* `qemu-system-mips64el -M malta -kernel vmlinux-3.2.0-4-5kc-malta -hda \
>
> debian_wheezy_mipsel_standard.qcow2 -append "root=/dev/sda1 console=ttyS0"`
>
>
>
>[1] https://patchew.org/QEMU/20210518215545.1793947-1-philmd@redhat.com/
>
>[2] https://lists.nongnu.org/archive/html/qemu-devel/2020-03/msg01707.html
>
>[3] https://people.debian.org/~aurel32/qemu/mips/
>
>[4] 20230109172347.1830-1-shentey@gmail.com/">https://patchew.org/QEMU/20230109172347.1830-1-shentey@gmail.com/
>
>
>
>Bernhard Beschow (9):
>
> softmmu/ioport: Move portio_list_init() in front of portio_list_add()
>
> softmmu/ioport: Merge portio_list_add() into portio_list_init()
>
> softmmu/ioport: Remove unused functions
>
> hw/ide/piix: Disuse isa_get_irq()
>
> Revert "hw/ide: Fix crash when plugging a piix3-ide device into the
>
> x-remote machine"
>
> hw/ide/pci: Add PCIIDEState::isa_irqs[]
>
> hw/ide/piix: Require an ISABus only for user-created instances
>
> hw/ide: Let ide_init_ioport() take a MemoryRegion argument instead of
>
> ISADevice
>
> hw/isa/isa-bus: Resolve isabus global
>
>
>
>Philippe Mathieu-Daudé (1):
>
> hw/isa: Remove use of global isa bus
>
>
>
> include/exec/ioport.h | 8 ++---
>
> include/hw/ide/internal.h | 3 +-
>
> include/hw/ide/pci.h | 2 ++
>
> include/hw/isa/isa.h | 15 ++++----
>
> hw/audio/adlib.c | 4 +--
>
> hw/display/qxl.c | 5 ++-
>
> hw/display/vga.c | 8 ++---
>
> hw/dma/i82374.c | 6 ++--
>
> hw/ide/ioport.c | 19 +++++-----
>
> hw/ide/isa.c | 4 ++-
>
> hw/ide/piix.c | 75 +++++++++++++++++++++++++++++++--------
>
> hw/isa/isa-bus.c | 54 +++++++++++++++-------------
>
> hw/isa/piix.c | 5 +++
>
> hw/watchdog/wdt_ib700.c | 4 +--
>
> softmmu/ioport.c | 70 +++++++++++-------------------------
>
> 15 files changed, 149 insertions(+), 133 deletions(-)
>
>
>
>-- >
>2.39.1
>
>
>
- [PATCH v2 04/10] hw/ide/piix: Disuse isa_get_irq(), (continued)
- [PATCH v2 04/10] hw/ide/piix: Disuse isa_get_irq(), Bernhard Beschow, 2023/01/26
- [PATCH v2 07/10] hw/ide/piix: Require an ISABus only for user-created instances, Bernhard Beschow, 2023/01/26
- [PATCH v2 10/10] hw/isa/isa-bus: Resolve isabus global, Bernhard Beschow, 2023/01/26
- [PATCH v2 08/10] hw/ide: Let ide_init_ioport() take a MemoryRegion argument instead of ISADevice, Bernhard Beschow, 2023/01/26
- [PATCH v2 06/10] hw/ide/pci: Add PCIIDEState::isa_irqs[], Bernhard Beschow, 2023/01/26
- [PATCH v2 05/10] Revert "hw/ide: Fix crash when plugging a piix3-ide device into the x-remote machine", Bernhard Beschow, 2023/01/26
- [PATCH v2 09/10] hw/isa: Remove use of global isa bus, Bernhard Beschow, 2023/01/26
- [PATCH v2 03/10] softmmu/ioport: Remove unused functions, Bernhard Beschow, 2023/01/26
- Re: [PATCH v2 00/10] Resolve isabus global,
Bernhard Beschow <=