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