qemu-ppc
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH v5 00/11] hw/isa/vt82c686: Implement relocation and toggling


From: Bernhard Beschow
Subject: Re: [PATCH v5 00/11] hw/isa/vt82c686: Implement relocation and toggling of SuperI/O functions
Date: Sun, 14 Jan 2024 14:03:56 +0000


Am 14. Januar 2024 13:03:07 UTC schrieb "Michael S. Tsirkin" <mst@redhat.com>:
>On Sun, Jan 14, 2024 at 12:52:53PM +0000, Bernhard Beschow wrote:
>> 
>> 
>> Am 14. Januar 2024 12:39:00 UTC schrieb Bernhard Beschow <shentey@gmail.com>:
>> >This series implements relocation of the SuperI/O functions of the VIA south
>> >
>> >bridges which resolves some FIXME's. It is part of my via-apollo-pro-133t
>> >
>> >branch [1] which is an extension of bringing the VIA south bridges to the PC
>> >
>> >machine [2]. This branch is able to run some real-world X86 BIOSes in the 
>> >hope
>> >
>> >that it allows us to form a better understanding of the real vt82c686b 
>> >devices.
>> >
>> >Implementing relocation and toggling of the SuperI/O functions is one step 
>> >to
>> >
>> >make these BIOSes run without error messages, so here we go.
>> >
>> >
>> >
>> >The series is structured as follows: Patches 1-3 prepare the TYPE_ISA_FDC,
>> >
>> >TYPE_ISA_PARALLEL and TYPE_ISA_SERIAL to relocate and toggle 
>> >(enable/disable)
>> >
>> >themselves without breaking encapsulation of their respective device states.
>> >
>> >This is achieved by moving the MemoryRegions and PortioLists from the device
>> >
>> >states into the encapsulating ISA devices since they will be relocated and
>> >
>> >toggled.
>> >
>> >
>> >
>> >Inspired by the memory API patches 4-6 add two convenience functions to the
>> >
>> >portio_list API to toggle and relocate portio lists. Patch 5 is a 
>> >preparation
>> >
>> >for that which removes some redundancies which otherwise had to be dealt 
>> >with
>> >
>> >during relocation.
>> >
>> >
>> >
>> >Patches 7-9 implement toggling and relocation for types TYPE_ISA_FDC,
>> >
>> >TYPE_ISA_PARALLEL and TYPE_ISA_SERIAL. Patch 10 prepares the pegasos2 
>> >machine
>> >
>> >which would end up with all SuperI/O functions disabled if no -bios 
>> >argument is
>> >
>> >given. Patch 11 finally implements the main feature which now relies on
>> >
>> >firmware to configure the SuperI/O functions accordingly (except for 
>> >pegasos2).
>> >
>> >
>> >
>> >v5:
>> >
>> >* Use cpu_physical_memory_write() in pegasos2 (Zoltan)
>> >
>> >* Use an int as for loop variable (Zoltan)
>> >
>> >
>> >
>> >v4:
>> >
>> >* Drop incomplete SuperI/O vmstate handling (Zoltan)
>> >
>> >
>> >
>> >v3:
>> >
>> >* Rework various commit messages (Zoltan)
>> >
>> >* Drop patch "hw/char/serial: Free struct SerialState from MemoryRegion"
>> >
>> >  (Zoltan)
>> >
>> >* Generalize wording in migration.rst to include portio_list API (Zoltan)
>> >
>> >
>> >
>> >v2:
>> >
>> >* Improve commit messages (Zoltan)
>> >
>> >* Split pegasos2 from vt82c686 patch (Zoltan)
>> >
>> >* Avoid poking into device internals (Zoltan)
>> >
>> >
>> >
>> >Testing done:
>> >
>> >* `make check`
>> >
>> >* `make check-avocado`
>> >
>> >* Run MorphOS on pegasos2 with and without pegasos2.rom
>> >
>> >* Run Linux on amigaone
>> >
>> >* Run real-world BIOSes on via-apollo-pro-133t branch
>> >
>> >* Start rescue-yl on fuloong2e
>> >
>> >
>> >
>> >[1] https://github.com/shentok/qemu/tree/via-apollo-pro-133t
>> >
>> >[2] https://github.com/shentok/qemu/tree/pc-via
>> >
>> >
>> >
>> >Bernhard Beschow (11):
>> >
>> >  hw/block/fdc-isa: Move portio_list from FDCtrl to FDCtrlISABus
>> >
>> >  hw/block/fdc-sysbus: Move iomem from FDCtrl to FDCtrlSysBus
>> >
>> >  hw/char/parallel: Move portio_list from ParallelState to
>> >
>> >    ISAParallelState
>> >
>> 
>> 
>> >  exec/ioport: Resolve redundant .base attribute in struct
>> >
>> >    MemoryRegionPortio
>> >
>> >  exec/ioport: Add portio_list_set_address()
>> >
>> >  exec/ioport: Add portio_list_set_enabled()
>> >
>> >  hw/block/fdc-isa: Implement relocation and enabling/disabling for
>> >
>> >    TYPE_ISA_FDC
>> >
>> >  hw/char/serial-isa: Implement relocation and enabling/disabling for
>> >
>> >    TYPE_ISA_SERIAL
>> >
>> >  hw/char/parallel-isa: Implement relocation and enabling/disabling for
>> >
>> >    TYPE_ISA_PARALLEL
>> >
>> 
>> Ping for the above six patches. These are critical for this series and 
>> haven't had comments from maintainers for five iterations, so pardon for the 
>> annoyance.
>
>Was hoping for more reviews. Oh well.
>Tagged.

You made my day. Thanks!

>
>
>> Best regards,
>> Bernhard
>> 
>> >  hw/ppc/pegasos2: Let pegasos2 machine configure SuperI/O functions
>> >
>> >  hw/isa/vt82c686: Implement relocation and toggling of SuperI/O
>> >
>> >    functions
>> >
>> >
>> >
>> > docs/devel/migration.rst       |  6 ++--
>> >
>> > hw/block/fdc-internal.h        |  4 ---
>> >
>> > include/exec/ioport.h          |  4 ++-
>> >
>> > include/hw/block/fdc.h         |  3 ++
>> >
>> > include/hw/char/parallel-isa.h |  5 +++
>> >
>> > include/hw/char/parallel.h     |  2 --
>> >
>> > include/hw/char/serial.h       |  2 ++
>> >
>> > hw/block/fdc-isa.c             | 18 +++++++++-
>> >
>> > hw/block/fdc-sysbus.c          |  6 ++--
>> >
>> > hw/char/parallel-isa.c         | 14 ++++++++
>> >
>> > hw/char/parallel.c             |  2 +-
>> >
>> > hw/char/serial-isa.c           | 14 ++++++++
>> >
>> > hw/isa/vt82c686.c              | 65 ++++++++++++++++++++++++++++------
>> >
>> > hw/ppc/pegasos2.c              | 12 +++++++
>> >
>> > system/ioport.c                | 41 +++++++++++++++++----
>> >
>> > 15 files changed, 168 insertions(+), 30 deletions(-)
>> >
>> >
>> >
>> >-- >
>> >2.43.0
>> >
>> >
>> >
>



reply via email to

[Prev in Thread] Current Thread [Next in Thread]