mirror of
https://github.com/AsahiLinux/u-boot
synced 2024-11-10 23:24:38 +00:00
x86: Add a function to find the size of an mrccache record
Move the code to determine the size of a cache record into a function so we can use it elsewhere in this file. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
This commit is contained in:
parent
9859dc76e7
commit
ca4e40887e
1 changed files with 8 additions and 7 deletions
|
@ -17,19 +17,20 @@
|
|||
|
||||
DECLARE_GLOBAL_DATA_PTR;
|
||||
|
||||
static uint mrc_block_size(uint data_size)
|
||||
{
|
||||
uint mrc_size = sizeof(struct mrc_data_container) + data_size;
|
||||
|
||||
return ALIGN(mrc_size, MRC_DATA_ALIGN);
|
||||
}
|
||||
|
||||
static struct mrc_data_container *next_mrc_block(
|
||||
struct mrc_data_container *cache)
|
||||
{
|
||||
/* MRC data blocks are aligned within the region */
|
||||
u32 mrc_size = sizeof(*cache) + cache->data_size;
|
||||
u8 *region_ptr = (u8 *)cache;
|
||||
|
||||
if (mrc_size & (MRC_DATA_ALIGN - 1UL)) {
|
||||
mrc_size &= ~(MRC_DATA_ALIGN - 1UL);
|
||||
mrc_size += MRC_DATA_ALIGN;
|
||||
}
|
||||
|
||||
region_ptr += mrc_size;
|
||||
region_ptr += mrc_block_size(cache->data_size);
|
||||
|
||||
return (struct mrc_data_container *)region_ptr;
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue