[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [Qemu-ppc] [PATCH 35/77] ppc/xics: Move xics_set_nr_irq
From: |
David Gibson |
Subject: |
Re: [Qemu-devel] [Qemu-ppc] [PATCH 35/77] ppc/xics: Move xics_set_nr_irqs() to xics_spapr.c and xics_kvm.c |
Date: |
Tue, 1 Dec 2015 15:46:15 +1100 |
User-agent: |
Mutt/1.5.24 (2015-08-30) |
On Wed, Nov 11, 2015 at 11:27:48AM +1100, Benjamin Herrenschmidt wrote:
> It will not be used by the native implementation. This allows us to
> also remove the include of spapr.h from the common code
>
> Signed-off-by: Benjamin Herrenschmidt <address@hidden>
> ---
> hw/intc/xics.c | 12 ------------
> hw/intc/xics_kvm.c | 13 ++++++++++++-
> hw/intc/xics_spapr.c | 13 ++++++++++++-
> include/hw/ppc/xics.h | 1 -
> 4 files changed, 24 insertions(+), 15 deletions(-)
>
> diff --git a/hw/intc/xics.c b/hw/intc/xics.c
> index c4ac057..0c355f4 100644
> --- a/hw/intc/xics.c
> +++ b/hw/intc/xics.c
> @@ -28,7 +28,6 @@
> #include "hw/hw.h"
> #include "trace.h"
> #include "qemu/timer.h"
> -#include "hw/ppc/spapr.h"
> #include "hw/ppc/xics.h"
> #include "qemu/error-report.h"
> #include "qapi/visitor.h"
> @@ -694,17 +693,6 @@ void ics_set_irq_type(ICSState *ics, int srcno, bool lsi)
> * XICS
> */
>
> -void xics_set_nr_irqs(XICSState *xics, uint32_t nr_irqs, Error **errp)
> -{
> - ICSState *ics = QLIST_FIRST(&xics->ics);
> -
> - /* This needs to be deprecated ... */
> - xics->nr_irqs = nr_irqs;
> - if (ics) {
> - ics->nr_irqs = nr_irqs;
> - }
> -}
> -
> void xics_set_nr_servers(XICSState *xics, uint32_t nr_servers, Error **errp)
> {
> int i;
> diff --git a/hw/intc/xics_kvm.c b/hw/intc/xics_kvm.c
> index a478d25..6fbc715 100644
> --- a/hw/intc/xics_kvm.c
> +++ b/hw/intc/xics_kvm.c
> @@ -468,6 +468,17 @@ fail:
> kvmppc_define_rtas_kernel_token(0, "ibm,int-off");
> }
>
> +static void xics_kvm_set_nr_irqs(XICSState *xics, uint32_t nr_irqs, Error
> **errp)
> +{
> + ICSState *ics = QLIST_FIRST(&xics->ics);
> +
> + /* This needs to be deprecated ... */
> + xics->nr_irqs = nr_irqs;
> + if (ics) {
> + ics->nr_irqs = nr_irqs;
> + }
> +}
> +
Looks like you have a bit of unnecessary churn here, since you unified
xics_kvm_set_nr_irqs() with xics_set_nr_irqs() earlier in the series
only to split them again here.
> static void xics_kvm_initfn(Object *obj)
> {
> XICSState *xics = XICS_COMMON(obj);
> @@ -488,7 +499,7 @@ static void xics_kvm_class_init(ObjectClass *oc, void
> *data)
>
> dc->realize = xics_kvm_realize;
> xsc->cpu_setup = xics_kvm_cpu_setup;
> - xsc->set_nr_irqs = xics_set_nr_irqs;
> + xsc->set_nr_irqs = xics_kvm_set_nr_irqs;
> xsc->set_nr_servers = xics_kvm_set_nr_servers;
> }
>
> diff --git a/hw/intc/xics_spapr.c b/hw/intc/xics_spapr.c
> index d75fcf0..3092f8d 100644
> --- a/hw/intc/xics_spapr.c
> +++ b/hw/intc/xics_spapr.c
> @@ -267,13 +267,24 @@ static void xics_spapr_initfn(Object *obj)
> QLIST_INSERT_HEAD(&xics->ics, ics, list);
> }
>
> +static void xics_spapr_set_nr_irqs(XICSState *xics, uint32_t nr_irqs, Error
> **errp)
> +{
> + ICSState *ics = QLIST_FIRST(&xics->ics);
> +
> + /* This needs to be deprecated ... */
> + xics->nr_irqs = nr_irqs;
> + if (ics) {
> + ics->nr_irqs = nr_irqs;
> + }
> +}
> +
> static void xics_spapr_class_init(ObjectClass *oc, void *data)
> {
> DeviceClass *dc = DEVICE_CLASS(oc);
> XICSStateClass *xsc = XICS_SPAPR_CLASS(oc);
>
> dc->realize = xics_spapr_realize;
> - xsc->set_nr_irqs = xics_set_nr_irqs;
> + xsc->set_nr_irqs = xics_spapr_set_nr_irqs;
> xsc->set_nr_servers = xics_set_nr_servers;
> }
>
> diff --git a/include/hw/ppc/xics.h b/include/hw/ppc/xics.h
> index 51a63cb..9e5b751 100644
> --- a/include/hw/ppc/xics.h
> +++ b/include/hw/ppc/xics.h
> @@ -189,7 +189,6 @@ void ics_write_xive(ICSState *ics, int nr, int server,
>
> void ics_set_irq_type(ICSState *ics, int srcno, bool lsi);
>
> -void xics_set_nr_irqs(XICSState *icp, uint32_t nr_irqs, Error **errp);
> void xics_set_nr_servers(XICSState *icp, uint32_t nr_servers, Error **errp);
> ICSState *xics_find_source(XICSState *icp, int irq);
>
--
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
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- Re: [Qemu-devel] [Qemu-ppc] [PATCH 35/77] ppc/xics: Move xics_set_nr_irqs() to xics_spapr.c and xics_kvm.c,
David Gibson <=