master
h 32 lines 775 Bytes
Raw
1 /*
2 * Definitions for hexagon virt board.
3 *
4 * Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries.
5 * SPDX-License-Identifier: GPL-2.0-or-later
6 */
7
8 #ifndef HW_HEXAGONVIRT_H
9 #define HW_HEXAGONVIRT_H
10
11 #include "hw/hexagon/hexagon.h"
12 #include "target/hexagon/cpu.h"
13
14 #define VIRTIO_DEV_COUNT 8
15
16 struct HexagonVirtMachineState {
17 HexagonCommonMachineState parent_obj;
18
19 int fdt_size;
20 MemoryRegion *sys;
21 MemoryRegion tcm;
22 MemoryRegion bios;
23 Clock *apb_clk;
24 DeviceState *virtio_mmio[VIRTIO_DEV_COUNT];
25 };
26
27 void hexagon_load_fdt(const struct HexagonVirtMachineState *vms);
28
29 #define TYPE_HEXAGON_VIRT_MACHINE MACHINE_TYPE_NAME("virt")
30 OBJECT_DECLARE_SIMPLE_TYPE(HexagonVirtMachineState, HEXAGON_VIRT_MACHINE)
31
32 #endif /* HW_HEXAGONVIRT_H */