From patchwork Wed Nov 11 00:27:48 2015 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Benjamin Herrenschmidt X-Patchwork-Id: 542692 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from lists.gnu.org (lists.gnu.org [208.118.235.17]) (using TLSv1 with cipher AES256-SHA (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 8AB0A14027C for ; Wed, 11 Nov 2015 11:44:47 +1100 (AEDT) Received: from localhost ([::1]:36544 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ZwJWn-0003M7-LB for incoming@patchwork.ozlabs.org; Tue, 10 Nov 2015 19:44:45 -0500 Received: from eggs.gnu.org ([2001:4830:134:3::10]:37949) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ZwJJ3-0002dW-H5 for qemu-devel@nongnu.org; Tue, 10 Nov 2015 19:30:34 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ZwJJ2-0004WP-Dc for qemu-devel@nongnu.org; Tue, 10 Nov 2015 19:30:33 -0500 Received: from gate.crashing.org ([63.228.1.57]:48664) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ZwJJ2-0004WA-1x; Tue, 10 Nov 2015 19:30:32 -0500 Received: from pasglop.ozlabs.ibm.com. (localhost.localdomain [127.0.0.1]) by gate.crashing.org (8.14.1/8.13.8) with ESMTP id tAB0Sb2n024031; Tue, 10 Nov 2015 18:30:06 -0600 From: Benjamin Herrenschmidt To: qemu-ppc@nongnu.org Date: Wed, 11 Nov 2015 11:27:48 +1100 Message-Id: <1447201710-10229-36-git-send-email-benh@kernel.crashing.org> X-Mailer: git-send-email 2.5.0 In-Reply-To: <1447201710-10229-1-git-send-email-benh@kernel.crashing.org> References: <1447201710-10229-1-git-send-email-benh@kernel.crashing.org> X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6.x X-Received-From: 63.228.1.57 Cc: qemu-devel@nongnu.org Subject: [Qemu-devel] [PATCH 35/77] ppc/xics: Move xics_set_nr_irqs() to xics_spapr.c and xics_kvm.c X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org Sender: qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org 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 --- 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; + } +} + 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);