1*54fd6939SJiyong Park /* 2*54fd6939SJiyong Park * Copyright (c) 2017-2020, STMicroelectronics - All Rights Reserved 3*54fd6939SJiyong Park * 4*54fd6939SJiyong Park * SPDX-License-Identifier: BSD-3-Clause 5*54fd6939SJiyong Park */ 6*54fd6939SJiyong Park 7*54fd6939SJiyong Park #ifndef STM32MP_CLKFUNC_H 8*54fd6939SJiyong Park #define STM32MP_CLKFUNC_H 9*54fd6939SJiyong Park 10*54fd6939SJiyong Park #include <stdbool.h> 11*54fd6939SJiyong Park 12*54fd6939SJiyong Park #include <libfdt.h> 13*54fd6939SJiyong Park 14*54fd6939SJiyong Park #include <platform_def.h> 15*54fd6939SJiyong Park 16*54fd6939SJiyong Park int fdt_osc_read_freq(const char *name, uint32_t *freq); 17*54fd6939SJiyong Park bool fdt_osc_read_bool(enum stm32mp_osc_id osc_id, const char *prop_name); 18*54fd6939SJiyong Park uint32_t fdt_osc_read_uint32_default(enum stm32mp_osc_id osc_id, 19*54fd6939SJiyong Park const char *prop_name, 20*54fd6939SJiyong Park uint32_t dflt_value); 21*54fd6939SJiyong Park 22*54fd6939SJiyong Park int fdt_rcc_read_uint32_array(const char *prop_name, uint32_t count, 23*54fd6939SJiyong Park uint32_t *array); 24*54fd6939SJiyong Park int fdt_rcc_subnode_offset(const char *name); 25*54fd6939SJiyong Park const fdt32_t *fdt_rcc_read_prop(const char *prop_name, int *lenp); 26*54fd6939SJiyong Park bool fdt_get_rcc_secure_status(void); 27*54fd6939SJiyong Park 28*54fd6939SJiyong Park int fdt_get_clock_id(int node); 29*54fd6939SJiyong Park 30*54fd6939SJiyong Park #endif /* STM32MP_CLKFUNC_H */ 31