From mboxrd@z Thu Jan 1 00:00:00 1970 From: Mark Rutland Date: Thu, 28 Aug 2014 11:10:43 +0100 Subject: [U-Boot] [PATCH 2/8] ARM: PSCI: Alow arch specific DT patching In-Reply-To: <1409171401-22616-3-git-send-email-arnab.basu@freescale.com> References: <1409171401-22616-1-git-send-email-arnab.basu@freescale.com> <1409171401-22616-3-git-send-email-arnab.basu@freescale.com> Message-ID: <20140828101043.GF14650@leverpostej> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de Hi Arnab, On Wed, Aug 27, 2014 at 09:29:55PM +0100, Arnab Basu wrote: > Both ARMv7 and ARMv8 need to patch the device tree but the kind > of patching done is different. This creates a function that can be > defined by each architecture to handle the differences I have no problem with the patch, but what is it that we need to do differently for ARMv7 and ARMv8? Mark. > Signed-off-by: Arnab Basu > Reviewed-by: Bhupesh Sharma > Cc: Marc Zyngier > --- > arch/arm/cpu/armv7/virt-dt.c | 7 ++++++- > arch/arm/lib/bootm-fdt.c | 11 ++++++++--- > 2 files changed, 14 insertions(+), 4 deletions(-) > > diff --git a/arch/arm/cpu/armv7/virt-dt.c b/arch/arm/cpu/armv7/virt-dt.c > index 0b0d6a7..3fbec39 100644 > --- a/arch/arm/cpu/armv7/virt-dt.c > +++ b/arch/arm/cpu/armv7/virt-dt.c > @@ -88,7 +88,7 @@ static int fdt_psci(void *fdt) > return 0; > } > > -int armv7_update_dt(void *fdt) > +static int armv7_update_dt(void *fdt) > { > #ifndef CONFIG_ARMV7_SECURE_BASE > /* secure code lives in RAM, keep it alive */ > @@ -98,3 +98,8 @@ int armv7_update_dt(void *fdt) > > return fdt_psci(fdt); > } > + > +int cpu_update_dt(void *fdt) > +{ > + return armv7_update_dt(fdt); > +} > diff --git a/arch/arm/lib/bootm-fdt.c b/arch/arm/lib/bootm-fdt.c > index d4f1578..daabc03 100644 > --- a/arch/arm/lib/bootm-fdt.c > +++ b/arch/arm/lib/bootm-fdt.c > @@ -21,6 +21,11 @@ > > DECLARE_GLOBAL_DATA_PTR; > > +__weak int cpu_update_dt(void *fdt) > +{ > + return 0; > +} > + > int arch_fixup_fdt(void *blob) > { > bd_t *bd = gd->bd; > @@ -34,11 +39,11 @@ int arch_fixup_fdt(void *blob) > } > > ret = fdt_fixup_memory_banks(blob, start, size, CONFIG_NR_DRAM_BANKS); > -#if defined(CONFIG_ARMV7_NONSEC) || defined(CONFIG_ARMV7_VIRT) > + > if (ret) > return ret; > > - ret = armv7_update_dt(blob); > -#endif > + ret = cpu_update_dt(blob); > + > return ret; > } > -- > 1.7.7.4 > >