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