projects
/
bertos.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Add even more code duplication until we properly refactor debug.h.
[bertos.git]
/
drv
/
wdt.h
diff --git
a/drv/wdt.h
b/drv/wdt.h
index bcea6bafb4194a09faaa15841317a242830b07af..85b37ebf5c235cf9aaf80e4124a56f16c547e07a 100755
(executable)
--- a/
drv/wdt.h
+++ b/
drv/wdt.h
@@
-14,6
+14,15
@@
/*#*
*#* $Log$
/*#*
*#* $Log$
+ *#* Revision 1.8 2006/02/20 02:02:29 bernie
+ *#* Port to Qt 4.1.
+ *#*
+ *#* Revision 1.7 2005/11/27 03:58:40 bernie
+ *#* Add POSIX timer emulator.
+ *#*
+ *#* Revision 1.6 2005/11/27 03:03:08 bernie
+ *#* Add Qt support hack.
+ *#*
*#* Revision 1.5 2005/11/04 16:20:02 bernie
*#* Fix reference to README.devlib in header.
*#*
*#* Revision 1.5 2005/11/04 16:20:02 bernie
*#* Fix reference to README.devlib in header.
*#*
@@
-33,7
+42,7
@@
#ifndef DRV_WDT_H
#define DRV_WDT_H
#ifndef DRV_WDT_H
#define DRV_WDT_H
-#include <
cfg/
config.h>
+#include <
app
config.h>
#include <cfg/compiler.h> // INLINE
/* Configury sanity check */
#include <cfg/compiler.h> // INLINE
/* Configury sanity check */
@@
-43,8
+52,17
@@
#if CONFIG_WATCHDOG
#include <cfg/cpu.h>
#if CONFIG_WATCHDOG
#include <cfg/cpu.h>
+ #include <cfg/os.h>
- #if CPU_AVR
+ #if OS_QT
+ #if _QT < 4
+ #include <qapplication.h>
+ #else
+ #include <QtGui/QApplication>
+ #endif
+ #elif OS_POSIX
+ #include <sys/select.h>
+ #elif CPU_AVR
#include <avr/io.h>
#include <cfg/macros.h> // BV()
#else
#include <avr/io.h>
#include <cfg/macros.h> // BV()
#else
@@
-58,7
+76,14
@@
INLINE void wdt_reset(void)
{
#if CONFIG_WATCHDOG
INLINE void wdt_reset(void)
{
#if CONFIG_WATCHDOG
- #if CPU_AVR
+ #if OS_QT
+ // Let Qt handle events
+ ASSERT(qApp);
+ qApp->processEvents();
+ #elif OS_POSIX
+ static struct timeval tv = { 0, 0 };
+ select(0, NULL, NULL, NULL, &tv);
+ #elif CPU_AVR
__asm__ __volatile__ ("wdr");
#else
#error unknown CPU
__asm__ __volatile__ ("wdr");
#else
#error unknown CPU
@@
-74,7
+99,17
@@
INLINE void wdt_reset(void)
INLINE void wdt_init(uint8_t timeout)
{
#if CONFIG_WATCHDOG
INLINE void wdt_init(uint8_t timeout)
{
#if CONFIG_WATCHDOG
- #if CPU_AVR
+ #if OS_QT
+ // Create a dummy QApplication object
+ if (!qApp)
+ {
+ int argc;
+ new QApplication(argc, (char **)NULL);
+ }
+ (void)timeout;
+ #elif OS_POSIX
+ (void)timeout; // NOP
+ #elif CPU_AVR
WDTCR |= BV(WDCE) | BV(WDE);
WDTCR = timeout;
#else
WDTCR |= BV(WDCE) | BV(WDE);
WDTCR = timeout;
#else
@@
-88,7
+123,11
@@
INLINE void wdt_init(uint8_t timeout)
INLINE void wdt_start(void)
{
#if CONFIG_WATCHDOG
INLINE void wdt_start(void)
{
#if CONFIG_WATCHDOG
- #if CPU_AVR
+ #if OS_QT
+ // NOP
+ #elif OS_POSIX
+ // NOP
+ #elif CPU_AVR
WDTCR |= BV(WDE);
#else
#error unknown CPU
WDTCR |= BV(WDE);
#else
#error unknown CPU
@@
-99,7
+138,11
@@
INLINE void wdt_start(void)
INLINE void wdt_stop(void)
{
#if CONFIG_WATCHDOG
INLINE void wdt_stop(void)
{
#if CONFIG_WATCHDOG
- #if CPU_AVR
+ #if OS_QT
+ // NOP
+ #elif OS_POSIX
+ // NOP
+ #elif CPU_AVR
WDTCR |= BV(WDCE) | BV(WDE);
WDTCR &= ~BV(WDE);
#else
WDTCR |= BV(WDCE) | BV(WDE);
WDTCR &= ~BV(WDE);
#else