[U-Boot-Users] [PATCH] PPC440: Add flow control for serial port (Third try)
Niklaus Giger
niklausgiger at gmx.ch
Mon Dec 3 14:17:12 CET 2007
This has be layouten tested on our HCU5 PPC440EPx based board, where we
have only one serial port. Changes compared to my last try are:
- HW-flow control is off by default.
- returns the correct state of the hwflow
- coding style corrected
Signed-off-by: Niklaus Giger <niklaus.giger at netstal.com>
---
cpu/ppc4xx/serial.c | 25 +++++++++++++++++++++++++
1 files changed, 25 insertions(+), 0 deletions(-)
diff --git a/cpu/ppc4xx/serial.c b/cpu/ppc4xx/serial.c
index 60712b1..8f36fef 100644
--- a/cpu/ppc4xx/serial.c
+++ b/cpu/ppc4xx/serial.c
@@ -490,6 +490,31 @@ static void serial_divs (int baudrate, unsigned long *pudiv,
}
#endif /* defined(CONFIG_440) && !defined(CFG_EXT_SERIAL_CLK) */
+#if defined(CONFIG_CMD_HWFLOW) && defined(CONFIG_440) && !defined(CONFIG_SERIAL_MULTI)
+static int hwflow = 0; /* turned off by default */
+int hwflow_onoff(int on)
+{
+ switch(on) {
+ case 0:
+ default:
+ break; /* return current */
+ case 1:
+ /* The OUT2 bit may be written and read
+ * but it provides no function
+ */
+ out8(UART_BASE + UART_MCR, 0x0b);
+ hwflow = 1; /* turn on */
+ break;
+ case -1:
+ /* no modem control DTR RTS */
+ out8(UART_BASE + UART_MCR, 0x00);
+ hwflow = 0; /* turn off */
+ break;
+ }
+ return hwflow;
+}
+#endif
+
/*
* Minimal serial functions needed to use one of the SMC ports
* as serial console interface.
--
1.5.2
More information about the U-Boot
mailing list