hc
2023-05-26 a23f51ed7a39e452c1037343a84d7db1ca2c5bd7
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
/*
 * Copyright (C) 2009-2012
 * Wojciech Dubowik <wojciech.dubowik@neratec.com>
 * Luka Perkov <luka@openwrt.org>
 *
 * SPDX-License-Identifier:    GPL-2.0+
 */
 
#include <common.h>
#include <miiphy.h>
#include <asm/arch/cpu.h>
#include <asm/arch/soc.h>
#include <asm/arch/mpp.h>
#include "iconnect.h"
 
DECLARE_GLOBAL_DATA_PTR;
 
int board_early_init_f(void)
{
   /*
    * default gpio configuration
    * There are maximum 64 gpios controlled through 2 sets of registers
    * the below configuration configures mainly initial LED status
    */
   mvebu_config_gpio(ICONNECT_OE_VAL_LOW,
             ICONNECT_OE_VAL_HIGH,
             ICONNECT_OE_LOW, ICONNECT_OE_HIGH);
 
   /* Multi-Purpose Pins Functionality configuration */
   static const u32 kwmpp_config[] = {
       MPP0_NF_IO2,
       MPP1_NF_IO3,
       MPP2_NF_IO4,
       MPP3_NF_IO5,
       MPP4_NF_IO6,
       MPP5_NF_IO7,
       MPP6_SYSRST_OUTn,    /* Reset signal */
       MPP7_GPO,
       MPP8_TW_SDA,        /* I2C */
       MPP9_TW_SCK,        /* I2C */
       MPP10_UART0_TXD,
       MPP11_UART0_RXD,
       MPP12_GPO,        /* Reset button */
       MPP13_SD_CMD,
       MPP14_SD_D0,
       MPP15_SD_D1,
       MPP16_SD_D2,
       MPP17_SD_D3,
       MPP18_NF_IO0,
       MPP19_NF_IO1,
       MPP20_GE1_0,
       MPP21_GE1_1,
       MPP22_GE1_2,
       MPP23_GE1_3,
       MPP24_GE1_4,
       MPP25_GE1_5,
       MPP26_GE1_6,
       MPP27_GE1_7,
       MPP28_GPIO,
       MPP29_GPIO,
       MPP30_GE1_10,
       MPP31_GE1_11,
       MPP32_GE1_12,
       MPP33_GE1_13,
       MPP34_GE1_14,
       MPP35_GPIO,        /* OTB button */
       MPP36_AUDIO_SPDIFI,
       MPP37_AUDIO_SPDIFO,
       MPP38_GPIO,
       MPP39_TDM_SPI_CS0,
       MPP40_TDM_SPI_SCK,
       MPP41_GPIO,        /* LED brightness */
       MPP42_GPIO,        /* LED power (blue) */
       MPP43_GPIO,        /* LED power (red) */
       MPP44_GPIO,        /* LED USB 1 */
       MPP45_GPIO,        /* LED USB 2 */
       MPP46_GPIO,        /* LED USB 3 */
       MPP47_GPIO,        /* LED USB 4 */
       MPP48_GPIO,        /* LED OTB */
       MPP49_GPIO,
       0
   };
   kirkwood_mpp_conf(kwmpp_config, NULL);
   return 0;
}
 
int board_init(void)
{
   /* adress of boot parameters */
   gd->bd->bi_boot_params = mvebu_sdram_bar(0) + 0x100;
 
   return 0;
}