From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:57781) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1byT1r-0007rj-S4 for qemu-devel@nongnu.org; Sun, 23 Oct 2016 20:22:19 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1byT1o-0005MT-9S for qemu-devel@nongnu.org; Sun, 23 Oct 2016 20:22:15 -0400 Received: from mx0a-001b2d01.pphosted.com ([148.163.156.1]:33989) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1byT1n-0005L6-Uc for qemu-devel@nongnu.org; Sun, 23 Oct 2016 20:22:12 -0400 Received: from pps.filterd (m0098394.ppops.net [127.0.0.1]) by mx0a-001b2d01.pphosted.com (8.16.0.17/8.16.0.17) with SMTP id u9O0Icr2119157 for ; Sun, 23 Oct 2016 20:22:11 -0400 Received: from e34.co.us.ibm.com (e34.co.us.ibm.com [32.97.110.152]) by mx0a-001b2d01.pphosted.com with ESMTP id 268yyu61e8-1 (version=TLSv1.2 cipher=AES256-SHA bits=256 verify=NOT) for ; Sun, 23 Oct 2016 20:22:10 -0400 Received: from localhost by e34.co.us.ibm.com with IBM ESMTP SMTP Gateway: Authorized Use Only! Violators will be prosecuted for from ; Sun, 23 Oct 2016 18:22:10 -0600 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable From: Michael Roth In-Reply-To: <1477018600-6881-10-git-send-email-david@gibson.dropbear.id.au> References: <1477018600-6881-1-git-send-email-david@gibson.dropbear.id.au> <1477018600-6881-10-git-send-email-david@gibson.dropbear.id.au> Date: Sun, 23 Oct 2016 19:16:59 -0500 Message-Id: <20161024001659.17113.5401@loki> Subject: Re: [Qemu-devel] [PATCHv2 09/12] pseries: Move /event-sources construction to spapr_build_fdt() List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: David Gibson , aik@ozlabs.ru, groug@kaod.org Cc: agraf@suse.de, lvivier@redhat.com, thuth@redhat.com, qemu-ppc@nongnu.org, qemu-devel@nongnu.org Quoting David Gibson (2016-10-20 21:56:37) > The /event-sources device tree node is built from spapr_create_fdt_skel(). > As part of consolidating device tree construction to reset time, this mov= es > it to spapr_build_fdt(). > = > Signed-off-by: David Gibson > Reviewed-by: Thomas Huth Reviewed-by: Michael Roth > --- > hw/ppc/spapr.c | 6 +++--- > hw/ppc/spapr_events.c | 21 ++++++++++----------- > include/hw/ppc/spapr.h | 2 +- > 3 files changed, 14 insertions(+), 15 deletions(-) > = > diff --git a/hw/ppc/spapr.c b/hw/ppc/spapr.c > index d69b234..c7ad195 100644 > --- a/hw/ppc/spapr.c > +++ b/hw/ppc/spapr.c > @@ -328,9 +328,6 @@ static void *spapr_create_fdt_skel(sPAPRMachineState = *spapr) > = > _FDT((fdt_end_node(fdt))); > = > - /* event-sources */ > - spapr_events_fdt_skel(fdt, spapr->check_exception_irq); > - > /* /hypervisor node */ > if (kvm_enabled()) { > uint8_t hypercall[16]; > @@ -983,6 +980,9 @@ static void *spapr_build_fdt(sPAPRMachineState *spapr, > } > } > = > + /* /event-sources */ > + spapr_dt_events(fdt, spapr->check_exception_irq); > + > /* /rtas */ > spapr_dt_rtas(spapr, fdt); > = > diff --git a/hw/ppc/spapr_events.c b/hw/ppc/spapr_events.c > index 6d35345..89aa5a7 100644 > --- a/hw/ppc/spapr_events.c > +++ b/hw/ppc/spapr_events.c > @@ -211,23 +211,22 @@ struct hp_log_full { > #define EVENT_MASK_HOTPLUG 0x10000000 > #define EVENT_MASK_IO 0x08000000 > = > -void spapr_events_fdt_skel(void *fdt, uint32_t check_exception_irq) > +void spapr_dt_events(void *fdt, uint32_t check_exception_irq) > { > + int event_sources, epow_events; > uint32_t irq_ranges[] =3D {cpu_to_be32(check_exception_irq), cpu_to_= be32(1)}; > uint32_t interrupts[] =3D {cpu_to_be32(check_exception_irq), 0}; > = > - _FDT((fdt_begin_node(fdt, "event-sources"))); > + _FDT(event_sources =3D fdt_add_subnode(fdt, 0, "event-sources")); > = > - _FDT((fdt_property(fdt, "interrupt-controller", NULL, 0))); > - _FDT((fdt_property_cell(fdt, "#interrupt-cells", 2))); > - _FDT((fdt_property(fdt, "interrupt-ranges", > - irq_ranges, sizeof(irq_ranges)))); > + _FDT(fdt_setprop(fdt, event_sources, "interrupt-controller", NULL, 0= )); > + _FDT(fdt_setprop_cell(fdt, event_sources, "#interrupt-cells", 2)); > + _FDT(fdt_setprop(fdt, event_sources, "interrupt-ranges", > + irq_ranges, sizeof(irq_ranges))); > = > - _FDT((fdt_begin_node(fdt, "epow-events"))); > - _FDT((fdt_property(fdt, "interrupts", interrupts, sizeof(interrupts)= ))); > - _FDT((fdt_end_node(fdt))); > - > - _FDT((fdt_end_node(fdt))); > + _FDT(epow_events =3D fdt_add_subnode(fdt, event_sources, "epow-event= s")); > + _FDT(fdt_setprop(fdt, epow_events, "interrupts", > + interrupts, sizeof(interrupts))); > } > = > static void rtas_event_log_queue(int log_type, void *data, bool exceptio= n) > diff --git a/include/hw/ppc/spapr.h b/include/hw/ppc/spapr.h > index 8b8bb97..ae7d1d7 100644 > --- a/include/hw/ppc/spapr.h > +++ b/include/hw/ppc/spapr.h > @@ -581,7 +581,7 @@ struct sPAPREventLogEntry { > }; > = > void spapr_events_init(sPAPRMachineState *sm); > -void spapr_events_fdt_skel(void *fdt, uint32_t epow_irq); > +void spapr_dt_events(void *fdt, uint32_t check_exception_irq); > int spapr_h_cas_compose_response(sPAPRMachineState *sm, > target_ulong addr, target_ulong size, > bool cpu_update, bool memory_update); > -- = > 2.7.4 >=20