]> git.ipfire.org Git - people/ms/u-boot.git/blob - board/st/stm32f429-evaluation/stm32f429-evaluation.c
ARM: rmobile: Fix broken reset code on Porter
[people/ms/u-boot.git] / board / st / stm32f429-evaluation / stm32f429-evaluation.c
1 /*
2 * Copyright (C) 2018, STMicroelectronics - All Rights Reserved
3 * Author(s): Patrice Chotard, <patrice.chotard@st.com> for STMicroelectronics.
4 *
5 * SPDX-License-Identifier: GPL-2.0+
6 */
7
8 #include <common.h>
9 #include <dm.h>
10
11 #include <asm/io.h>
12 #include <asm/arch/stm32.h>
13
14 DECLARE_GLOBAL_DATA_PTR;
15
16 int dram_init(void)
17 {
18 int rv;
19 struct udevice *dev;
20
21 rv = uclass_get_device(UCLASS_RAM, 0, &dev);
22 if (rv) {
23 debug("DRAM init failed: %d\n", rv);
24 return rv;
25 }
26
27 if (fdtdec_setup_memory_size() != 0)
28 rv = -EINVAL;
29
30 return rv;
31 }
32
33 int dram_init_banksize(void)
34 {
35 fdtdec_setup_memory_banksize();
36
37 return 0;
38 }
39
40 u32 get_board_rev(void)
41 {
42 return 0;
43 }
44
45 int board_early_init_f(void)
46 {
47 return 0;
48 }
49
50 int board_init(void)
51 {
52 gd->bd->bi_boot_params = CONFIG_SYS_SDRAM_BASE + 0x100;
53
54 return 0;
55 }
56
57 #ifdef CONFIG_MISC_INIT_R
58 int misc_init_r(void)
59 {
60 char serialno[25];
61 u32 u_id_low, u_id_mid, u_id_high;
62
63 if (!env_get("serial#")) {
64 u_id_low = readl(&STM32_U_ID->u_id_low);
65 u_id_mid = readl(&STM32_U_ID->u_id_mid);
66 u_id_high = readl(&STM32_U_ID->u_id_high);
67 sprintf(serialno, "%08x%08x%08x",
68 u_id_high, u_id_mid, u_id_low);
69 env_set("serial#", serialno);
70 }
71
72 return 0;
73 }
74 #endif