serial: opencores_yanu: Fix build error
PATCH RESEND 1/2 serial: opencores_yanu: Fix build error
Fix build error due to missing include of serial.h and a trivial typo.
---
Hi Tom,
This patch was sent on
http://lists.denx.de/pipermail/u-boot/2014-January/171093.html
I don't get any feedback from NIOS2 maintainers so far. Maybe you can pick up this serial
(or at least pick up this one which fixes build error).
Thanks,
Axel
drivers/serial/opencores_yanu.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-)
drivers/serial/opencores_yanu.c +2 -1
@@ -8,6 +8,7 @@#include <watchdog.h> #include <asm/io.h> #include <nios2-yanu.h> +#include <serial.h> DECLARE_GLOBAL_DATA_PTR ;
@@ -154,7 +155,7 @@ static int oc_serial_tstc(void) ((1 << YANU_RFIFO_CHARS_N) - 1)) > 0); } -statoc int oc_serial_getc(void) +static int oc_serial_getc (void ) {while (serial_tstc () ==0 )WATCHDOG_RESET ();
Signature · 1 line
1.8.1.2
PATCH RESEND 2/2 serial: opencores_yanu: Avoid duplicate oc_serial_setbrg() implementation
The implementation of oc_serial_setbrg() for CONFIG_SYS_NIOS_FIXEDBAUD and !CONFIG_SYS_NIOS_FIXEDBAUD are very similar.
Add a baudrate variable and set it to either CONFIG_BAUDRATE or gd->baudrate. Then we can unify the code for both cases.
--- drivers/serial/opencores_yanu.c | 49 ++++++++--------------------------------- 1 file changed, 9 insertions(+), 40 deletions(-)
drivers/serial/opencores_yanu.c +9 -40
@@ -18,62 +18,34 @@ DECLARE_GLOBAL_DATA_PTR;static yanu_uart_t *uart = (yanu_uart_t *)CONFIG_SYS_NIOS_CONSOLE ; -#if defined(CONFIG_SYS_NIOS_FIXEDBAUD ) - -/* Everything's already setup for fixed-baud PTF assignment*/ -static void oc_serial_setbrg (void ) {int n, k;const unsigned max_uns =0xFFFFFFFF ;unsigned best_n, best_m, baud; +unsigned baudrate; -/* compute best N and M couple */ - best_n =YANU_MAX_PRESCALER_N ; -for (n =YANU_MAX_PRESCALER_N ; n >=0 ; n--) { -if ((unsigned )CONFIG_SYS_CLK_FREQ / (1 << (n +4 )) >= - (unsigned )CONFIG_BAUDRATE ) { - best_n = n; -break ; - } - } -for (k =0 ;; k++) { -if ((unsigned )CONFIG_BAUDRATE <= (max_uns >> (15 +n-k))) -break ; - } - best_m = - ((unsigned )CONFIG_BAUDRATE * (1 << (15 + n - k))) / - ((unsigned )CONFIG_SYS_CLK_FREQ >> k); - - baud = best_m + best_n *YANU_BAUDE ; -writel (baud, &uart->baud); - -return ; -} - +#if defined(CONFIG_SYS_NIOS_FIXEDBAUD ) +/* Everything's already setup for fixed-baud PTF assignment */ + baudrate =CONFIG_BAUDRATE ;#else - -static void oc_serial_setbrg (void ) -{ -int n, k; -const unsigned max_uns =0xFFFFFFFF ; -unsigned best_n, best_m, baud; - + baudrate = gd->baudrate; +#endif /* compute best N and M couple */ best_n =YANU_MAX_PRESCALER_N ;for (n =YANU_MAX_PRESCALER_N ; n >=0 ; n--) {if ((unsigned )CONFIG_SYS_CLK_FREQ / (1 << (n +4 )) >= - gd->baudrate) { + baudrate) { best_n = n;break ; } }for (k =0 ;; k++) { -if (gd->baudrate <= (max_uns >> (15 +n-k))) +if (baudrate <= (max_uns >> (15 +n-k)))break ; } best_m = - (gd->baudrate * (1 << (15 + n - k))) / + (baudrate * (1 << (15 + n - k))) / ((unsigned )CONFIG_SYS_CLK_FREQ >> k); baud = best_m + best_n *YANU_BAUDE ;
@@ -82,9 +54,6 @@ static void oc_serial_setbrg(void)return ; } - -#endif /* CONFIG_SYS_NIOS_FIXEDBAUD */ -static int oc_serial_init (void ) {unsigned action,control;
Signature · 1 line
1.8.1.2
Thomas Chou
AppliedPATCH RESEND 2/2 serial: opencores_yanu: Avoid duplicate oc_serial_setbrg() implementation
Hi Alex,
Quoted 4 lines · Axel Lin
The implementation of
oc_serial_setbrg()forCONFIG_SYS_NIOS_FIXEDBAUDand !CONFIG_SYS_NIOS_FIXEDBAUD are very similar.
Add a baudrate variable and set it to eitherCONFIG_BAUDRATEorgd->baudrate. Then we can unify the code for both cases.
Applied to nios branch. Thanks and sorry for late response.
Thomas Chou
Thomas Chou
AppliedPATCH RESEND 1/2 serial: opencores_yanu: Fix build error
In reply to Axel LinHi Alex,
Quoted 10 lines · Axel Lin
Fix build error due to missing include of
serial.hand a trivial typo.Signed-off-by Axel Lin <[email protected]>---
Hi Tom,
This patch was sent on
http://lists.denx.de/pipermail/u-boot/2014-January/171093.html
I don't get any feedback from NIOS2 maintainers so far. Maybe you can pick up this serial
(or at least pick up this one which fixes build error).
Applied to nios branch. Thanks and sorry for late response.
Thomas Chou