4 * Copyright 2018 IBM Corp.
6 * This code is licensed under the GPL version 2 or later. See
7 * the COPYING file in the top-level directory.
12 #include "hw/boards.h"
14 typedef struct AspeedBoardState AspeedBoardState
;
16 #define TYPE_ASPEED_MACHINE MACHINE_TYPE_NAME("aspeed")
17 #define ASPEED_MACHINE(obj) \
18 OBJECT_CHECK(AspeedMachine, (obj), TYPE_ASPEED_MACHINE)
20 typedef struct AspeedMachine
{
21 MachineState parent_obj
;
26 #define ASPEED_MAC0_ON (1 << 0)
27 #define ASPEED_MAC1_ON (1 << 1)
28 #define ASPEED_MAC2_ON (1 << 2)
29 #define ASPEED_MAC3_ON (1 << 3)
31 #define ASPEED_MACHINE_CLASS(klass) \
32 OBJECT_CLASS_CHECK(AspeedMachineClass, (klass), TYPE_ASPEED_MACHINE)
33 #define ASPEED_MACHINE_GET_CLASS(obj) \
34 OBJECT_GET_CLASS(AspeedMachineClass, (obj), TYPE_ASPEED_MACHINE)
36 typedef struct AspeedMachineClass
{
37 MachineClass parent_obj
;
44 const char *fmc_model
;
45 const char *spi_model
;
48 void (*i2c_init
)(AspeedBoardState
*bmc
);