From mboxrd@z Thu Jan 1 00:00:00 1970 From: Jerry Van Baren Date: Mon, 17 May 2010 07:25:21 -0400 Subject: [U-Boot] [PATCH 2/3] libfdt: make fdt_increase_size() available to everyone In-Reply-To: <1273526815-1091-1-git-send-email-timur@freescale.com> References: <1273526815-1091-1-git-send-email-timur@freescale.com> Message-ID: <4BF127A1.5070802@gmail.com> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de Timur Tabi wrote: > The function fdt_increase_size() increases the size of the device tree by the > given amount. This is useful for any code that wants to add a node or large > property, to avoid the possibility of running out of space. It's much smarter > to have U-Boot increase the size of device tree when it knows it's going to > add data, instead of hoping that the DTS was compiled with the right -p value. > > Signed-off-by: Timur Tabi Acked-by: Gerald Van Baren > --- > > common/fdt_support.c | 20 ++++++++++---------- > include/fdt_support.h | 1 + > 2 files changed, 11 insertions(+), 10 deletions(-) > > diff --git a/common/fdt_support.c b/common/fdt_support.c > index b6f252a..01d635b 100644 > --- a/common/fdt_support.c > +++ b/common/fdt_support.c > @@ -645,6 +645,16 @@ int fdt_resize(void *blob) > return actualsize; > } > > +int fdt_increase_size(void *fdt, int add_len) > +{ > + int newlen; > + > + newlen = fdt_totalsize(fdt) + add_len; > + > + /* Open in place with a new len */ > + return fdt_open_into(fdt, fdt, newlen); > +} > + > #ifdef CONFIG_PCI > #define CONFIG_SYS_PCI_NR_INBOUND_WIN 4 > > @@ -792,16 +802,6 @@ int fdt_del_subnodes(const void *blob, int parent_offset) > return 0; > } > > -int fdt_increase_size(void *fdt, int add_len) > -{ > - int newlen; > - > - newlen = fdt_totalsize(fdt) + add_len; > - > - /* Open in place with a new len */ > - return fdt_open_into(fdt, fdt, newlen); > -} > - > int fdt_del_partitions(void *blob, int parent_offset) > { > const void *prop; > diff --git a/include/fdt_support.h b/include/fdt_support.h > index 9a453af..d70627d 100644 > --- a/include/fdt_support.h > +++ b/include/fdt_support.h > @@ -78,6 +78,7 @@ void ft_pci_setup(void *blob, bd_t *bd); > > void set_working_fdt_addr(void *addr); > int fdt_resize(void *blob); > +int fdt_increase_size(void *fdt, int add_len); > > int fdt_fixup_nor_flash_size(void *blob, int cs, u32 size); >