On Fri, Sep 27, 2019 at 12:16:49PM +0200, Greg Kurz wrote: > On Fri, 27 Sep 2019 15:50:16 +1000 > David Gibson <da...@gibson.dropbear.id.au> wrote: > > > This method essentially represents code which belongs to the interrupt > > controller, but needs to be called on all possible intcs, rather than > > just the currently active one. The "dual" version therefore calls > > into the xics and xive versions confusingly. > > > > Handle this more directly, by making it instead a method on the intc > > backend, and always calling it on every backend that exists. > > > > While we're there, streamline the error reporting a bit. > > > > Signed-off-by: David Gibson <da...@gibson.dropbear.id.au>
[snip] > > +void spapr_irq_print_info(SpaprMachineState *spapr, Monitor *mon); > > +void spapr_irq_dt(SpaprMachineState *spapr, uint32_t nr_servers, > > + void *fdt, uint32_t phandle); > > These two ^^ seem to belong to later patches. Oops, yes. I've moved those to where they belong. > > > +int spapr_irq_cpu_intc_create(SpaprMachineState *spapr, > > + PowerPCCPU *cpu, Error **errp); > > + > > + > > void spapr_irq_msi_init(SpaprMachineState *spapr, uint32_t nr_msis); > > int spapr_irq_msi_alloc(SpaprMachineState *spapr, uint32_t num, bool align, > > Error **errp); > > @@ -61,8 +75,6 @@ typedef struct SpaprIrq { > > void (*print_info)(SpaprMachineState *spapr, Monitor *mon); > > void (*dt_populate)(SpaprMachineState *spapr, uint32_t nr_servers, > > void *fdt, uint32_t phandle); > > - void (*cpu_intc_create)(SpaprMachineState *spapr, PowerPCCPU *cpu, > > - Error **errp); > > int (*post_load)(SpaprMachineState *spapr, int version_id); > > void (*reset)(SpaprMachineState *spapr, Error **errp); > > void (*set_irq)(void *opaque, int srcno, int val); > -- David Gibson | I'll have my music baroque, and my code david AT gibson.dropbear.id.au | minimalist, thank you. NOT _the_ _other_ | _way_ _around_! http://www.ozlabs.org/~dgibson
signature.asc
Description: PGP signature