1// SPDX-License-Identifier: GPL-2.0+ OR BSD-3-Clause 2/* 3 * Copyright (C) 2018, STMicroelectronics - All Rights Reserved 4 */ 5 6#include <common.h> 7#include <clk.h> 8#include <dm.h> 9#include <syscon.h> 10#include <asm/arch/stm32.h> 11 12static const struct udevice_id stm32mp_syscon_ids[] = { 13 { .compatible = "st,stm32mp157-syscfg", .data = STM32MP_SYSCON_SYSCFG }, 14 { .compatible = "st,stm32mp25-syscfg", .data = STM32MP_SYSCON_SYSCFG}, 15 { } 16}; 17 18static int stm32mp_syscon_probe(struct udevice *dev) 19{ 20 struct clk_bulk clk_bulk; 21 int ret; 22 23 ret = clk_get_bulk(dev, &clk_bulk); 24 if (!ret) 25 clk_enable_bulk(&clk_bulk); 26 27 return 0; 28} 29 30U_BOOT_DRIVER(syscon_stm32mp) = { 31 .name = "stmp32mp_syscon", 32 .id = UCLASS_SYSCON, 33 .of_match = stm32mp_syscon_ids, 34 .bind = dm_scan_fdt_dev, 35 .probe = stm32mp_syscon_probe, 36}; 37