Hi Rob, Saravana, Tomi, Laurent, Sakari This is v4 patch-set Current Of-graph has "endpoint base" for loop, but doesn't have "port base" loop. "endpoint base" loop only is not enough. This patch-set add new "port base" for loop, and use it. v3 -> v4 - new for_each loop includes __free() - comment indicates to use return_ptr() or no_free_ptr() if it need to continue to use node - each driver based on it - care "prev" leak on of_graph_get_next_ports() - of_graph_get_next_port_endpoint() indicates WARN() if port has non-endpoint node - tidyup each git-log v2 -> v3 - return NULL if it it doesn't have ports / port - add visible comment on of_graph_get_next_ports() v1 -> v2 - add each Reviewed-by / Acked-by - tidyup/update Kernel Docs - use prev as parameter - update git-log explanation - remove extra changes Kuninori Morimoto (9): of: property: add of_graph_get_next_port() of: property: add of_graph_get_next_port_endpoint() ASoC: test-component: use new of_graph functions ASoC: rcar_snd: use new of_graph functions ASoC: audio-graph-card: use new of_graph functions ASoC: audio-graph-card2: use new of_graph functions gpu: drm: omapdrm: use new of_graph functions fbdev: omapfb: use new of_graph functions media: xilinx-tpg: use new of_graph functions drivers/gpu/drm/omapdrm/dss/dpi.c | 3 +- drivers/gpu/drm/omapdrm/dss/sdi.c | 3 +- drivers/media/platform/xilinx/xilinx-tpg.c | 3 +- drivers/of/property.c | 140 ++++++++++++++++++ drivers/video/fbdev/omap2/omapfb/dss/dpi.c | 3 +- drivers/video/fbdev/omap2/omapfb/dss/dss-of.c | 66 --------- drivers/video/fbdev/omap2/omapfb/dss/dss.c | 9 +- drivers/video/fbdev/omap2/omapfb/dss/sdi.c | 3 +- include/linux/of_graph.h | 70 +++++++++ include/video/omapfb_dss.h | 8 - sound/soc/generic/audio-graph-card.c | 11 +- sound/soc/generic/audio-graph-card2.c | 113 ++++++-------- sound/soc/generic/test-component.c | 3 +- sound/soc/sh/rcar/core.c | 21 +-- 14 files changed, 283 insertions(+), 173 deletions(-) -- 2.43.0