• Frank Rowand's avatar
    of: overlay: use prop add changeset entry for property in new nodes · 6b4955ba
    Frank Rowand authored
    The changeset entry 'update property' was used for new properties in
    an overlay instead of 'add property'.
    
    The decision of whether to use 'update property' was based on whether
    the property already exists in the subtree where the node is being
    spliced into.  At the top level of creating a changeset describing the
    overlay, the target node is in the live devicetree, so checking whether
    the property exists in the target node returns the correct result.
    As soon as the changeset creation algorithm recurses into a new node,
    the target is no longer in the live devicetree, but is instead in the
    detached overlay tree, thus all properties are incorrectly found to
    already exist in the target.
    
    This fix will expose another devicetree bug that will be fixed
    in the following patch in the series.
    
    When this patch is applied the errors reported by the devictree
    unittest will change, and the unittest results will change from:
    
       ### dt-test ### end of unittest - 210 passed, 0 failed
    
    to
    
       ### dt-test ### end of unittest - 203 passed, 7 failed
    Tested-by: default avatarAlan Tull <atull@kernel.org>
    Signed-off-by: default avatarFrank Rowand <frank.rowand@sony.com>
    6b4955ba
overlay.c 30.6 KB