diff mbox

[1/2] ptimer: move declarations to ptimer.h

Message ID 1312285630-15507-2-git-send-email-pbonzini@redhat.com
State New
Headers show

Commit Message

Paolo Bonzini Aug. 2, 2011, 11:47 a.m. UTC
Since the next patch will move VMState declarations for ptimers out
of hw/hw.h, prepare a place for them.

Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
---
 hw/arm_timer.c        |    1 +
 hw/etraxfs_timer.c    |    1 +
 hw/grlib_apbuart.c    |    1 +
 hw/grlib_gptimer.c    |    1 +
 hw/lan9118.c          |    1 +
 hw/leon3.c            |    1 +
 hw/lm32_timer.c       |    1 +
 hw/mcf5206.c          |    1 +
 hw/mcf5208.c          |    1 +
 hw/milkymist-sysctl.c |    1 +
 hw/musicpal.c         |    1 +
 hw/ptimer.c           |    1 +
 hw/ptimer.h           |   27 +++++++++++++++++++++++++++
 hw/sh_timer.c         |    1 +
 hw/slavio_timer.c     |    1 +
 hw/syborg_timer.c     |    1 +
 hw/xilinx_axidma.c    |    1 +
 hw/xilinx_timer.c     |    1 +
 qemu-timer.h          |   13 -------------
 19 files changed, 44 insertions(+), 13 deletions(-)
 create mode 100644 hw/ptimer.h

Comments

Anthony Liguori Aug. 5, 2011, 3:56 p.m. UTC | #1
On 08/02/2011 06:47 AM, Paolo Bonzini wrote:
> Since the next patch will move VMState declarations for ptimers out
> of hw/hw.h, prepare a place for them.
>
> Signed-off-by: Paolo Bonzini<pbonzini@redhat.com>
> ---
>   hw/arm_timer.c        |    1 +
>   hw/etraxfs_timer.c    |    1 +
>   hw/grlib_apbuart.c    |    1 +
>   hw/grlib_gptimer.c    |    1 +
>   hw/lan9118.c          |    1 +
>   hw/leon3.c            |    1 +
>   hw/lm32_timer.c       |    1 +
>   hw/mcf5206.c          |    1 +
>   hw/mcf5208.c          |    1 +
>   hw/milkymist-sysctl.c |    1 +
>   hw/musicpal.c         |    1 +
>   hw/ptimer.c           |    1 +
>   hw/ptimer.h           |   27 +++++++++++++++++++++++++++
>   hw/sh_timer.c         |    1 +
>   hw/slavio_timer.c     |    1 +

With this series applied, I get:

In file included from /home/anthony/git/qemu/hw/slavio_timer.c:27:0:
/home/anthony/git/qemu/hw/ptimer.h:27:33: error: expected ‘=’, ‘,’, ‘;’, 
‘asm’ or ‘__attribute__’ before ‘vmstate_ptimer’
/home/anthony/git/qemu/hw/slavio_timer.c:338:9: error: ‘vmstate_ptimer’ 
undeclared here (not in a function)
make[1]: *** [slavio_timer.o] Error 1
make: *** [subdir-sparc-softmmu] Error 2

Regards,

Anthony Liguori

