master
h 33 lines 581 Bytes
Raw
1 /*
2 * ASPEED OTP (One-Time Programmable) memory
3 *
4 * Copyright (C) 2025 Aspeed
5 *
6 * SPDX-License-Identifier: GPL-2.0-or-later
7 */
8
9 #ifndef ASPEED_OTP_H
10 #define ASPEED_OTP_H
11
12 #include "system/memory.h"
13 #include "hw/block/block.h"
14 #include "system/address-spaces.h"
15
16 #define TYPE_ASPEED_OTP "aspeed-otp"
17 OBJECT_DECLARE_SIMPLE_TYPE(AspeedOTPState, ASPEED_OTP)
18
19 typedef struct AspeedOTPState {
20 DeviceState parent_obj;
21
22 BlockBackend *blk;
23
24 uint64_t size;
25
26 AddressSpace as;
27
28 MemoryRegion mmio;
29
30 uint8_t *storage;
31 } AspeedOTPState;
32
33 #endif /* ASPEED_OTP_H */