Merge branch 'master' of git://git.denx.de/u-boot-fsl-qoriq
[platform/kernel/u-boot.git] / board / xilinx / ppc440-generic / xilinx_ppc440_generic.c
1 /*
2  * (C) Copyright 2008
3  * Ricado Ribalda-Universidad Autonoma de Madrid-ricardo.ribalda@gmail.com
4  * This work has been supported by: QTechnology  http://qtec.com/
5  *
6  * SPDX-License-Identifier:     GPL-2.0+
7 */
8
9 #include <config.h>
10 #include <common.h>
11 #include <netdev.h>
12 #include <asm/processor.h>
13
14 int checkboard(void)
15 {
16         puts("Xilinx PPC440 Generic Board\n");
17         return 0;
18 }
19
20 phys_size_t initdram(int board_type)
21 {
22         return get_ram_size(XPAR_DDR2_SDRAM_MEM_BASEADDR,
23                             CONFIG_SYS_SDRAM_SIZE_MB * 1024 * 1024);
24 }
25
26 void get_sys_info(sys_info_t *sys_info)
27 {
28         sys_info->freqProcessor = XPAR_CORE_CLOCK_FREQ_HZ;
29         sys_info->freqPLB = XPAR_PLB_CLOCK_FREQ_HZ;
30         sys_info->freqPCI = 0;
31
32         return;
33 }
34
35 int get_serial_clock(void){
36         return XPAR_UARTNS550_0_CLOCK_FREQ_HZ;
37 }
38
39 int board_eth_init(bd_t *bis)
40 {
41         int ret = 0;
42
43         puts("Init xilinx temac\n");
44 #ifdef XPAR_LLTEMAC_0_BASEADDR
45         ret |= xilinx_ll_temac_eth_init(bis, XPAR_LLTEMAC_0_BASEADDR,
46                         XILINX_LL_TEMAC_M_SDMA_DCR | XILINX_LL_TEMAC_M_SDMA_PLB,
47                         XPAR_LLTEMAC_0_LLINK_CONNECTED_BASEADDR);
48
49 #endif
50
51 #ifdef XPAR_LLTEMAC_1_BASEADDR
52         ret |= xilinx_ll_temac_eth_init(bis, XPAR_LLTEMAC_1_BASEADDR,
53                         XILINX_LL_TEMAC_M_SDMA_DCR | XILINX_LL_TEMAC_M_SDMA_PLB,
54                         XPAR_LLTEMAC_1_LLINK_CONNECTED_BASEADDR);
55 #endif
56
57         return ret;
58 }