[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [RFC/RFT v1 5/8] xilinx: Inline usages of xilinx_timer_crea
From: |
Peter Crosthwaite |
Subject: |
[Qemu-devel] [RFC/RFT v1 5/8] xilinx: Inline usages of xilinx_timer_create() |
Date: |
Wed, 1 Jan 2014 16:03:41 -0800 |
Inline these usages. Converts these init to at least a semi-recent QOM
styling.
Signed-off-by: Peter Crosthwaite <address@hidden>
---
hw/microblaze/petalogix_ml605_mmu.c | 7 ++++++-
hw/microblaze/petalogix_s3adsp1800_mmu.c | 9 ++++++++-
hw/ppc/virtex_ml507.c | 7 ++++++-
include/hw/xilinx.h | 15 ---------------
4 files changed, 20 insertions(+), 18 deletions(-)
diff --git a/hw/microblaze/petalogix_ml605_mmu.c
b/hw/microblaze/petalogix_ml605_mmu.c
index 4354971..0a34651 100644
--- a/hw/microblaze/petalogix_ml605_mmu.c
+++ b/hw/microblaze/petalogix_ml605_mmu.c
@@ -140,7 +140,12 @@ petalogix_ml605_init(QEMUMachineInitArgs *args)
DEVICE_LITTLE_ENDIAN);
/* 2 timers at irq 2 @ 100 Mhz. */
- xilinx_timer_create(TIMER_BASEADDR, irq[2], 0, 100 * 1000000);
+ dev = qdev_create(NULL, "xlnx.xps-timer");
+ qdev_prop_set_uint32(dev, "one-timer-only", 0);
+ qdev_prop_set_uint32(dev, "clock-frequency", 100 * 1000000);
+ qdev_init_nofail(dev);
+ sysbus_mmio_map(SYS_BUS_DEVICE(dev), 0, TIMER_BASEADDR);
+ sysbus_connect_irq(SYS_BUS_DEVICE(dev), 0, irq[TIMER_IRQ]);
/* axi ethernet and dma initialization. */
qemu_check_nic_model(&nd_table[0], "xlnx.axi-ethernet");
diff --git a/hw/microblaze/petalogix_s3adsp1800_mmu.c
b/hw/microblaze/petalogix_s3adsp1800_mmu.c
index 6598687..f44f628 100644
--- a/hw/microblaze/petalogix_s3adsp1800_mmu.c
+++ b/hw/microblaze/petalogix_s3adsp1800_mmu.c
@@ -113,8 +113,15 @@ petalogix_s3adsp1800_init(QEMUMachineInitArgs *args)
sysbus_create_simple("xlnx.xps-uartlite", UARTLITE_BASEADDR,
irq[UARTLITE_IRQ]);
+
/* 2 timers at irq 2 @ 62 Mhz. */
- xilinx_timer_create(TIMER_BASEADDR, irq[0], 0, 62 * 1000000);
+ dev = qdev_create(NULL, "xlnx.xps-timer");
+ qdev_prop_set_uint32(dev, "one-timer-only", 0);
+ qdev_prop_set_uint32(dev, "clock-frequency", 62 * 1000000);
+ qdev_init_nofail(dev);
+ sysbus_mmio_map(SYS_BUS_DEVICE(dev), 0, TIMER_BASEADDR);
+ sysbus_connect_irq(SYS_BUS_DEVICE(dev), 0, irq[TIMER_IRQ]);
+
xilinx_ethlite_create(&nd_table[0], ETHLITE_BASEADDR, irq[1], 0, 0);
microblaze_load_kernel(cpu, ddr_base, ram_size,
diff --git a/hw/ppc/virtex_ml507.c b/hw/ppc/virtex_ml507.c
index 1e2f532..4dffb96 100644
--- a/hw/ppc/virtex_ml507.c
+++ b/hw/ppc/virtex_ml507.c
@@ -231,7 +231,12 @@ static void virtex_init(QEMUMachineInitArgs *args)
115200, serial_hds[0], DEVICE_LITTLE_ENDIAN);
/* 2 timers at irq 2 @ 62 Mhz. */
- xilinx_timer_create(0x83c00000, irq[3], 0, 62 * 1000000);
+ dev = qdev_create(NULL, "xlnx.xps-timer");
+ qdev_prop_set_uint32(dev, "one-timer-only", 0);
+ qdev_prop_set_uint32(dev, "clock-frequency", 62 * 1000000);
+ qdev_init_nofail(dev);
+ sysbus_mmio_map(SYS_BUS_DEVICE(dev), 0, TIMER_BASEADDR);
+ sysbus_connect_irq(SYS_BUS_DEVICE(dev), 0, irq[TIMER_IRQ]);
if (kernel_filename) {
uint64_t entry, low, high;
diff --git a/include/hw/xilinx.h b/include/hw/xilinx.h
index 02400cd..a454cee 100644
--- a/include/hw/xilinx.h
+++ b/include/hw/xilinx.h
@@ -7,21 +7,6 @@
#include "hw/stream.h"
#include "net/net.h"
-/* OPB Timer/Counter. */
-static inline DeviceState *
-xilinx_timer_create(hwaddr base, qemu_irq irq, int oto, int freq)
-{
- DeviceState *dev;
-
- dev = qdev_create(NULL, "xlnx.xps-timer");
- qdev_prop_set_uint32(dev, "one-timer-only", oto);
- qdev_prop_set_uint32(dev, "clock-frequency", freq);
- qdev_init_nofail(dev);
- sysbus_mmio_map(SYS_BUS_DEVICE(dev), 0, base);
- sysbus_connect_irq(SYS_BUS_DEVICE(dev), 0, irq);
- return dev;
-}
-
/* XPS Ethernet Lite MAC. */
static inline DeviceState *
xilinx_ethlite_create(NICInfo *nd, hwaddr base, qemu_irq irq,
--
1.8.5.2
- [Qemu-devel] [RFC/RFT v1 0/8] mb/ppc: Remove include/hw/xilinx.h, Peter Crosthwaite, 2014/01/01
- [Qemu-devel] [RFC/RFT v1 1/8] microblaze/s3adsp_1800: Define macros for irq map, Peter Crosthwaite, 2014/01/01
- [Qemu-devel] [RFC/RFT v1 2/8] ppc/virtex_ml507: Define macros for irq/memory maps, Peter Crosthwaite, 2014/01/01
- [Qemu-devel] [RFC/RFT v1 3/8] microblaze/ml605: Define macros for irq/memory maps, Peter Crosthwaite, 2014/01/01
- [Qemu-devel] [RFC/RFT v1 4/8] xilinx: Inline usages of xilinx_intc_create(), Peter Crosthwaite, 2014/01/01
- [Qemu-devel] [RFC/RFT v1 5/8] xilinx: Inline usages of xilinx_timer_create(),
Peter Crosthwaite <=
- [Qemu-devel] [RFC/RFT v1 6/8] xilinx: Inline usage of xilinx_ethlite_create(), Peter Crosthwaite, 2014/01/01
- [Qemu-devel] [RFC/RFT v1 7/8] xilinx: Inline usages of xilinx_axi*_init(), Peter Crosthwaite, 2014/01/01
- [Qemu-devel] [RFC/RFT v1 8/8] xilinx: Delete hw/include/xilinx.h, Peter Crosthwaite, 2014/01/01
- Re: [Qemu-devel] [RFC/RFT v1 0/8] mb/ppc: Remove include/hw/xilinx.h, Alexander Graf, 2014/01/01