summaryrefslogtreecommitdiff
path: root/board/Marvell
diff options
context:
space:
mode:
authorMarek BehĂșn <marek.behun@nic.cz>2022-01-20 01:04:42 +0100
committerStefan Roese <sr@denx.de>2022-01-20 11:35:29 +0100
commit3058e283b885d80fbaaaaed6f597a068188be948 (patch)
tree3acad866dc7b75435b3bf1972ab7323257b707cc /board/Marvell
parent068415eadefbbc81f14d4ce61fcf7a7eb39650d4 (diff)
fdt_support: Add fdt_for_each_node_by_compatible() helper macro
Add macro fdt_for_each_node_by_compatible() to allow iterating over fdt nodes by compatible string. Convert various usages of off = fdt_node_offset_by_compatible(fdt, start, compat); while (off > 0) { code(); off = fdt_node_offset_by_compatible(fdt, off, compat); } and similar, to fdt_for_each_node_by_compatible(off, fdt, start, compat) code(); Signed-off-by: Marek BehĂșn <marek.behun@nic.cz> Reviewed-by: Stefan Roese <sr@denx.de> Reviewed-by: Simon Glass <sjg@chromium.org>
Diffstat (limited to 'board/Marvell')
-rw-r--r--board/Marvell/octeon_ebb7304/board.c9
1 files changed, 3 insertions, 6 deletions
diff --git a/board/Marvell/octeon_ebb7304/board.c b/board/Marvell/octeon_ebb7304/board.c
index c6c7c13483..5fd84b260b 100644
--- a/board/Marvell/octeon_ebb7304/board.c
+++ b/board/Marvell/octeon_ebb7304/board.c
@@ -103,9 +103,7 @@ static int get_lmac_fdt_node(const void *fdt, int search_node, int search_bgx, i
int parent;
/* Iterate through all bgx ports */
- node = -1;
- while ((node = fdt_node_offset_by_compatible((void *)fdt, node,
- compat)) >= 0) {
+ fdt_for_each_node_by_compatible(node, (void *)fdt, -1, compat) {
/* Get the node and bgx from the physical address */
parent = fdt_parent_offset(fdt, node);
reg = fdt_getprop(fdt, parent, "reg", &len);
@@ -146,9 +144,8 @@ static int get_mix_fdt_node(const void *fdt, int search_node, int search_index)
int node;
/* Iterate through all the mix fdt nodes */
- node = -1;
- while ((node = fdt_node_offset_by_compatible((void *)fdt, node,
- "cavium,octeon-7890-mix")) >= 0) {
+ fdt_for_each_node_by_compatible(node, (void *)fdt, -1,
+ "cavium,octeon-7890-mix") {
int parent;
int len;
const char *name;