From 5ca5523fd8f6800c32cbc8f3724b393e791cebd6 Mon Sep 17 00:00:00 2001 From: Nico Huber Date: Sat, 15 Jun 2019 22:29:08 +0200 Subject: layout: Introduce layout_next_included() Change-Id: Ib01c8af06c3f84eafbd585760e74c3c287b9fa7d Signed-off-by: Nico Huber Reviewed-on: https://review.coreboot.org/c/flashrom/+/33518 Tested-by: build bot (Jenkins) Reviewed-by: Arthur Heymans --- layout.c | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) (limited to 'layout.c') diff --git a/layout.c b/layout.c index 52aa3882e..e49189eb4 100644 --- a/layout.c +++ b/layout.c @@ -252,6 +252,24 @@ const struct romentry *layout_next_included_region( return lowest; } +const struct romentry *layout_next_included( + const struct flashrom_layout *const layout, const struct romentry *iterator) +{ + const struct romentry *const end = layout->entries + layout->num_entries; + + if (iterator) + ++iterator; + else + iterator = &layout->entries[0]; + + for (; iterator < end; ++iterator) { + if (!iterator->included) + continue; + return iterator; + } + return NULL; +} + /** * @addtogroup flashrom-layout * @{ -- cgit v1.2.3