X-Git-Url: https://git.proxmox.com/?a=blobdiff_plain;ds=sidebyside;f=include%2Fhw%2Ffsi%2Fcfam.h;fp=include%2Fhw%2Ffsi%2Fcfam.h;h=7abc3b287bef3596b6d7c84a4e5c1b729668ca66;hb=c3709fde5955d13f6d4f86ab46ef3cc2288ca65e;hp=0000000000000000000000000000000000000000;hpb=89c958c120bcd10458d4cf2e0237cae31a14223b;p=mirror_qemu.git diff --git a/include/hw/fsi/cfam.h b/include/hw/fsi/cfam.h new file mode 100644 index 0000000000..7abc3b287b --- /dev/null +++ b/include/hw/fsi/cfam.h @@ -0,0 +1,34 @@ +/* + * SPDX-License-Identifier: GPL-2.0-or-later + * Copyright (C) 2024 IBM Corp. + * + * IBM Common FRU Access Macro + */ +#ifndef FSI_CFAM_H +#define FSI_CFAM_H + +#include "exec/memory.h" + +#include "hw/fsi/fsi.h" +#include "hw/fsi/lbus.h" + +#define TYPE_FSI_CFAM "cfam" +#define FSI_CFAM(obj) OBJECT_CHECK(FSICFAMState, (obj), TYPE_FSI_CFAM) + +/* P9-ism */ +#define CFAM_CONFIG_NR_REGS 0x28 + +typedef struct FSICFAMState { + /* < private > */ + FSISlaveState parent; + + /* CFAM config address space */ + MemoryRegion config_iomem; + + MemoryRegion mr; + + FSILBus lbus; + FSIScratchPad scratchpad; +} FSICFAMState; + +#endif /* FSI_CFAM_H */