• Gavin Shan's avatar
    drivers/of: Fix depth for sub-tree blob in unflatten_dt_nodes() · 8c237cd0
    Gavin Shan authored
    The function is unflattening device sub-tree blob if @dad passed to
    the function is valid. Currently, this functionality is used by PPC
    PowerNV PCI hotplug driver only. There are possibly multiple nodes
    in the first level of depth, fdt_next_node() bails immediately when
    @depth becomes negative before the second device node can be probed
    successfully. It leads to the device nodes except the first one won't
    be unflattened successfully.
    
    This fixes the issue by setting the initial depth (@inital_depth) to
    1 when this function is called to unflatten device sub-tree blob. No
    logic changes when this function is used to unflatten non-sub-tree
    blob.
    
    Cc: Rhyland Klein <rklein@nvidia.com>
    Fixes: 78c44d91 ("drivers/of: Fix depth when unflattening devicetree")
    Signed-off-by: default avatarGavin Shan <gwshan@linux.vnet.ibm.com>
    Tested-by: default avatarRhyland Klein <rklein@nvidia.com>
    Tested-by: default avatarAndrew Donnellan <andrew.donnellan@au1.ibm.com>
    Signed-off-by: default avatarRob Herring <robh@kernel.org>
    8c237cd0
fdt.c 32 KB