]> git.ipfire.org Git - people/ms/u-boot.git/blob - board/amcc/bubinga/bubinga.c
e3567173c2aff865c8f92c9467298ae02d89f49d
[people/ms/u-boot.git] / board / amcc / bubinga / bubinga.c
1 /*
2 * (C) Copyright 2000-2005
3 * Wolfgang Denk, DENX Software Engineering, wd@denx.de.
4 *
5 * SPDX-License-Identifier: GPL-2.0+
6 */
7
8 #include <common.h>
9 #include <asm/processor.h>
10 #include <asm/io.h>
11
12 long int spd_sdram(void);
13
14 int board_early_init_f(void)
15 {
16 mtdcr(UIC0SR, 0xFFFFFFFF); /* clear all ints */
17 mtdcr(UIC0ER, 0x00000000); /* disable all ints */
18 mtdcr(UIC0CR, 0x00000010);
19 mtdcr(UIC0PR, 0xFFFF7FF0); /* set int polarities */
20 mtdcr(UIC0TR, 0x00000010); /* set int trigger levels */
21 mtdcr(UIC0SR, 0xFFFFFFFF); /* clear all ints */
22
23 /*
24 * Configure CPC0_PCI to enable PerWE as output
25 * and enable the internal PCI arbiter if selected
26 */
27 if (in_8((void *)FPGA_REG1) & FPGA_REG1_PCI_INT_ARB)
28 mtdcr(CPC0_PCI, CPC0_PCI_HOST_CFG_EN | CPC0_PCI_ARBIT_EN);
29 else
30 mtdcr(CPC0_PCI, CPC0_PCI_HOST_CFG_EN);
31
32 return 0;
33 }
34
35 /*
36 * Check Board Identity:
37 */
38 int checkboard(void)
39 {
40 char buf[64];
41 int i = getenv_f("serial#", buf, sizeof(buf));
42
43 puts("Board: Bubinga - AMCC PPC405EP Evaluation Board");
44
45 if (i > 0) {
46 puts(", serial# ");
47 puts(buf);
48 }
49 putc('\n');
50
51 return (0);
52 }
53
54 /* -------------------------------------------------------------------------
55 initdram() reads EEPROM via I2c. EEPROM contains all of
56 the necessary info for SDRAM controller configuration
57 ------------------------------------------------------------------------- */
58 phys_size_t initdram(void)
59 {
60 return spd_sdram();
61 }