Add ARM serial support.
authorasterix <asterix@38d2e660-2303-0410-9eaa-f027e97ec537>
Thu, 18 Oct 2007 09:47:28 +0000 (09:47 +0000)
committerasterix <asterix@38d2e660-2303-0410-9eaa-f027e97ec537>
Thu, 18 Oct 2007 09:47:28 +0000 (09:47 +0000)
git-svn-id: https://src.develer.com/svnoss/bertos/trunk@896 38d2e660-2303-0410-9eaa-f027e97ec537

drv/ser.h

index ceb275fcf4f79dc1705391b909679a83a6002cf7..1054f4fdd3ec16abce8f59888840d0e26d2e0374 100644 (file)
--- a/drv/ser.h
+++ b/drv/ser.h
 
 /** \name Serial Error/status flags. */
 /*\{*/
+#if CPU_ARM
+       typedef uint32_t serstatus_t;
+
+       /* Software errors */
+       #define SERRF_RXFIFOOVERRUN  BV(0)  /**< Rx FIFO buffer overrun */
+       #define SERRF_RXTIMEOUT      BV(1)  /**< Receive timeout */
+       #define SERRF_TXTIMEOUT      BV(2)  /**< Transmit timeout */
+
+       /*
+        * Hardware errors.
+        * These flags map directly to the ARM USART Channel Status Register (US_CSR).
+        */
+       #define SERRF_RXSROVERRUN    BV(5)  /**< Rx shift register overrun */
+       #define SERRF_FRAMEERROR     BV(6)  /**< Stop bit missing */
+       #define SERRF_PARITYERROR    BV(7)  /**< Parity error */
+       #define SERRF_NOISEERROR     0      /**< Unsupported */
+
 #if CPU_AVR
        typedef uint8_t serstatus_t;
 
  */
 enum
 {
+#if CPU_ARM_AT91
+       SER_UART0,
+       SER_UART1,
+       SER_SPI,
 #if CPU_AVR_ATMEGA64 || CPU_AVR_ATMEGA128 || CPU_AVR_ATMEGA1281
        SER_UART0,
        SER_UART1,