98 for (idx = 0; idx < num_perfs; idx++)
99 if (hz == clk_cfg[idx].hz)
103 if (idx >= num_perfs)
104 die(
"Failed to find a matching clock frequency (%d hz) for %p!\n",
113 if (clk_cfg[idx].
m != 0)
132 &
gcc->qup_wrap0_s[
s] : &
gcc->qup_wrap1_s[
s];
138 for (idx = 0; idx < num_perfs; idx++) {
144 if (clk_cfg[idx].
m == 0)
153 reg_val = ~(clk_cfg[idx].
n - clk_cfg[idx].
m)
164 bool enable,
int br_enable)
static struct apbmisc * misc
static void write32(void *addr, uint32_t val)
static uint32_t read32(const void *addr)
#define assert(statement)
cb_err
coreboot error codes
@ CB_ERR
Generic error code.
@ CB_SUCCESS
Call completed successfully.
@ CLK_CTL_CMD_RCG_SW_CTL_SHFT
@ CLK_CTL_CFG_SRC_DIV_SHFT
@ CLK_CTL_CFG_SRC_SEL_SHFT
@ CLK_CTL_CMD_UPDATE_SHFT
#define printk(level,...)
void __noreturn die(const char *fmt,...)
#define setbits32(addr, set)
#define clrsetbits32(addr, clear, set)
#define clrbits32(addr, clear)
#define wait_us(timeout_us, condition)
#define BIOS_ERR
BIOS_ERR - System in incomplete state.
enum cb_err clock_enable(void *cbcr_addr)
void clock_configure_dfsr_table(int qup, struct clock_freq_config *clk_cfg, uint32_t num_perfs)
static void clock_configure_mnd(struct clock_rcg *clk, uint32_t m, uint32_t n, uint32_t d_2)
enum cb_err clock_configure(struct clock_rcg *clk, struct clock_freq_config *clk_cfg, uint32_t hz, uint32_t num_perfs)
void clock_reset_bcr(void *bcr_addr, bool assert)
enum cb_err clock_configure_enable_gpll(struct alpha_pll_reg_val_config *cfg, bool enable, int br_enable)
enum cb_err zonda_pll_enable(struct alpha_pll_reg_val_config *cfg)
enum cb_err agera_pll_enable(struct alpha_pll_reg_val_config *cfg)
void clock_reset_subsystem(u32 *misc, u32 shft)
static bool clock_is_off(u32 *cbcr_addr)
enum cb_err enable_and_poll_gdsc_status(void *gdscr_addr)
enum cb_err clock_enable_vote(void *cbcr_addr, void *vote_addr, uint32_t vote_bit)
static struct qcs405_gcc *const gcc
void * reg_config_ctl_hi1
void * reg_apcs_pll_br_en
struct clock_rcg_dfsr dfsr_clk
#define s(param, src_bits, pmcreg, dst_bits)
#define m(clkreg, src_bits, pmcreg, dst_bits)