kdebug_i196.c
Go to the documentation of this file.00001
00041 #error Revise me!
00042
00043 #include <cfg/debug.h>
00044 #include <cfg/macros.h>
00045 #include <appconfig.h>
00046 #include <hw/hw_cpufreq.h>
00047 #include <hw_ser.h>
00048
00049
00050 #include "Util196.h"
00051 #define KDBG_WAIT_READY() do {} while (!(SP_STAT & (SPSF_TX_EMPTY | SPSF_TX_INT)))
00052 #define KDBG_WRITE_CHAR(c) do { SBUF = (c); } while(0)
00053 #define KDBG_MASK_IRQ(old) \
00054 do { \
00055 (old) = INT_MASK1 & INT1F_TI; \
00056 INT_MASK1 &= ~INT1F_TI; \
00057 } while(0)
00058 #define KDBG_RESTORE_IRQ(old) do { INT_MASK1 |= (old); }
00059 typedef uint16_t kdbg_irqsave_t;
00060
00061 #if CONFIG_KDEBUG_PORT == 666
00062 #error BITBANG debug console missing for this platform
00063 #endif
00064
00065
00066 INLINE void kdbg_hw_init(void)
00067 {
00068
00069 INT_MASK1 &= ~(INT1F_TI | INT1F_RI);
00070 SP_CON = SPCF_RECEIVE_ENABLE | SPCF_MODE1;
00071 ioc1_img |= IOC1F_TXD_SEL | IOC1F_EXTINT_SRC;
00072 IOC1 = ioc1_img;
00073 BAUD_RATE = 0x33;
00074 BAUD_RATE = 0x80;
00075 }