提交 05dd6f18 编写于 作者: M Miao Yan 提交者: Bin Meng

cmd: qfw: remove qemu_fwcfg_free_files()

This patch is part of the qfw refactor work.

The qemu_fwcfg_free_files() function is only used in error handling in
ACPI table generation, let's not make this a core function and move it
to the right place.
Signed-off-by: NMiao Yan <yanmiaobest@gmail.com>
Reviewed-by: NBin Meng <bmeng.cn@gmail.com>
上级 099b2196
......@@ -235,8 +235,17 @@ u32 write_acpi_tables(u32 addr)
}
out:
if (ret)
qemu_fwcfg_free_files();
if (ret) {
struct fw_cfg_file_iter iter;
for (file = qemu_fwcfg_file_iter_init(&iter);
!qemu_fwcfg_file_iter_end(&iter);
file = qemu_fwcfg_file_iter_next(&iter)) {
if (file->addr) {
free((void *)file->addr);
file->addr = 0;
}
}
}
free(table_loader);
return addr;
......
......@@ -217,18 +217,6 @@ struct fw_file *qemu_fwcfg_find_file(const char *name)
return NULL;
}
void qemu_fwcfg_free_files(void)
{
struct fw_file *file;
struct list_head *list;
list_for_each(list, &fw_list) {
file = list_entry(list, struct fw_file, list);
if (file->addr)
free((void *)file->addr);
}
}
struct fw_file *qemu_fwcfg_file_iter_init(struct fw_cfg_file_iter *iter)
{
iter->entry = fw_list.next;
......
......@@ -154,7 +154,6 @@ void qemu_fwcfg_init(void);
void qemu_fwcfg_read_entry(uint16_t entry, uint32_t length, void *address);
int qemu_fwcfg_read_firmware_list(void);
struct fw_file *qemu_fwcfg_find_file(const char *name);
void qemu_fwcfg_free_files(void);
/**
* Get system cpu number
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册