xref: /openbmc/u-boot/board/st/stm32mp1/spl.c (revision e8f80a5a)
1 // SPDX-License-Identifier: GPL-2.0+ OR BSD-3-Clause
2 /*
3  * Copyright (C) 2018, STMicroelectronics - All Rights Reserved
4  */
5 
6 #include <config.h>
7 #include <common.h>
8 #include <spl.h>
9 #include <dm.h>
10 #include <ram.h>
11 #include <asm/io.h>
12 #include <post.h>
13 #include <power/pmic.h>
14 #include <power/stpmu1.h>
15 #include <asm/arch/ddr.h>
16 
spl_board_init(void)17 void spl_board_init(void)
18 {
19 	/* Keep vdd on during the reset cycle */
20 #if defined(CONFIG_PMIC_STPMU1) && defined(CONFIG_SPL_POWER_SUPPORT)
21 	struct udevice *dev;
22 	int ret;
23 
24 	ret = uclass_get_device_by_driver(UCLASS_PMIC,
25 					  DM_GET_DRIVER(pmic_stpmu1), &dev);
26 	if (!ret)
27 		pmic_clrsetbits(dev,
28 				STPMU1_MASK_RESET_BUCK,
29 				STPMU1_MASK_RESET_BUCK3,
30 				STPMU1_MASK_RESET_BUCK3);
31 #endif
32 }
33