altos/lpc: Add boot loader
[fw/altos] / src / lpc / ao_arch.h
index 99c646f9361018a3f55cee9713caf7c8e2e38e53..a8d3cfc4435a0d03c77501e75ac0000684b1f5e0 100644 (file)
  * LPC11U14 definitions and code fragments for AltOS
  */
 
-#define AO_STACK_SIZE  512
+#define AO_STACK_SIZE  320
 
 #define AO_LED_TYPE    uint16_t
 
+#define AO_PORT_TYPE   uint32_t
+
 #ifndef AO_TICK_TYPE
 #define AO_TICK_TYPE   uint16_t
 #define AO_TICK_SIGNED int16_t
@@ -109,10 +111,10 @@ extern const uint32_t ao_radio_cal;
 #define AO_TIM91011_CLK                (2 * AO_PCLK2)
 #endif
 
-#define AO_STM_NVIC_HIGH_PRIORITY      4
-#define AO_STM_NVIC_CLOCK_PRIORITY     6
-#define AO_STM_NVIC_MED_PRIORITY       8
-#define AO_STM_NVIC_LOW_PRIORITY       10
+#define AO_LPC_NVIC_HIGH_PRIORITY      0
+#define AO_LPC_NVIC_CLOCK_PRIORITY     1
+#define AO_LPC_NVIC_MED_PRIORITY       2
+#define AO_LPC_NVIC_LOW_PRIORITY       3
 
 void
 ao_adc_init(void);
@@ -123,4 +125,20 @@ ao_adc_init(void);
 void
 ao_serial_init(void);
 
+/* SPI definitions */
+
+#define AO_SPI_SPEED_12MHz             4
+#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_FAST      AO_SPI_SPEED_12MHz
+
+#define AO_BOOT_APPLICATION_BASE       ((uint32_t *) 0x00001000)
+#define AO_BOOT_LOADER_BASE            ((uint32_t *) 0x00000000)
+#define HAS_BOOT_LOADER                        1
+
 #endif /* _AO_ARCH_H_ */