[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH 12/18] hw/arm/digic: Replace object_initialize(ARMCPU) by obj
From: |
Peter Maydell |
Subject: |
Re: [PATCH 12/18] hw/arm/digic: Replace object_initialize(ARMCPU) by object_new(ARMCPU) |
Date: |
Tue, 10 Jan 2023 16:52:20 +0000 |
On Tue, 10 Jan 2023 at 16:45, Philippe Mathieu-Daudé <philmd@linaro.org> wrote:
>
> Replace the ARMCPU field in DigicState by a reference to
> an allocated ARMCPU. Instead of initializing the field
> with object_initialize(), allocate it with object_new().
>
> As we don't access ARMCPU internal fields or size, we can
> move digic.c from arm_ss[] to the more generic softmmu_ss[].
I'm not really a fan of this, because it moves away
from a standard coding pattern we've been using for
new QOM 'container' devices, where all the sub-components
of the device are structs embedded in the device's own
struct. This is as opposed to the old style which tended
to use "allocate memory for the sub-component and have
pointers to it". It means the CPU object is now being
treated differently from all the timers, UARTs, etc.
thanks
-- PMM
- [PATCH 04/18] hw/arm: Use full "target/arm/cpu.h" path to include target's "cpu.h", (continued)
- [PATCH 04/18] hw/arm: Use full "target/arm/cpu.h" path to include target's "cpu.h", Philippe Mathieu-Daudé, 2023/01/10
- [PATCH 05/18] target/arm: Move CPU QOM type definitions to "hw/arm/cpu.h", Philippe Mathieu-Daudé, 2023/01/10
- [PATCH 06/18] target/arm: Move CPU definitions consumed by HW model to "hw/arm/cpu.h", Philippe Mathieu-Daudé, 2023/01/10
- [PATCH 07/18] hw/arm: Move more units to softmmu_ss[], Philippe Mathieu-Daudé, 2023/01/10
- [PATCH 09/18] hw/arm/armv7m: Remove 'target/arm/cpu.h' from NVIC header, Philippe Mathieu-Daudé, 2023/01/10
- [PATCH 10/18] hw/arm: Move various armv7m-related units to softmmu_ss[], Philippe Mathieu-Daudé, 2023/01/10
- [PATCH 08/18] hw/arm: Move units to softmmu[] by replacing "{target -> hw}/arm/cpu.h", Philippe Mathieu-Daudé, 2023/01/10
- [PATCH 11/18] hw/arm/digic: Remove unnecessary target_long use, Philippe Mathieu-Daudé, 2023/01/10
- [PATCH 12/18] hw/arm/digic: Replace object_initialize(ARMCPU) by object_new(ARMCPU), Philippe Mathieu-Daudé, 2023/01/10
- Re: [PATCH 12/18] hw/arm/digic: Replace object_initialize(ARMCPU) by object_new(ARMCPU),
Peter Maydell <=
- [PATCH 13/18] hw/arm/fsl-imx: Correct GPIO/GPT index in QOM tree, Philippe Mathieu-Daudé, 2023/01/10
- [PATCH 14/18] hw/arm/fsl-imx25: Replace object_initialize(ARMCPU) by object_new(), Philippe Mathieu-Daudé, 2023/01/10
- [PATCH 15/18] hw/arm/fsl-imx31: Replace object_initialize(ARMCPU) by object_new(), Philippe Mathieu-Daudé, 2023/01/10
- [PATCH 16/18] hw/arm/fsl-imx7: Replace object_initialize(ARMCPU) by object_new(), Philippe Mathieu-Daudé, 2023/01/10
- [PATCH 17/18] hw/arm/fsl-imx6: Replace object_initialize(ARMCPU) by object_new(), Philippe Mathieu-Daudé, 2023/01/10
- [PATCH 18/18] hw/arm/allwinner: Replace object_initialize(ARMCPU) by object_new(), Philippe Mathieu-Daudé, 2023/01/10