diff options
author | Simon Glass <sjg@chromium.org> | 2020-05-24 17:38:23 -0600 |
---|---|---|
committer | Bin Meng <bmeng.cn@gmail.com> | 2020-05-27 14:40:09 +0800 |
commit | 03d4c298fa801139b37108fab83cb312209d6092 (patch) | |
tree | 9e8605e251b1f302e24083423109fa2a7ad8e43a /include/cbfs.h | |
parent | 924e346a66ea57f48d6f8467c30d411442229946 (diff) |
cbfs: Allow reading a file from a CBFS given its base addr
Currently we support reading a file from CBFS given the address of the end
of the ROM. Sometimes we only know the start of the CBFS. Add a function
to find a file given that.
Signed-off-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
Diffstat (limited to 'include/cbfs.h')
-rw-r--r-- | include/cbfs.h | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/include/cbfs.h b/include/cbfs.h index 5a248781c3..1aff110acb 100644 --- a/include/cbfs.h +++ b/include/cbfs.h @@ -175,6 +175,20 @@ int file_cbfs_find_uncached(ulong end_of_rom, const char *name, struct cbfs_cachenode *node); /** + * file_cbfs_find_uncached_base() - Find a file in CBFS given the base address + * + * Note that @node should be declared by the caller. This design is to avoid + * the need for allocation here. + * + * @base: Points to the base of the CBFS + * @name: The name to search for + * @node: Returns the contents of the node if found (i.e. copied into *node) + * @return 0 on success, -ENOENT if not found, -EFAULT on bad header + */ +int file_cbfs_find_uncached_base(ulong base, const char *name, + struct cbfs_cachenode *node); + +/** * file_cbfs_name() - Get the name of a file in CBFS. * * @file: The handle to the file. |