[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH v5 4/8] vt82c686: Introduce abstract TYPE_VIA_ISA and base vt
From: |
Philippe Mathieu-Daudé |
Subject: |
Re: [PATCH v5 4/8] vt82c686: Introduce abstract TYPE_VIA_ISA and base vt82c686b_isa on it |
Date: |
Tue, 9 Mar 2021 18:03:56 +0100 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.7.0 |
+Gerd
On 3/9/21 5:00 PM, Dr. David Alan Gilbert wrote:
> * David Gibson (david@gibson.dropbear.id.au) wrote:
>> On Thu, Mar 04, 2021 at 11:42:10PM +0100, Philippe Mathieu-Daudé wrote:
>>> On 3/4/21 9:16 PM, BALATON Zoltan wrote:
>>>> On Thu, 4 Mar 2021, Philippe Mathieu-Daudé wrote:
>>>>> On 3/2/21 10:11 PM, BALATON Zoltan wrote:
>>>>>> To allow reusing ISA bridge emulation for vt8231_isa move the device
>>>>>> state of vt82c686b_isa emulation in an abstract via_isa class.
>>>>>>
>>>>>> Signed-off-by: BALATON Zoltan <balaton@eik.bme.hu>
>>>>>> ---
>>>>>> hw/isa/vt82c686.c | 70 ++++++++++++++++++++++------------------
>>>>>> include/hw/pci/pci_ids.h | 2 +-
>>>>>> 2 files changed, 40 insertions(+), 32 deletions(-)
>>>>>>
>>>>>> diff --git a/hw/isa/vt82c686.c b/hw/isa/vt82c686.c
>>>>>> index 72234bc4d1..5137f97f37 100644
>>>>>> --- a/hw/isa/vt82c686.c
>>>>>> +++ b/hw/isa/vt82c686.c
>>>>>> @@ -609,24 +609,48 @@ static const TypeInfo vt8231_superio_info = {
>>>>>> };
>>>>>>
>>>>>>
>>>>>> -OBJECT_DECLARE_SIMPLE_TYPE(VT82C686BISAState, VT82C686B_ISA)
>>>>>> +#define TYPE_VIA_ISA "via-isa"
>>>>>> +OBJECT_DECLARE_SIMPLE_TYPE(ViaISAState, VIA_ISA)
>>>>>>
>>>>>> -struct VT82C686BISAState {
>>>>>> +struct ViaISAState {
>>>>>> PCIDevice dev;
>>>>>> qemu_irq cpu_intr;
>>>>>> ViaSuperIOState *via_sio;
>>>>>> };
>>>>>>
>>>>>> +static const VMStateDescription vmstate_via = {
>>>>>> + .name = "via-isa",
>>>>>
>>>>> You changed the migration stream name, so I think we have
>>>>> a problem with migration... No clue how to do that properly.
>>>>
>>>> I don't think these machines support migration or state description of
>>>> vt86c686b was not missing something before these patches that would make
>>>> it not work anyway so I did not worry about this too much. I doubt
>>>> anybody wants to migrate a fuloong2e machine so this should not be a
>>>> problem in practice but maybe you can mention it in the release notes if
>>>> you think that would be necessary.
>>>
>>> Maybe just add in the description:
>>>
>>> This change breaks migration back compatibility, but
>>> this is not an issue for the Fuloong2E machine.
>>
>> Hrm. If migration was never supported, why is there a vmstate
>> description there at all though?
>>
>> That said, I don't think breaking compat is a problem: that's only an
>> issue where we actually have versioned machine types, which covers
>> only pc, pseries, arm virt and a very few others. I don't think this
>> device was used on any of them.
>
> Except 'vt82c686b-usb-uhci' is a generic PCI device that anyone can
> instantiate, so it's not actually Fuloong specific.
I tend to see this as a bug, as this is a function specific to the
southbridge chipset and isn't meant to be used apart...
If this isn't a feature but really a bug, a simple way to clean this
is to make struct UHCIInfo and usb_uhci_common_realize() public, and
type_register "vt82c686b-usb-uhci" elsewhere.
Gerd would that work with you?
- [PATCH v5 0/8] Pegasos2 emulation, BALATON Zoltan, 2021/03/02
- [PATCH v5 4/8] vt82c686: Introduce abstract TYPE_VIA_ISA and base vt82c686b_isa on it, BALATON Zoltan, 2021/03/02
- Re: [PATCH v5 4/8] vt82c686: Introduce abstract TYPE_VIA_ISA and base vt82c686b_isa on it, Philippe Mathieu-Daudé, 2021/03/04
- Re: [PATCH v5 4/8] vt82c686: Introduce abstract TYPE_VIA_ISA and base vt82c686b_isa on it, BALATON Zoltan, 2021/03/04
- Re: [PATCH v5 4/8] vt82c686: Introduce abstract TYPE_VIA_ISA and base vt82c686b_isa on it, Philippe Mathieu-Daudé, 2021/03/04
- Re: [PATCH v5 4/8] vt82c686: Introduce abstract TYPE_VIA_ISA and base vt82c686b_isa on it, David Gibson, 2021/03/04
- Re: [PATCH v5 4/8] vt82c686: Introduce abstract TYPE_VIA_ISA and base vt82c686b_isa on it, Philippe Mathieu-Daudé, 2021/03/09
- Re: [PATCH v5 4/8] vt82c686: Introduce abstract TYPE_VIA_ISA and base vt82c686b_isa on it, David Gibson, 2021/03/09
- Re: [PATCH v5 4/8] vt82c686: Introduce abstract TYPE_VIA_ISA and base vt82c686b_isa on it, Dr. David Alan Gilbert, 2021/03/09
- Re: [PATCH v5 4/8] vt82c686: Introduce abstract TYPE_VIA_ISA and base vt82c686b_isa on it, BALATON Zoltan, 2021/03/09
- Re: [PATCH v5 4/8] vt82c686: Introduce abstract TYPE_VIA_ISA and base vt82c686b_isa on it,
Philippe Mathieu-Daudé <=
- Re: [PATCH v5 4/8] vt82c686: Introduce abstract TYPE_VIA_ISA and base vt82c686b_isa on it, Philippe Mathieu-Daudé, 2021/03/09
- Re: [PATCH v5 4/8] vt82c686: Introduce abstract TYPE_VIA_ISA and base vt82c686b_isa on it, Gerd Hoffmann, 2021/03/10
[PATCH v5 1/8] vt82c686: Implement control of serial port io ranges via config regs, BALATON Zoltan, 2021/03/02
[PATCH v5 2/8] vt82c686: QOM-ify superio related functionality, BALATON Zoltan, 2021/03/02
[PATCH v5 5/8] vt82c686: Add emulation of VT8231 south bridge, BALATON Zoltan, 2021/03/02
[PATCH v5 8/8] hw/ppc: Add emulation of Genesi/bPlan Pegasos II, BALATON Zoltan, 2021/03/02
[PATCH v5 6/8] hw/isa/Kconfig: Add missing dependency VIA VT82C686 -> APM, BALATON Zoltan, 2021/03/02
[PATCH v5 3/8] vt82c686: Add VT8231_SUPERIO based on VIA_SUPERIO, BALATON Zoltan, 2021/03/02
[PATCH v5 7/8] hw/pci-host: Add emulation of Marvell MV64361 PPC system controller, BALATON Zoltan, 2021/03/02