[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH v5 04/13] hw/core: add Resettable support to BusClass and Dev
From: |
Richard Henderson |
Subject: |
Re: [PATCH v5 04/13] hw/core: add Resettable support to BusClass and DeviceClass |
Date: |
Sat, 19 Oct 2019 11:49:04 -0700 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Thunderbird/60.9.0 |
On 10/18/19 8:06 AM, Damien Hedde wrote:
> This commit adds support of Resettable interface to buses and devices:
> + ResettableState structure is added in the Bus/Device state
> + Resettable methods are implemented.
> + device/bus_is_in_reset function defined
>
> This commit allows to transition the objects to the new
> multi-phase interface without changing the reset behavior at all.
> Object single reset method can be split into the 3 different phases
> but the 3 phases are still executed in a row for a given object.
> From the qdev/qbus reset api point of view, nothing is changed.
> qdev_reset_all() and qbus_reset_all() are not modified as well as
> device_legacy_reset().
>
> Transition of an object must be done from mother class to daughter
> classes. Care has been taken to allow the transition of a mother class
> without requiring the daughter classes to be transitioned at the same
> time. Note that SysBus and SysBusDevice class do not need any transition
> because they do not override the legacy reset method.
>
> Signed-off-by: Damien Hedde <address@hidden>
> ---
> hw/core/bus.c | 97 ++++++++++++++++++++++++++++++++++++++++++
> hw/core/qdev.c | 97 ++++++++++++++++++++++++++++++++++++++++++
> include/hw/qdev-core.h | 27 ++++++++++++
> tests/Makefile.include | 1 +
> 4 files changed, 222 insertions(+)
Reviewed-by: Richard Henderson <address@hidden>
r~
- Re: [PATCH v5 02/13] hw/core/qdev: add trace events to help with resettable transition, (continued)
- [PATCH v5 07/13] hw/core/qdev: update hotplug reset regarding resettable, Damien Hedde, 2019/10/18
- [PATCH v5 05/13] hw/core/resettable: add support for changing parent, Damien Hedde, 2019/10/18
- [PATCH v5 01/13] add device_legacy_reset function to prepare for reset api change, Damien Hedde, 2019/10/18
- [PATCH v5 10/13] vl: replace deprecated qbus_reset_all registration, Damien Hedde, 2019/10/18
- [PATCH v5 08/13] hw/core: deprecate old reset functions and introduce new ones, Damien Hedde, 2019/10/18
- [PATCH v5 04/13] hw/core: add Resettable support to BusClass and DeviceClass, Damien Hedde, 2019/10/18
- Re: [PATCH v5 04/13] hw/core: add Resettable support to BusClass and DeviceClass,
Richard Henderson <=
- [PATCH v5 06/13] hw/core/qdev: handle parent bus change regarding resettable, Damien Hedde, 2019/10/18
- [PATCH v5 03/13] hw/core: create Resettable QOM interface, Damien Hedde, 2019/10/18
- [PATCH v5 09/13] docs/devel/reset.txt: add doc about Resettable interface, Damien Hedde, 2019/10/18
- [PATCH v5 12/13] hw/gpio/bcm2835_gpio: Isolate sdbus reparenting, Damien Hedde, 2019/10/18
- [PATCH v5 11/13] hw/s390x/ipl: replace deprecated qdev_reset_all registration, Damien Hedde, 2019/10/18
- [PATCH v5 13/13] hw/gpio/bcm2835_gpio: Update to resettable, Damien Hedde, 2019/10/18
- Re: [PATCH v5 00/13] Multi-phase reset mechanism, no-reply, 2019/10/19
- Re: [PATCH v5 00/13] Multi-phase reset mechanism, Damien Hedde, 2019/10/29