blob: c28b203ceaac8555dd16420ff70caf7678fa9f1a [file] [log] [blame]
Scott Branden5a5cb002014-08-11 13:58:25 -07001/*
2 * Copyright 2014 Broadcom Corporation.
3 *
4 * SPDX-License-Identifier: GPL-2.0+
5 */
6
7#include <common.h>
8#include <asm/io.h>
9#include <config.h>
Jiandong Zheng19b6b692015-07-15 16:28:14 -070010#include <netdev.h>
Scott Branden5a5cb002014-08-11 13:58:25 -070011#include <asm/system.h>
12#include <asm/iproc-common/armpll.h>
13
14DECLARE_GLOBAL_DATA_PTR;
15
16/*
17 * board_init - early hardware init
18 */
19int board_init(void)
20{
21 /*
22 * Address of boot parameters passed to kernel
23 * Use default offset 0x100
24 */
25 gd->bd->bi_boot_params = CONFIG_SYS_SDRAM_BASE + 0x100;
26
27 return 0;
28}
29
30/*
31 * dram_init - sets u-boot's idea of sdram size
32 */
33int dram_init(void)
34{
35 gd->ram_size = get_ram_size((long *)CONFIG_SYS_SDRAM_BASE,
36 CONFIG_SYS_SDRAM_SIZE);
37 return 0;
38}
39
40void dram_init_banksize(void)
41{
42 gd->bd->bi_dram[0].start = CONFIG_SYS_SDRAM_BASE;
43 gd->bd->bi_dram[0].size = gd->ram_size;
44}
45
46int board_early_init_f(void)
47{
48 uint32_t status = 0;
49
50 /* Setup PLL if required */
51#if defined(CONFIG_ARMCLK)
52 armpll_config(CONFIG_ARMCLK);
53#endif
54
55 return status;
56}
Steve Rae1c5f31c2014-11-11 11:32:18 -080057
Jan Kiszkaac31b5a2015-04-21 07:18:24 +020058#ifdef CONFIG_ARMV7_NONSEC
Steve Rae1c5f31c2014-11-11 11:32:18 -080059void smp_set_core_boot_addr(unsigned long addr, int corenr)
60{
61}
62
63void smp_kick_all_cpus(void)
64{
65}
66
67void smp_waitloop(unsigned previous_address)
68{
69}
70#endif
Jiandong Zheng19b6b692015-07-15 16:28:14 -070071
72#ifdef CONFIG_BCM_SF2_ETH
73int board_eth_init(bd_t *bis)
74{
75 int rc = -1;
76 printf("Registering BCM sf2 eth\n");
77 rc = bcm_sf2_eth_register(bis, 0);
78 return rc;
79}
80#endif