summaryrefslogtreecommitdiffstats
path: root/qemu/include/hw/misc/mips_itu.h
diff options
context:
space:
mode:
Diffstat (limited to 'qemu/include/hw/misc/mips_itu.h')
-rw-r--r--qemu/include/hw/misc/mips_itu.h72
1 files changed, 0 insertions, 72 deletions
diff --git a/qemu/include/hw/misc/mips_itu.h b/qemu/include/hw/misc/mips_itu.h
deleted file mode 100644
index b3a453203..000000000
--- a/qemu/include/hw/misc/mips_itu.h
+++ /dev/null
@@ -1,72 +0,0 @@
-/*
- * Inter-Thread Communication Unit emulation.
- *
- * Copyright (c) 2016 Imagination Technologies
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, see <http://www.gnu.org/licenses/>.
- */
-
-#ifndef MIPS_ITU_H
-#define MIPS_ITU_H
-
-#define TYPE_MIPS_ITU "mips-itu"
-#define MIPS_ITU(obj) OBJECT_CHECK(MIPSITUState, (obj), TYPE_MIPS_ITU)
-
-#define ITC_CELL_DEPTH_SHIFT 2
-#define ITC_CELL_DEPTH (1u << ITC_CELL_DEPTH_SHIFT)
-
-typedef struct ITCStorageCell {
- struct {
- uint8_t FIFODepth; /* Log2 of the cell depth */
- uint8_t FIFOPtr; /* Number of elements in a FIFO cell */
- uint8_t FIFO; /* 1 - FIFO cell, 0 - Semaphore cell */
- uint8_t T; /* Trap Bit */
- uint8_t F; /* Full Bit */
- uint8_t E; /* Empty Bit */
- } tag;
-
- /* Index of the oldest element in the queue */
- uint8_t fifo_out;
-
- /* Circular buffer for FIFO. Semaphore cells use index 0 only */
- uint64_t data[ITC_CELL_DEPTH];
-
- /* Bitmap tracking blocked threads on the cell.
- TODO: support >64 threads ? */
- uint64_t blocked_threads;
-} ITCStorageCell;
-
-#define ITC_ADDRESSMAP_NUM 2
-
-typedef struct MIPSITUState {
- /*< private >*/
- SysBusDevice parent_obj;
- /*< public >*/
-
- int32_t num_fifo;
- int32_t num_semaphores;
-
- /* ITC Storage */
- ITCStorageCell *cell;
- MemoryRegion storage_io;
-
- /* ITC Configuration Tags */
- uint64_t ITCAddressMap[ITC_ADDRESSMAP_NUM];
- MemoryRegion tag_io;
-} MIPSITUState;
-
-/* Get ITC Configuration Tag memory region. */
-MemoryRegion *mips_itu_get_tag_region(MIPSITUState *itu);
-
-#endif /* MIPS_ITU_H */