diff options
author | Cédric Le Goater <clg@kaod.org> | 2021-03-09 12:01:28 +0100 |
---|---|---|
committer | Cédric Le Goater <clg@kaod.org> | 2021-03-09 12:01:28 +0100 |
commit | 2ecf17264debe1bc3399fe587690c78d03e8401b (patch) | |
tree | 792d6d3331647aff8e0d1e5a587b240bcb0d19dc /include/hw/misc/aspeed_lpc.h | |
parent | 6820588efa4fbab9ab6f0457f2c83c3bc7498ae3 (diff) |
hw/misc: Add a basic Aspeed LPC controller model
This is a very minimal framework to access registers which are used to
configure the AHB memory mapping of the flash chips on the LPC HC
Firmware address space.
Signed-off-by: Cédric Le Goater <clg@kaod.org>
Signed-off-by: Andrew Jeffery <andrew@aj.id.au>
Message-Id: <20210302014317.915120-5-andrew@aj.id.au>
Signed-off-by: Cédric Le Goater <clg@kaod.org>
Diffstat (limited to 'include/hw/misc/aspeed_lpc.h')
-rw-r--r-- | include/hw/misc/aspeed_lpc.h | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/include/hw/misc/aspeed_lpc.h b/include/hw/misc/aspeed_lpc.h new file mode 100644 index 0000000000..0fbb7f68be --- /dev/null +++ b/include/hw/misc/aspeed_lpc.h @@ -0,0 +1,32 @@ +/* + * ASPEED LPC Controller + * + * Copyright (C) 2017-2018 IBM Corp. + * + * This code is licensed under the GPL version 2 or later. See + * the COPYING file in the top-level directory. + */ + +#ifndef ASPEED_LPC_H +#define ASPEED_LPC_H + +#include "hw/sysbus.h" + +#define TYPE_ASPEED_LPC "aspeed.lpc" +#define ASPEED_LPC(obj) OBJECT_CHECK(AspeedLPCState, (obj), TYPE_ASPEED_LPC) + +#define ASPEED_LPC_NR_REGS (0x260 >> 2) + +typedef struct AspeedLPCState { + /* <private> */ + SysBusDevice parent; + + /*< public >*/ + MemoryRegion iomem; + qemu_irq irq; + + uint32_t regs[ASPEED_LPC_NR_REGS]; + uint32_t hicr7; +} AspeedLPCState; + +#endif /* _ASPEED_LPC_H_ */ |