On Mon, May 04, 2015 at 12:37:21PM -0400, Rhyland Klein wrote: [...] > diff --git a/drivers/clk/tegra/clk-tegra114.c b/drivers/clk/tegra/clk-tegra114.c > index 8237d16b4075..0d67efb3dd6a 100644 > --- a/drivers/clk/tegra/clk-tegra114.c > +++ b/drivers/clk/tegra/clk-tegra114.c > @@ -935,6 +935,10 @@ static u32 mux_pllm_pllc2_c_c3_pllp_plla_idx[] = { > [0] = 0, [1] = 1, [2] = 2, [3] = 3, [4] = 4, [5] = 6, > }; > > +static struct tegra_audio_clk_info tegra114_audio_plls[] = { > + { "pll_a", &pll_a_params, tegra_clk_pll_a, "pll_p_out1" }, > +}; > + > static struct clk **clks; > > static unsigned long osc_freq; > @@ -1483,7 +1487,8 @@ static void __init tegra114_clock_init(struct device_node *np) > tegra114_fixed_clk_init(clk_base); > tegra114_pll_init(clk_base, pmc_base); > tegra114_periph_clk_init(clk_base, pmc_base); > - tegra_audio_clk_init(clk_base, pmc_base, tegra114_clks, &pll_a_params); > + tegra_audio_clk_init(clk_base, pmc_base, tegra114_clks, > + &tegra114_audio_plls, 1); This throws a build warning, it should be tegra114_audio_plls (without the ampersand). Also I think you should use ARRAY_SIZE() instead of hard-coding the number of entries here. > tegra_pmc_clk_init(pmc_base, tegra114_clks); > tegra_super_clk_gen4_init(clk_base, pmc_base, tegra114_clks, > &pll_x_params); > diff --git a/drivers/clk/tegra/clk-tegra124.c b/drivers/clk/tegra/clk-tegra124.c > index 11f857cd5f6a..169e236f3627 100644 > --- a/drivers/clk/tegra/clk-tegra124.c > +++ b/drivers/clk/tegra/clk-tegra124.c > @@ -1413,6 +1413,10 @@ static struct tegra_clk_init_table tegra132_init_table[] __initdata = { > {TEGRA124_CLK_CLK_MAX, TEGRA124_CLK_CLK_MAX, 0, 0}, > }; > > +static struct tegra_audio_clk_info tegra124_audio_plls[] = { > + { "pll_a", &pll_a_params, tegra_clk_pll_a, "pll_p_out1" }, > +}; > + > /** > * tegra124_clock_apply_init_table - initialize clocks on Tegra124 SoCs > * > @@ -1489,7 +1493,8 @@ static void __init tegra124_132_clock_init_pre(struct device_node *np) > tegra_fixed_clk_init(tegra124_clks); > tegra124_pll_init(clk_base, pmc_base); > tegra124_periph_clk_init(clk_base, pmc_base); > - tegra_audio_clk_init(clk_base, pmc_base, tegra124_clks, &pll_a_params); > + tegra_audio_clk_init(clk_base, pmc_base, tegra124_clks, > + tegra124_audio_plls, 1); ARRAY_SIZE() here as well. The ampersand isn't there in this case... > tegra_pmc_clk_init(pmc_base, tegra124_clks); > > /* For Tegra124 & Tegra132, PLLD is the only source for DSIA & DSIB */ > diff --git a/drivers/clk/tegra/clk-tegra30.c b/drivers/clk/tegra/clk-tegra30.c > index 4b26509fc218..3198c7b7946c 100644 > --- a/drivers/clk/tegra/clk-tegra30.c > +++ b/drivers/clk/tegra/clk-tegra30.c > @@ -1406,6 +1406,10 @@ static const struct of_device_id pmc_match[] __initconst = { > {}, > }; > > +static struct tegra_audio_clk_info tegra30_audio_plls[] = { > + { "pll_a", &pll_a_params, tegra_clk_pll_a, "pll_p_out1" }, > +}; > + > static void __init tegra30_clock_init(struct device_node *np) > { > struct device_node *node; > @@ -1443,7 +1447,8 @@ static void __init tegra30_clock_init(struct device_node *np) > tegra30_pll_init(); > tegra30_super_clk_init(); > tegra30_periph_clk_init(); > - tegra_audio_clk_init(clk_base, pmc_base, tegra30_clks, &pll_a_params); > + tegra_audio_clk_init(clk_base, pmc_base, tegra30_clks, > + &tegra30_audio_plls, 1); Same comments as for Tegra114. > diff --git a/drivers/clk/tegra/clk.h b/drivers/clk/tegra/clk.h [...] > @@ -607,7 +622,8 @@ void tegra_register_devclks(struct tegra_devclk *dev_clks, int num); > > void tegra_audio_clk_init(void __iomem *clk_base, > void __iomem *pmc_base, struct tegra_clk *tegra_clks, > - struct tegra_clk_pll_params *pll_params); > + struct tegra_audio_clk_info *audio_info, > + int num_plls); Oh, and make num_plls unsigned int, please. Thierry
Attachment:
pgplpuX2WqSMf.pgp
Description: PGP signature