>   hw/syborg_timer.c     |    1 +
>   hw/xilinx_axidma.c    |    1 +
>   hw/xilinx_timer.c     |    1 +
>   qemu-timer.h          |   13 -------------
>   19 files changed, 44 insertions(+), 13 deletions(-)
>   create mode 100644 hw/ptimer.h
>
> diff --git a/hw/arm_timer.c b/hw/arm_timer.c
> index fd9448f..ade3125 100644
> --- a/hw/arm_timer.c
> +++ b/hw/arm_timer.c
> @@ -9,6 +9,7 @@
>
>   #include "sysbus.h"
>   #include "qemu-timer.h"
> +#include "ptimer.h"
>
>   /* Common timer implementation.  */
>
> diff --git a/hw/etraxfs_timer.c b/hw/etraxfs_timer.c
> index b08e574..0a28c4c 100644
> --- a/hw/etraxfs_timer.c
> +++ b/hw/etraxfs_timer.c
> @@ -24,6 +24,7 @@
>   #include "sysbus.h"
>   #include "sysemu.h"
>   #include "qemu-timer.h"
> +#include "ptimer.h"
>
>   #define D(x)
>
> diff --git a/hw/grlib_apbuart.c b/hw/grlib_apbuart.c
> index 169a56e..860c874 100644
> --- a/hw/grlib_apbuart.c
> +++ b/hw/grlib_apbuart.c
> @@ -24,6 +24,7 @@
>
>   #include "sysbus.h"
>   #include "qemu-char.h"
> +#include "ptimer.h"
>
>   #include "trace.h"
>
> diff --git a/hw/grlib_gptimer.c b/hw/grlib_gptimer.c
> index 99e9033..ccb7e06 100644
> --- a/hw/grlib_gptimer.c
> +++ b/hw/grlib_gptimer.c
> @@ -24,6 +24,7 @@
>
>   #include "sysbus.h"
>   #include "qemu-timer.h"
> +#include "ptimer.h"
>
>   #include "trace.h"
>
> diff --git a/hw/lan9118.c b/hw/lan9118.c
> index 73a8661..a562206 100644
> --- a/hw/lan9118.c
> +++ b/hw/lan9118.c
> @@ -11,6 +11,7 @@
>   #include "net.h"
>   #include "devices.h"
>   #include "sysemu.h"
> +#include "ptimer.h"
>   /* For crc32 */
>   #include<zlib.h>
>
> diff --git a/hw/leon3.c b/hw/leon3.c
> index 919f49f..59f9349 100644
> --- a/hw/leon3.c
> +++ b/hw/leon3.c
> @@ -23,6 +23,7 @@
>    */
>   #include "hw.h"
>   #include "qemu-timer.h"
> +#include "ptimer.h"
>   #include "qemu-char.h"
>   #include "sysemu.h"
>   #include "boards.h"
> diff --git a/hw/lm32_timer.c b/hw/lm32_timer.c
> index 49cbb22..e355d80 100644
> --- a/hw/lm32_timer.c
> +++ b/hw/lm32_timer.c
> @@ -25,6 +25,7 @@
>   #include "sysbus.h"
>   #include "trace.h"
>   #include "qemu-timer.h"
> +#include "ptimer.h"
>   #include "qemu-error.h"
>
>   #define DEFAULT_FREQUENCY (50*1000000)
> diff --git a/hw/mcf5206.c b/hw/mcf5206.c
> index fce282d..3bf4b5f 100644
> --- a/hw/mcf5206.c
> +++ b/hw/mcf5206.c
> @@ -8,6 +8,7 @@
>   #include "hw.h"
>   #include "mcf.h"
>   #include "qemu-timer.h"
> +#include "ptimer.h"
>   #include "sysemu.h"
>
>   /* General purpose timer module.  */
> diff --git a/hw/mcf5208.c b/hw/mcf5208.c
> index 78fbc5f..f92f489 100644
> --- a/hw/mcf5208.c
> +++ b/hw/mcf5208.c
> @@ -8,6 +8,7 @@
>   #include "hw.h"
>   #include "mcf.h"
>   #include "qemu-timer.h"
> +#include "ptimer.h"
>   #include "sysemu.h"
>   #include "net.h"
>   #include "boards.h"
> diff --git a/hw/milkymist-sysctl.c b/hw/milkymist-sysctl.c
> index 7b2d544..5f8d4ad 100644
> --- a/hw/milkymist-sysctl.c
> +++ b/hw/milkymist-sysctl.c
> @@ -26,6 +26,7 @@
>   #include "sysemu.h"
>   #include "trace.h"
>   #include "qemu-timer.h"
> +#include "ptimer.h"
>   #include "qemu-error.h"
>
>   enum {
> diff --git a/hw/musicpal.c b/hw/musicpal.c
> index 63dd391..1bac24b 100644
> --- a/hw/musicpal.c
> +++ b/hw/musicpal.c
> @@ -14,6 +14,7 @@
>   #include "boards.h"
>   #include "pc.h"
>   #include "qemu-timer.h"
> +#include "ptimer.h"
>   #include "block.h"
>   #include "flash.h"
>   #include "console.h"
> diff --git a/hw/ptimer.c b/hw/ptimer.c
> index 6f13ce9..d416631 100644
> --- a/hw/ptimer.c
> +++ b/hw/ptimer.c
> @@ -7,6 +7,7 @@
>    */
>   #include "hw.h"
>   #include "qemu-timer.h"
> +#include "ptimer.h"
>   #include "host-utils.h"
>
>   struct ptimer_state
> diff --git a/hw/ptimer.h b/hw/ptimer.h
> new file mode 100644
> index 0000000..69cdddc
> --- /dev/null
> +++ b/hw/ptimer.h
> @@ -0,0 +1,27 @@
> +/*
> + * General purpose implementation of a simple periodic countdown timer.
> + *
> + * Copyright (c) 2007 CodeSourcery.
> + *
> + * This code is licensed under the GNU LGPL.
> + */
> +#ifndef PTIMER_H
> +#define PTIMER_H
> +
> +#include "qemu-common.h"
> +#include "qemu-timer.h"
> +
> +/* ptimer.c */
> +typedef struct ptimer_state ptimer_state;
> +typedef void (*ptimer_cb)(void *opaque);
> +
> +ptimer_state *ptimer_init(QEMUBH *bh);
> +void ptimer_set_period(ptimer_state *s, int64_t period);
> +void ptimer_set_freq(ptimer_state *s, uint32_t freq);
> +void ptimer_set_limit(ptimer_state *s, uint64_t limit, int reload);
> +uint64_t ptimer_get_count(ptimer_state *s);
> +void ptimer_set_count(ptimer_state *s, uint64_t count);
> +void ptimer_run(ptimer_state *s, int oneshot);
> +void ptimer_stop(ptimer_state *s);
> +
> +#endif
> diff --git a/hw/sh_timer.c b/hw/sh_timer.c
> index 5df7fb6..9ab69d0 100644
> --- a/hw/sh_timer.c
> +++ b/hw/sh_timer.c
> @@ -11,6 +11,7 @@
>   #include "hw.h"
>   #include "sh.h"
>   #include "qemu-timer.h"
> +#include "ptimer.h"
>
>   //#define DEBUG_TIMER
>
> diff --git a/hw/slavio_timer.c b/hw/slavio_timer.c
> index 5511313..7f57158 100644
> --- a/hw/slavio_timer.c
> +++ b/hw/slavio_timer.c
> @@ -24,6 +24,7 @@
>
>   #include "sun4m.h"
>   #include "qemu-timer.h"
> +#include "ptimer.h"
>   #include "sysbus.h"
>   #include "trace.h"
>
> diff --git a/hw/syborg_timer.c b/hw/syborg_timer.c
> index 50c813e..c98484a 100644
> --- a/hw/syborg_timer.c
> +++ b/hw/syborg_timer.c
> @@ -24,6 +24,7 @@
>
>   #include "sysbus.h"
>   #include "qemu-timer.h"
> +#include "ptimer.h"
>   #include "syborg.h"
>
>   //#define DEBUG_SYBORG_TIMER
> diff --git a/hw/xilinx_axidma.c b/hw/xilinx_axidma.c
> index 571a5b0..0bbeae3 100644
> --- a/hw/xilinx_axidma.c
> +++ b/hw/xilinx_axidma.c
> @@ -25,6 +25,7 @@
>   #include "sysbus.h"
>   #include "qemu-char.h"
>   #include "qemu-timer.h"
> +#include "ptimer.h"
>   #include "qemu-log.h"
>   #include "qdev-addr.h"
>
> diff --git a/hw/xilinx_timer.c b/hw/xilinx_timer.c
> index d398c18..77d251d 100644
> --- a/hw/xilinx_timer.c
> +++ b/hw/xilinx_timer.c
> @@ -24,6 +24,7 @@
>
>   #include "sysbus.h"
>   #include "qemu-timer.h"
> +#include "ptimer.h"
>
>   #define D(x)
>
> diff --git a/qemu-timer.h b/qemu-timer.h
> index 0a43469..ea886cf 100644
> --- a/qemu-timer.h
> +++ b/qemu-timer.h
> @@ -136,19 +136,6 @@ static inline int64_t get_clock(void)
>   void qemu_get_timer(QEMUFile *f, QEMUTimer *ts);
>   void qemu_put_timer(QEMUFile *f, QEMUTimer *ts);
>
> -/* ptimer.c */
> -typedef struct ptimer_state ptimer_state;
> -typedef void (*ptimer_cb)(void *opaque);
> -
> -ptimer_state *ptimer_init(QEMUBH *bh);
> -void ptimer_set_period(ptimer_state *s, int64_t period);
> -void ptimer_set_freq(ptimer_state *s, uint32_t freq);
> -void ptimer_set_limit(ptimer_state *s, uint64_t limit, int reload);
> -uint64_t ptimer_get_count(ptimer_state *s);
> -void ptimer_set_count(ptimer_state *s, uint64_t count);
> -void ptimer_run(ptimer_state *s, int oneshot);
> -void ptimer_stop(ptimer_state *s);
> -
>   /* icount */
>   int64_t qemu_icount_round(int64_t count);
>   extern int64_t qemu_icount;
Paolo Bonzini Aug. 6, 2011, 3:17 p.m. UTC | #2
On 08/05/2011 05:56 PM, Anthony Liguori wrote:
> On 08/02/2011 06:47 AM, Paolo Bonzini wrote:
>> Since the next patch will move VMState declarations for ptimers out
>> of hw/hw.h, prepare a place for them.
>>
>> Signed-off-by: Paolo Bonzini<pbonzini@redhat.com>
>> ---
>> hw/arm_timer.c | 1 +
>> hw/etraxfs_timer.c | 1 +
>> hw/grlib_apbuart.c | 1 +
>> hw/grlib_gptimer.c | 1 +
>> hw/lan9118.c | 1 +
>> hw/leon3.c | 1 +
>> hw/lm32_timer.c | 1 +
>> hw/mcf5206.c | 1 +
>> hw/mcf5208.c | 1 +
>> hw/milkymist-sysctl.c | 1 +
>> hw/musicpal.c | 1 +
>> hw/ptimer.c | 1 +
>> hw/ptimer.h | 27 +++++++++++++++++++++++++++
>> hw/sh_timer.c | 1 +
>> hw/slavio_timer.c | 1 +
>
> With this series applied, I get:
>
> In file included from /home/anthony/git/qemu/hw/slavio_timer.c:27:0:
> /home/anthony/git/qemu/hw/ptimer.h:27:33: error: expected ‘=’, ‘,’, ‘;’,
> ‘asm’ or ‘__attribute__’ before ‘vmstate_ptimer’
> /home/anthony/git/qemu/hw/slavio_timer.c:338:9: error: ‘vmstate_ptimer’
> undeclared here (not in a function)
> make[1]: *** [slavio_timer.o] Error 1
> make: *** [subdir-sparc-softmmu] Error 2

Never attribute to chance what can be attributed to stupidity.  Forgot I 
had configured with --target-list.

Paolo
Anthony Liguori Aug. 8, 2011, 7:37 p.m. UTC | #3
On 08/06/2011 10:17 AM, Paolo Bonzini wrote:
> On 08/05/2011 05:56 PM, Anthony Liguori wrote:
>> On 08/02/2011 06:47 AM, Paolo Bonzini wrote:
>>> Since the next patch will move VMState declarations for ptimers out
>>> of hw/hw.h, prepare a place for them.
>>>
>>> Signed-off-by: Paolo Bonzini<pbonzini@redhat.com>
>>> ---
>>> hw/arm_timer.c | 1 +
>>> hw/etraxfs_timer.c | 1 +
>>> hw/grlib_apbuart.c | 1 +
>>> hw/grlib_gptimer.c | 1 +
>>> hw/lan9118.c | 1 +
>>> hw/leon3.c | 1 +
>>> hw/lm32_timer.c | 1 +
>>> hw/mcf5206.c | 1 +
>>> hw/mcf5208.c | 1 +
>>> hw/milkymist-sysctl.c | 1 +
>>> hw/musicpal.c | 1 +
>>> hw/ptimer.c | 1 +
>>> hw/ptimer.h | 27 +++++++++++++++++++++++++++
>>> hw/sh_timer.c | 1 +
>>> hw/slavio_timer.c | 1 +
>>
>> With this series applied, I get:
>>
>> In file included from /home/anthony/git/qemu/hw/slavio_timer.c:27:0:
>> /home/anthony/git/qemu/hw/ptimer.h:27:33: error: expected ‘=’, ‘,’, ‘;’,
>> ‘asm’ or ‘__attribute__’ before ‘vmstate_ptimer’
>> /home/anthony/git/qemu/hw/slavio_timer.c:338:9: error: ‘vmstate_ptimer’
>> undeclared here (not in a function)
>> make[1]: *** [slavio_timer.o] Error 1
>> make: *** [subdir-sparc-softmmu] Error 2
>
> Never attribute to chance what can be attributed to stupidity. Forgot I
> had configured with --target-list.

It happens :-)

