19b99de77SCorvin Köhne /*- 2*4d846d26SWarner Losh * SPDX-License-Identifier: BSD-2-Clause 39b99de77SCorvin Köhne * 49b99de77SCorvin Köhne * Copyright (c) 2021 Beckhoff Automation GmbH & Co. KG 59b99de77SCorvin Köhne * Author: Corvin Köhne <c.koehne@beckhoff.com> 69b99de77SCorvin Köhne */ 79b99de77SCorvin Köhne 89b99de77SCorvin Köhne #pragma once 99b99de77SCorvin Köhne 109b99de77SCorvin Köhne #include <vmmapi.h> 119b99de77SCorvin Köhne 12b11081dcSCorvin Köhne #define QEMU_FWCFG_MAX_ARCHS 0x2 13b11081dcSCorvin Köhne #define QEMU_FWCFG_MAX_ENTRIES 0x4000 1434f804e5SCorvin Köhne #define QEMU_FWCFG_MAX_NAME 56 15b11081dcSCorvin Köhne 167959d80dSCorvin Köhne #define QEMU_FWCFG_FILE_TABLE_LOADER "etc/table-loader" 177959d80dSCorvin Köhne 18b11081dcSCorvin Köhne struct qemu_fwcfg_item { 19b11081dcSCorvin Köhne uint32_t size; 20b11081dcSCorvin Köhne uint8_t *data; 21b11081dcSCorvin Köhne }; 22b11081dcSCorvin Köhne 2361482760SJohn Baldwin int qemu_fwcfg_add_file(const char *name, 246f9ebb3dSCorvin Köhne const uint32_t size, void *const data); 259b99de77SCorvin Köhne int qemu_fwcfg_init(struct vmctx *const ctx); 26ca14781cSCorvin Köhne int qemu_fwcfg_parse_cmdline_arg(const char *opt); 27