xref: /qemu/include/hw/watchdog/wdt_imx2.h (revision 067e68e7041ec6eff73dd053876e22eaf1d4cb00)
1067e68e7SAndrey Smirnov /*
2067e68e7SAndrey Smirnov  * Copyright (c) 2017, Impinj, Inc.
3067e68e7SAndrey Smirnov  *
4067e68e7SAndrey Smirnov  * i.MX2 Watchdog IP block
5067e68e7SAndrey Smirnov  *
6067e68e7SAndrey Smirnov  * Author: Andrey Smirnov <andrew.smirnov@gmail.com>
7067e68e7SAndrey Smirnov  *
8067e68e7SAndrey Smirnov  * This work is licensed under the terms of the GNU GPL, version 2 or later.
9067e68e7SAndrey Smirnov  * See the COPYING file in the top-level directory.
10067e68e7SAndrey Smirnov  */
11067e68e7SAndrey Smirnov 
12067e68e7SAndrey Smirnov #ifndef IMX2_WDT_H
13067e68e7SAndrey Smirnov #define IMX2_WDT_H
14067e68e7SAndrey Smirnov 
15067e68e7SAndrey Smirnov #include "hw/sysbus.h"
16067e68e7SAndrey Smirnov 
17067e68e7SAndrey Smirnov #define TYPE_IMX2_WDT "imx2.wdt"
18067e68e7SAndrey Smirnov #define IMX2_WDT(obj) OBJECT_CHECK(IMX2WdtState, (obj), TYPE_IMX2_WDT)
19067e68e7SAndrey Smirnov 
20067e68e7SAndrey Smirnov enum IMX2WdtRegisters {
21067e68e7SAndrey Smirnov     IMX2_WDT_WCR     = 0x0000,
22067e68e7SAndrey Smirnov     IMX2_WDT_REG_NUM = 0x0008 / sizeof(uint16_t) + 1,
23067e68e7SAndrey Smirnov };
24067e68e7SAndrey Smirnov 
25067e68e7SAndrey Smirnov 
26067e68e7SAndrey Smirnov typedef struct IMX2WdtState {
27067e68e7SAndrey Smirnov     /* <private> */
28067e68e7SAndrey Smirnov     SysBusDevice parent_obj;
29067e68e7SAndrey Smirnov 
30067e68e7SAndrey Smirnov     MemoryRegion mmio;
31067e68e7SAndrey Smirnov } IMX2WdtState;
32067e68e7SAndrey Smirnov 
33067e68e7SAndrey Smirnov #endif /* IMX7_SNVS_H */
34