37 lines
1.2 KiB
Diff
37 lines
1.2 KiB
Diff
From dacb1a46835914b8c3862db15726bcc0a68af8f5 Mon Sep 17 00:00:00 2001
|
|
From: Rob Herring <robh@kernel.org>
|
|
Date: Mon, 28 Oct 2019 11:32:32 -0500
|
|
Subject: [PATCH] resource: Add a resource_list_first_type helper
|
|
|
|
commit 494f8b10d832456a96be4ee7317425f6936cabc8 upstream.
|
|
|
|
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 <robh@kernel.org>
|
|
Signed-off-by: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>
|
|
---
|
|
include/linux/resource_ext.h | 12 ++++++++++++
|
|
1 file changed, 12 insertions(+)
|
|
|
|
--- a/include/linux/resource_ext.h
|
|
+++ b/include/linux/resource_ext.h
|
|
@@ -66,4 +66,16 @@ resource_list_destroy_entry(struct resou
|
|
#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 */
|