]> git.ipfire.org Git - people/ms/u-boot.git/blob - board/raidsonic/ib62x0/ib62x0.c
cf4ca51fcb479405cff2996a7ab0b853498517d5
[people/ms/u-boot.git] / board / raidsonic / ib62x0 / ib62x0.c
1 /*
2 * Copyright (C) 2011-2012
3 * Gerald Kerma <dreagle@doukki.net>
4 * Luka Perkov <luka@openwrt.org>
5 * Simon Baatz <gmbnomis@gmail.com>
6 *
7 * See file CREDITS for list of people who contributed to this
8 * project.
9 *
10 * This program is free software; you can redistribute it and/or
11 * modify it under the terms of the GNU General Public License as
12 * published by the Free Software Foundation; either version 2 of
13 * the License, or (at your option) any later version.
14 *
15 * This program is distributed in the hope that it will be useful,
16 * but WITHOUT ANY WARRANTY; without even the implied warranty of
17 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18 * GNU General Public License for more details.
19 *
20 * You should have received a copy of the GNU General Public License
21 * along with this program. If not, see <http://www.gnu.org/licenses/>.
22 */
23
24 #include <common.h>
25 #include <miiphy.h>
26 #include <asm/io.h>
27 #include <asm/arch/cpu.h>
28 #include <asm/arch/kirkwood.h>
29 #include <asm/arch/mpp.h>
30 #include "ib62x0.h"
31
32 DECLARE_GLOBAL_DATA_PTR;
33
34 int board_early_init_f(void)
35 {
36 /*
37 * default gpio configuration
38 * There are maximum 64 gpios controlled through 2 sets of registers
39 * the below configuration configures mainly initial LED status
40 */
41 kw_config_gpio(IB62x0_OE_VAL_LOW,
42 IB62x0_OE_VAL_HIGH,
43 IB62x0_OE_LOW, IB62x0_OE_HIGH);
44
45 /* Set SATA activity LEDs to default off */
46 writel(MVSATAHC_LED_POLARITY_CTRL, MVSATAHC_LED_CONF_REG);
47 /* Multi-Purpose Pins Functionality configuration */
48 static const u32 kwmpp_config[] = {
49 MPP0_NF_IO2,
50 MPP1_NF_IO3,
51 MPP2_NF_IO4,
52 MPP3_NF_IO5,
53 MPP4_NF_IO6,
54 MPP5_NF_IO7,
55 MPP6_SYSRST_OUTn,
56 MPP8_TW_SDA,
57 MPP9_TW_SCK,
58 MPP10_UART0_TXD,
59 MPP11_UART0_RXD,
60 MPP18_NF_IO0,
61 MPP19_NF_IO1,
62 MPP20_SATA1_ACTn,
63 MPP21_SATA0_ACTn,
64 MPP22_GPIO, /* Power LED red */
65 MPP24_GPIO, /* Power off device */
66 MPP25_GPIO, /* Power LED green */
67 MPP27_GPIO, /* USB transfer LED */
68 MPP28_GPIO, /* Reset button */
69 MPP29_GPIO, /* USB Copy button */
70 0
71 };
72 kirkwood_mpp_conf(kwmpp_config, NULL);
73 return 0;
74 }
75
76 int board_init(void)
77 {
78 /* adress of boot parameters */
79 gd->bd->bi_boot_params = kw_sdram_bar(0) + 0x100;
80
81 return 0;
82 }