qemu

FORK: QEMU emulator
git clone https://git.neptards.moe/neptards/qemu.git
Log | Files | Refs | Submodules | LICENSE

pl031.h (1101B)


      1 /*
      2  * ARM AMBA PrimeCell PL031 RTC
      3  *
      4  * Copyright (c) 2007 CodeSourcery
      5  *
      6  * This file is free software; you can redistribute it and/or modify
      7  * it under the terms of the GNU General Public License version 2 as
      8  * published by the Free Software Foundation.
      9  *
     10  * Contributions after 2012-01-13 are licensed under the terms of the
     11  * GNU GPL, version 2 or (at your option) any later version.
     12  */
     13 
     14 #ifndef HW_RTC_PL031_H
     15 #define HW_RTC_PL031_H
     16 
     17 #include "hw/sysbus.h"
     18 #include "qemu/timer.h"
     19 #include "qom/object.h"
     20 
     21 #define TYPE_PL031 "pl031"
     22 OBJECT_DECLARE_SIMPLE_TYPE(PL031State, PL031)
     23 
     24 struct PL031State {
     25     SysBusDevice parent_obj;
     26 
     27     MemoryRegion iomem;
     28     QEMUTimer *timer;
     29     qemu_irq irq;
     30 
     31     /*
     32      * Needed to preserve the tick_count across migration, even if the
     33      * absolute value of the rtc_clock is different on the source and
     34      * destination.
     35      */
     36     uint32_t tick_offset_vmstate;
     37     uint32_t tick_offset;
     38     bool tick_offset_migrated;
     39     bool migrate_tick_offset;
     40 
     41     uint32_t mr;
     42     uint32_t lr;
     43     uint32_t cr;
     44     uint32_t im;
     45     uint32_t is;
     46 };
     47 
     48 #endif