diff options
| author | Simon Glass <[email protected]> | 2025-10-15 16:44:08 +0100 |
|---|---|---|
| committer | Tom Rini <[email protected]> | 2025-10-22 14:16:56 -0600 |
| commit | bef963cb751049cacc86f2754452efadd03ae2f0 (patch) | |
| tree | 8d3ab1a17fb3204b9d978bfc91caac75d6690a31 /include/bootflow.h | |
| parent | 0fe6de0dc5b137a2def3a8cc0baa2fb73a3f8541 (diff) | |
boot: Keep track of which bootmeths have been used
Add a bitfield which tracks when bootmeths have been used. This will be
needed when global bootmeths can be used later in the iteration.
Fix a missing bootflow_free() while here.
Signed-off-by: Simon Glass <[email protected]>
Diffstat (limited to 'include/bootflow.h')
| -rw-r--r-- | include/bootflow.h | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/include/bootflow.h b/include/bootflow.h index b18baebb4ba..58a4ab9f811 100644 --- a/include/bootflow.h +++ b/include/bootflow.h @@ -11,7 +11,8 @@ #include <bootdev.h> #include <image.h> #include <dm/ofnode_decl.h> -#include <linux/types.h> +#include <linux/list.h> +#include <linux/build_bug.h> struct bootstd_priv; struct expo; @@ -213,6 +214,10 @@ enum bootflow_meth_flags_t { BOOTFLOW_METHF_SINGLE_UCLASS = 1 << 3, }; +enum { + BOOTMETH_MAX_COUNT = 32, +}; + /** * struct bootflow_iter - state for iterating through bootflows * @@ -260,6 +265,8 @@ enum bootflow_meth_flags_t { * happens before the normal ones) * @method_flags: flags controlling which methods should be used for this @dev * (enum bootflow_meth_flags_t) + * @methods_done: indicates which methods have been processed, one bit for + * each method in @method_order[] */ struct bootflow_iter { int flags; @@ -282,6 +289,7 @@ struct bootflow_iter { bool have_global; bool doing_global; int method_flags; + uint methods_done; }; /** |
