qemu/include/hw/rtc/pl031.h
<<
>>
Prefs
   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"
  22OBJECT_DECLARE_SIMPLE_TYPE(PL031State, PL031)
  23
  24struct 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
  49