xref: /openbmc/qemu/hw/core/guest-loader.h (revision f4abdf32714d1845b7c01ec136dd2b04c2f7db47)
1*a33ff6d2SAlex Bennée /*
2*a33ff6d2SAlex Bennée  * Guest Loader
3*a33ff6d2SAlex Bennée  *
4*a33ff6d2SAlex Bennée  * Copyright (C) 2020 Linaro
5*a33ff6d2SAlex Bennée  * Written by Alex Bennée <alex.bennee@linaro.org>
6*a33ff6d2SAlex Bennée  * (based on the generic-loader by Li Guang <lig.fnst@cn.fujitsu.com>)
7*a33ff6d2SAlex Bennée  *
8*a33ff6d2SAlex Bennée  * SPDX-License-Identifier: GPL-2.0-or-later
9*a33ff6d2SAlex Bennée  *
10*a33ff6d2SAlex Bennée  * This work is licensed under the terms of the GNU GPL, version 2 or later.
11*a33ff6d2SAlex Bennée  * See the COPYING file in the top-level directory.
12*a33ff6d2SAlex Bennée  */
13*a33ff6d2SAlex Bennée 
14*a33ff6d2SAlex Bennée #ifndef GUEST_LOADER_H
15*a33ff6d2SAlex Bennée #define GUEST_LOADER_H
16*a33ff6d2SAlex Bennée 
17*a33ff6d2SAlex Bennée #include "hw/qdev-core.h"
18*a33ff6d2SAlex Bennée #include "qom/object.h"
19*a33ff6d2SAlex Bennée 
20*a33ff6d2SAlex Bennée struct GuestLoaderState {
21*a33ff6d2SAlex Bennée     /* <private> */
22*a33ff6d2SAlex Bennée     DeviceState parent_obj;
23*a33ff6d2SAlex Bennée 
24*a33ff6d2SAlex Bennée     /* <public> */
25*a33ff6d2SAlex Bennée     uint64_t addr;
26*a33ff6d2SAlex Bennée     char *kernel;
27*a33ff6d2SAlex Bennée     char *args;
28*a33ff6d2SAlex Bennée     char *initrd;
29*a33ff6d2SAlex Bennée };
30*a33ff6d2SAlex Bennée 
31*a33ff6d2SAlex Bennée #define TYPE_GUEST_LOADER "guest-loader"
32*a33ff6d2SAlex Bennée OBJECT_DECLARE_SIMPLE_TYPE(GuestLoaderState, GUEST_LOADER)
33*a33ff6d2SAlex Bennée 
34*a33ff6d2SAlex Bennée #endif
35