Refix c64x: uart API and null_uart
[keystone-rtos/ibl.git] / src / hw / uart / c66x_uart / evmc66x_uart.h
index a638eaf71508d1425e97706977d4f8960d7c64ac..6f8067a8e6a9bcb423eb0b9b7e5403850d09ad7f 100755 (executable)
 
 /******************************************************************************
  *
- * File        Name:   evmc66x_i2c_uart.h
+ * File    Name:    evmc66x_uart.h
  *
- * Description:        This contains UART specific structure, typedefs, function
- *             prototypes.
+ * Description:    This contains UART specific structure, typedefs, function
+ *        prototypes.
  *
  ******************************************************************************/
-#ifndef        _EVM66X_I2C_UART_H_
-#define        _EVM66X_I2C_UART_H_
+#ifndef    _EVM66X_I2C_UART_H_
+#define    _EVM66X_I2C_UART_H_
+
+#include "uart.h"
 #include <stdint.h>
 
 #define UART_REGS_BASE            (0x02540000)
 
-/**************************************************************************\
-* Register Overlay Structure
-\**************************************************************************/
+/**************************************************************************
+ * Register Overlay Structure
+ **************************************************************************/
 typedef struct  {
     volatile uint32_t RBR;
     volatile uint32_t IER;
@@ -63,25 +65,17 @@ typedef struct  {
     volatile uint32_t REVID2;
     volatile uint32_t PWREMU_MGMT;
     volatile uint32_t MDR;
-} UartRegs;
-
-/************************
- * Defines and Macros
- ************************/
-/* Mask        to enable DLL and DLM */
-#define        DLAB            (0x80)                  // Way to swap mem banks
+} uart_registers_t;
 
-/* for 19200 baudrate for crystal clock        14.7456 MHz*/
-#define        DLL_VAL         (0x30)
-#define        DLM_VAL         (0x00)
+/* Mask    to enable DLL and DLM */
+#define    DLAB        (0x80)            /* Way to swap mem banks */
 
-/* Macros to be        used for setting baudrate */
-#define        BAUD_RATE_9600          (0x0060)
-#define        BAUD_RATE_19200         (0x0030)
-#define        BAUD_RATE_56000         (0x0010)
-#define        BAUD_RATE_115200        (0x0008)
+/* Baudrate table for crystal clock 14.7456 MHz*/
+#define    BAUD_RATE_9600      (0x0060)
+#define    BAUD_RATE_19200     (0x0030)
+#define    BAUD_RATE_115200    (0x0058)
 
-#define hUartRegs    ((UartRegs*) UART_REGS_BASE)
+#define uart_registers    ((uart_registers_t*) UART_REGS_BASE)
 
 /* Following 2 lines are added due to CSL3.x tools limitations */
 #define THR RBR   /* RBR & THR have same offset */
@@ -90,9 +84,4 @@ typedef struct  {
 #define UART_LSR_THRE_MASK (0x00000020u)
 #define UART_THR_DATA_MASK (0x000000FFu)
 
-/************************
- * Function declarations
-************************/
-void uart_init(void);
-void uart_write_string(uint8_t * str, uint32_t length);
 #endif /* _EVM66X_I2C_UART_H_ */