Fix typos and docs, trivial changes and RTC devices split
-----BEGIN PGP SIGNATURE----- iQJGBAABCAAwFiEEzS913cjjpNwuT1Fz8ww4vT8vvjwFAl2ys7YSHGxhdXJlbnRA dml2aWVyLmV1AAoJEPMMOL0/L748A9QP/jrWoywp5vNVti1YJtVpzHx/GOQcqr2s 1bXFEzEvTAfI1TxQseiz4Z/jW9OmYNSt+lmW8FHBHLn4l4oo8e4/PurSBRa5guW3 Dsohqe2TAK0Ua1ELf4eoIfGWm2rKwz2TH0iChk6nvWKJaLQPTzjEgAlZSqOx7jfV q2+jSKQOzQJDwzMtzOTcan3VxPnru5j4YYlJspSJVNbiQ/bmQMV7JcsXBU5i4Tf+ Z1679CDe1BiRqcxKTsWEYMvAVmINYYfEsp2RuE+Co1mr9bQj9pBCFfybe7x5T3VG FaCEnfMEtOhgAryfW6/k6IfMvHgV6HjvIpfc27ZIn+kMwhhJl6V4Ca9LY7iUKJnf zWYl4FbC0NCM3udWdB/ogaZ6GVJ9FHBcZtnGNWesb3H09KLkRrz95mkOJl1/kPnW eDhzCO9g49T3zOECjGpodBF0RXGXVl1vTukwYk0I0d7bo8NySJ4dxVX91D0OIq4S +TilFrLi1ssXv9/7Y0Y3zC8/p1qVSIzKa1t4618xqf1MO5LfiVRWpPTPgV+0z3kw R48LzMqX50KnIT6fY7BY0YsskwZ1BbZmIJ/++6r8M1L+xaegUsIdI8LHI70TJ7JR hJ+uTgWky8N19A0OUJj08xjetNOv6Souf2GFaTrGJO0DQbyzwjNwELYNVhagqvOZ PHakcrjaMv8G =u0rQ -----END PGP SIGNATURE----- Merge remote-tracking branch 'remotes/vivier2/tags/trivial-branch-pull-request' into staging Fix typos and docs, trivial changes and RTC devices split # gpg: Signature made Fri 25 Oct 2019 09:35:02 BST # gpg: using RSA key CD2F75DDC8E3A4DC2E4F5173F30C38BD3F2FBE3C # gpg: issuer "laurent@vivier.eu" # gpg: Good signature from "Laurent Vivier <lvivier@redhat.com>" [full] # gpg: aka "Laurent Vivier <laurent@vivier.eu>" [full] # gpg: aka "Laurent Vivier (Red Hat) <lvivier@redhat.com>" [full] # Primary key fingerprint: CD2F 75DD C8E3 A4DC 2E4F 5173 F30C 38BD 3F2F BE3C * remotes/vivier2/tags/trivial-branch-pull-request: hw/rtc/aspeed_rtc: Remove unused includes hw/rtc/xlnx-zynqmp-rtc: Remove unused "ptimer.h" include hw/rtc/mc146818: Include mc146818rtc_regs.h a bit less hw: Move Aspeed RTC from hw/timer/ to hw/rtc/ subdirectory hw: Move Exynos4210 RTC from hw/timer/ to hw/rtc/ subdirectory hw: Move Xilinx ZynqMP RTC from hw/timer/ to hw/rtc/ subdirectory hw: Move DS1338 device from hw/timer/ to hw/rtc/ subdirectory hw: Move TWL92230 device from hw/timer/ to hw/rtc/ subdirectory hw: Move sun4v hypervisor RTC from hw/timer/ to hw/rtc/ subdirectory hw: Move M41T80 device from hw/timer/ to hw/rtc/ subdirectory hw: Move M48T59 device from hw/timer/ to hw/rtc/ subdirectory hw: Move MC146818 device from hw/timer/ to hw/rtc/ subdirectory hw: Move PL031 device from hw/timer/ to hw/rtc/ subdirectory hw/timer: Compile devices not target-dependent as common object qemu-timer: reuse MIN macro in qemu_timeout_ns_to_ms event_notifier: avoid dandling file descriptor in event_notifier_cleanup util/async: avoid useless cast pci_bridge: fix a typo in comment qemu-options.hx: Update for reboot-timeout parameter Signed-off-by: Peter Maydell <peter.maydell@linaro.org> # Conflicts: # hw/timer/trace-events
This commit is contained in:
commit
bad76ac319
20
MAINTAINERS
20
MAINTAINERS
@ -495,8 +495,8 @@ F: hw/intc/pl190.c
|
||||
F: hw/sd/pl181.c
|
||||
F: hw/ssi/pl022.c
|
||||
F: include/hw/ssi/pl022.h
|
||||
F: hw/timer/pl031.c
|
||||
F: include/hw/timer/pl031.h
|
||||
F: hw/rtc/pl031.c
|
||||
F: include/hw/rtc/pl031.h
|
||||
F: include/hw/arm/primecell.h
|
||||
F: hw/timer/cmsdk-apb-timer.c
|
||||
F: include/hw/timer/cmsdk-apb-timer.h
|
||||
@ -663,7 +663,7 @@ F: hw/display/blizzard.c
|
||||
F: hw/input/lm832x.c
|
||||
F: hw/input/tsc2005.c
|
||||
F: hw/misc/cbus.c
|
||||
F: hw/timer/twl92230.c
|
||||
F: hw/rtc/twl92230.c
|
||||
F: include/hw/display/blizzard.h
|
||||
F: include/hw/input/tsc2xxx.h
|
||||
F: include/hw/misc/cbus.h
|
||||
@ -1064,9 +1064,9 @@ F: hw/pci-host/prep.[hc]
|
||||
F: hw/isa/i82378.c
|
||||
F: hw/isa/pc87312.c
|
||||
F: hw/dma/i82374.c
|
||||
F: hw/timer/m48t59-isa.c
|
||||
F: hw/rtc/m48t59-isa.c
|
||||
F: include/hw/isa/pc87312.h
|
||||
F: include/hw/timer/m48t59.h
|
||||
F: include/hw/rtc/m48t59.h
|
||||
F: pc-bios/ppc_rom.bin
|
||||
|
||||
sPAPR
|
||||
@ -1111,7 +1111,7 @@ F: hw/ppc/sam460ex.c
|
||||
F: hw/ppc/ppc440_pcix.c
|
||||
F: hw/display/sm501*
|
||||
F: hw/ide/sii3112.c
|
||||
F: hw/timer/m41t80.c
|
||||
F: hw/rtc/m41t80.c
|
||||
F: pc-bios/canyonlands.dt[sb]
|
||||
F: pc-bios/u-boot-sam460ex-20100605.bin
|
||||
F: roms/u-boot-sam460ex
|
||||
@ -1163,8 +1163,8 @@ Sun4v
|
||||
M: Artyom Tarasenko <atar4qemu@gmail.com>
|
||||
S: Maintained
|
||||
F: hw/sparc64/niagara.c
|
||||
F: hw/timer/sun4v-rtc.c
|
||||
F: include/hw/timer/sun4v-rtc.h
|
||||
F: hw/rtc/sun4v-rtc.c
|
||||
F: include/hw/rtc/sun4v-rtc.h
|
||||
|
||||
Leon3
|
||||
M: Fabien Chouteau <chouteau@adacore.com>
|
||||
@ -1261,7 +1261,7 @@ F: hw/misc/debugexit.c
|
||||
F: hw/misc/pc-testdev.c
|
||||
F: hw/timer/hpet*
|
||||
F: hw/timer/i8254*
|
||||
F: hw/timer/mc146818rtc*
|
||||
F: hw/rtc/mc146818rtc*
|
||||
F: hw/watchdog/wdt_ib700.c
|
||||
F: hw/watchdog/wdt_i6300esb.c
|
||||
F: include/hw/display/vga.h
|
||||
@ -1273,7 +1273,7 @@ F: include/hw/isa/i8259_internal.h
|
||||
F: include/hw/isa/superio.h
|
||||
F: include/hw/timer/hpet.h
|
||||
F: include/hw/timer/i8254*
|
||||
F: include/hw/timer/mc146818rtc*
|
||||
F: include/hw/rtc/mc146818rtc*
|
||||
|
||||
Machine core
|
||||
M: Eduardo Habkost <ehabkost@redhat.com>
|
||||
|
@ -173,6 +173,7 @@ trace-events-subdirs += hw/pci-host
|
||||
trace-events-subdirs += hw/ppc
|
||||
trace-events-subdirs += hw/rdma
|
||||
trace-events-subdirs += hw/rdma/vmw
|
||||
trace-events-subdirs += hw/rtc
|
||||
trace-events-subdirs += hw/s390x
|
||||
trace-events-subdirs += hw/scsi
|
||||
trace-events-subdirs += hw/sd
|
||||
|
@ -27,6 +27,7 @@ source pci-host/Kconfig
|
||||
source pcmcia/Kconfig
|
||||
source pci/Kconfig
|
||||
source rdma/Kconfig
|
||||
source rtc/Kconfig
|
||||
source scsi/Kconfig
|
||||
source sd/Kconfig
|
||||
source semihosting/Kconfig
|
||||
|
@ -26,6 +26,7 @@ devices-dirs-y += nvram/
|
||||
devices-dirs-y += pci/
|
||||
devices-dirs-$(CONFIG_PCI) += pci-bridge/ pci-host/
|
||||
devices-dirs-y += pcmcia/
|
||||
devices-dirs-y += rtc/
|
||||
devices-dirs-$(CONFIG_SCSI) += scsi/
|
||||
devices-dirs-y += sd/
|
||||
devices-dirs-y += ssi/
|
||||
|
@ -14,7 +14,7 @@
|
||||
#include "alpha_sys.h"
|
||||
#include "qemu/error-report.h"
|
||||
#include "sysemu/sysemu.h"
|
||||
#include "hw/timer/mc146818rtc.h"
|
||||
#include "hw/rtc/mc146818rtc.h"
|
||||
#include "hw/ide.h"
|
||||
#include "hw/timer/i8254.h"
|
||||
#include "hw/isa/superio.h"
|
||||
|
@ -32,7 +32,7 @@
|
||||
#include "hw/misc/tz-mpc.h"
|
||||
#include "hw/misc/tz-ppc.h"
|
||||
#include "hw/misc/unimp.h"
|
||||
#include "hw/timer/pl031.h"
|
||||
#include "hw/rtc/pl031.h"
|
||||
|
||||
#define MUSCA_NUMIRQ_MAX 96
|
||||
#define MUSCA_PPC_MAX 3
|
||||
|
@ -12,7 +12,7 @@
|
||||
#include "qemu/error-report.h"
|
||||
#include "sysemu/reset.h"
|
||||
#include "sysemu/sysemu.h"
|
||||
#include "hw/timer/mc146818rtc.h"
|
||||
#include "hw/rtc/mc146818rtc.h"
|
||||
#include "hw/ide.h"
|
||||
#include "hw/timer/i8254.h"
|
||||
#include "hw/char/serial.h"
|
||||
|
@ -45,7 +45,7 @@
|
||||
#include "hw/acpi/vmgenid.h"
|
||||
#include "hw/boards.h"
|
||||
#include "sysemu/tpm_backend.h"
|
||||
#include "hw/timer/mc146818rtc_regs.h"
|
||||
#include "hw/rtc/mc146818rtc_regs.h"
|
||||
#include "migration/vmstate.h"
|
||||
#include "hw/mem/memory-device.h"
|
||||
#include "sysemu/numa.h"
|
||||
|
@ -42,7 +42,7 @@
|
||||
#include "elf.h"
|
||||
#include "migration/vmstate.h"
|
||||
#include "multiboot.h"
|
||||
#include "hw/timer/mc146818rtc.h"
|
||||
#include "hw/rtc/mc146818rtc.h"
|
||||
#include "hw/dma/i8257.h"
|
||||
#include "hw/timer/i8254.h"
|
||||
#include "hw/input/i8042.h"
|
||||
|
@ -33,7 +33,7 @@
|
||||
#include "hw/loader.h"
|
||||
#include "sysemu/arch_init.h"
|
||||
#include "hw/i2c/smbus_eeprom.h"
|
||||
#include "hw/timer/mc146818rtc.h"
|
||||
#include "hw/rtc/mc146818rtc.h"
|
||||
#include "hw/xen/xen.h"
|
||||
#include "sysemu/kvm.h"
|
||||
#include "kvm_i386.h"
|
||||
|
@ -39,7 +39,7 @@
|
||||
#include "hw/ide.h"
|
||||
#include "elf.h"
|
||||
#include "hw/isa/vt82c686.h"
|
||||
#include "hw/timer/mc146818rtc.h"
|
||||
#include "hw/rtc/mc146818rtc.h"
|
||||
#include "hw/timer/i8254.h"
|
||||
#include "exec/address-spaces.h"
|
||||
#include "sysemu/qtest.h"
|
||||
|
@ -39,7 +39,7 @@
|
||||
#include "hw/scsi/esp.h"
|
||||
#include "hw/mips/bios.h"
|
||||
#include "hw/loader.h"
|
||||
#include "hw/timer/mc146818rtc.h"
|
||||
#include "hw/rtc/mc146818rtc.h"
|
||||
#include "hw/timer/i8254.h"
|
||||
#include "hw/display/vga.h"
|
||||
#include "hw/audio/pcspk.h"
|
||||
|
@ -45,7 +45,7 @@
|
||||
#include "hw/irq.h"
|
||||
#include "hw/loader.h"
|
||||
#include "elf.h"
|
||||
#include "hw/timer/mc146818rtc.h"
|
||||
#include "hw/rtc/mc146818rtc.h"
|
||||
#include "hw/timer/i8254.h"
|
||||
#include "exec/address-spaces.h"
|
||||
#include "hw/sysbus.h" /* SysBusDevice */
|
||||
|
@ -28,7 +28,7 @@
|
||||
#include "hw/ide.h"
|
||||
#include "hw/loader.h"
|
||||
#include "elf.h"
|
||||
#include "hw/timer/mc146818rtc.h"
|
||||
#include "hw/rtc/mc146818rtc.h"
|
||||
#include "hw/input/i8042.h"
|
||||
#include "hw/timer/i8254.h"
|
||||
#include "exec/address-spaces.h"
|
||||
|
@ -311,7 +311,7 @@ void pci_bridge_reset(DeviceState *qdev)
|
||||
|
||||
/*
|
||||
* the default values for base/limit registers aren't specified
|
||||
* in the PCI-to-PCI-bridge spec. So we don't thouch them here.
|
||||
* in the PCI-to-PCI-bridge spec. So we don't touch them here.
|
||||
* Each implementation can override it.
|
||||
* typical implementation does
|
||||
* zero base/limit registers or
|
||||
|
@ -48,7 +48,7 @@
|
||||
#include "hw/isa/isa.h"
|
||||
#include "hw/boards.h"
|
||||
#include "hw/char/serial.h"
|
||||
#include "hw/timer/mc146818rtc.h"
|
||||
#include "hw/rtc/mc146818rtc.h"
|
||||
|
||||
#include <libfdt.h>
|
||||
|
||||
|
@ -29,7 +29,7 @@
|
||||
#include "cpu.h"
|
||||
#include "hw/ppc/ppc.h"
|
||||
#include "ppc405.h"
|
||||
#include "hw/timer/m48t59.h"
|
||||
#include "hw/rtc/m48t59.h"
|
||||
#include "hw/block/flash.h"
|
||||
#include "sysemu/sysemu.h"
|
||||
#include "sysemu/qtest.h"
|
||||
|
@ -25,7 +25,7 @@
|
||||
|
||||
#include "qemu/osdep.h"
|
||||
#include "cpu.h"
|
||||
#include "hw/timer/m48t59.h"
|
||||
#include "hw/rtc/m48t59.h"
|
||||
#include "hw/char/serial.h"
|
||||
#include "hw/block/fdc.h"
|
||||
#include "net/net.h"
|
||||
@ -40,7 +40,7 @@
|
||||
#include "hw/ide.h"
|
||||
#include "hw/irq.h"
|
||||
#include "hw/loader.h"
|
||||
#include "hw/timer/mc146818rtc.h"
|
||||
#include "hw/rtc/mc146818rtc.h"
|
||||
#include "hw/isa/pc87312.h"
|
||||
#include "hw/net/ne2000-isa.h"
|
||||
#include "sysemu/arch_init.h"
|
||||
|
23
hw/rtc/Kconfig
Normal file
23
hw/rtc/Kconfig
Normal file
@ -0,0 +1,23 @@
|
||||
config DS1338
|
||||
bool
|
||||
depends on I2C
|
||||
|
||||
config M41T80
|
||||
bool
|
||||
depends on I2C
|
||||
|
||||
config M48T59
|
||||
bool
|
||||
|
||||
config PL031
|
||||
bool
|
||||
|
||||
config TWL92230
|
||||
bool
|
||||
depends on I2C
|
||||
|
||||
config MC146818RTC
|
||||
bool
|
||||
|
||||
config SUN4V_RTC
|
||||
bool
|
13
hw/rtc/Makefile.objs
Normal file
13
hw/rtc/Makefile.objs
Normal file
@ -0,0 +1,13 @@
|
||||
common-obj-$(CONFIG_DS1338) += ds1338.o
|
||||
common-obj-$(CONFIG_M41T80) += m41t80.o
|
||||
common-obj-$(CONFIG_M48T59) += m48t59.o
|
||||
ifeq ($(CONFIG_ISA_BUS),y)
|
||||
common-obj-$(CONFIG_M48T59) += m48t59-isa.o
|
||||
endif
|
||||
common-obj-$(CONFIG_PL031) += pl031.o
|
||||
common-obj-$(CONFIG_TWL92230) += twl92230.o
|
||||
common-obj-$(CONFIG_XLNX_ZYNQMP) += xlnx-zynqmp-rtc.o
|
||||
common-obj-$(CONFIG_EXYNOS4) += exynos4210_rtc.o
|
||||
obj-$(CONFIG_MC146818RTC) += mc146818rtc.o
|
||||
common-obj-$(CONFIG_SUN4V_RTC) += sun4v-rtc.o
|
||||
common-obj-$(CONFIG_ASPEED_SOC) += aspeed_rtc.o
|
@ -8,7 +8,7 @@
|
||||
|
||||
#include "qemu/osdep.h"
|
||||
#include "qemu-common.h"
|
||||
#include "hw/timer/aspeed_rtc.h"
|
||||
#include "hw/rtc/aspeed_rtc.h"
|
||||
#include "migration/vmstate.h"
|
||||
#include "qemu/log.h"
|
||||
#include "qemu/timer.h"
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* QEMU M48T59 and M48T08 NVRAM emulation (ISA bus interface
|
||||
* QEMU M48T59 and M48T08 NVRAM emulation (ISA bus interface)
|
||||
*
|
||||
* Copyright (c) 2003-2005, 2007 Jocelyn Mayer
|
||||
* Copyright (c) 2013 Hervé Poussineau
|
||||
@ -26,7 +26,7 @@
|
||||
#include "qemu/osdep.h"
|
||||
#include "hw/isa/isa.h"
|
||||
#include "hw/qdev-properties.h"
|
||||
#include "hw/timer/m48t59.h"
|
||||
#include "hw/rtc/m48t59.h"
|
||||
#include "m48t59-internal.h"
|
||||
#include "qemu/module.h"
|
||||
|
@ -27,7 +27,7 @@
|
||||
#include "qemu-common.h"
|
||||
#include "hw/irq.h"
|
||||
#include "hw/qdev-properties.h"
|
||||
#include "hw/timer/m48t59.h"
|
||||
#include "hw/rtc/m48t59.h"
|
||||
#include "qemu/timer.h"
|
||||
#include "sysemu/runstate.h"
|
||||
#include "sysemu/sysemu.h"
|
@ -34,7 +34,8 @@
|
||||
#include "sysemu/replay.h"
|
||||
#include "sysemu/reset.h"
|
||||
#include "sysemu/runstate.h"
|
||||
#include "hw/timer/mc146818rtc.h"
|
||||
#include "hw/rtc/mc146818rtc.h"
|
||||
#include "hw/rtc/mc146818rtc_regs.h"
|
||||
#include "migration/vmstate.h"
|
||||
#include "qapi/error.h"
|
||||
#include "qapi/qapi-commands-misc-target.h"
|
@ -13,7 +13,7 @@
|
||||
|
||||
#include "qemu/osdep.h"
|
||||
#include "qemu-common.h"
|
||||
#include "hw/timer/pl031.h"
|
||||
#include "hw/rtc/pl031.h"
|
||||
#include "migration/vmstate.h"
|
||||
#include "hw/irq.h"
|
||||
#include "hw/qdev-properties.h"
|
@ -13,7 +13,7 @@
|
||||
#include "hw/sysbus.h"
|
||||
#include "qemu/module.h"
|
||||
#include "qemu/timer.h"
|
||||
#include "hw/timer/sun4v-rtc.h"
|
||||
#include "hw/rtc/sun4v-rtc.h"
|
||||
#include "trace.h"
|
||||
|
||||
|
19
hw/rtc/trace-events
Normal file
19
hw/rtc/trace-events
Normal file
@ -0,0 +1,19 @@
|
||||
# See docs/devel/tracing.txt for syntax documentation.
|
||||
|
||||
# sun4v-rtc.c
|
||||
sun4v_rtc_read(uint64_t addr, uint64_t value) "read: addr 0x%" PRIx64 " value 0x%" PRIx64
|
||||
sun4v_rtc_write(uint64_t addr, uint64_t value) "write: addr 0x%" PRIx64 " value 0x%" PRIx64
|
||||
|
||||
# xlnx-zynqmp-rtc.c
|
||||
xlnx_zynqmp_rtc_gettime(int year, int month, int day, int hour, int min, int sec) "Get time from host: %d-%d-%d %2d:%02d:%02d"
|
||||
|
||||
# pl031.c
|
||||
pl031_irq_state(int level) "irq state %d"
|
||||
pl031_read(uint32_t addr, uint32_t value) "addr 0x%08x value 0x%08x"
|
||||
pl031_write(uint32_t addr, uint32_t value) "addr 0x%08x value 0x%08x"
|
||||
pl031_alarm_raised(void) "alarm raised"
|
||||
pl031_set_alarm(uint32_t ticks) "alarm set for %u ticks"
|
||||
|
||||
# aspeed-rtc.c
|
||||
aspeed_rtc_read(uint64_t addr, uint64_t value) "addr 0x%02" PRIx64 " value 0x%08" PRIx64
|
||||
aspeed_rtc_write(uint64_t addr, uint64_t value) "addr 0x%02" PRIx64 " value 0x%08" PRIx64
|
@ -32,11 +32,10 @@
|
||||
#include "qemu/log.h"
|
||||
#include "qemu/module.h"
|
||||
#include "hw/irq.h"
|
||||
#include "hw/ptimer.h"
|
||||
#include "qemu/cutils.h"
|
||||
#include "sysemu/sysemu.h"
|
||||
#include "trace.h"
|
||||
#include "hw/timer/xlnx-zynqmp-rtc.h"
|
||||
#include "hw/rtc/xlnx-zynqmp-rtc.h"
|
||||
#include "migration/vmstate.h"
|
||||
|
||||
#ifndef XLNX_ZYNQMP_RTC_ERR_DEBUG
|
@ -31,7 +31,7 @@
|
||||
#include "qemu/error-report.h"
|
||||
#include "qemu/timer.h"
|
||||
#include "hw/sparc/sun4m_iommu.h"
|
||||
#include "hw/timer/m48t59.h"
|
||||
#include "hw/rtc/m48t59.h"
|
||||
#include "migration/vmstate.h"
|
||||
#include "hw/sparc/sparc32_dma.h"
|
||||
#include "hw/block/fdc.h"
|
||||
|
@ -30,7 +30,7 @@
|
||||
#include "hw/misc/unimp.h"
|
||||
#include "hw/loader.h"
|
||||
#include "hw/sparc/sparc64.h"
|
||||
#include "hw/timer/sun4v-rtc.h"
|
||||
#include "hw/rtc/sun4v-rtc.h"
|
||||
#include "exec/address-spaces.h"
|
||||
#include "sysemu/block-backend.h"
|
||||
#include "qemu/error-report.h"
|
||||
|
@ -36,7 +36,7 @@
|
||||
#include "hw/pci-host/sabre.h"
|
||||
#include "hw/char/serial.h"
|
||||
#include "hw/char/parallel.h"
|
||||
#include "hw/timer/m48t59.h"
|
||||
#include "hw/rtc/m48t59.h"
|
||||
#include "migration/vmstate.h"
|
||||
#include "hw/input/i8042.h"
|
||||
#include "hw/block/fdc.h"
|
||||
|
@ -9,10 +9,6 @@ config ARM_MPTIMER
|
||||
config A9_GTIMER
|
||||
bool
|
||||
|
||||
config DS1338
|
||||
bool
|
||||
depends on I2C
|
||||
|
||||
config HPET
|
||||
bool
|
||||
default y if PC
|
||||
@ -20,27 +16,10 @@ config HPET
|
||||
config I8254
|
||||
bool
|
||||
|
||||
config M41T80
|
||||
bool
|
||||
depends on I2C
|
||||
|
||||
config M48T59
|
||||
bool
|
||||
|
||||
config PL031
|
||||
bool
|
||||
|
||||
config TWL92230
|
||||
bool
|
||||
depends on I2C
|
||||
|
||||
config ALTERA_TIMER
|
||||
bool
|
||||
select PTIMER
|
||||
|
||||
config MC146818RTC
|
||||
bool
|
||||
|
||||
config ALLWINNER_A10_PIT
|
||||
bool
|
||||
select PTIMER
|
||||
@ -48,9 +27,6 @@ config ALLWINNER_A10_PIT
|
||||
config STM32F2XX_TIMER
|
||||
bool
|
||||
|
||||
config SUN4V_RTC
|
||||
bool
|
||||
|
||||
config CMSDK_APB_TIMER
|
||||
bool
|
||||
select PTIMER
|
||||
|
@ -3,17 +3,9 @@ common-obj-$(CONFIG_ARM_MPTIMER) += arm_mptimer.o
|
||||
common-obj-$(CONFIG_ARM_V7M) += armv7m_systick.o
|
||||
common-obj-$(CONFIG_A9_GTIMER) += a9gtimer.o
|
||||
common-obj-$(CONFIG_CADENCE) += cadence_ttc.o
|
||||
common-obj-$(CONFIG_DS1338) += ds1338.o
|
||||
common-obj-$(CONFIG_HPET) += hpet.o
|
||||
common-obj-$(CONFIG_I8254) += i8254_common.o i8254.o
|
||||
common-obj-$(CONFIG_M41T80) += m41t80.o
|
||||
common-obj-$(CONFIG_M48T59) += m48t59.o
|
||||
ifeq ($(CONFIG_ISA_BUS),y)
|
||||
common-obj-$(CONFIG_M48T59) += m48t59-isa.o
|
||||
endif
|
||||
common-obj-$(CONFIG_PL031) += pl031.o
|
||||
common-obj-$(CONFIG_PUV3) += puv3_ost.o
|
||||
common-obj-$(CONFIG_TWL92230) += twl92230.o
|
||||
common-obj-$(CONFIG_XILINX) += xilinx_timer.o
|
||||
common-obj-$(CONFIG_SLAVIO) += slavio_timer.o
|
||||
common-obj-$(CONFIG_ETRAXFS) += etraxfs_timer.o
|
||||
@ -22,28 +14,23 @@ common-obj-$(CONFIG_IMX) += imx_epit.o
|
||||
common-obj-$(CONFIG_IMX) += imx_gpt.o
|
||||
common-obj-$(CONFIG_LM32) += lm32_timer.o
|
||||
common-obj-$(CONFIG_MILKYMIST) += milkymist-sysctl.o
|
||||
common-obj-$(CONFIG_XLNX_ZYNQMP) += xlnx-zynqmp-rtc.o
|
||||
common-obj-$(CONFIG_NRF51_SOC) += nrf51_timer.o
|
||||
|
||||
obj-$(CONFIG_ALTERA_TIMER) += altera_timer.o
|
||||
obj-$(CONFIG_EXYNOS4) += exynos4210_mct.o
|
||||
obj-$(CONFIG_EXYNOS4) += exynos4210_pwm.o
|
||||
obj-$(CONFIG_EXYNOS4) += exynos4210_rtc.o
|
||||
obj-$(CONFIG_OMAP) += omap_gptimer.o
|
||||
obj-$(CONFIG_OMAP) += omap_synctimer.o
|
||||
obj-$(CONFIG_PXA2XX) += pxa2xx_timer.o
|
||||
obj-$(CONFIG_SH4) += sh_timer.o
|
||||
obj-$(CONFIG_DIGIC) += digic-timer.o
|
||||
obj-$(CONFIG_MIPS_CPS) += mips_gictimer.o
|
||||
common-obj-$(CONFIG_ALTERA_TIMER) += altera_timer.o
|
||||
common-obj-$(CONFIG_EXYNOS4) += exynos4210_mct.o
|
||||
common-obj-$(CONFIG_EXYNOS4) += exynos4210_pwm.o
|
||||
common-obj-$(CONFIG_OMAP) += omap_gptimer.o
|
||||
common-obj-$(CONFIG_OMAP) += omap_synctimer.o
|
||||
common-obj-$(CONFIG_PXA2XX) += pxa2xx_timer.o
|
||||
common-obj-$(CONFIG_SH4) += sh_timer.o
|
||||
common-obj-$(CONFIG_DIGIC) += digic-timer.o
|
||||
common-obj-$(CONFIG_MIPS_CPS) += mips_gictimer.o
|
||||
|
||||
obj-$(CONFIG_MC146818RTC) += mc146818rtc.o
|
||||
|
||||
obj-$(CONFIG_ALLWINNER_A10_PIT) += allwinner-a10-pit.o
|
||||
common-obj-$(CONFIG_ALLWINNER_A10_PIT) += allwinner-a10-pit.o
|
||||
|
||||
common-obj-$(CONFIG_STM32F2XX_TIMER) += stm32f2xx_timer.o
|
||||
common-obj-$(CONFIG_ASPEED_SOC) += aspeed_timer.o aspeed_rtc.o
|
||||
common-obj-$(CONFIG_ASPEED_SOC) += aspeed_timer.o
|
||||
|
||||
common-obj-$(CONFIG_SUN4V_RTC) += sun4v-rtc.o
|
||||
common-obj-$(CONFIG_CMSDK_APB_TIMER) += cmsdk-apb-timer.o
|
||||
common-obj-$(CONFIG_CMSDK_APB_DUALTIMER) += cmsdk-apb-dualtimer.o
|
||||
common-obj-$(CONFIG_MSF2) += mss-timer.o
|
||||
|
@ -33,7 +33,8 @@
|
||||
#include "qemu/timer.h"
|
||||
#include "hw/timer/hpet.h"
|
||||
#include "hw/sysbus.h"
|
||||
#include "hw/timer/mc146818rtc.h"
|
||||
#include "hw/rtc/mc146818rtc.h"
|
||||
#include "hw/rtc/mc146818rtc_regs.h"
|
||||
#include "migration/vmstate.h"
|
||||
#include "hw/timer/i8254.h"
|
||||
|
||||
|
@ -66,28 +66,10 @@ cmsdk_apb_dualtimer_read(uint64_t offset, uint64_t data, unsigned size) "CMSDK A
|
||||
cmsdk_apb_dualtimer_write(uint64_t offset, uint64_t data, unsigned size) "CMSDK APB dualtimer write: offset 0x%" PRIx64 " data 0x%" PRIx64 " size %u"
|
||||
cmsdk_apb_dualtimer_reset(void) "CMSDK APB dualtimer: reset"
|
||||
|
||||
# hw/timer/aspeed-rtc.c
|
||||
aspeed_rtc_read(uint64_t addr, uint64_t value) "addr 0x%02" PRIx64 " value 0x%08" PRIx64
|
||||
aspeed_rtc_write(uint64_t addr, uint64_t value) "addr 0x%02" PRIx64 " value 0x%08" PRIx64
|
||||
|
||||
# sun4v-rtc.c
|
||||
sun4v_rtc_read(uint64_t addr, uint64_t value) "read: addr 0x%" PRIx64 " value 0x%" PRIx64
|
||||
sun4v_rtc_write(uint64_t addr, uint64_t value) "write: addr 0x%" PRIx64 " value 0x%" PRIx64
|
||||
|
||||
# xlnx-zynqmp-rtc.c
|
||||
xlnx_zynqmp_rtc_gettime(int year, int month, int day, int hour, int min, int sec) "Get time from host: %d-%d-%d %2d:%02d:%02d"
|
||||
|
||||
# nrf51_timer.c
|
||||
nrf51_timer_read(uint64_t addr, uint32_t value, unsigned size) "read addr 0x%" PRIx64 " data 0x%" PRIx32 " size %u"
|
||||
nrf51_timer_write(uint64_t addr, uint32_t value, unsigned size) "write addr 0x%" PRIx64 " data 0x%" PRIx32 " size %u"
|
||||
|
||||
# pl031.c
|
||||
pl031_irq_state(int level) "irq state %d"
|
||||
pl031_read(uint32_t addr, uint32_t value) "addr 0x%08x value 0x%08x"
|
||||
pl031_write(uint32_t addr, uint32_t value) "addr 0x%08x value 0x%08x"
|
||||
pl031_alarm_raised(void) "alarm raised"
|
||||
pl031_set_alarm(uint32_t ticks) "alarm set for %u ticks"
|
||||
|
||||
# bcm2835_systmr.c
|
||||
bcm2835_systmr_irq(bool enable) "timer irq state %u"
|
||||
bcm2835_systmr_read(uint64_t offset, uint64_t data) "timer read: offset 0x%" PRIx64 " data 0x%" PRIx64
|
||||
|
@ -18,7 +18,7 @@
|
||||
#include "hw/misc/aspeed_sdmc.h"
|
||||
#include "hw/misc/aspeed_xdma.h"
|
||||
#include "hw/timer/aspeed_timer.h"
|
||||
#include "hw/timer/aspeed_rtc.h"
|
||||
#include "hw/rtc/aspeed_rtc.h"
|
||||
#include "hw/i2c/aspeed_i2c.h"
|
||||
#include "hw/ssi/aspeed_smc.h"
|
||||
#include "hw/watchdog/wdt_aspeed.h"
|
||||
|
@ -29,7 +29,7 @@
|
||||
#include "hw/dma/xlnx-zdma.h"
|
||||
#include "hw/display/xlnx_dp.h"
|
||||
#include "hw/intc/xlnx-zynqmp-ipi.h"
|
||||
#include "hw/timer/xlnx-zynqmp-rtc.h"
|
||||
#include "hw/rtc/xlnx-zynqmp-rtc.h"
|
||||
#include "hw/cpu/cluster.h"
|
||||
#include "target/arm/cpu.h"
|
||||
|
||||
|
@ -5,12 +5,9 @@
|
||||
* Copyright 2019 IBM Corp
|
||||
* SPDX-License-Identifier: GPL-2.0-or-later
|
||||
*/
|
||||
#ifndef ASPEED_RTC_H
|
||||
#define ASPEED_RTC_H
|
||||
#ifndef HW_RTC_ASPEED_RTC_H
|
||||
#define HW_RTC_ASPEED_RTC_H
|
||||
|
||||
#include <stdint.h>
|
||||
|
||||
#include "hw/irq.h"
|
||||
#include "hw/sysbus.h"
|
||||
|
||||
typedef struct AspeedRtcState {
|
||||
@ -27,4 +24,4 @@ typedef struct AspeedRtcState {
|
||||
#define TYPE_ASPEED_RTC "aspeed.rtc"
|
||||
#define ASPEED_RTC(obj) OBJECT_CHECK(AspeedRtcState, (obj), TYPE_ASPEED_RTC)
|
||||
|
||||
#endif /* ASPEED_RTC_H */
|
||||
#endif /* HW_RTC_ASPEED_RTC_H */
|
57
include/hw/rtc/m48t59.h
Normal file
57
include/hw/rtc/m48t59.h
Normal file
@ -0,0 +1,57 @@
|
||||
/*
|
||||
* QEMU M48T59 and M48T08 NVRAM emulation
|
||||
*
|
||||
* Copyright (c) 2003-2005, 2007 Jocelyn Mayer
|
||||
* Copyright (c) 2013 Hervé Poussineau
|
||||
*
|
||||
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
* of this software and associated documentation files (the "Software"), to deal
|
||||
* in the Software without restriction, including without limitation the rights
|
||||
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
* copies of the Software, and to permit persons to whom the Software is
|
||||
* furnished to do so, subject to the following conditions:
|
||||
*
|
||||
* The above copyright notice and this permission notice shall be included in
|
||||
* all copies or substantial portions of the Software.
|
||||
*
|
||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
|
||||
* THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||
* THE SOFTWARE.
|
||||
*/
|
||||
|
||||
#ifndef HW_RTC_M48T59_H
|
||||
#define HW_RTC_M48T59_H
|
||||
|
||||
#include "exec/hwaddr.h"
|
||||
#include "qom/object.h"
|
||||
|
||||
#define TYPE_NVRAM "nvram"
|
||||
|
||||
#define NVRAM_CLASS(klass) \
|
||||
OBJECT_CLASS_CHECK(NvramClass, (klass), TYPE_NVRAM)
|
||||
#define NVRAM_GET_CLASS(obj) \
|
||||
OBJECT_GET_CLASS(NvramClass, (obj), TYPE_NVRAM)
|
||||
#define NVRAM(obj) \
|
||||
INTERFACE_CHECK(Nvram, (obj), TYPE_NVRAM)
|
||||
|
||||
typedef struct Nvram Nvram;
|
||||
|
||||
typedef struct NvramClass {
|
||||
InterfaceClass parent;
|
||||
|
||||
uint32_t (*read)(Nvram *obj, uint32_t addr);
|
||||
void (*write)(Nvram *obj, uint32_t addr, uint32_t val);
|
||||
void (*toggle_lock)(Nvram *obj, int lock);
|
||||
} NvramClass;
|
||||
|
||||
Nvram *m48t59_init_isa(ISABus *bus, uint32_t io_base, uint16_t size,
|
||||
int base_year, int type);
|
||||
Nvram *m48t59_init(qemu_irq IRQ, hwaddr mem_base,
|
||||
uint32_t io_base, uint16_t size, int base_year,
|
||||
int type);
|
||||
|
||||
#endif /* HW_M48T59_H */
|
@ -1,8 +1,15 @@
|
||||
#ifndef MC146818RTC_H
|
||||
#define MC146818RTC_H
|
||||
/*
|
||||
* QEMU MC146818 RTC emulation
|
||||
*
|
||||
* Copyright (c) 2003-2004 Fabrice Bellard
|
||||
*
|
||||
* SPDX-License-Identifier: MIT
|
||||
*/
|
||||
|
||||
#ifndef HW_RTC_MC146818RTC_H
|
||||
#define HW_RTC_MC146818RTC_H
|
||||
|
||||
#include "hw/isa/isa.h"
|
||||
#include "hw/timer/mc146818rtc_regs.h"
|
||||
|
||||
#define TYPE_MC146818_RTC "mc146818rtc"
|
||||
|
@ -22,10 +22,11 @@
|
||||
* THE SOFTWARE.
|
||||
*/
|
||||
|
||||
#ifndef MC146818RTC_REGS_H
|
||||
#define MC146818RTC_REGS_H
|
||||
#ifndef HW_RTC_MC146818RTC_REGS_H
|
||||
#define HW_RTC_MC146818RTC_REGS_H
|
||||
|
||||
#include "qemu/timer.h"
|
||||
#include "qemu/host-utils.h"
|
||||
|
||||
#define RTC_ISA_IRQ 8
|
||||
|
@ -11,10 +11,11 @@
|
||||
* GNU GPL, version 2 or (at your option) any later version.
|
||||
*/
|
||||
|
||||
#ifndef HW_TIMER_PL031_H
|
||||
#define HW_TIMER_PL031_H
|
||||
#ifndef HW_RTC_PL031_H
|
||||
#define HW_RTC_PL031_H
|
||||
|
||||
#include "hw/sysbus.h"
|
||||
#include "qemu/timer.h"
|
||||
|
||||
#define TYPE_PL031 "pl031"
|
||||
#define PL031(obj) OBJECT_CHECK(PL031State, (obj), TYPE_PL031)
|
19
include/hw/rtc/sun4v-rtc.h
Normal file
19
include/hw/rtc/sun4v-rtc.h
Normal file
@ -0,0 +1,19 @@
|
||||
/*
|
||||
* QEMU sun4v Real Time Clock device
|
||||
*
|
||||
* The sun4v_rtc device (sun4v tod clock)
|
||||
*
|
||||
* Copyright (c) 2016 Artyom Tarasenko
|
||||
*
|
||||
* This code is licensed under the GNU GPL v3 or (at your option) any later
|
||||
* version.
|
||||
*/
|
||||
|
||||
#ifndef HW_RTC_SUN4V
|
||||
#define HW_RTC_SUN4V
|
||||
|
||||
#include "exec/hwaddr.h"
|
||||
|
||||
void sun4v_rtc_init(hwaddr addr);
|
||||
|
||||
#endif
|
@ -3,7 +3,7 @@
|
||||
*
|
||||
* Copyright (c) 2017 Xilinx Inc.
|
||||
*
|
||||
* Written-by: Alistair Francis <alistair.francis@xilinx.com>
|
||||
* Written-by: Alistair Francis
|
||||
*
|
||||
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
* of this software and associated documentation files (the "Software"), to deal
|
||||
@ -24,8 +24,8 @@
|
||||
* THE SOFTWARE.
|
||||
*/
|
||||
|
||||
#ifndef HW_TIMER_XLNX_ZYNQMP_RTC_H
|
||||
#define HW_TIMER_XLNX_ZYNQMP_RTC_H
|
||||
#ifndef HW_RTC_XLNX_ZYNQMP_H
|
||||
#define HW_RTC_XLNX_ZYNQMP_H
|
||||
|
||||
#include "hw/register.h"
|
||||
#include "hw/sysbus.h"
|
@ -1,32 +0,0 @@
|
||||
#ifndef HW_M48T59_H
|
||||
#define HW_M48T59_H
|
||||
|
||||
#include "exec/hwaddr.h"
|
||||
#include "qom/object.h"
|
||||
|
||||
#define TYPE_NVRAM "nvram"
|
||||
|
||||
#define NVRAM_CLASS(klass) \
|
||||
OBJECT_CLASS_CHECK(NvramClass, (klass), TYPE_NVRAM)
|
||||
#define NVRAM_GET_CLASS(obj) \
|
||||
OBJECT_GET_CLASS(NvramClass, (obj), TYPE_NVRAM)
|
||||
#define NVRAM(obj) \
|
||||
INTERFACE_CHECK(Nvram, (obj), TYPE_NVRAM)
|
||||
|
||||
typedef struct Nvram Nvram;
|
||||
|
||||
typedef struct NvramClass {
|
||||
InterfaceClass parent;
|
||||
|
||||
uint32_t (*read)(Nvram *obj, uint32_t addr);
|
||||
void (*write)(Nvram *obj, uint32_t addr, uint32_t val);
|
||||
void (*toggle_lock)(Nvram *obj, int lock);
|
||||
} NvramClass;
|
||||
|
||||
Nvram *m48t59_init_isa(ISABus *bus, uint32_t io_base, uint16_t size,
|
||||
int base_year, int type);
|
||||
Nvram *m48t59_init(qemu_irq IRQ, hwaddr mem_base,
|
||||
uint32_t io_base, uint16_t size, int base_year,
|
||||
int type);
|
||||
|
||||
#endif /* HW_M48T59_H */
|
@ -1 +0,0 @@
|
||||
void sun4v_rtc_init(hwaddr addr);
|
@ -327,8 +327,8 @@ format(true color). The resolution should be supported by the SVGA mode, so
|
||||
the recommended is 320x240, 640x480, 800x640.
|
||||
|
||||
A timeout could be passed to bios, guest will pause for @var{rb_timeout} ms
|
||||
when boot failed, then reboot. If @var{rb_timeout} is '-1', guest will not
|
||||
reboot, qemu passes '-1' to bios by default. Currently Seabios for X86
|
||||
when boot failed, then reboot. If @option{reboot-timeout} is not set,
|
||||
guest will not reboot by default. Currently Seabios for X86
|
||||
system support it.
|
||||
|
||||
Do strict boot via @option{strict=on} as far as firmware/BIOS
|
||||
|
@ -15,7 +15,7 @@
|
||||
|
||||
#include "libqtest-single.h"
|
||||
#include "qemu/timer.h"
|
||||
#include "hw/timer/mc146818rtc_regs.h"
|
||||
#include "hw/rtc/mc146818rtc_regs.h"
|
||||
|
||||
#define UIP_HOLD_LENGTH (8 * NANOSECONDS_PER_SECOND / 32768)
|
||||
|
||||
|
@ -429,7 +429,6 @@ AioContext *aio_context_new(Error **errp)
|
||||
|
||||
aio_set_event_notifier(ctx, &ctx->notifier,
|
||||
false,
|
||||
(EventNotifierHandler *)
|
||||
event_notifier_dummy_cb,
|
||||
event_notifier_poll);
|
||||
#ifdef CONFIG_LINUX_AIO
|
||||
|
@ -80,8 +80,8 @@ void event_notifier_cleanup(EventNotifier *e)
|
||||
{
|
||||
if (e->rfd != e->wfd) {
|
||||
close(e->rfd);
|
||||
e->rfd = -1;
|
||||
}
|
||||
e->rfd = -1;
|
||||
close(e->wfd);
|
||||
e->wfd = -1;
|
||||
}
|
||||
|
@ -322,11 +322,7 @@ int qemu_timeout_ns_to_ms(int64_t ns)
|
||||
ms = DIV_ROUND_UP(ns, SCALE_MS);
|
||||
|
||||
/* To avoid overflow problems, limit this to 2^31, i.e. approx 25 days */
|
||||
if (ms > (int64_t) INT32_MAX) {
|
||||
ms = INT32_MAX;
|
||||
}
|
||||
|
||||
return (int) ms;
|
||||
return MIN(ms, INT32_MAX);
|
||||
}
|
||||
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user