2.6.31 support (WiP)
[lede.git] / target / linux / coldfire / patches / 009-m5445x_serial.patch
1 From 4b5a534c16325217c05a87938885c0ee1fe69a34 Mon Sep 17 00:00:00 2001
2 From: Kurt Mahan <kmahan@freescale.com>
3 Date: Wed, 31 Oct 2007 17:01:41 -0600
4 Subject: [PATCH] MCF5445x core serial support.
5
6 LTIBName: m5445x-serial
7 Signed-off-by: Kurt Mahan <kmahan@freescale.com>
8 ---
9  drivers/serial/mcfserial.c |   23 +++++++++++++++++++++--
10  1 files changed, 21 insertions(+), 2 deletions(-)
11
12 --- a/drivers/serial/mcfserial.c
13 +++ b/drivers/serial/mcfserial.c
14 @@ -45,7 +45,9 @@
15  #include <asm/coldfire.h>
16  #include <asm/mcfsim.h>
17  #include <asm/mcfuart.h>
18 +#ifdef CONFIG_NETtel
19  #include <asm/nettel.h>
20 +#endif
21  #include <asm/uaccess.h>
22  #include "mcfserial.h"
23  
24 @@ -61,7 +63,8 @@ struct timer_list mcfrs_timer_struct;
25  #define        CONSOLE_BAUD_RATE       38400
26  #define        DEFAULT_CBAUD           B38400
27  #elif defined(CONFIG_MOD5272) || defined(CONFIG_M5208EVB) || \
28 -      defined(CONFIG_M5329EVB) || defined(CONFIG_GILBARCO)
29 +      defined(CONFIG_M5329EVB) || defined(CONFIG_GILBARCO) || \
30 +      defined(CONFIG_M54455)
31  #define CONSOLE_BAUD_RATE      115200
32  #define DEFAULT_CBAUD          B115200
33  #elif defined(CONFIG_ARNEWSH) || defined(CONFIG_FREESCALE) || \
34 @@ -94,7 +97,7 @@ static struct tty_driver *mcfrs_serial_d
35  #undef SERIAL_DEBUG_FLOW
36  
37  #if defined(CONFIG_M523x) || defined(CONFIG_M527x) || defined(CONFIG_M528x) || \
38 -    defined(CONFIG_M520x) || defined(CONFIG_M532x)
39 +    defined(CONFIG_M520x) || defined(CONFIG_M532x) || defined(CONFIG_M54455)
40  #define        IRQBASE (MCFINT_VECBASE+MCFINT_UART0)
41  #else
42  #define        IRQBASE 73
43 @@ -1604,6 +1607,20 @@ static void mcfrs_irqinit(struct mcf_ser
44                 /* GPIOs also must be initalized, depends on board */
45                 break;
46         }
47 +#elif defined(CONFIG_M54455)
48 +       volatile unsigned char *uartp;
49 +       uartp = info->addr;
50 +       switch (info->line) {
51 +       case 0:
52 +               MCF_GPIO_PAR_UART |= 0x000F;
53 +               break;
54 +       case 1:
55 +               MCF_GPIO_PAR_UART |= 0x0FF0;
56 +               break;
57 +       case 2:
58 +               /* GPIOs also must be initalized, depends on board */
59 +               break;
60 +       }
61  #else
62         volatile unsigned char  *icrp, *uartp;
63  
64 @@ -1966,7 +1983,9 @@ struct console mcfrs_console = {
65  
66  static int __init mcfrs_console_init(void)
67  {
68 +#ifndef CONFIG_M54455
69         register_console(&mcfrs_console);
70 +#endif
71         return 0;
72  }
73