1 /* 2 * Arm SCP/MCP Software 3 * Copyright (c) 2019-2021, Arm Limited and Contributors. All rights reserved. 4 * 5 * SPDX-License-Identifier: BSD-3-Clause 6 */ 7 8 #ifndef JUNO_UTILS_H 9 #define JUNO_UTILS_H 10 11 #include <stdbool.h> 12 #include <stdint.h> 13 14 void juno_utils_open_snoop_gate_and_wait(volatile uint32_t *snoop_ctrl); 15 void juno_utils_close_snoop_gate(volatile uint32_t *snoop_ctrl); 16 17 void juno_utils_atclk_clock_div_set(uint32_t divider); 18 bool juno_utils_atclk_clock_div_set_check(uint32_t divider); 19 20 void juno_utils_atclk_clock_sel_set(uint32_t source); 21 bool juno_utils_atclk_clock_sel_set_check(uint32_t source); 22 23 void juno_utils_traceclk_clock_div_set(uint32_t divider); 24 bool juno_utils_traceclk_clock_div_set_check(uint32_t divider); 25 26 void juno_utils_traceclk_clock_sel_set(uint32_t source); 27 bool juno_utils_traceclk_clock_sel_set_check(uint32_t source); 28 29 void juno_utils_pclkdbg_clock_div_set(uint32_t divider); 30 bool juno_utils_pclkdbg_clock_div_set_check(uint32_t divider); 31 32 void juno_utils_system_clock_enable(uint32_t mask); 33 34 void juno_utils_smc_init(void); 35 36 #endif /* JUNO_UTILS_H */ 37