Regards,

Anthony Liguori

>
> Paolo
>
>
diff mbox

Patch

diff --git a/hw/arm_timer.c b/hw/arm_timer.c
index fd9448f..ade3125 100644
--- a/hw/arm_timer.c
+++ b/hw/arm_timer.c
@@ -9,6 +9,7 @@ 
 
 #include "sysbus.h"
 #include "qemu-timer.h"
+#include "ptimer.h"
 
 /* Common timer implementation.  */
 
diff --git a/hw/etraxfs_timer.c b/hw/etraxfs_timer.c
index b08e574..0a28c4c 100644
--- a/hw/etraxfs_timer.c
+++ b/hw/etraxfs_timer.c
@@ -24,6 +24,7 @@ 
 #include "sysbus.h"
 #include "sysemu.h"
 #include "qemu-timer.h"
+#include "ptimer.h"
 
 #define D(x)
 
diff --git a/hw/grlib_apbuart.c b/hw/grlib_apbuart.c
index 169a56e..860c874 100644
--- a/hw/grlib_apbuart.c
+++ b/hw/grlib_apbuart.c
@@ -24,6 +24,7 @@ 
 
 #include "sysbus.h"
 #include "qemu-char.h"
+#include "ptimer.h"
 
 #include "trace.h"
 
