blob: f7b569cac5d71b4e16306e755e7952ba00598d8e [file] [log] [blame]
/*
* Freescale i.MX RNGC emulation
*
* Copyright (C) 2020 Martin Kaiser <martin@kaiser.cx>
*
* 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 IMX_RNGC_H
#define IMX_RNGC_H
#include "hw/sysbus.h"
#include "qom/object.h"
#define TYPE_IMX_RNGC "imx.rngc"
typedef struct IMXRNGCState IMXRNGCState;
DECLARE_INSTANCE_CHECKER(IMXRNGCState, IMX_RNGC,
TYPE_IMX_RNGC)
struct IMXRNGCState {
/*< private >*/
SysBusDevice parent_obj;
/*< public >*/
MemoryRegion iomem;
uint8_t op_self_test;
uint8_t op_seed;
uint8_t mask;
bool auto_seed;
QEMUBH *self_test_bh;
QEMUBH *seed_bh;
qemu_irq irq;
};
#endif /* IMX_RNGC_H */