12#ifndef __ZEPHYR_RTOS_CLK_H__
13#define __ZEPHYR_RTOS_CLK_H__
15#ifndef CONFIG_SOF_ZEPHYR_NO_SOF_CLOCK
17#include <zephyr/kernel.h>
19#define __SOF_LIB_CLK_H__
20#include <platform/lib/clk.h>
30#define CLOCK_NOTIFY_PRE 0
31#define CLOCK_NOTIFY_POST 1
static k_spinlock_key_t clock_lock(void)
Definition clk.h:72
static void clock_unlock(k_spinlock_key_t key)
Definition clk.h:77
void clock_low_power_mode(int clock, bool enable)
uint64_t clock_ticks_per_sample(int clock, uint32_t sample_rate)
void clock_set_freq(int clock, uint32_t hz)
struct k_spinlock clk_lock
static struct clock_info * clocks_get(void)
Definition clk.h:82
uint32_t clock_get_freq(int clock)
Sound Open Firmware global runtime context.
struct sof * sof_get(void)
Get the global Sound Open Firmware runtime instance pointer.
RTOS spinlock primitives and initialization.
uint32_t notification_mask
Definition clk.h:53
uint32_t current_freq_idx
Definition clk.h:50
uint32_t freqs_num
Definition clk.h:47
void(* low_power_mode)(int clock, bool enable)
Definition clk.h:59
uint32_t lowest_freq_idx
Definition clk.h:51
uint32_t default_freq_idx
Definition clk.h:49
int(* set_freq)(int clock, int freq_idx)
Definition clk.h:56
const struct freq_table * freqs
Definition clk.h:48
uint32_t notification_id
Definition clk.h:52
uint32_t old_ticks_per_msec
Definition clk.h:35
uint32_t ticks_per_msec
Definition clk.h:37
uint32_t old_freq
Definition clk.h:34
uint32_t freq
Definition clk.h:36
uint32_t message
Definition clk.h:38
uint32_t ticks_per_msec
Definition clk.h:43
uint32_t freq
Definition clk.h:42
struct clock_info * clocks
Definition sof.h:70