From: Michael Tretter <m.tretter@pengutronix.de> To: linux-arm-kernel@lists.infradead.org, linux-clk@vger.kernel.org, devicetree@vger.kernel.org Cc: rajanv@xilinx.com, tejasp@xilinx.com, dshah@xilinx.com, rvisaval@xilinx.com, michals@xilinx.com, kernel@pengutronix.de, robh+dt@kernel.org, mturquette@baylibre.com, sboyd@kernel.org, Michael Tretter <m.tretter@pengutronix.de> Subject: [PATCH 02/12] clk: divider: fix initialization with parent_hw Date: Mon, 16 Nov 2020 08:55:22 +0100 [thread overview] Message-ID: <20201116075532.4019252-3-m.tretter@pengutronix.de> (raw) In-Reply-To: <20201116075532.4019252-1-m.tretter@pengutronix.de> If a driver registers a divider clock with a parent_hw instead of the parent_name, the parent_hw is ignored and the clock does not have a parent. Fix this by initializing the parents the same way they are initialized for clock gates. Signed-off-by: Michael Tretter <m.tretter@pengutronix.de> --- drivers/clk/clk-divider.c | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/drivers/clk/clk-divider.c b/drivers/clk/clk-divider.c index 8de12cb0c43d..f32157cb4013 100644 --- a/drivers/clk/clk-divider.c +++ b/drivers/clk/clk-divider.c @@ -493,8 +493,13 @@ struct clk_hw *__clk_hw_register_divider(struct device *dev, else init.ops = &clk_divider_ops; init.flags = flags; - init.parent_names = (parent_name ? &parent_name: NULL); - init.num_parents = (parent_name ? 1 : 0); + init.parent_names = parent_name ? &parent_name : NULL; + init.parent_hws = parent_hw ? &parent_hw : NULL; + init.parent_data = parent_data; + if (parent_name || parent_hw || parent_data) + init.num_parents = 1; + else + init.num_parents = 0; /* struct clk_divider assignments */ div->reg = reg; -- 2.20.1
WARNING: multiple messages have this Message-ID (diff)
From: Michael Tretter <m.tretter@pengutronix.de> To: linux-arm-kernel@lists.infradead.org, linux-clk@vger.kernel.org, devicetree@vger.kernel.org Cc: dshah@xilinx.com, tejasp@xilinx.com, sboyd@kernel.org, mturquette@baylibre.com, Michael Tretter <m.tretter@pengutronix.de>, rajanv@xilinx.com, robh+dt@kernel.org, michals@xilinx.com, kernel@pengutronix.de, rvisaval@xilinx.com Subject: [PATCH 02/12] clk: divider: fix initialization with parent_hw Date: Mon, 16 Nov 2020 08:55:22 +0100 [thread overview] Message-ID: <20201116075532.4019252-3-m.tretter@pengutronix.de> (raw) In-Reply-To: <20201116075532.4019252-1-m.tretter@pengutronix.de> If a driver registers a divider clock with a parent_hw instead of the parent_name, the parent_hw is ignored and the clock does not have a parent. Fix this by initializing the parents the same way they are initialized for clock gates. Signed-off-by: Michael Tretter <m.tretter@pengutronix.de> --- drivers/clk/clk-divider.c | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/drivers/clk/clk-divider.c b/drivers/clk/clk-divider.c index 8de12cb0c43d..f32157cb4013 100644 --- a/drivers/clk/clk-divider.c +++ b/drivers/clk/clk-divider.c @@ -493,8 +493,13 @@ struct clk_hw *__clk_hw_register_divider(struct device *dev, else init.ops = &clk_divider_ops; init.flags = flags; - init.parent_names = (parent_name ? &parent_name: NULL); - init.num_parents = (parent_name ? 1 : 0); + init.parent_names = parent_name ? &parent_name : NULL; + init.parent_hws = parent_hw ? &parent_hw : NULL; + init.parent_data = parent_data; + if (parent_name || parent_hw || parent_data) + init.num_parents = 1; + else + init.num_parents = 0; /* struct clk_divider assignments */ div->reg = reg; -- 2.20.1 _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
next prev parent reply other threads:[~2020-11-16 8:06 UTC|newest] Thread overview: 68+ messages / expand[flat|nested] mbox.gz Atom feed top 2020-11-16 7:55 [PATCH 00/12] soc: xilinx: vcu: Convert driver to clock provider Michael Tretter 2020-11-16 7:55 ` Michael Tretter 2020-11-16 7:55 ` [PATCH 01/12] ARM: dts: define indexes for output clocks Michael Tretter 2020-11-16 7:55 ` Michael Tretter 2020-12-02 14:33 ` Michal Simek 2020-12-02 14:33 ` Michal Simek 2020-12-07 19:21 ` Rob Herring 2020-12-07 19:21 ` Rob Herring 2020-12-13 5:44 ` Stephen Boyd 2020-12-13 5:44 ` Stephen Boyd 2020-11-16 7:55 ` Michael Tretter [this message] 2020-11-16 7:55 ` [PATCH 02/12] clk: divider: fix initialization with parent_hw Michael Tretter 2020-12-02 14:28 ` Michal Simek 2020-12-02 14:28 ` Michal Simek 2020-12-13 5:42 ` Stephen Boyd 2020-12-13 5:42 ` Stephen Boyd 2020-11-16 7:55 ` [PATCH 03/12] soc: xilinx: vcu: drop coreclk from struct xlnx_vcu Michael Tretter 2020-11-16 7:55 ` Michael Tretter 2020-11-16 7:55 ` [PATCH 04/12] soc: xilinx: vcu: add helper to wait for PLL locked Michael Tretter 2020-11-16 7:55 ` Michael Tretter 2020-11-16 7:55 ` [PATCH 05/12] soc: xilinx: vcu: add helpers for configuring PLL Michael Tretter 2020-11-16 7:55 ` Michael Tretter 2020-11-16 7:55 ` [PATCH 06/12] soc: xilinx: vcu: implement PLL disable Michael Tretter 2020-11-16 7:55 ` Michael Tretter 2020-11-16 7:55 ` [PATCH 07/12] soc: xilinx: vcu: register PLL as fixed rate clock Michael Tretter 2020-11-16 7:55 ` Michael Tretter 2020-12-02 14:41 ` Michal Simek 2020-12-02 14:41 ` Michal Simek 2020-11-16 7:55 ` [PATCH 08/12] soc: xilinx: vcu: implement clock provider for output clocks Michael Tretter 2020-11-16 7:55 ` Michael Tretter 2020-12-02 14:49 ` Michal Simek 2020-12-02 14:49 ` Michal Simek 2020-12-13 5:55 ` Stephen Boyd 2020-12-13 5:55 ` Stephen Boyd 2020-12-15 11:38 ` Michael Tretter 2020-12-15 11:38 ` Michael Tretter 2020-12-16 1:09 ` Stephen Boyd 2020-12-16 1:09 ` Stephen Boyd 2020-12-21 9:18 ` Michael Tretter 2020-12-21 9:18 ` Michael Tretter 2020-11-16 7:55 ` [PATCH 09/12] soc: xilinx: vcu: make pll post divider explicit Michael Tretter 2020-11-16 7:55 ` Michael Tretter 2020-12-02 14:51 ` Michal Simek 2020-12-02 14:51 ` Michal Simek 2020-11-16 7:55 ` [PATCH 10/12] soc: xilinx: vcu: make the PLL configurable Michael Tretter 2020-11-16 7:55 ` Michael Tretter 2020-12-02 14:54 ` Michal Simek 2020-12-02 14:54 ` Michal Simek 2020-11-16 7:55 ` [PATCH 11/12] soc: xilinx: vcu: remove calculation of PLL configuration Michael Tretter 2020-11-16 7:55 ` Michael Tretter 2020-11-16 7:55 ` [PATCH 12/12] soc: xilinx: vcu: use bitfields for register definition Michael Tretter 2020-11-16 7:55 ` Michael Tretter 2020-12-13 5:47 ` Stephen Boyd 2020-12-13 5:47 ` Stephen Boyd 2020-12-03 7:46 ` [PATCH 00/12] soc: xilinx: vcu: Convert driver to clock provider Michal Simek 2020-12-03 7:46 ` Michal Simek 2020-12-03 9:00 ` Michael Tretter 2020-12-03 9:00 ` Michael Tretter 2020-12-03 9:14 ` Michal Simek 2020-12-03 9:14 ` Michal Simek 2020-12-13 5:50 ` Stephen Boyd 2020-12-13 5:50 ` Stephen Boyd 2020-12-15 11:56 ` Michael Tretter 2020-12-15 11:56 ` Michael Tretter 2020-12-16 2:37 ` Stephen Boyd 2020-12-16 2:37 ` Stephen Boyd 2020-12-21 9:19 ` Michael Tretter 2020-12-21 9:19 ` Michael Tretter
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=20201116075532.4019252-3-m.tretter@pengutronix.de \ --to=m.tretter@pengutronix.de \ --cc=devicetree@vger.kernel.org \ --cc=dshah@xilinx.com \ --cc=kernel@pengutronix.de \ --cc=linux-arm-kernel@lists.infradead.org \ --cc=linux-clk@vger.kernel.org \ --cc=michals@xilinx.com \ --cc=mturquette@baylibre.com \ --cc=rajanv@xilinx.com \ --cc=robh+dt@kernel.org \ --cc=rvisaval@xilinx.com \ --cc=sboyd@kernel.org \ --cc=tejasp@xilinx.com \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.