iommu: pass cell_count = -1 to of_for_each_phandle with cells_name
authorUwe Kleine-König <u.kleine-koenig@pengutronix.de>
Sat, 24 Aug 2019 13:28:45 +0000 (15:28 +0200)
committerRob Herring <robh@kernel.org>
Fri, 13 Sep 2019 21:54:23 +0000 (16:54 -0500)
Currently of_for_each_phandle ignores the cell_count parameter when a
cells_name is given. I intend to change that and let the iterator fall
back to a non-negative cell_count if the cells_name property is missing
in the referenced node.

To not change how existing of_for_each_phandle's users iterate, fix them
to pass cell_count = -1 when also cells_name is given which yields the
expected behaviour with and without my change.

Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Acked-by: Joerg Roedel <jroedel@suse.de>
Signed-off-by: Rob Herring <robh@kernel.org>
drivers/iommu/arm-smmu.c
drivers/iommu/mtk_iommu_v1.c

index 64977c1..81b7734 100644 (file)
@@ -333,7 +333,7 @@ static int __find_legacy_master_phandle(struct device *dev, void *data)
        int err;
 
        of_for_each_phandle(it, err, dev->of_node, "mmu-masters",
-                           "#stream-id-cells", 0)
+                           "#stream-id-cells", -1)
                if (it->node == np) {
                        *(void **)data = dev;
                        return 1;
index abeeac4..68d1de7 100644 (file)
@@ -426,7 +426,7 @@ static int mtk_iommu_add_device(struct device *dev)
        int err;
 
        of_for_each_phandle(&it, err, dev->of_node, "iommus",
-                       "#iommu-cells", 0) {
+                       "#iommu-cells", -1) {
                int count = of_phandle_iterator_args(&it, iommu_spec.args,
                                        MAX_PHANDLE_ARGS);
                iommu_spec.np = of_node_get(it.node);