aspeed_hace.h (883B)
1/* 2 * ASPEED Hash and Crypto Engine 3 * 4 * Copyright (C) 2021 IBM Corp. 5 * 6 * SPDX-License-Identifier: GPL-2.0-or-later 7 */ 8 9#ifndef ASPEED_HACE_H 10#define ASPEED_HACE_H 11 12#include "hw/sysbus.h" 13 14#define TYPE_ASPEED_HACE "aspeed.hace" 15#define TYPE_ASPEED_AST2400_HACE TYPE_ASPEED_HACE "-ast2400" 16#define TYPE_ASPEED_AST2500_HACE TYPE_ASPEED_HACE "-ast2500" 17#define TYPE_ASPEED_AST2600_HACE TYPE_ASPEED_HACE "-ast2600" 18OBJECT_DECLARE_TYPE(AspeedHACEState, AspeedHACEClass, ASPEED_HACE) 19 20#define ASPEED_HACE_NR_REGS (0x64 >> 2) 21 22struct AspeedHACEState { 23 SysBusDevice parent; 24 25 MemoryRegion iomem; 26 qemu_irq irq; 27 28 uint32_t regs[ASPEED_HACE_NR_REGS]; 29 30 MemoryRegion *dram_mr; 31 AddressSpace dram_as; 32}; 33 34 35struct AspeedHACEClass { 36 SysBusDeviceClass parent_class; 37 38 uint32_t src_mask; 39 uint32_t dest_mask; 40 uint32_t hash_mask; 41}; 42 43#endif /* _ASPEED_HACE_H_ */