xref: /qemu/include/hw/tricore/triboard.h (revision e0945800)
1*34602f99SAndreas Konopik /*
2*34602f99SAndreas Konopik  * Infineon TriBoard System emulation.
3*34602f99SAndreas Konopik  *
4*34602f99SAndreas Konopik  * Copyright (c) 2020 Andreas Konopik <andreas.konopik@efs-auto.de>
5*34602f99SAndreas Konopik  * Copyright (c) 2020 David Brenken <david.brenken@efs-auto.de>
6*34602f99SAndreas Konopik  *
7*34602f99SAndreas Konopik  * This library is free software; you can redistribute it and/or
8*34602f99SAndreas Konopik  * modify it under the terms of the GNU Lesser General Public
9*34602f99SAndreas Konopik  * License as published by the Free Software Foundation; either
10*34602f99SAndreas Konopik  * version 2 of the License, or (at your option) any later version.
11*34602f99SAndreas Konopik  *
12*34602f99SAndreas Konopik  * This library is distributed in the hope that it will be useful,
13*34602f99SAndreas Konopik  * but WITHOUT ANY WARRANTY; without even the implied warranty of
14*34602f99SAndreas Konopik  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
15*34602f99SAndreas Konopik  * Lesser General Public License for more details.
16*34602f99SAndreas Konopik  *
17*34602f99SAndreas Konopik  * You should have received a copy of the GNU Lesser General Public
18*34602f99SAndreas Konopik  * License along with this library; if not, see <http://www.gnu.org/licenses/>.
19*34602f99SAndreas Konopik  */
20*34602f99SAndreas Konopik 
21*34602f99SAndreas Konopik #include "qapi/error.h"
22*34602f99SAndreas Konopik #include "hw/boards.h"
23*34602f99SAndreas Konopik #include "sysemu/sysemu.h"
24*34602f99SAndreas Konopik #include "exec/address-spaces.h"
25*34602f99SAndreas Konopik #include "qom/object.h"
26*34602f99SAndreas Konopik 
27*34602f99SAndreas Konopik #include "hw/tricore/tc27x_soc.h"
28*34602f99SAndreas Konopik 
29*34602f99SAndreas Konopik #define TYPE_TRIBOARD_MACHINE MACHINE_TYPE_NAME("triboard")
30*34602f99SAndreas Konopik typedef struct TriBoardMachineState TriBoardMachineState;
31*34602f99SAndreas Konopik typedef struct TriBoardMachineClass TriBoardMachineClass;
32*34602f99SAndreas Konopik DECLARE_OBJ_CHECKERS(TriBoardMachineState, TriBoardMachineClass,
33*34602f99SAndreas Konopik                      TRIBOARD_MACHINE, TYPE_TRIBOARD_MACHINE)
34*34602f99SAndreas Konopik 
35*34602f99SAndreas Konopik 
36*34602f99SAndreas Konopik struct TriBoardMachineState {
37*34602f99SAndreas Konopik     MachineState parent;
38*34602f99SAndreas Konopik 
39*34602f99SAndreas Konopik     TC27XSoCState tc27x_soc;
40*34602f99SAndreas Konopik };
41*34602f99SAndreas Konopik 
42*34602f99SAndreas Konopik struct TriBoardMachineClass {
43*34602f99SAndreas Konopik     MachineClass parent_obj;
44*34602f99SAndreas Konopik 
45*34602f99SAndreas Konopik     const char *name;
46*34602f99SAndreas Konopik     const char *desc;
47*34602f99SAndreas Konopik     const char *soc_name;
48*34602f99SAndreas Konopik };
49