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: Miao Yan <yanmiaobest@gmail.com>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
master
Miao Yan 8 years ago committed by Bin Meng
parent 099b2196e4
commit 05dd6f183c
  1. 13
      arch/x86/cpu/qemu/acpi_table.c
  2. 12
      cmd/qemu_fw_cfg.c
  3. 1
      include/qemu_fw_cfg.h

@ -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

Loading…
Cancel
Save