Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

device property: Add a macro for interating over graph endpoints

Add a convenience macro for iterating over graph endpoints. Iterating over
graph endpoints using fwnode_graph_get_next_endpoint() is a recurring
pattern, and this macro allows calling that function in a slightly more
convenient way. For instance,

for (child = NULL;
(child = fwnode_graph_get_next_endpoint(fwnode, child)); )

becomes

fwnode_graph_for_each_endpoint(fwnode, child)

Signed-off-by: Sakari Ailus <sakari.ailus@linux.intel.com>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>

authored by

Sakari Ailus and committed by
Rafael J. Wysocki
5e4b1b70 cf89a31c

+4
+4
include/linux/property.h
··· 293 293 fwnode_graph_get_remote_node(const struct fwnode_handle *fwnode, u32 port, 294 294 u32 endpoint); 295 295 296 + #define fwnode_graph_for_each_endpoint(fwnode, child) \ 297 + for (child = NULL; \ 298 + (child = fwnode_graph_get_next_endpoint(fwnode, child)); ) 299 + 296 300 int fwnode_graph_parse_endpoint(const struct fwnode_handle *fwnode, 297 301 struct fwnode_endpoint *endpoint); 298 302