qemu-devel
[Top][All Lists]
Advanced

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

Re: [PULL 09/12] include/hw/ppc: Split pnv_chip.h off pnv.h


From: Markus Armbruster
Subject: Re: [PULL 09/12] include/hw/ppc: Split pnv_chip.h off pnv.h
Date: Mon, 23 Jan 2023 11:07:45 +0100
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/28.2 (gnu/linux)

Philippe Mathieu-Daudé <philmd@linaro.org> writes:

> Hi Markus,
>
> On 20/1/23 08:01, Markus Armbruster wrote:
>> PnvChipClass, PnvChip, Pnv8Chip, Pnv9Chip, and Pnv10Chip are defined
>> in pnv.h.  Many users of the header don't actually need them.  One
>> instance is this inclusion loop: hw/ppc/pnv_homer.h includes
>> hw/ppc/pnv.h for typedef PnvChip, and vice versa for struct PnvHomer.
>> Similar structs live in their own headers: PnvHomerClass and PnvHomer
>> in pnv_homer.h, PnvLpcClass and PnvLpcController in pci_lpc.h,
>> PnvPsiClass, PnvPsi, Pnv8Psi, Pnv9Psi, Pnv10Psi in pnv_psi.h, ...
>> Move PnvChipClass, PnvChip, Pnv8Chip, Pnv9Chip, and Pnv10Chip to new
>> pnv_chip.h, and adjust include directives.  This breaks the inclusion
>> loop mentioned above.
>> Signed-off-by: Markus Armbruster <armbru@redhat.com>
>> Reviewed-by: Cédric Le Goater <clg@kaod.org>
>> Reviewed-by: Daniel Henrique Barboza <danielhb413@gmail.com>
>> Message-Id: <20221222104628.659681-2-armbru@redhat.com>
>> ---
>>   include/hw/ppc/pnv.h       | 143 +-----------------------------------
>>   include/hw/ppc/pnv_chip.h  | 147 +++++++++++++++++++++++++++++++++++++
>>   hw/intc/pnv_xive.c         |   1 +
>>   hw/intc/pnv_xive2.c        |   1 +
>>   hw/pci-host/pnv_phb3.c     |   1 +
>>   hw/pci-host/pnv_phb4_pec.c |   1 +
>>   hw/ppc/pnv.c               |   3 +
>>   hw/ppc/pnv_core.c          |   1 +
>>   hw/ppc/pnv_homer.c         |   1 +
>>   hw/ppc/pnv_lpc.c           |   1 +
>>   hw/ppc/pnv_xscom.c         |   1 +
>>   11 files changed, 160 insertions(+), 141 deletions(-)
>>   create mode 100644 include/hw/ppc/pnv_chip.h
>> diff --git a/include/hw/ppc/pnv.h b/include/hw/ppc/pnv.h
>> index 9ef7e2d0dc..ca49e4281d 100644
>> --- a/include/hw/ppc/pnv.h
>> +++ b/include/hw/ppc/pnv.h
>> @@ -20,158 +20,19 @@
>>   #ifndef PPC_PNV_H
>>   #define PPC_PNV_H
>>   +#include "cpu.h"
>
> Why is "cpu.h" required here? For pnv_chip_find_cpu()?

Yes:

    ../include/hw/ppc/pnv.h:58:1: error: unknown type name ‘PowerPCCPU’
       58 | PowerPCCPU *pnv_chip_find_cpu(PnvChip *chip, uint32_t pir);
          | ^~~~~~~~~~

> Isn't "target/ppc/cpu-qom.h" enough?

Seems to suffice.  Would you like to post a followup?




reply via email to

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