mirror of
https://github.com/torvalds/linux.git
synced 2026-02-04 15:28:49 +08:00
This commit implements the base CPU clocks for sunxi devices. It has
been tested using a slightly modified cpufreq driver from the
linux-sunxi 3.0 tree.
Additionally, document the new bindings introduced by this patch.
Idling:
/ # cat /sys/kernel/debug/clk/clk_summary
clock enable_cnt prepare_cnt rate
---------------------------------------------------------------------
osc32k 0 0 32768
osc24M_fixed 0 0 24000000
osc24M 0 0 24000000
apb1_mux 0 0 24000000
apb1 0 0 24000000
pll1 0 0 60000000
cpu 0 0 60000000
axi 0 0 60000000
ahb 0 0 60000000
apb0 0 0 30000000
dummy 0 0 0
After "yes >/dev/null &":
/ # cat /sys/kernel/debug/clk/clk_summary
clock enable_cnt prepare_cnt rate
---------------------------------------------------------------------
osc32k 0 0 32768
osc24M_fixed 0 0 24000000
osc24M 0 0 24000000
apb1_mux 0 0 24000000
apb1 0 0 24000000
pll1 0 0 1008000000
cpu 0 0 1008000000
axi 0 0 336000000
ahb 0 0 168000000
apb0 0 0 84000000
dummy 0 0 0
Signed-off-by: Emilio López <emilio@elopez.com.ar>
Acked-by: Maxime Ripard <maxime.ripard@free-electrons.com>
Signed-off-by: Mike Turquette <mturquette@linaro.org>
40 lines
1.3 KiB
Makefile
40 lines
1.3 KiB
Makefile
# common clock types
|
|
obj-$(CONFIG_HAVE_CLK) += clk-devres.o
|
|
obj-$(CONFIG_CLKDEV_LOOKUP) += clkdev.o
|
|
obj-$(CONFIG_COMMON_CLK) += clk.o
|
|
obj-$(CONFIG_COMMON_CLK) += clk-divider.o
|
|
obj-$(CONFIG_COMMON_CLK) += clk-fixed-factor.o
|
|
obj-$(CONFIG_COMMON_CLK) += clk-fixed-rate.o
|
|
obj-$(CONFIG_COMMON_CLK) += clk-gate.o
|
|
obj-$(CONFIG_COMMON_CLK) += clk-mux.o
|
|
obj-$(CONFIG_COMMON_CLK) += clk-composite.o
|
|
|
|
# SoCs specific
|
|
obj-$(CONFIG_ARCH_BCM2835) += clk-bcm2835.o
|
|
obj-$(CONFIG_ARCH_NOMADIK) += clk-nomadik.o
|
|
obj-$(CONFIG_ARCH_HIGHBANK) += clk-highbank.o
|
|
obj-$(CONFIG_ARCH_MXS) += mxs/
|
|
obj-$(CONFIG_ARCH_SOCFPGA) += socfpga/
|
|
obj-$(CONFIG_PLAT_SPEAR) += spear/
|
|
obj-$(CONFIG_ARCH_U300) += clk-u300.o
|
|
obj-$(CONFIG_COMMON_CLK_VERSATILE) += versatile/
|
|
obj-$(CONFIG_ARCH_PRIMA2) += clk-prima2.o
|
|
obj-$(CONFIG_PLAT_ORION) += mvebu/
|
|
ifeq ($(CONFIG_COMMON_CLK), y)
|
|
obj-$(CONFIG_ARCH_MMP) += mmp/
|
|
endif
|
|
obj-$(CONFIG_MACH_LOONGSON1) += clk-ls1x.o
|
|
obj-$(CONFIG_ARCH_SUNXI) += sunxi/
|
|
obj-$(CONFIG_ARCH_U8500) += ux500/
|
|
obj-$(CONFIG_ARCH_VT8500) += clk-vt8500.o
|
|
obj-$(CONFIG_ARCH_ZYNQ) += clk-zynq.o
|
|
obj-$(CONFIG_ARCH_TEGRA) += tegra/
|
|
|
|
obj-$(CONFIG_X86) += x86/
|
|
|
|
# Chip specific
|
|
obj-$(CONFIG_COMMON_CLK_AXI_CLKGEN) += clk-axi-clkgen.o
|
|
obj-$(CONFIG_COMMON_CLK_WM831X) += clk-wm831x.o
|
|
obj-$(CONFIG_COMMON_CLK_MAX77686) += clk-max77686.o
|
|
obj-$(CONFIG_CLK_TWL6040) += clk-twl6040.o
|