Commit cfbab8fb authored by Remi Pommarel's avatar Remi Pommarel Committed by Michael Turquette

clk: bcm2835: Add PWM clock support

Register the pwm clock for bcm2835.
Signed-off-by: default avatarRemi Pommarel <repk@triplefau.lt>
Reviewed-by: default avatarEric Anholt <eric@anholt.net>
Signed-off-by: default avatarMichael Turquette <mturquette@baylibre.com>
parent 6d18b8ad
...@@ -807,6 +807,16 @@ static const struct bcm2835_clock_data bcm2835_clock_emmc_data = { ...@@ -807,6 +807,16 @@ static const struct bcm2835_clock_data bcm2835_clock_emmc_data = {
.frac_bits = 8, .frac_bits = 8,
}; };
static const struct bcm2835_clock_data bcm2835_clock_pwm_data = {
.name = "pwm",
.num_mux_parents = ARRAY_SIZE(bcm2835_clock_per_parents),
.parents = bcm2835_clock_per_parents,
.ctl_reg = CM_PWMCTL,
.div_reg = CM_PWMDIV,
.int_bits = 12,
.frac_bits = 12,
};
struct bcm2835_pll { struct bcm2835_pll {
struct clk_hw hw; struct clk_hw hw;
struct bcm2835_cprman *cprman; struct bcm2835_cprman *cprman;
...@@ -1584,6 +1594,9 @@ static int bcm2835_clk_probe(struct platform_device *pdev) ...@@ -1584,6 +1594,9 @@ static int bcm2835_clk_probe(struct platform_device *pdev)
cprman->regs + CM_PERIICTL, CM_GATE_BIT, cprman->regs + CM_PERIICTL, CM_GATE_BIT,
0, &cprman->regs_lock); 0, &cprman->regs_lock);
clks[BCM2835_CLOCK_PWM] =
bcm2835_register_clock(cprman, &bcm2835_clock_pwm_data);
return of_clk_add_provider(dev->of_node, of_clk_src_onecell_get, return of_clk_add_provider(dev->of_node, of_clk_src_onecell_get,
&cprman->onecell); &cprman->onecell);
} }
......
...@@ -43,5 +43,6 @@ ...@@ -43,5 +43,6 @@
#define BCM2835_CLOCK_TSENS 27 #define BCM2835_CLOCK_TSENS 27
#define BCM2835_CLOCK_EMMC 28 #define BCM2835_CLOCK_EMMC 28
#define BCM2835_CLOCK_PERI_IMAGE 29 #define BCM2835_CLOCK_PERI_IMAGE 29
#define BCM2835_CLOCK_PWM 30
#define BCM2835_CLOCK_COUNT 30 #define BCM2835_CLOCK_COUNT 31
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment