]> git.ipfire.org Git - people/ms/u-boot.git/blame - board/spear/spear600/spear600.c
Add GPL-2.0+ SPDX-License-Identifier to source files
[people/ms/u-boot.git] / board / spear / spear600 / spear600.c
CommitLineData
566c9c16
VK
1/*
2 * (C) Copyright 2009
3 * Vipin Kumar, ST Micoelectronics, vipin.kumar@st.com.
4 *
1a459660 5 * SPDX-License-Identifier: GPL-2.0+
566c9c16
VK
6 */
7
8#include <common.h>
9afc1af0 9#include <miiphy.h>
deb00562 10#include <netdev.h>
566c9c16
VK
11#include <nand.h>
12#include <asm/io.h>
1fa943b9 13#include <linux/mtd/fsmc_nand.h>
566c9c16
VK
14#include <asm/arch/hardware.h>
15#include <asm/arch/spr_defs.h>
16#include <asm/arch/spr_misc.h>
1fa943b9
VK
17
18static struct nand_chip nand_chip[CONFIG_SYS_MAX_NAND_DEVICE];
566c9c16
VK
19
20int board_init(void)
21{
22 return spear_board_init(MACH_TYPE_SPEAR600);
23}
24
25/*
26 * board_nand_init - Board specific NAND initialization
27 * @nand: mtd private chip structure
28 *
29 * Called by nand_init_chip to initialize the board specific functions
30 */
31
1fa943b9 32void board_nand_init()
566c9c16
VK
33{
34 struct misc_regs *const misc_regs_p =
35 (struct misc_regs *)CONFIG_SPEAR_MISCBASE;
1fa943b9 36 struct nand_chip *nand = &nand_chip[0];
566c9c16 37
1fa943b9 38#if defined(CONFIG_NAND_FSMC)
566c9c16 39 if (!(readl(&misc_regs_p->auto_cfg_reg) & MISC_NANDDIS))
1fa943b9
VK
40 fsmc_nand_init(nand);
41#endif
42 return;
566c9c16 43}
deb00562
VK
44
45int board_eth_init(bd_t *bis)
46{
9afc1af0
VK
47 int ret = 0;
48
deb00562 49#if defined(CONFIG_DESIGNWARE_ETH)
9afc1af0
VK
50 u32 interface = PHY_INTERFACE_MODE_MII;
51#if defined(CONFIG_DW_AUTONEG)
52 interface = PHY_INTERFACE_MODE_GMII;
53#endif
54 if (designware_initialize(0, CONFIG_SPEAR_ETHBASE, CONFIG_DW0_PHY,
55 interface) >= 0)
56 ret++;
deb00562 57#endif
9afc1af0 58 return ret;
deb00562 59}