@@ -26,7 +26,15 @@
void NS16550_init (NS16550_t com_port, int baud_divisor)
{
+#ifdef CONFIG_ARMADA100
+ /*
+ * For ARMADA 100 Based Processors bit 6 in IER register
+ * represents UART Unit Enable bit.
+ */
+ serial_out((1 << 6), &com_port->ier);
+#else
serial_out(0x00, &com_port->ier);
+#endif
#if defined(CONFIG_OMAP) && !defined(CONFIG_OMAP3_ZOOM2)
serial_out(0x7, &com_port->mdr1); /* mode select reset TL16C750*/
#endif
@@ -52,7 +60,15 @@ void NS16550_init (NS16550_t com_port, int baud_divisor)
#ifndef CONFIG_NS16550_MIN_FUNCTIONS
void NS16550_reinit (NS16550_t com_port, int baud_divisor)
{
+#ifdef CONFIG_ARMADA100
+ /*
+ * For ARMADA 100 Based Processors bit 6 in IER register
+ * represents UART Unit Enable bit.
+ */
+ serial_out((1 << 6), &com_port->ier);
+#else
serial_out(0x00, &com_port->ier);
+#endif
serial_out(UART_LCR_BKSE | UART_LCRVAL, &com_port->lcr);
serial_out(0, &com_port->dll);
serial_out(0, &com_port->dlm);
@@ -33,6 +33,9 @@
#ifdef CONFIG_ORION5X
#include <asm/arch/orion5x.h>
#endif
+#ifdef CONFIG_ARMADA100
+#include <asm/arch/armada100.h>
+#endif
#if defined (CONFIG_SERIAL_MULTI)
#include <serial.h>