• Chao Xie's avatar
    clk: mmp: add clock type mix · ee81f4ee
    Chao Xie authored
    The clock type mix is a kind of clock combines "div" and "mux".
    This kind of clock can not allow to change div first then
    mux or change mux first or div.
    The reason is
    1. Some clock has frequency change bit. Each time want to change
       the frequency, there are some operations based on this bit, and
       these operations are time-cost.
       Seperating div and mux change will make the process longer, and
       waste more time.
    2. Seperting the div and mux may generate middle clock that the
       peripharals do not support. It may make the peripharals hang.
    
    There are three kinds of this type of clock in all SOCes.
    1. The clock has bit to trigger the frequency change.
    2. Same as #1, but the operations for the bit is different
    3. Do not have frequency change bit.
    
    So this type of clock has implemented the callbacks
    ->determine_rate
    ->set_rate_and_parent
    These callbacks can help to change the div and mux together.
    Signed-off-by: default avatarChao Xie <chao.xie@marvell.com>
    Acked-by: default avatarHaojian Zhuang <haojian.zhuang@gmail.com>
    Signed-off-by: default avatarMichael Turquette <mturquette@linaro.org>
    ee81f4ee
Name
Last commit
Last update
..
at91 Loading commit data...
bcm Loading commit data...
berlin Loading commit data...
hisilicon Loading commit data...
keystone Loading commit data...
mmp Loading commit data...
mvebu Loading commit data...
mxs Loading commit data...
pxa Loading commit data...
qcom Loading commit data...
rockchip Loading commit data...
samsung Loading commit data...
shmobile Loading commit data...
sirf Loading commit data...
socfpga Loading commit data...
spear Loading commit data...
st Loading commit data...
sunxi Loading commit data...
tegra Loading commit data...
ti Loading commit data...
ux500 Loading commit data...
versatile Loading commit data...
x86 Loading commit data...
zynq Loading commit data...
Kconfig Loading commit data...
Makefile Loading commit data...
clk-axi-clkgen.c Loading commit data...
clk-axm5516.c Loading commit data...
clk-bcm2835.c Loading commit data...
clk-clps711x.c Loading commit data...
clk-composite.c Loading commit data...
clk-conf.c Loading commit data...
clk-devres.c Loading commit data...
clk-divider.c Loading commit data...
clk-efm32gg.c Loading commit data...
clk-fixed-factor.c Loading commit data...
clk-fixed-rate.c Loading commit data...
clk-fractional-divider.c Loading commit data...
clk-gate.c Loading commit data...
clk-gpio-gate.c Loading commit data...
clk-highbank.c Loading commit data...
clk-ls1x.c Loading commit data...
clk-max-gen.c Loading commit data...
clk-max-gen.h Loading commit data...
clk-max77686.c Loading commit data...
clk-max77802.c Loading commit data...
clk-moxart.c Loading commit data...
clk-mux.c Loading commit data...
clk-nomadik.c Loading commit data...
clk-nspire.c Loading commit data...
clk-palmas.c Loading commit data...
clk-ppc-corenet.c Loading commit data...
clk-rk808.c Loading commit data...
clk-s2mps11.c Loading commit data...
clk-si5351.c Loading commit data...
clk-si5351.h Loading commit data...
clk-si570.c Loading commit data...
clk-twl6040.c Loading commit data...
clk-u300.c Loading commit data...
clk-vt8500.c Loading commit data...
clk-wm831x.c Loading commit data...
clk-xgene.c Loading commit data...
clk.c Loading commit data...
clk.h Loading commit data...
clkdev.c Loading commit data...