Lines Matching +full:s5pv210 +full:- +full:dmc

1 // SPDX-License-Identifier: GPL-2.0-only
6 * CPU frequency scaling for S5PC110/S5PV210
194 * ch: DMC port number 0 or 1
207 pr_err("Cannot find DMC port\n"); in s5pv210_set_refresh()
238 ret = -EINVAL; in s5pv210_target()
242 old_freq = policy->cur; in s5pv210_target()
287 * APLL -> MPLL(for stable transition) -> APLL in s5pv210_target()
294 * SCLKA2M(200/1=200)->(200/4=50)Mhz in s5pv210_target()
309 * (200/4=50)->(667/4=166)Mhz in s5pv210_target()
329 /* 4. SCLKAPLL -> SCLKMPLL */ in s5pv210_target()
380 * 6-1. Set PMS values in s5pv210_target()
381 * 6-2. Wait until the PLL is locked in s5pv210_target()
395 * (667/4=166)->(200/4=50)Mhz in s5pv210_target()
409 * (200/4=50)->(200/1=200)Mhz in s5pv210_target()
503 policy->clk = clk_get(NULL, "armclk"); in s5pv210_cpu_init()
504 if (IS_ERR(policy->clk)) in s5pv210_cpu_init()
505 return PTR_ERR(policy->clk); in s5pv210_cpu_init()
519 if (policy->cpu != 0) { in s5pv210_cpu_init()
520 ret = -EINVAL; in s5pv210_cpu_init()
532 ret = -EINVAL; in s5pv210_cpu_init()
536 /* Find current refresh counter and frequency each DMC */ in s5pv210_cpu_init()
543 policy->suspend_freq = SLEEP_FREQ; in s5pv210_cpu_init()
550 clk_put(policy->clk); in s5pv210_cpu_init()
582 .name = "s5pv210",
593 struct device *dev = &pdev->dev; in s5pv210_cpufreq_probe()
599 * and DMC controller registers directly and remove static mappings in s5pv210_cpufreq_probe()
601 * S5PV210 multi-platform support and will be removed together with in s5pv210_cpufreq_probe()
602 * this whole driver as soon as S5PV210 gets migrated to use in s5pv210_cpufreq_probe()
603 * cpufreq-dt driver. in s5pv210_cpufreq_probe()
617 np = of_find_compatible_node(NULL, NULL, "samsung,s5pv210-clock"); in s5pv210_cpufreq_probe()
620 result = -ENODEV; in s5pv210_cpufreq_probe()
628 result = -EFAULT; in s5pv210_cpufreq_probe()
632 for_each_compatible_node(np, NULL, "samsung,s5pv210-dmc") { in s5pv210_cpufreq_probe()
633 id = of_alias_get_id(np, "dmc"); in s5pv210_cpufreq_probe()
635 dev_err(dev, "failed to get alias of dmc node '%pOFn'\n", np); in s5pv210_cpufreq_probe()
643 dev_err(dev, "failed to map dmc%d registers\n", id); in s5pv210_cpufreq_probe()
645 result = -EFAULT; in s5pv210_cpufreq_probe()
652 dev_err(dev, "failed to find dmc%d node\n", id); in s5pv210_cpufreq_probe()
653 result = -ENODEV; in s5pv210_cpufreq_probe()
683 .name = "s5pv210-cpufreq",