14 Apr, 2017

1 commit


11 Apr, 2017

2 commits

  • For some reason Python 3 seems to think it does not need to build
    the library. Using the --force parameter makes sure that the library
    gets built always. This is especially important since we move the
    library in the next step of the Makefile, hence forcing a rebuild
    every time the higher level Makefile triggers a rebuild is required
    to make sure the library is always there.

    Signed-off-by: Stefan Agner
    Acked-by: Simon Glass

    Stefan Agner
     
  • This a few minor changes down from upstream since the last sync.

    Signed-off-by: Simon Glass

    Simon Glass
     

14 Jan, 2017

1 commit

  • The fdt_overlay_apply() function purports to support the edge cases where
    an overlay has no fixups to be applied, or a base tree which has no
    symbols (the latter can only work if the former is also true). However it
    gets it wrong in a couple of small ways:

    * In the no fixups case, it doesn't fail immediately, but will attempt
    fdt_for_each_property_offset() giving -FDT_ERR_NOTFOUND as the node
    offset, which will fail. Instead it should succeed immediately, since
    there's nothing to do.
    * In the case of no symbols, it again doesn't fail immediately. However
    if there is an actual fixup it will fail with an unexpected error,
    because -FDT_ERR_NOTFOUND is passed to fdt_getprop() when attempting to
    look up the symbols. We should instead return -FDT_ERR_NOTFOUND
    directly.

    Both of these errors lead to the code returning misleading error codes in
    failing cases.

    [ DTC commit: 7d8ef6e1db9794f72805a0855f4f7f12fadd03d3 ]

    Signed-off-by: David Gibson
    Signed-off-by: Stefan Agner
    Acked-by: Simon Glass

    David Gibson
     

24 Oct, 2016

3 commits


14 Oct, 2016

5 commits

  • The fdt_path_offset() function is not inlined in upstream libfdt. Adjust
    U-Boot's version to match.

    Signed-off-by: Simon Glass

    Simon Glass
     
  • The signature for this macro has changed. Bring in the upstream version and
    adjust U-Boot's usages to suit.

    Signed-off-by: Simon Glass
    Update to drivers/power/pmic/palmas.c:
    Signed-off-by: Keerthy

    Change-Id: I6cc9021339bfe686f9df21d61a1095ca2b3776e8

    Simon Glass
     
  • These have now landed upstream. The naming is different and in one case the
    function signature has changed. Update the code to match.

    This applies the following upstream commits by
    Thierry Reding :

    604e61e fdt: Add functions to retrieve strings
    8702bd1 fdt: Add a function to get the index of a string
    2218387 fdt: Add a function to count strings

    Signed-off-by: Simon Glass

    Simon Glass
     
  • This includes small changes to the following functions, from upstream
    commit 6d1832c:

    - fdt_get_max_phandle() (upstream commit 84e0e134)
    - fdt_node_check_compatible (upstream commit 53bf130b)
    - fdt_setprop_inplace_namelen_partial() to remove useless brackets and
    use idx instead of index
    - _fdt_resize_property() to use idx instead of index
    - _fdt_splice() (upstream commit d4c7c25c)

    It also includes various typo fixes in libfdt.h

    Signed-off-by: Simon Glass

    Simon Glass
     
  • Using pointer arithmetic to generate a pointer outside a known object is,
    technically, undefined behaviour in C. Unfortunately, we were using that
    in fdt_offset_ptr() to detect overflows.

    To fix this we need to do our bounds / overflow checking on the offsets
    before constructing pointers from them.

    Reported-by: David Binderman
    Signed-off-by: David Gibson
    Signed-off-by: Simon Glass

    David Gibson
     

24 Sep, 2016

1 commit


19 Sep, 2016

4 commits


20 Aug, 2016

