qemu-e2k/hw
Laurent Vivier fee562e9e4 i6300esb: fix timer overflow
We use muldiv64() to compute the time to wait:

    timeout = muldiv64(get_ticks_per_sec(), timeout, 33000000);

but get_ticks_per_sec() is 10^9 (30 bit value) and timeout
is a 35 bit value.

Whereas muldiv64 is:

    uint64_t muldiv64(uint64_t a, uint32_t b, uint32_t c)

So we loose 3 bits of timeout.

Swapping get_ticks_per_sec() and timeout fixes it.

We can also replace it by a multiplication by 30 ns,
but this changes PCI clock frequency from 33MHz to 33.333333MHz
and we need to do this on all the QEMU PCI devices (later...)

Signed-off-by: Laurent Vivier <lvivier@redhat.com>
Reviewed-by: David Gibson <david@gibson.dropbear.id.au>
Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>
2015-09-11 10:21:38 +03:00
..
9pfs virtio: get_features() can fail 2015-07-27 18:11:53 +03:00
acpi hw/acpi/ich9: clean up stale comment about KVM not supporting SMM 2015-07-27 22:44:47 +03:00
alpha
arm xlnx-zynqmp: Connect the sysbus AHCI to ZynqMP 2015-09-08 17:38:45 +01:00
audio
block virtio: avoid leading underscores for helpers 2015-09-10 11:06:05 +03:00
bt
char virtio: avoid leading underscores for helpers 2015-09-10 11:06:05 +03:00
core xen, gfx passthrough: basic graphics passthrough support 2015-09-10 12:04:28 +00:00
cpu hw/cpu/{a15mpcore, a9mpcore}: enable TrustZone in GIC if it is enabled in CPUs 2015-09-08 17:38:43 +01:00
cris
display arm: Use g_new() & friends where that makes obvious sense 2015-09-07 10:39:27 +01:00
dma arm: Use g_new() & friends where that makes obvious sense 2015-09-07 10:39:27 +01:00
gpio arm: Use g_new() & friends where that makes obvious sense 2015-09-07 10:39:27 +01:00
i2c i.MX: Add I2C controller emulator 2015-09-07 10:39:30 +01:00
i386 xen-2015-09-10 2015-09-10 18:25:52 +01:00
ide ahci.c: Don't assume AHCIState's parent is AHCIPCIState 2015-09-08 17:38:45 +01:00
input arm: Use g_new() & friends where that makes obvious sense 2015-09-07 10:39:27 +01:00
intc hw/intc/arm_gic_common: Configure IRQs as NS if doing direct NS kernel boot 2015-09-08 17:38:43 +01:00
ipack
isa ich9: implement strap SPKR pin logic 2015-07-08 10:09:55 +03:00
lm32
m68k
mem
microblaze microblaze: boot: Use cpu_set_pc() 2015-07-09 15:20:40 +02:00
mips
misc arm: Use g_new() & friends where that makes obvious sense 2015-09-07 10:39:27 +01:00
moxie
net virtio: avoid leading underscores for helpers 2015-09-10 11:06:05 +03:00
nvram spapr: Merge sPAPREnvironment into sPAPRMachineState 2015-07-07 17:44:50 +02:00
openrisc
pci hw/pci: fix pci_update_mappings() trace events 2015-09-10 12:15:30 +03:00
pci-bridge
pci-host piix: create host bridge to passthrough 2015-09-10 12:04:09 +00:00
pcmcia
ppc pci: allow 0 address for PCI IO/MEM regions 2015-08-13 14:08:29 +03:00
s390x s390/sclp: simplify calculation of rnmax 2015-09-07 16:10:44 +02:00
scsi virtio: avoid leading underscores for helpers 2015-09-10 11:06:05 +03:00
sd arm: Use g_new() & friends where that makes obvious sense 2015-09-07 10:39:27 +01:00
sh4
smbios smbios: add smbios 3.0 support 2015-09-07 10:39:28 +01:00
sparc
sparc64
ssi arm: Use g_new() & friends where that makes obvious sense 2015-09-07 10:39:27 +01:00
timer i.MX: KZM: use standalone i.MX31 SOC support 2015-09-07 10:39:30 +01:00
tpm
tricore
unicore32
usb usbnet: Drop usbnet_can_receive 2015-07-27 14:12:18 +01:00
vfio vfio/pci: Fix bootindex 2015-07-22 14:56:01 -06:00
virtio virtio: avoid leading underscores for helpers 2015-09-10 11:06:05 +03:00
watchdog i6300esb: fix timer overflow 2015-09-11 10:21:38 +03:00
xen xen/pt: Don't slurp wholesale the PCI configuration registers 2015-09-10 16:47:28 +00:00
xenpv
xtensa
Makefile.objs smbios: move smbios code into a common folder 2015-08-13 14:08:30 +03:00