From mboxrd@z Thu Jan 1 00:00:00 1970 From: Julien Grall Subject: Re: [PATCH v5 06/19] xen: arm: move dom0 gic and timer device tree nodes under /xen/ Date: Wed, 13 Nov 2013 21:31:17 +0000 Message-ID: <5283EFA5.7090401@linaro.org> References: <1384366234.29080.8.camel@kazak.uk.xensource.com> <1384366285-29277-6-git-send-email-ian.campbell@citrix.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii"; Format="flowed" Content-Transfer-Encoding: 7bit Return-path: In-Reply-To: <1384366285-29277-6-git-send-email-ian.campbell@citrix.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xen.org Errors-To: xen-devel-bounces@lists.xen.org To: Ian Campbell , xen-devel@lists.xen.org Cc: tim@xen.org, stefano.stabellini@eu.citrix.com List-Id: xen-devel@lists.xenproject.org On 11/13/2013 06:11 PM, Ian Campbell wrote: > Julien observed that we were relying on the provided host DTB supplying > suitable #address-cells and #size-cells values to allow us to represent these > addresses, which may not reliably be the case. Moving these under our own > known (somewhat analogous to the use of /soc/ or /motherboard/ on some > platforms) allows us to control these sizes. > > Since the xen node is created out of thin air it does not have a corresponding > struct dt_device_node and therefore we cannot use dt_n_addr_cells or > dt_n_size_cells, we can use hardcoded constants instead. For the same reason > we define and use set_xen_range instead of dt_set_range. > > The hypervisor, cpus and psci node all either defined #foo-cells for their > children or do not contain reg properties and therefore can remain at the top > level. > > The logging in make_gic_node was inconsistent. Fix it. > > Signed-off-by: Ian Campbell > --- > v5: New patch > --- > xen/arch/arm/domain_build.c | 76 ++++++++++++++++++++++++++++++++++--------- > 1 file changed, 61 insertions(+), 15 deletions(-) > > diff --git a/xen/arch/arm/domain_build.c b/xen/arch/arm/domain_build.c > index 186746c..8645aa1 100644 > --- a/xen/arch/arm/domain_build.c > +++ b/xen/arch/arm/domain_build.c > @@ -48,6 +48,24 @@ custom_param("dom0_mem", parse_dom0_mem); > */ > #define DOM0_FDT_EXTRA_SIZE (128 + sizeof(struct fdt_reserve_entry)) Don't we need to update DOM0_FDT_EXTRA_SIZE? [..] -- Julien Grall