Merge git://git.denx.de/u-boot-usb
[platform/kernel/u-boot.git] / include / ns16550.h
index 4e62067..7e9944d 100644 (file)
  * @base:              Base register address
  * @reg_shift:         Shift size of registers (0=byte, 1=16bit, 2=32bit...)
  * @clock:             UART base clock speed in Hz
+ *
+ * @buf:               Pointer to the RX interrupt buffer
+ * @rd_ptr:            Read pointer in the RX interrupt buffer
+ * @wr_ptr:            Write pointer in the RX interrupt buffer
  */
 struct ns16550_platdata {
        unsigned long base;
        int reg_shift;
        int clock;
+       int reg_offset;
+       u32 fcr;
+
+       int irq;
+
+       char *buf;
+       int rd_ptr;
+       int wr_ptr;
 };
 
 struct udevice;
@@ -116,6 +128,14 @@ typedef struct NS16550 *NS16550_t;
 #define UART_FCR_RXSR          0x02 /* Receiver soft reset */
 #define UART_FCR_TXSR          0x04 /* Transmitter soft reset */
 
+/* Ingenic JZ47xx specific UART-enable bit. */
+#define UART_FCR_UME           0x10
+
+/* Clear & enable FIFOs */
+#define UART_FCR_DEFVAL (UART_FCR_FIFO_EN | \
+                       UART_FCR_RXSR | \
+                       UART_FCR_TXSR)
+
 /*
  * These are the definitions for the Modem Control Register
  */