]> git.kernelconcepts.de Git - karo-tx-uboot.git/blob - onenand_ipl/board/apollon/apollon.c
imported Ka-Ro specific additions to U-Boot 2009.08 for TX28
[karo-tx-uboot.git] / onenand_ipl / board / apollon / apollon.c
1 /*
2  * (C) Copyright 2005-2008 Samsung Electronics
3  * Kyungmin Park <kyungmin.park@samsung.com>
4  *
5  * See file CREDITS for list of people who contributed to this
6  * project.
7  *
8  * This program is free software; you can redistribute it and/or
9  * modify it under the terms of the GNU General Public License as
10  * published by the Free Software Foundation; either version 2 of
11  * the License, or (at your option) any later version.
12  *
13  * This program is distributed in the hope that it will be useful,
14  * but WITHOUT ANY WARRANTY; without even the implied warranty of
15  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
16  * GNU General Public License for more details.
17  *
18  * You should have received a copy of the GNU General Public License
19  * along with this program; if not, write to the Free Software
20  * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
21  * MA 02111-1307 USA
22  */
23 #include <common.h>
24 #include <asm/arch/mux.h>
25
26 #define write_config_reg(reg, value)                                    \
27 do {                                                                    \
28         writeb(value, reg);                                             \
29 } while (0)
30
31 /*****************************************
32  * Routine: board_init
33  * Description: Early hardware init.
34  *****************************************/
35 int board_init(void)
36 {
37         return 0;
38 }
39
40 #ifdef CONFIG_SYS_PRINTF
41 /* Pin Muxing registers used for UART1 */
42 /****************************************
43  * Routine: muxSetupUART1  (ostboot)
44  * Description: Set up uart1 muxing
45  *****************************************/
46 static void muxSetupUART1(void)
47 {
48         /* UART1_CTS pin configuration, PIN = D21 */
49         write_config_reg(CONTROL_PADCONF_UART1_CTS, 0);
50         /* UART1_RTS pin configuration, PIN = H21 */
51         write_config_reg(CONTROL_PADCONF_UART1_RTS, 0);
52         /* UART1_TX pin configuration, PIN = L20 */
53         write_config_reg(CONTROL_PADCONF_UART1_TX, 0);
54         /* UART1_RX pin configuration, PIN = T21 */
55         write_config_reg(CONTROL_PADCONF_UART1_RX, 0);
56 }
57 #endif
58
59 /**********************************************************
60  * Routine: s_init
61  * Description: Does early system init of muxing and clocks.
62  * - Called at time when only stack is available.
63  **********************************************************/
64 int s_init(int skip)
65 {
66 #ifdef CONFIG_SYS_PRINTF
67         muxSetupUART1();
68 #endif
69         return 0;
70 }