From 494f8b10d832456a96be4ee7317425f6936cabc8 Mon Sep 17 00:00:00 2001 From: Rob Herring Date: Mon, 28 Oct 2019 11:32:32 -0500 Subject: [PATCH] resource: Add a resource_list_first_type helper A common pattern is looping over a resource_list just to get a matching entry with a specific type. Add resource_list_first_type() helper which implements this. Signed-off-by: Rob Herring Signed-off-by: Lorenzo Pieralisi --- include/linux/resource_ext.h | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/include/linux/resource_ext.h b/include/linux/resource_ext.h index 06da59b..ff0339d 100644 --- a/include/linux/resource_ext.h +++ b/include/linux/resource_ext.h @@ -66,4 +66,16 @@ resource_list_destroy_entry(struct resource_entry *entry) #define resource_list_for_each_entry_safe(entry, tmp, list) \ list_for_each_entry_safe((entry), (tmp), (list), node) +static inline struct resource_entry * +resource_list_first_type(struct list_head *list, unsigned long type) +{ + struct resource_entry *entry; + + resource_list_for_each_entry(entry, list) { + if (resource_type(entry->res) == type) + return entry; + } + return NULL; +} + #endif /* _LINUX_RESOURCE_EXT_H */ -- 2.7.4