7 commits

  • This adds a bunch of unit tests for the "fdt apply" command.

    They've all been run successfully in the sandbox. However, as you still
    require an out-of-tree dtc with overlay support, this is disabled by
    default.

    Acked-by: Simon Glass
    Acked-by: Pantelis Antoniou
    Signed-off-by: Maxime Ripard

    Maxime Ripard
     
  • The device tree overlays are a good way to deal with user-modifyable
    boards or boards with some kind of an expansion mechanism where we can
    easily plug new board in (like the BBB or the raspberry pi).

    However, so far, the usual mechanism to deal with it was to have in Linux
    some driver detecting the expansion boards plugged in and then request
    these overlays using the firmware interface.

    That works in most cases, but in some cases, you might want to have the
    overlays applied before the userspace comes in. Either because the new
    board requires some kind of an early initialization, or because your root
    filesystem is accessed through that expansion board.

    The easiest solution in such a case is to simply have the component before
    Linux applying that overlay, removing all these drawbacks.

    Reviewed-by: Stefan Agner
    Acked-by: Pantelis Antoniou
    Acked-by: Simon Glass
    Signed-off-by: Maxime Ripard

    Maxime Ripard
     
  • The device tree overlays are a good way to deal with user-modifyable
    boards or boards with some kind of an expansion mechanism where we can
    easily plug new board in (like the BBB, the Raspberry Pi or the CHIP).

    Add a new function to merge overlays with a base device tree.

    Signed-off-by: Maxime Ripard

    Maxime Ripard
     
  • Add a function to modify inplace only a portion of a property..

    This is especially useful when the property is an array of values, and you
    want to update one of them without changing the DT size.

    Signed-off-by: Maxime Ripard
    Acked-by: Simon Glass

    Maxime Ripard
     
  • Add a namelen variant of fdt_path_offset to retrieve the node offset using
    only a fixed number of characters.

    Reviewed-by: Simon Glass
    Signed-off-by: Maxime Ripard

    Maxime Ripard
     
  • The function fdt_path_next_seperator had an obvious mispell. Fix it.

    Signed-off-by: Maxime Ripard

    Maxime Ripard
     
  • Add a function to retrieve the highest phandle in a given device tree.

    Signed-off-by: Maxime Ripard
    Reviewed-by: Stefan Agner
    Acked-by: Simon Glass

    Maxime Ripard
     

15 Jul, 2016

1 commit


20 Jun, 2016

1 commit

  • A number of style fixes across the files in this directory, including:

    * Correct invalid kernel-doc content.
    * Tidy up massive comment in fdt_region.c.
    * Use correct spelling of "U-Boot".
    * Replace tests of "! " with "!".
    * Replace "libfdt_env.h" with .

    Signed-off-by: Robert P. J. Day
    Acked-by: Simon Glass

    Robert P. J. Day
     

15 Mar, 2016

1 commit

  • The existing function to add a new property to a tree being built requires
    that the entire contents of the new property be passed in. For some
    applications it is more convenient to be able to add the property contents
    later, perhaps by reading from a file. This avoids double-buffering of the
    contents.

    Add a new function to support this and adust the existing fdt_property() to
    use it.

    Signed-off-by: Simon Glass

    Simon Glass
     

04 Nov, 2015

1 commit


22 Jul, 2015

2 commits

  • These have been sent upstream but not accepted to libfdt. For now, bring
    these into U-Boot to enable fdtgrep to operate. We will use fdtgrep to
    cut device tree files down for SPL.

    Signed-off-by: Simon Glass

    Simon Glass
     
  • Property names are stored in a string table. When a node property is
    removed, the string table is not updated since other nodes may have a
    property with the same name.

    Thus it is possible for the string table to build up a number of unused
    strings. Add a function to remove these. This works by building a new device
    tree from the old one, adding strings one by one as needed.

    Signed-off-by: Simon Glass

    Simon Glass
     

20 Jul, 2015

2 commits

  • Currently, this function returns a positive value on error,
    so we never know whether this function has succeeded or failed.

    For example, if the given property is not found, fdt_getprop()
    returns -FDT_ERR_NOTFOUND, and then this function inverts it,
    i.e., returns FDT_ERR_NOTFOUND (=1).

    Signed-off-by: Masahiro Yamada
    Fixes: bc4147ab2d69 ("fdt: Add a function to count strings")
    Acked-by: Simon Glass

    Masahiro Yamada
     
  • As mentioned in the comment block in include/libfdt.h,
    fdt_get_string_index() is supposed to return a negative value
    on error.

    Signed-off-by: Masahiro Yamada
    Fixes: 5094eb408a5d ("fdt: Add functions to retrieve strings")
    Acked-by: Simon Glass

    Masahiro Yamada
     

24 Apr, 2015

1 commit

  • After syncing the sunxi dts files with the upstream kernel dm/fdt sunxi
    builds would no longer boot.

    The problem is that stdout-path is now set like this in the upstream dts
    files: stdout-path = "serial0:115200n8". The use of options in of-paths,
    either after an alias name, or after a full path, e.g. stdout-path =
    "/soc@01c00000/serial@01c28000:115200", is standard of usage, but something
    which the u-boot dts code so far did not handle.

    This commit fixes this, adding support for both path formats.

    Signed-off-by: Hans de Goede
    Acked-by: Simon Glass

    Hans de Goede
     

08 Dec, 2014

1 commit


23 Oct, 2014

3 commits


09 Aug, 2014

1 commit

  • This brings in changes up to commit f9e91a48 in the libfdt repo.
    Mostly this is whitespace/minor changes. But there are a few new
    features:

    - fdt_size_cells() and fdt_address_cells()
    - fdt_resize()

    Signed-off-by: Simon Glass

    Simon Glass
     

19 Jun, 2014

1 commit


01 Nov, 2013

1 commit