diff --git a/hw/grlib_gptimer.c b/hw/grlib_gptimer.c
index 99e9033..ccb7e06 100644
--- a/hw/grlib_gptimer.c
+++ b/hw/grlib_gptimer.c
@@ -24,6 +24,7 @@ 
 
 #include "sysbus.h"
 #include "qemu-timer.h"
+#include "ptimer.h"
 
 #include "trace.h"
 
diff --git a/hw/lan9118.c b/hw/lan9118.c
index 73a8661..a562206 100644
--- a/hw/lan9118.c
+++ b/hw/lan9118.c
@@ -11,6 +11,7 @@ 
 #include "net.h"
 #include "devices.h"
 #include "sysemu.h"
+#include "ptimer.h"
 /* For crc32 */
 #include <zlib.h>
 
diff --git a/hw/leon3.c b/hw/leon3.c
index 919f49f..59f9349 100644
--- a/hw/leon3.c
+++ b/hw/leon3.c
@@ -23,6 +23,7 @@ 
  */
 #include "hw.h"
 #include "qemu-timer.h"
+#include "ptimer.h"
 #include "qemu-char.h"
 #include "sysemu.h"
 #include "boards.h"
diff --git a/hw/lm32_timer.c b/hw/lm32_timer.c
index 49cbb22..e355d80 100644
--- a/hw/lm32_timer.c
+++ b/hw/lm32_timer.c
@@ -25,6 +25,7 @@ 
 #include "sysbus.h"
 #include "trace.h"
 #include "qemu-timer.h"
