diff --git a/drivers/soc/rockchip/flash_vendor_storage.c b/drivers/soc/rockchip/flash_vendor_storage.c index 711fa7eec168..831f7b03f7d0 100644 --- a/drivers/soc/rockchip/flash_vendor_storage.c +++ b/drivers/soc/rockchip/flash_vendor_storage.c @@ -174,8 +174,7 @@ static int flash_vendor_write(u32 id, void *pbuf, u32 size) item->size = size; memcpy(&p_data[item->offset], pbuf, size); g_vendor->free_offset = offset + align_size; - g_vendor->free_size -= (align_size - - alloc_size); + g_vendor->free_size = sizeof(g_vendor->data) - g_vendor->free_offset; } else { memcpy(&p_data[item->offset], pbuf,