Add code to emulate SNVS IP-block. Currently only the bits needed to be able to emulate machine shutdown are implemented. Cc: Peter Maydell <peter.maydell@linaro.org> Cc: Jason Wang <jasowang@redhat.com> Cc: Philippe Mathieu-Daudé <f4bug@amsat.org> Cc: Marcel Apfelbaum <marcel.apfelbaum@zoho.com> Cc: Michael S. Tsirkin <mst@redhat.com> Cc: qemu-devel@nongnu.org Cc: qemu-arm@nongnu.org Cc: yurovsky@gmail.com Reviewed-by: Peter Maydell <peter.maydell@linaro.org> Signed-off-by: Andrey Smirnov <andrew.smirnov@gmail.com> Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
36 lines
728 B
C
36 lines
728 B
C
/*
|
|
* Copyright (c) 2017, Impinj, Inc.
|
|
*
|
|
* i.MX7 SNVS block emulation code
|
|
*
|
|
* Author: Andrey Smirnov <andrew.smirnov@gmail.com>
|
|
*
|
|
* This work is licensed under the terms of the GNU GPL, version 2 or later.
|
|
* See the COPYING file in the top-level directory.
|
|
*/
|
|
|
|
#ifndef IMX7_SNVS_H
|
|
#define IMX7_SNVS_H
|
|
|
|
#include "qemu/bitops.h"
|
|
#include "hw/sysbus.h"
|
|
|
|
|
|
enum IMX7SNVSRegisters {
|
|
SNVS_LPCR = 0x38,
|
|
SNVS_LPCR_TOP = BIT(6),
|
|
SNVS_LPCR_DP_EN = BIT(5)
|
|
};
|
|
|
|
#define TYPE_IMX7_SNVS "imx7.snvs"
|
|
#define IMX7_SNVS(obj) OBJECT_CHECK(IMX7SNVSState, (obj), TYPE_IMX7_SNVS)
|
|
|
|
typedef struct IMX7SNVSState {
|
|
/* <private> */
|
|
SysBusDevice parent_obj;
|
|
|
|
MemoryRegion mmio;
|
|
} IMX7SNVSState;
|
|
|
|
#endif /* IMX7_SNVS_H */
|