Lines Matching refs:pxa_unit

179 static void mmp2_main_clk_init(struct mmp2_clk_unit *pxa_unit)  in mmp2_main_clk_init()  argument
182 struct mmp_clk_unit *unit = &pxa_unit->unit; in mmp2_main_clk_init()
187 if (pxa_unit->model == CLK_MODEL_MMP3) { in mmp2_main_clk_init()
189 pxa_unit->mpmu_base, in mmp2_main_clk_init()
193 pxa_unit->mpmu_base, in mmp2_main_clk_init()
202 pxa_unit->mpmu_base + MPMU_UART_PLL, in mmp2_main_clk_init()
209 pxa_unit->mpmu_base + MPMU_I2S0_PLL, in mmp2_main_clk_init()
214 pxa_unit->mpmu_base + MPMU_I2S1_PLL, in mmp2_main_clk_init()
218 mmp_register_gate_clks(unit, mpmu_gate_clks, pxa_unit->mpmu_base, in mmp2_main_clk_init()
283 static void mmp2_apb_periph_clk_init(struct mmp2_clk_unit *pxa_unit) in mmp2_apb_periph_clk_init() argument
285 struct mmp_clk_unit *unit = &pxa_unit->unit; in mmp2_apb_periph_clk_init()
287 mmp_register_mux_clks(unit, apbc_mux_clks, pxa_unit->apbc_base, in mmp2_apb_periph_clk_init()
290 mmp_register_gate_clks(unit, apbc_gate_clks, pxa_unit->apbc_base, in mmp2_apb_periph_clk_init()
293 if (pxa_unit->model == CLK_MODEL_MMP3) { in mmp2_apb_periph_clk_init()
294 mmp_register_gate_clks(unit, mmp3_apbc_gate_clks, pxa_unit->apbc_base, in mmp2_apb_periph_clk_init()
395 static void mmp2_axi_periph_clk_init(struct mmp2_clk_unit *pxa_unit) in mmp2_axi_periph_clk_init() argument
398 struct mmp_clk_unit *unit = &pxa_unit->unit; in mmp2_axi_periph_clk_init()
400 sdh_mix_config.reg_info.reg_clk_ctrl = pxa_unit->apmu_base + APMU_SDH0; in mmp2_axi_periph_clk_init()
406 ccic0_mix_config.reg_info.reg_clk_ctrl = pxa_unit->apmu_base + APMU_CCIC0; in mmp2_axi_periph_clk_init()
413 ccic1_mix_config.reg_info.reg_clk_ctrl = pxa_unit->apmu_base + APMU_CCIC1; in mmp2_axi_periph_clk_init()
420 mmp_register_mux_clks(unit, apmu_mux_clks, pxa_unit->apmu_base, in mmp2_axi_periph_clk_init()
423 mmp_register_div_clks(unit, apmu_div_clks, pxa_unit->apmu_base, in mmp2_axi_periph_clk_init()
426 mmp_register_gate_clks(unit, apmu_gate_clks, pxa_unit->apmu_base, in mmp2_axi_periph_clk_init()
429 if (pxa_unit->model == CLK_MODEL_MMP3) { in mmp2_axi_periph_clk_init()
430 mmp_register_mux_clks(unit, mmp3_apmu_mux_clks, pxa_unit->apmu_base, in mmp2_axi_periph_clk_init()
433 mmp_register_div_clks(unit, mmp3_apmu_div_clks, pxa_unit->apmu_base, in mmp2_axi_periph_clk_init()
436 mmp_register_gate_clks(unit, mmp3_apmu_gate_clks, pxa_unit->apmu_base, in mmp2_axi_periph_clk_init()
442 pxa_unit->apmu_base + APMU_GPU, in mmp2_axi_periph_clk_init()
449 pxa_unit->apmu_base + APMU_GPU, in mmp2_axi_periph_clk_init()
453 mmp_register_gate_clks(unit, mmp2_apmu_gate_clks, pxa_unit->apmu_base, in mmp2_axi_periph_clk_init()
459 struct mmp2_clk_unit *pxa_unit) in mmp2_clk_reset_init() argument
471 cells[i].reg = pxa_unit->apbc_base + apbc_gate_clks[i].offset; in mmp2_clk_reset_init()
481 struct mmp2_clk_unit *pxa_unit) in mmp2_pm_domain_init() argument
483 if (pxa_unit->model == CLK_MODEL_MMP3) { in mmp2_pm_domain_init()
484 pxa_unit->pm_domains[MMP2_POWER_DOMAIN_GPU] in mmp2_pm_domain_init()
486 pxa_unit->apmu_base + APMU_GPU, in mmp2_pm_domain_init()
489 pxa_unit->pm_domains[MMP2_POWER_DOMAIN_GPU] in mmp2_pm_domain_init()
491 pxa_unit->apmu_base + APMU_GPU, in mmp2_pm_domain_init()
495 pxa_unit->pd_data.num_domains++; in mmp2_pm_domain_init()
497 pxa_unit->pm_domains[MMP2_POWER_DOMAIN_AUDIO] in mmp2_pm_domain_init()
499 pxa_unit->apmu_base + APMU_AUDIO, in mmp2_pm_domain_init()
501 pxa_unit->pd_data.num_domains++; in mmp2_pm_domain_init()
503 if (pxa_unit->model == CLK_MODEL_MMP3) { in mmp2_pm_domain_init()
504 pxa_unit->pm_domains[MMP3_POWER_DOMAIN_CAMERA] in mmp2_pm_domain_init()
506 pxa_unit->apmu_base + APMU_CAMERA, in mmp2_pm_domain_init()
508 pxa_unit->pd_data.num_domains++; in mmp2_pm_domain_init()
511 pxa_unit->pd_data.domains = pxa_unit->pm_domains; in mmp2_pm_domain_init()
512 of_genpd_add_provider_onecell(np, &pxa_unit->pd_data); in mmp2_pm_domain_init()
517 struct mmp2_clk_unit *pxa_unit; in mmp2_clk_init() local
519 pxa_unit = kzalloc(sizeof(*pxa_unit), GFP_KERNEL); in mmp2_clk_init()
520 if (!pxa_unit) in mmp2_clk_init()
524 pxa_unit->model = CLK_MODEL_MMP3; in mmp2_clk_init()
526 pxa_unit->model = CLK_MODEL_MMP2; in mmp2_clk_init()
528 pxa_unit->mpmu_base = of_iomap(np, 0); in mmp2_clk_init()
529 if (!pxa_unit->mpmu_base) { in mmp2_clk_init()
534 pxa_unit->apmu_base = of_iomap(np, 1); in mmp2_clk_init()
535 if (!pxa_unit->apmu_base) { in mmp2_clk_init()
540 pxa_unit->apbc_base = of_iomap(np, 2); in mmp2_clk_init()
541 if (!pxa_unit->apbc_base) { in mmp2_clk_init()
546 mmp2_pm_domain_init(np, pxa_unit); in mmp2_clk_init()
548 mmp_clk_init(np, &pxa_unit->unit, NR_CLKS); in mmp2_clk_init()
550 mmp2_main_clk_init(pxa_unit); in mmp2_clk_init()
552 mmp2_apb_periph_clk_init(pxa_unit); in mmp2_clk_init()
554 mmp2_axi_periph_clk_init(pxa_unit); in mmp2_clk_init()
556 mmp2_clk_reset_init(np, pxa_unit); in mmp2_clk_init()
561 iounmap(pxa_unit->apmu_base); in mmp2_clk_init()
563 iounmap(pxa_unit->mpmu_base); in mmp2_clk_init()
565 kfree(pxa_unit); in mmp2_clk_init()