Merge branch 'master' of ssh://git.gag.com/scm/git/fw/altos
[fw/altos] / src / lpc / ao_arch.h
index d04bf2c8b06d210a59b39ce39653fdcf14df0304..35dcc9de57e2ad58286beab8d3f7cb5cfe67d45d 100644 (file)
@@ -3,7 +3,8 @@
  *
  * This program is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; version 2 of the License.
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
  *
  * This program is distributed in the hope that it will be useful, but
  * WITHOUT ANY WARRANTY; without even the implied warranty of
 #define AO_STACK_SIZE  512
 #endif
 
-#define AO_LED_TYPE    uint16_t
-
 #define AO_PORT_TYPE   uint32_t
 
+#define AO_LED_TYPE    AO_PORT_TYPE
+
 #ifndef AO_TICK_TYPE
 #define AO_TICK_TYPE   uint16_t
 #define AO_TICK_SIGNED int16_t
 
 #define ao_arch_naked_declare  __attribute__((naked))
 #define ao_arch_naked_define
-#define __pdata
-#define __data
-#define __xdata
-#define __code const
-#define __reentrant
 #define __interrupt(n)
 #define __at(n)
 
 
 #define ao_arch_interrupt(n)   /* nothing */
 
-#undef putchar
-#undef getchar
-#define putchar(c)     ao_putchar(c)
-#define getchar                ao_getchar
-
-extern void putchar(char c);
-extern char getchar(void);
-
 /*
  * ao_romconfig.c
  */
 
-#define AO_ROMCONFIG_VERSION   2
-
-#define AO_ROMCONFIG_SYMBOL(a) __attribute__((section(".romconfig"))) const
-
-extern const uint16_t ao_romconfig_version;
-extern const uint16_t ao_romconfig_check;
-extern const uint16_t ao_serial_number;
-extern const uint32_t ao_radio_cal;
+#define AO_ROMCONFIG_SYMBOL __attribute__((section(".romconfig"))) const
 
 #define ao_arch_task_members\
        uint32_t *sp;                   /* saved stack pointer */
@@ -130,17 +111,25 @@ ao_serial_init(void);
 /* SPI definitions */
 
 #define AO_SPI_SPEED_12MHz             4
+#define AO_SPI_SPEED_8MHz              6
 #define AO_SPI_SPEED_6MHz              8
 #define AO_SPI_SPEED_4MHz              12
 #define AO_SPI_SPEED_2MHz              24
 #define AO_SPI_SPEED_1MHz              48
 #define AO_SPI_SPEED_500kHz            96
 #define AO_SPI_SPEED_250kHz            192
+#define AO_SPI_SPEED_125kHz            384
+#define AO_SPI_SPEED_62500Hz           768
 
 #define AO_SPI_SPEED_FAST      AO_SPI_SPEED_12MHz
 
 #define AO_BOOT_APPLICATION_BASE       ((uint32_t *) 0x00001000)
+#define AO_BOOT_APPLICATION_BOUND      ((uint32_t *) (0x00000000 + 32 * 1024))
 #define AO_BOOT_LOADER_BASE            ((uint32_t *) 0x00000000)
 #define HAS_BOOT_LOADER                        1
 
+/* ADC definitions */
+
+#define AO_ADC_MAX     32767
+
 #endif /* _AO_ARCH_H_ */