* [PATCH v2 0/4] ARM: imx31: clock initialization fixes
@ 2016-09-26 0:03 Vladimir Zapolskiy
2016-09-26 0:03 ` [PATCH v2 1/4] ARM: dts: imx31: fix clock control module interrupts description Vladimir Zapolskiy
` (5 more replies)
0 siblings, 6 replies; 12+ messages in thread
From: Vladimir Zapolskiy @ 2016-09-26 0:03 UTC (permalink / raw)
To: linux-arm-kernel
The change is tested on qemu kzm target and mx31lite board, while both
targets don't have DTS in upstream, I had to write simple DTS files for
them, because the proposed change is for i.MX31 targets with OF support.
i.MX31/OF/clock initialization seems to be broken currently, if
the series is not applied I can not get a working clock source during
early boot stage on a board with DTB supplied.
Changes from v1 to v2, thanks to Uwe and Stephen for review:
* added one more new fix in imx31.dtsi which moves CCM device node
to AIPS2 bus,
* included to the series a fix of CCM interrupts in imx31.dtsi,
the change was sent as a separate patch, the change is included
to avoid a patch application dependency,
* as suggested by Uwe reworded one of the commits removing "stack
corruption" mentioning, the overwritten value is passed in a register,
* as suggested by Uwe squashed clk-imx31.c and imx31-dt.c changes
to avoid a runtime problem if only one of two patches are applied
Vladimir Zapolskiy (4):
ARM: dts: imx31: fix clock control module interrupts description
ARM: dts: imx31: move CCM device node to AIPS2 bus devices
clk: imx31: fix rewritten input argument of mx31_clocks_init()
ARM: clk: imx31: properly init clocks for machines with DT
.../devicetree/bindings/clock/imx31-clock.txt | 2 +-
arch/arm/boot/dts/imx31.dtsi | 14 +++---
arch/arm/mach-imx/common.h | 1 -
arch/arm/mach-imx/imx31-dt.c | 6 ---
drivers/clk/imx/clk-imx31.c | 52 +++++++++++-----------
5 files changed, 34 insertions(+), 41 deletions(-)
--
2.8.1
^ permalink raw reply [flat|nested] 12+ messages in thread
* [PATCH v2 1/4] ARM: dts: imx31: fix clock control module interrupts description
2016-09-26 0:03 [PATCH v2 0/4] ARM: imx31: clock initialization fixes Vladimir Zapolskiy
@ 2016-09-26 0:03 ` Vladimir Zapolskiy
2016-09-26 0:03 ` [PATCH v2 2/4] ARM: dts: imx31: move CCM device node to AIPS2 bus devices Vladimir Zapolskiy
` (4 subsequent siblings)
5 siblings, 0 replies; 12+ messages in thread
From: Vladimir Zapolskiy @ 2016-09-26 0:03 UTC (permalink / raw)
To: linux-arm-kernel
The type of AVIC interrupt controller found on i.MX31 is one-cell,
namely 31 for CCM DVFS and 53 for CCM, however for clock control
module its interrupts are specified as 3-cells, fix it.
Fixes: ef0e4a606fb6 ("ARM: mx31: Replace clk_register_clkdev with clock DT lookup")
Acked-by: Rob Herring <robh@kernel.org>
Signed-off-by: Vladimir Zapolskiy <vz@mleia.com>
---
Changes from v1 to v2:
* added Rob's Acked-by tag.
Documentation/devicetree/bindings/clock/imx31-clock.txt | 2 +-
arch/arm/boot/dts/imx31.dtsi | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/Documentation/devicetree/bindings/clock/imx31-clock.txt b/Documentation/devicetree/bindings/clock/imx31-clock.txt
index 19df842..8163d56 100644
--- a/Documentation/devicetree/bindings/clock/imx31-clock.txt
+++ b/Documentation/devicetree/bindings/clock/imx31-clock.txt
@@ -77,7 +77,7 @@ Examples:
clks: ccm at 53f80000{
compatible = "fsl,imx31-ccm";
reg = <0x53f80000 0x4000>;
- interrupts = <0 31 0x04 0 53 0x04>;
+ interrupts = <31>, <53>;
#clock-cells = <1>;
};
diff --git a/arch/arm/boot/dts/imx31.dtsi b/arch/arm/boot/dts/imx31.dtsi
index 1ce7ae9..3e0893e 100644
--- a/arch/arm/boot/dts/imx31.dtsi
+++ b/arch/arm/boot/dts/imx31.dtsi
@@ -122,7 +122,7 @@
clks: ccm at 53f80000{
compatible = "fsl,imx31-ccm";
reg = <0x53f80000 0x4000>;
- interrupts = <0 31 0x04 0 53 0x04>;
+ interrupts = <31>, <53>;
#clock-cells = <1>;
};
};
--
2.8.1
^ permalink raw reply related [flat|nested] 12+ messages in thread
* [PATCH v2 2/4] ARM: dts: imx31: move CCM device node to AIPS2 bus devices
2016-09-26 0:03 [PATCH v2 0/4] ARM: imx31: clock initialization fixes Vladimir Zapolskiy
2016-09-26 0:03 ` [PATCH v2 1/4] ARM: dts: imx31: fix clock control module interrupts description Vladimir Zapolskiy
@ 2016-09-26 0:03 ` Vladimir Zapolskiy
2016-09-26 6:36 ` Uwe Kleine-König
2016-09-26 0:03 ` [PATCH v2 3/4] clk: imx31: fix rewritten input argument of mx31_clocks_init() Vladimir Zapolskiy
` (3 subsequent siblings)
5 siblings, 1 reply; 12+ messages in thread
From: Vladimir Zapolskiy @ 2016-09-26 0:03 UTC (permalink / raw)
To: linux-arm-kernel
i.MX31 Clock Control Module controller is found on AIPS2 bus, move it
there from SPBA bus to avoid a conflict of device IO space mismatch.
Fixes: ef0e4a606fb6 ("ARM: mx31: Replace clk_register_clkdev with clock DT lookup")
Signed-off-by: Vladimir Zapolskiy <vz@mleia.com>
---
Changes from v1 to v2:
* new change in the series
arch/arm/boot/dts/imx31.dtsi | 14 +++++++-------
1 file changed, 7 insertions(+), 7 deletions(-)
diff --git a/arch/arm/boot/dts/imx31.dtsi b/arch/arm/boot/dts/imx31.dtsi
index 3e0893e..8d4c0e3 100644
--- a/arch/arm/boot/dts/imx31.dtsi
+++ b/arch/arm/boot/dts/imx31.dtsi
@@ -118,13 +118,6 @@
interrupts = <19>;
clocks = <&clks 25>;
};
-
- clks: ccm at 53f80000{
- compatible = "fsl,imx31-ccm";
- reg = <0x53f80000 0x4000>;
- interrupts = <31>, <53>;
- #clock-cells = <1>;
- };
};
aips at 53f00000 { /* AIPS2 */
@@ -134,6 +127,13 @@
reg = <0x53f00000 0x100000>;
ranges;
+ clks: ccm at 53f80000{
+ compatible = "fsl,imx31-ccm";
+ reg = <0x53f80000 0x4000>;
+ interrupts = <31>, <53>;
+ #clock-cells = <1>;
+ };
+
gpt: timer at 53f90000 {
compatible = "fsl,imx31-gpt";
reg = <0x53f90000 0x4000>;
--
2.8.1
^ permalink raw reply related [flat|nested] 12+ messages in thread
* [PATCH v2 3/4] clk: imx31: fix rewritten input argument of mx31_clocks_init()
2016-09-26 0:03 [PATCH v2 0/4] ARM: imx31: clock initialization fixes Vladimir Zapolskiy
2016-09-26 0:03 ` [PATCH v2 1/4] ARM: dts: imx31: fix clock control module interrupts description Vladimir Zapolskiy
2016-09-26 0:03 ` [PATCH v2 2/4] ARM: dts: imx31: move CCM device node to AIPS2 bus devices Vladimir Zapolskiy
@ 2016-09-26 0:03 ` Vladimir Zapolskiy
2016-09-26 6:23 ` Uwe Kleine-König
2016-10-25 20:36 ` Stephen Boyd
2016-09-26 0:03 ` [PATCH v2 4/4] ARM: clk: imx31: properly init clocks for machines with DT Vladimir Zapolskiy
` (2 subsequent siblings)
5 siblings, 2 replies; 12+ messages in thread
From: Vladimir Zapolskiy @ 2016-09-26 0:03 UTC (permalink / raw)
To: linux-arm-kernel
Function mx31_clocks_init() is called during clock intialization on
legacy boards with reference clock frequency passed as its input
argument, this can be verified by examination of the function
declaration found in arch/arm/mach-imx/common.h and actual function
users which include that header file.
Inside CCF driver the function ignores its input argument, by chance
the used value in the function body is the same as input arguments on
side of all callers.
Fixes: d9388c843237 ("clk: imx31: Do not call mxc_timer_init twice when booting with DT")
Signed-off-by: Vladimir Zapolskiy <vz@mleia.com>
---
Changes from v1 to v2:
* reworded commit message, thanks to Uwe for review
drivers/clk/imx/clk-imx31.c | 4 +---
1 file changed, 1 insertion(+), 3 deletions(-)
diff --git a/drivers/clk/imx/clk-imx31.c b/drivers/clk/imx/clk-imx31.c
index 6a96414..6a49ba2 100644
--- a/drivers/clk/imx/clk-imx31.c
+++ b/drivers/clk/imx/clk-imx31.c
@@ -157,10 +157,8 @@ static void __init _mx31_clocks_init(unsigned long fref)
}
}
-int __init mx31_clocks_init(void)
+int __init mx31_clocks_init(unsigned long fref)
{
- u32 fref = 26000000; /* default */
-
_mx31_clocks_init(fref);
clk_register_clkdev(clk[gpt_gate], "per", "imx-gpt.0");
--
2.8.1
^ permalink raw reply related [flat|nested] 12+ messages in thread
* [PATCH v2 4/4] ARM: clk: imx31: properly init clocks for machines with DT
2016-09-26 0:03 [PATCH v2 0/4] ARM: imx31: clock initialization fixes Vladimir Zapolskiy
` (2 preceding siblings ...)
2016-09-26 0:03 ` [PATCH v2 3/4] clk: imx31: fix rewritten input argument of mx31_clocks_init() Vladimir Zapolskiy
@ 2016-09-26 0:03 ` Vladimir Zapolskiy
2016-10-25 20:37 ` Stephen Boyd
2016-10-23 12:28 ` [PATCH v2 0/4] ARM: imx31: clock initialization fixes Shawn Guo
2016-11-01 8:50 ` Shawn Guo
5 siblings, 1 reply; 12+ messages in thread
From: Vladimir Zapolskiy @ 2016-09-26 0:03 UTC (permalink / raw)
To: linux-arm-kernel
Clock initialization for i.MX31 powered machines with DT support
should be done by a call of an init function registered with
CLK_OF_DECLARE() in common clock framework.
The change converts exported mx31_clocks_init_dt() into a static
initialization function registered by CLK_OF_DECLARE().
Signed-off-by: Vladimir Zapolskiy <vz@mleia.com>
---
Changes from v1 to v2:
* this change is a squashed change of arch/arm and clk changes,
if only one of two changes is applied there is a compilation
time or runtime issue.
arch/arm/mach-imx/common.h | 1 -
arch/arm/mach-imx/imx31-dt.c | 6 ------
drivers/clk/imx/clk-imx31.c | 50 +++++++++++++++++++++++---------------------
3 files changed, 26 insertions(+), 31 deletions(-)
diff --git a/arch/arm/mach-imx/common.h b/arch/arm/mach-imx/common.h
index a8f4693..e97d8cb 100644
--- a/arch/arm/mach-imx/common.h
+++ b/arch/arm/mach-imx/common.h
@@ -48,7 +48,6 @@ int mx21_clocks_init(unsigned long lref, unsigned long fref);
int mx27_clocks_init(unsigned long fref);
int mx31_clocks_init(unsigned long fref);
int mx35_clocks_init(void);
-int mx31_clocks_init_dt(void);
struct platform_device *mxc_register_gpio(char *name, int id,
resource_size_t iobase, resource_size_t iosize, int irq, int irq_high);
void mxc_set_cpu_type(unsigned int type);
diff --git a/arch/arm/mach-imx/imx31-dt.c b/arch/arm/mach-imx/imx31-dt.c
index 62e6b4f..668d74b 100644
--- a/arch/arm/mach-imx/imx31-dt.c
+++ b/arch/arm/mach-imx/imx31-dt.c
@@ -23,11 +23,6 @@ static const char * const imx31_dt_board_compat[] __initconst = {
NULL
};
-static void __init imx31_dt_timer_init(void)
-{
- mx31_clocks_init_dt();
-}
-
/* FIXME: replace with DT binding */
static const struct resource imx31_rnga_res[] __initconst = {
DEFINE_RES_MEM(MX31_RNGA_BASE_ADDR, SZ_16K),
@@ -43,7 +38,6 @@ DT_MACHINE_START(IMX31_DT, "Freescale i.MX31 (Device Tree Support)")
.map_io = mx31_map_io,
.init_early = imx31_init_early,
.init_irq = mx31_init_irq,
- .init_time = imx31_dt_timer_init,
.init_machine = imx31_dt_mach_init,
.dt_compat = imx31_dt_board_compat,
MACHINE_END
diff --git a/drivers/clk/imx/clk-imx31.c b/drivers/clk/imx/clk-imx31.c
index 6a49ba2..cbce308 100644
--- a/drivers/clk/imx/clk-imx31.c
+++ b/drivers/clk/imx/clk-imx31.c
@@ -21,6 +21,7 @@
#include <linux/io.h>
#include <linux/err.h>
#include <linux/of.h>
+#include <linux/of_address.h>
#include <soc/imx/revision.h>
#include <soc/imx/timer.h>
#include <asm/irq.h>
@@ -72,14 +73,8 @@ static struct clk ** const uart_clks[] __initconst = {
NULL
};
-static void __init _mx31_clocks_init(unsigned long fref)
+static void __init _mx31_clocks_init(void __iomem *base, unsigned long fref)
{
- void __iomem *base;
- struct device_node *np;
-
- base = ioremap(MX31_CCM_BASE_ADDR, SZ_4K);
- BUG_ON(!base);
-
clk[dummy] = imx_clk_fixed("dummy", 0);
clk[ckih] = imx_clk_fixed("ckih", fref);
clk[ckil] = imx_clk_fixed("ckil", 32768);
@@ -147,19 +142,17 @@ static void __init _mx31_clocks_init(unsigned long fref)
clk_prepare_enable(clk[iim_gate]);
mx31_revision();
clk_disable_unprepare(clk[iim_gate]);
-
- np = of_find_compatible_node(NULL, NULL, "fsl,imx31-ccm");
-
- if (np) {
- clk_data.clks = clk;
- clk_data.clk_num = ARRAY_SIZE(clk);
- of_clk_add_provider(np, of_clk_src_onecell_get, &clk_data);
- }
}
int __init mx31_clocks_init(unsigned long fref)
{
- _mx31_clocks_init(fref);
+ void __iomem *base;
+
+ base = ioremap(MX31_CCM_BASE_ADDR, SZ_4K);
+ if (!base)
+ panic("%s: failed to map registers\n", __func__);
+
+ _mx31_clocks_init(base, fref);
clk_register_clkdev(clk[gpt_gate], "per", "imx-gpt.0");
clk_register_clkdev(clk[ipg], "ipg", "imx-gpt.0");
@@ -222,22 +215,31 @@ int __init mx31_clocks_init(unsigned long fref)
return 0;
}
-int __init mx31_clocks_init_dt(void)
+static void __init mx31_clocks_init_dt(struct device_node *np)
{
- struct device_node *np;
+ struct device_node *osc_np;
u32 fref = 26000000; /* default */
+ void __iomem *ccm;
- for_each_compatible_node(np, NULL, "fixed-clock") {
- if (!of_device_is_compatible(np, "fsl,imx-osc26m"))
+ for_each_compatible_node(osc_np, NULL, "fixed-clock") {
+ if (!of_device_is_compatible(osc_np, "fsl,imx-osc26m"))
continue;
- if (!of_property_read_u32(np, "clock-frequency", &fref)) {
- of_node_put(np);
+ if (!of_property_read_u32(osc_np, "clock-frequency", &fref)) {
+ of_node_put(osc_np);
break;
}
}
- _mx31_clocks_init(fref);
+ ccm = of_iomap(np, 0);
+ if (!ccm)
+ panic("%s: failed to map registers\n", __func__);
- return 0;
+ _mx31_clocks_init(ccm, fref);
+
+ clk_data.clks = clk;
+ clk_data.clk_num = ARRAY_SIZE(clk);
+ of_clk_add_provider(np, of_clk_src_onecell_get, &clk_data);
}
+
+CLK_OF_DECLARE(imx31_ccm, "fsl,imx31-ccm", mx31_clocks_init_dt);
--
2.8.1
^ permalink raw reply related [flat|nested] 12+ messages in thread
* [PATCH v2 3/4] clk: imx31: fix rewritten input argument of mx31_clocks_init()
2016-09-26 0:03 ` [PATCH v2 3/4] clk: imx31: fix rewritten input argument of mx31_clocks_init() Vladimir Zapolskiy
@ 2016-09-26 6:23 ` Uwe Kleine-König
2016-10-25 20:36 ` Stephen Boyd
1 sibling, 0 replies; 12+ messages in thread
From: Uwe Kleine-König @ 2016-09-26 6:23 UTC (permalink / raw)
To: linux-arm-kernel
Hello,
On Mon, Sep 26, 2016 at 03:03:42AM +0300, Vladimir Zapolskiy wrote:
> Function mx31_clocks_init() is called during clock intialization on
> legacy boards with reference clock frequency passed as its input
> argument, this can be verified by examination of the function
> declaration found in arch/arm/mach-imx/common.h and actual function
> users which include that header file.
>
> Inside CCF driver the function ignores its input argument, by chance
> the used value in the function body is the same as input arguments on
> side of all callers.
>
> Fixes: d9388c843237 ("clk: imx31: Do not call mxc_timer_init twice when booting with DT")
> Signed-off-by: Vladimir Zapolskiy <vz@mleia.com>
Reviewed-by: Uwe Kleine-K?nig <u.kleine-koenig@pengutronix.de>
Thanks
Uwe
--
Pengutronix e.K. | Uwe Kleine-K?nig |
Industrial Linux Solutions | http://www.pengutronix.de/ |
^ permalink raw reply [flat|nested] 12+ messages in thread
* [PATCH v2 2/4] ARM: dts: imx31: move CCM device node to AIPS2 bus devices
2016-09-26 0:03 ` [PATCH v2 2/4] ARM: dts: imx31: move CCM device node to AIPS2 bus devices Vladimir Zapolskiy
@ 2016-09-26 6:36 ` Uwe Kleine-König
0 siblings, 0 replies; 12+ messages in thread
From: Uwe Kleine-König @ 2016-09-26 6:36 UTC (permalink / raw)
To: linux-arm-kernel
Hello Vladimir,
On Mon, Sep 26, 2016 at 03:03:41AM +0300, Vladimir Zapolskiy wrote:
> i.MX31 Clock Control Module controller is found on AIPS2 bus, move it
> there from SPBA bus to avoid a conflict of device IO space mismatch.
>
> Fixes: ef0e4a606fb6 ("ARM: mx31: Replace clk_register_clkdev with clock DT lookup")
> Signed-off-by: Vladimir Zapolskiy <vz@mleia.com>
Acked-by: Uwe Kleine-K?nig <u.kleine-koenig@pengutronix.de>
out of interest: Which kind of machine do you work with? I assume this
isn't just a finger exercise with qemu?
Best regards
Uwe
--
Pengutronix e.K. | Uwe Kleine-K?nig |
Industrial Linux Solutions | http://www.pengutronix.de/ |
^ permalink raw reply [flat|nested] 12+ messages in thread
* [PATCH v2 0/4] ARM: imx31: clock initialization fixes
2016-09-26 0:03 [PATCH v2 0/4] ARM: imx31: clock initialization fixes Vladimir Zapolskiy
` (3 preceding siblings ...)
2016-09-26 0:03 ` [PATCH v2 4/4] ARM: clk: imx31: properly init clocks for machines with DT Vladimir Zapolskiy
@ 2016-10-23 12:28 ` Shawn Guo
2016-10-25 20:37 ` Stephen Boyd
2016-11-01 8:50 ` Shawn Guo
5 siblings, 1 reply; 12+ messages in thread
From: Shawn Guo @ 2016-10-23 12:28 UTC (permalink / raw)
To: linux-arm-kernel
On Mon, Sep 26, 2016 at 03:03:39AM +0300, Vladimir Zapolskiy wrote:
> The change is tested on qemu kzm target and mx31lite board, while both
> targets don't have DTS in upstream, I had to write simple DTS files for
> them, because the proposed change is for i.MX31 targets with OF support.
>
> i.MX31/OF/clock initialization seems to be broken currently, if
> the series is not applied I can not get a working clock source during
> early boot stage on a board with DTB supplied.
>
> Changes from v1 to v2, thanks to Uwe and Stephen for review:
> * added one more new fix in imx31.dtsi which moves CCM device node
> to AIPS2 bus,
> * included to the series a fix of CCM interrupts in imx31.dtsi,
> the change was sent as a separate patch, the change is included
> to avoid a patch application dependency,
> * as suggested by Uwe reworded one of the commits removing "stack
> corruption" mentioning, the overwritten value is passed in a register,
> * as suggested by Uwe squashed clk-imx31.c and imx31-dt.c changes
> to avoid a runtime problem if only one of two patches are applied
>
> Vladimir Zapolskiy (4):
> ARM: dts: imx31: fix clock control module interrupts description
> ARM: dts: imx31: move CCM device node to AIPS2 bus devices
> clk: imx31: fix rewritten input argument of mx31_clocks_init()
> ARM: clk: imx31: properly init clocks for machines with DT
>
> .../devicetree/bindings/clock/imx31-clock.txt | 2 +-
> arch/arm/boot/dts/imx31.dtsi | 14 +++---
> arch/arm/mach-imx/common.h | 1 -
> arch/arm/mach-imx/imx31-dt.c | 6 ---
> drivers/clk/imx/clk-imx31.c | 52 +++++++++++-----------
Hi Stephen,
Can I have you ACK on the clk file, so that we can merge the series from
arm-soc tree? Thanks.
Shawn
^ permalink raw reply [flat|nested] 12+ messages in thread
* [PATCH v2 3/4] clk: imx31: fix rewritten input argument of mx31_clocks_init()
2016-09-26 0:03 ` [PATCH v2 3/4] clk: imx31: fix rewritten input argument of mx31_clocks_init() Vladimir Zapolskiy
2016-09-26 6:23 ` Uwe Kleine-König
@ 2016-10-25 20:36 ` Stephen Boyd
1 sibling, 0 replies; 12+ messages in thread
From: Stephen Boyd @ 2016-10-25 20:36 UTC (permalink / raw)
To: linux-arm-kernel
On 09/26, Vladimir Zapolskiy wrote:
> Function mx31_clocks_init() is called during clock intialization on
> legacy boards with reference clock frequency passed as its input
> argument, this can be verified by examination of the function
> declaration found in arch/arm/mach-imx/common.h and actual function
> users which include that header file.
>
> Inside CCF driver the function ignores its input argument, by chance
> the used value in the function body is the same as input arguments on
> side of all callers.
>
> Fixes: d9388c843237 ("clk: imx31: Do not call mxc_timer_init twice when booting with DT")
> Signed-off-by: Vladimir Zapolskiy <vz@mleia.com>
> ---
Acked-by: Stephen Boyd <sboyd@codeaurora.org>
--
Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum,
a Linux Foundation Collaborative Project
^ permalink raw reply [flat|nested] 12+ messages in thread
* [PATCH v2 4/4] ARM: clk: imx31: properly init clocks for machines with DT
2016-09-26 0:03 ` [PATCH v2 4/4] ARM: clk: imx31: properly init clocks for machines with DT Vladimir Zapolskiy
@ 2016-10-25 20:37 ` Stephen Boyd
0 siblings, 0 replies; 12+ messages in thread
From: Stephen Boyd @ 2016-10-25 20:37 UTC (permalink / raw)
To: linux-arm-kernel
On 09/26, Vladimir Zapolskiy wrote:
> Clock initialization for i.MX31 powered machines with DT support
> should be done by a call of an init function registered with
> CLK_OF_DECLARE() in common clock framework.
>
> The change converts exported mx31_clocks_init_dt() into a static
> initialization function registered by CLK_OF_DECLARE().
>
> Signed-off-by: Vladimir Zapolskiy <vz@mleia.com>
> ---
Acked-by: Stephen Boyd <sboyd@codeaurora.org>
--
Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum,
a Linux Foundation Collaborative Project
^ permalink raw reply [flat|nested] 12+ messages in thread
* [PATCH v2 0/4] ARM: imx31: clock initialization fixes
2016-10-23 12:28 ` [PATCH v2 0/4] ARM: imx31: clock initialization fixes Shawn Guo
@ 2016-10-25 20:37 ` Stephen Boyd
0 siblings, 0 replies; 12+ messages in thread
From: Stephen Boyd @ 2016-10-25 20:37 UTC (permalink / raw)
To: linux-arm-kernel
On 10/23, Shawn Guo wrote:
> On Mon, Sep 26, 2016 at 03:03:39AM +0300, Vladimir Zapolskiy wrote:
> > The change is tested on qemu kzm target and mx31lite board, while both
> > targets don't have DTS in upstream, I had to write simple DTS files for
> > them, because the proposed change is for i.MX31 targets with OF support.
> >
> > i.MX31/OF/clock initialization seems to be broken currently, if
> > the series is not applied I can not get a working clock source during
> > early boot stage on a board with DTB supplied.
> >
> > Changes from v1 to v2, thanks to Uwe and Stephen for review:
> > * added one more new fix in imx31.dtsi which moves CCM device node
> > to AIPS2 bus,
> > * included to the series a fix of CCM interrupts in imx31.dtsi,
> > the change was sent as a separate patch, the change is included
> > to avoid a patch application dependency,
> > * as suggested by Uwe reworded one of the commits removing "stack
> > corruption" mentioning, the overwritten value is passed in a register,
> > * as suggested by Uwe squashed clk-imx31.c and imx31-dt.c changes
> > to avoid a runtime problem if only one of two patches are applied
> >
> > Vladimir Zapolskiy (4):
> > ARM: dts: imx31: fix clock control module interrupts description
> > ARM: dts: imx31: move CCM device node to AIPS2 bus devices
> > clk: imx31: fix rewritten input argument of mx31_clocks_init()
> > ARM: clk: imx31: properly init clocks for machines with DT
> >
> > .../devicetree/bindings/clock/imx31-clock.txt | 2 +-
> > arch/arm/boot/dts/imx31.dtsi | 14 +++---
> > arch/arm/mach-imx/common.h | 1 -
> > arch/arm/mach-imx/imx31-dt.c | 6 ---
> > drivers/clk/imx/clk-imx31.c | 52 +++++++++++-----------
>
> Hi Stephen,
>
> Can I have you ACK on the clk file, so that we can merge the series from
> arm-soc tree? Thanks.
>
Done.
--
Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum,
a Linux Foundation Collaborative Project
^ permalink raw reply [flat|nested] 12+ messages in thread
* [PATCH v2 0/4] ARM: imx31: clock initialization fixes
2016-09-26 0:03 [PATCH v2 0/4] ARM: imx31: clock initialization fixes Vladimir Zapolskiy
` (4 preceding siblings ...)
2016-10-23 12:28 ` [PATCH v2 0/4] ARM: imx31: clock initialization fixes Shawn Guo
@ 2016-11-01 8:50 ` Shawn Guo
5 siblings, 0 replies; 12+ messages in thread
From: Shawn Guo @ 2016-11-01 8:50 UTC (permalink / raw)
To: linux-arm-kernel
On Mon, Sep 26, 2016 at 03:03:39AM +0300, Vladimir Zapolskiy wrote:
> Vladimir Zapolskiy (4):
> ARM: dts: imx31: fix clock control module interrupts description
> ARM: dts: imx31: move CCM device node to AIPS2 bus devices
> clk: imx31: fix rewritten input argument of mx31_clocks_init()
> ARM: clk: imx31: properly init clocks for machines with DT
Applied all, thanks.
^ permalink raw reply [flat|nested] 12+ messages in thread
end of thread, other threads:[~2016-11-01 8:50 UTC | newest]
Thread overview: 12+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-09-26 0:03 [PATCH v2 0/4] ARM: imx31: clock initialization fixes Vladimir Zapolskiy
2016-09-26 0:03 ` [PATCH v2 1/4] ARM: dts: imx31: fix clock control module interrupts description Vladimir Zapolskiy
2016-09-26 0:03 ` [PATCH v2 2/4] ARM: dts: imx31: move CCM device node to AIPS2 bus devices Vladimir Zapolskiy
2016-09-26 6:36 ` Uwe Kleine-König
2016-09-26 0:03 ` [PATCH v2 3/4] clk: imx31: fix rewritten input argument of mx31_clocks_init() Vladimir Zapolskiy
2016-09-26 6:23 ` Uwe Kleine-König
2016-10-25 20:36 ` Stephen Boyd
2016-09-26 0:03 ` [PATCH v2 4/4] ARM: clk: imx31: properly init clocks for machines with DT Vladimir Zapolskiy
2016-10-25 20:37 ` Stephen Boyd
2016-10-23 12:28 ` [PATCH v2 0/4] ARM: imx31: clock initialization fixes Shawn Guo
2016-10-25 20:37 ` Stephen Boyd
2016-11-01 8:50 ` Shawn Guo
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).