• Linus Walleij's avatar
    clk: versatile/icst: add Integrator core module clocks · 5e23c593
    Linus Walleij authored
    The Integrator/AP and Integrator/CP have special derivatives
    of the ICST525 control registers, where some bits have been
    hardwired but others are possible to adjust, resulting in a
    control register that makes it possible to set an even,
    desired megahertz value.
    
    The Integrator/AP and Integrator/CP have slightly different
    layout so we support them using different compatible
    strings.
    
    After adding these clocks, the Integrator-specific cpufreq
    driver can be switched over to use the generic operating
    point device tree cpufreq driver.
    
    Instead of simply writing a value to the oscillator control
    register we switch to the more elaborate method of providing
    a bitmask and use regmap_update_bits() to poke the right bits
    for the desired frequency, this is needed since these control
    registers sometimes control more than one clock.
    
    Cc: Russell King <linux@armlinux.org.uk>
    Signed-off-by: default avatarLinus Walleij <linus.walleij@linaro.org>
    Signed-off-by: default avatarStephen Boyd <sboyd@codeaurora.org>
    5e23c593
clk-icst.c 12 KB