+#include "ptimer.h"
 #include "qemu-error.h"
 
 #define DEFAULT_FREQUENCY (50*1000000)
diff --git a/hw/mcf5206.c b/hw/mcf5206.c
index fce282d..3bf4b5f 100644
--- a/hw/mcf5206.c
+++ b/hw/mcf5206.c
@@ -8,6 +8,7 @@ 
 #include "hw.h"
 #include "mcf.h"
 #include "qemu-timer.h"
+#include "ptimer.h"
 #include "sysemu.h"
 
 /* General purpose timer module.  */
diff --git a/hw/mcf5208.c b/hw/mcf5208.c
index 78fbc5f..f92f489 100644
--- a/hw/mcf5208.c
+++ b/hw/mcf5208.c
@@ -8,6 +8,7 @@ 
 #include "hw.h"
 #include "mcf.h"
 #include "qemu-timer.h"
+#include "ptimer.h"
 #include "sysemu.h"
 #include "net.h"
 #include "boards.h"
diff --git a/hw/milkymist-sysctl.c b/hw/milkymist-sysctl.c
index 7b2d544..5f8d4ad 100644
--- a/hw/milkymist-sysctl.c
+++ b/hw/milkymist-sysctl.c
@@ -26,6 +26,7 @@ 
 #include "sysemu.h"
 #include "trace.h"
 #include "qemu-timer.h"
