This patchset converts some Arm devices to 3-phase reset. The rationale here is that it would be nice to get rid of the device_class_set_parent_reset() function, which is used by legacy-reset subclasses which want to chain to their parent's reset function. There aren't very many of these devices in total, and if we convert them and their parent classes to 3-phase reset they can use the 3-phase-reset equivalent function resettable_class_set_parent_phases().
Eventually this will then let us simplify the transitional code for handling old-style device reset. Note that it's necessary to convert the parent class before the subclass -- the resettable transitional logic will handle the situation where the subclass is still using legacy reset and chaining to what it thinks is the parent's legacy reset function (by doing a 3-phase reset on the parent), but if the subclass is 3-phase then the parent must be too. I plan to do the other uses of device_class_set_parent_reset() too, but since the conversion patchsets don't depend on each other I'm going to send them out piecemeal so they can be cc'd to the relevant maintainers, rather than having a single massive patchset with a billion people on cc. thanks -- PMM Peter Maydell (9): hw/arm: Convert TYPE_ARM_SMMU to 3-phase reset hw/arm: Convert TYPE_ARM_SMMUV3 to 3-phase reset hw/intc: Convert TYPE_ARM_GIC_COMMON to 3-phase reset hw/intc: Convert TYPE_ARM_GIC_KVM to 3-phase reset hw/intc: Convert TYPE_ARM_GICV3_COMMON to 3-phase reset hw/intc: Convert TYPE_KVM_ARM_GICV3 to 3-phase reset hw/intc: Convert TYPE_ARM_GICV3_ITS_COMMON to 3-phase reset hw/intc: Convert TYPE_ARM_GICV3_ITS to 3-phase reset hw/intc: Convert TYPE_KVM_ARM_ITS to 3-phase reset include/hw/arm/smmuv3.h | 2 +- hw/arm/smmu-common.c | 7 ++++--- hw/arm/smmuv3.c | 12 ++++++++---- hw/intc/arm_gic_common.c | 7 ++++--- hw/intc/arm_gic_kvm.c | 14 +++++++++----- hw/intc/arm_gicv3_common.c | 7 ++++--- hw/intc/arm_gicv3_its.c | 14 +++++++++----- hw/intc/arm_gicv3_its_common.c | 7 ++++--- hw/intc/arm_gicv3_its_kvm.c | 14 +++++++++----- hw/intc/arm_gicv3_kvm.c | 14 +++++++++----- 10 files changed, 61 insertions(+), 37 deletions(-) -- 2.25.1