Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 794c1539 authored by Arnd Bergmann's avatar Arnd Bergmann
Browse files

Merge tag 'mtu-clk-for-arm-soc' of...

Merge tag 'mtu-clk-for-arm-soc' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-stericsson into next/multiplatform

From Linus Walleij <linus.walleij@linaro.org>:

This tag contains two MTU patches based on top of the ux500 sparse IRQ
commit to avoid merge clashes.

* tag 'mtu-clk-for-arm-soc' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-stericsson

:
  clocksource/mtu-nomadik: use apb_pclk
  clk: ux500: Register mtu apb_pclocks

Signed-off-by: default avatarArnd Bergmann <arnd@arndb.de>
parents f75ed2d3 16defa66
Loading
Loading
Loading
Loading
+3 −6
Original line number Diff line number Diff line
@@ -160,12 +160,6 @@ void u8500_clk_init(void)
	clk = clk_reg_prcmu_gate("uiccclk", NULL, PRCMU_UICCCLK, CLK_IS_ROOT);
	clk_register_clkdev(clk, NULL, "uicc");

	/*
	 * FIXME: The MTU clocks might need some kind of "parent muxed join"
	 * and these have no K-clocks. For now, we ignore the missing
	 * connection to the corresponding P-clocks, p6_mtu0_clk and
	 * p6_mtu1_clk. Instead timclk is used which is the valid parent.
	 */
	clk = clk_reg_prcmu_gate("timclk", NULL, PRCMU_TIMCLK, CLK_IS_ROOT);
	clk_register_clkdev(clk, NULL, "mtu0");
	clk_register_clkdev(clk, NULL, "mtu1");
@@ -379,8 +373,11 @@ void u8500_clk_init(void)

	clk = clk_reg_prcc_pclk("p6_pclk6", "per6clk", U8500_CLKRST6_BASE,
				BIT(6), 0);
	clk_register_clkdev(clk, "apb_pclk", "mtu0");

	clk = clk_reg_prcc_pclk("p6_pclk7", "per6clk", U8500_CLKRST6_BASE,
				BIT(7), 0);
	clk_register_clkdev(clk, "apb_pclk", "mtu1");

	/* PRCC K-clocks
	 *
+7 −1
Original line number Diff line number Diff line
@@ -177,9 +177,15 @@ void nmdk_clksrc_reset(void)
void __init nmdk_timer_init(void __iomem *base, int irq)
{
	unsigned long rate;
	struct clk *clk0;
	struct clk *clk0, *pclk0;

	mtu_base = base;

	pclk0 = clk_get_sys("mtu0", "apb_pclk");
	BUG_ON(IS_ERR(pclk0));
	BUG_ON(clk_prepare(pclk0) < 0);
	BUG_ON(clk_enable(pclk0) < 0);

	clk0 = clk_get_sys("mtu0", NULL);
	BUG_ON(IS_ERR(clk0));
	BUG_ON(clk_prepare(clk0) < 0);