+#include "ptimer.h"
 #include "qemu-error.h"
 
 enum {
diff --git a/hw/musicpal.c b/hw/musicpal.c
index 63dd391..1bac24b 100644
--- a/hw/musicpal.c
+++ b/hw/musicpal.c
@@ -14,6 +14,7 @@ 
 #include "boards.h"
 #include "pc.h"
 #include "qemu-timer.h"
+#include "ptimer.h"
 #include "block.h"
 #include "flash.h"
 #include "console.h"
diff --git a/hw/ptimer.c b/hw/ptimer.c
index 6f13ce9..d416631 100644
--- a/hw/ptimer.c
+++ b/hw/ptimer.c
@@ -7,6 +7,7 @@ 
  */
 #include "hw.h"
 #include "qemu-timer.h"
+#include "ptimer.h"
 #include "host-utils.h"
 
 struct ptimer_state
diff --git a/hw/ptimer.h b/hw/ptimer.h
new file mode 100644
index 0000000..69cdddc
--- /dev/null
+++ b/hw/ptimer.h
@@ -0,0 +1,27 @@ 
+/*
+ * General purpose implementation of a simple periodic countdown timer.
+ *
+ * Copyright (c) 2007 CodeSourcery.
+ *
+ * This code is licensed under the GNU LGPL.
+ */
+#ifndef PTIMER_H
+#define PTIMER_H
+
+#include "qemu-common.h"
+#include "qemu-timer.h"
+
+/* ptimer.c */
+typedef struct ptimer_state ptimer_state;
+typedef void (*ptimer_cb)(void *opaque);
+
+ptimer_state *ptimer_init(QEMUBH *bh);
+void ptimer_set_period(ptimer_state *s, int64_t period);
+void ptimer_set_freq(ptimer_state *s, uint32_t freq);
+void ptimer_set_limit(ptimer_state *s, uint64_t limit, int reload);
+uint64_t ptimer_get_count(ptimer_state *s);
+void ptimer_set_count(ptimer_state *s, uint64_t count);
+void ptimer_run(ptimer_state *s, int oneshot);
+void ptimer_stop(ptimer_state *s);
+
+#endif
diff --git a/hw/sh_timer.c b/hw/sh_timer.c
index 5df7fb6..9ab69d0 100644
--- a/hw/sh_timer.c
+++ b/hw/sh_timer.c
@@ -11,6 +11,7 @@ 
 #include "hw.h"
 #include "sh.h"
 #include "qemu-timer.h"
+#include "ptimer.h"
 
 //#define DEBUG_TIMER
 
diff --git a/hw/slavio_timer.c b/hw/slavio_timer.c
index 5511313..7f57158 100644
--- a/hw/slavio_timer.c
+++ b/hw/slavio_timer.c
@@ -24,6 +24,7 @@ 
 
 #include "sun4m.h"
 #include "qemu-timer.h"
+#include "ptimer.h"
 #include "sysbus.h"
 #include "trace.h"
 
diff --git a/hw/syborg_timer.c b/hw/syborg_timer.c
index 50c813e..c98484a 100644
--- a/hw/syborg_timer.c
+++ b/hw/syborg_timer.c
@@ -24,6 +24,7 @@ 
 
 #include "sysbus.h"
 #include "qemu-timer.h"
+#include "ptimer.h"
 #include "syborg.h"
 
 //#define DEBUG_SYBORG_TIMER
diff --git a/hw/xilinx_axidma.c b/hw/xilinx_axidma.c
index 571a5b0..0bbeae3 100644
--- a/hw/xilinx_axidma.c
+++ b/hw/xilinx_axidma.c
@@ -25,6 +25,7 @@ 
 #include "sysbus.h"
 #include "qemu-char.h"
 #include "qemu-timer.h"
+#include "ptimer.h"
 #include "qemu-log.h"
 #include "qdev-addr.h"
 
diff --git a/hw/xilinx_timer.c b/hw/xilinx_timer.c
index d398c18..77d251d 100644
--- a/hw/xilinx_timer.c
+++ b/hw/xilinx_timer.c
@@ -24,6 +24,7 @@ 
 
 #include "sysbus.h"
 #include "qemu-timer.h"
+#include "ptimer.h"
 
 #define D(x)
 
diff --git a/qemu-timer.h b/qemu-timer.h
index 0a43469..ea886cf 100644
--- a/qemu-timer.h
+++ b/qemu-timer.h
@@ -136,19 +136,6 @@  static inline int64_t get_clock(void)
 void qemu_get_timer(QEMUFile *f, QEMUTimer *ts);
 void qemu_put_timer(QEMUFile *f, QEMUTimer *ts);
 
-/* ptimer.c */
-typedef struct ptimer_state ptimer_state;
-typedef void (*ptimer_cb)(void *opaque);
-
-ptimer_state *ptimer_init(QEMUBH *bh);
-void ptimer_set_period(ptimer_state *s, int64_t period);
-void ptimer_set_freq(ptimer_state *s, uint32_t freq);
-void ptimer_set_limit(ptimer_state *s, uint64_t limit, int reload);
-uint64_t ptimer_get_count(ptimer_state *s);
-void ptimer_set_count(ptimer_state *s, uint64_t count);
-void ptimer_run(ptimer_state *s, int oneshot);
-void ptimer_stop(ptimer_state *s);
-
 /* icount */
 int64_t qemu_icount_round(int64_t count);
 extern int64_t qemu_icount;