* [PATCH 0/5] i.MX53 TVE clock patches
@ 2013-04-08 14:46 Philipp Zabel
2013-04-08 14:46 ` [PATCH 1/5] ARM i.MX5: Remove tve_sel clock from i.MX53 clock tree Philipp Zabel
` (6 more replies)
0 siblings, 7 replies; 10+ messages in thread
From: Philipp Zabel @ 2013-04-08 14:46 UTC (permalink / raw)
To: linux-arm-kernel
Hi,
the first two are just cleanups, the following three patches are changes
to the i.MX53 clock tree that are necessary to use the TVEv2 module as
VGA output on the Freescale i.MX53-QSB or TQ MBa53 boards.
regards
Philipp
---
Documentation/devicetree/bindings/clock/imx5-clock.txt | 1 -
arch/arm/mach-imx/clk-imx51-imx53.c | 17 ++++++++---------
2 files changed, 8 insertions(+), 10 deletions(-)
^ permalink raw reply [flat|nested] 10+ messages in thread
* [PATCH 1/5] ARM i.MX5: Remove tve_sel clock from i.MX53 clock tree
2013-04-08 14:46 [PATCH 0/5] i.MX53 TVE clock patches Philipp Zabel
@ 2013-04-08 14:46 ` Philipp Zabel
2013-04-08 14:46 ` [PATCH 2/5] ARM i.MX53: Remove unused tve_gate clkdev entry Philipp Zabel
` (5 subsequent siblings)
6 siblings, 0 replies; 10+ messages in thread
From: Philipp Zabel @ 2013-04-08 14:46 UTC (permalink / raw)
To: linux-arm-kernel
On i.MX53, there is only tve_ext_sel.
Signed-off-by: Philipp Zabel <p.zabel@pengutronix.de>
---
arch/arm/mach-imx/clk-imx51-imx53.c | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/arch/arm/mach-imx/clk-imx51-imx53.c b/arch/arm/mach-imx/clk-imx51-imx53.c
index 1be5078..9daef9d 100644
--- a/arch/arm/mach-imx/clk-imx51-imx53.c
+++ b/arch/arm/mach-imx/clk-imx51-imx53.c
@@ -45,7 +45,7 @@ static const char *mx53_ipu_di1_sel[] = { "di_pred", "osc", "ckih1", "tve_di", "
static const char *mx53_ldb_di1_sel[] = { "pll3_sw", "pll4_sw", };
static const char *mx51_tve_ext_sel[] = { "osc", "ckih1", };
static const char *mx53_tve_ext_sel[] = { "pll4_sw", "ckih1", };
-static const char *tve_sel[] = { "tve_pred", "tve_ext_sel", };
+static const char *mx51_tve_sel[] = { "tve_pred", "tve_ext_sel", };
static const char *ipu_sel[] = { "axi_a", "axi_b", "emi_slow_gate", "ahb", };
static const char *gpu3d_sel[] = { "axi_a", "axi_b", "emi_slow_gate", "ahb" };
static const char *gpu2d_sel[] = { "axi_a", "axi_b", "emi_slow_gate", "ahb" };
@@ -188,7 +188,6 @@ static void __init mx5_clocks_common_init(unsigned long rate_ckil,
clk[cpu_podf] = imx_clk_divider("cpu_podf", "pll1_sw", MXC_CCM_CACRR, 0, 3);
clk[di_pred] = imx_clk_divider("di_pred", "pll3_sw", MXC_CCM_CDCDR, 6, 3);
clk[tve_di] = imx_clk_fixed("tve_di", 65000000); /* FIXME */
- clk[tve_s] = imx_clk_mux("tve_sel", MXC_CCM_CSCMR1, 7, 1, tve_sel, ARRAY_SIZE(tve_sel));
clk[iim_gate] = imx_clk_gate2("iim_gate", "ipg", MXC_CCM_CCGR0, 30);
clk[uart1_ipg_gate] = imx_clk_gate2("uart1_ipg_gate", "ipg", MXC_CCM_CCGR1, 6);
clk[uart1_per_gate] = imx_clk_gate2("uart1_per_gate", "uart_root", MXC_CCM_CCGR1, 8);
@@ -367,6 +366,8 @@ int __init mx51_clocks_init(unsigned long rate_ckil, unsigned long rate_osc,
mx51_ipu_di1_sel, ARRAY_SIZE(mx51_ipu_di1_sel));
clk[tve_ext_sel] = imx_clk_mux("tve_ext_sel", MXC_CCM_CSCMR1, 6, 1,
mx51_tve_ext_sel, ARRAY_SIZE(mx51_tve_ext_sel));
+ clk[tve_s] = imx_clk_mux("tve_sel", MXC_CCM_CSCMR1, 7, 1,
+ mx51_tve_sel, ARRAY_SIZE(mx51_tve_sel));
clk[tve_gate] = imx_clk_gate2("tve_gate", "tve_sel", MXC_CCM_CCGR2, 30);
clk[tve_pred] = imx_clk_divider("tve_pred", "pll3_sw", MXC_CCM_CDCDR, 28, 3);
clk[esdhc1_per_gate] = imx_clk_gate2("esdhc1_per_gate", "esdhc_a_podf", MXC_CCM_CCGR3, 2);
--
1.8.2.rc2
^ permalink raw reply related [flat|nested] 10+ messages in thread
* [PATCH 2/5] ARM i.MX53: Remove unused tve_gate clkdev entry
2013-04-08 14:46 [PATCH 0/5] i.MX53 TVE clock patches Philipp Zabel
2013-04-08 14:46 ` [PATCH 1/5] ARM i.MX5: Remove tve_sel clock from i.MX53 clock tree Philipp Zabel
@ 2013-04-08 14:46 ` Philipp Zabel
2013-04-08 14:46 ` [PATCH 3/5] ARM i.MX53: make tve_ext_sel propagate rate change to PLL Philipp Zabel
` (4 subsequent siblings)
6 siblings, 0 replies; 10+ messages in thread
From: Philipp Zabel @ 2013-04-08 14:46 UTC (permalink / raw)
To: linux-arm-kernel
Signed-off-by: Philipp Zabel <p.zabel@pengutronix.de>
---
arch/arm/mach-imx/clk-imx51-imx53.c | 1 -
1 file changed, 1 deletion(-)
diff --git a/arch/arm/mach-imx/clk-imx51-imx53.c b/arch/arm/mach-imx/clk-imx51-imx53.c
index 9daef9d..890012e 100644
--- a/arch/arm/mach-imx/clk-imx51-imx53.c
+++ b/arch/arm/mach-imx/clk-imx51-imx53.c
@@ -319,7 +319,6 @@ static void __init mx5_clocks_common_init(unsigned long rate_ckil,
clk_register_clkdev(clk[dummy], NULL, "imx2-wdt.0");
clk_register_clkdev(clk[dummy], NULL, "imx2-wdt.1");
clk_register_clkdev(clk[dummy], NULL, "imx-keypad");
- clk_register_clkdev(clk[tve_gate], NULL, "imx-tve.0");
clk_register_clkdev(clk[ipu_di1_gate], "di1", "imx-tve.0");
clk_register_clkdev(clk[gpc_dvfs], "gpc_dvfs", NULL);
clk_register_clkdev(clk[epit1_ipg_gate], "ipg", "imx-epit.0");
--
1.8.2.rc2
^ permalink raw reply related [flat|nested] 10+ messages in thread
* [PATCH 3/5] ARM i.MX53: make tve_ext_sel propagate rate change to PLL
2013-04-08 14:46 [PATCH 0/5] i.MX53 TVE clock patches Philipp Zabel
2013-04-08 14:46 ` [PATCH 1/5] ARM i.MX5: Remove tve_sel clock from i.MX53 clock tree Philipp Zabel
2013-04-08 14:46 ` [PATCH 2/5] ARM i.MX53: Remove unused tve_gate clkdev entry Philipp Zabel
@ 2013-04-08 14:46 ` Philipp Zabel
2013-04-08 14:46 ` [PATCH 4/5] ARM i.MX53: tve_di clock is not part of the CCM, but of TVE Philipp Zabel
` (3 subsequent siblings)
6 siblings, 0 replies; 10+ messages in thread
From: Philipp Zabel @ 2013-04-08 14:46 UTC (permalink / raw)
To: linux-arm-kernel
This is needed so the Television Encoder driver can set the rate
on tve_clk and have it propagated up to pll4_sw.
Signed-off-by: Philipp Zabel <p.zabel@pengutronix.de>
---
arch/arm/mach-imx/clk-imx51-imx53.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/arch/arm/mach-imx/clk-imx51-imx53.c b/arch/arm/mach-imx/clk-imx51-imx53.c
index 890012e..9226940 100644
--- a/arch/arm/mach-imx/clk-imx51-imx53.c
+++ b/arch/arm/mach-imx/clk-imx51-imx53.c
@@ -469,8 +469,8 @@ int __init mx53_clocks_init(unsigned long rate_ckil, unsigned long rate_osc,
mx53_ipu_di0_sel, ARRAY_SIZE(mx53_ipu_di0_sel));
clk[ipu_di1_sel] = imx_clk_mux("ipu_di1_sel", MXC_CCM_CSCMR2, 29, 3,
mx53_ipu_di1_sel, ARRAY_SIZE(mx53_ipu_di1_sel));
- clk[tve_ext_sel] = imx_clk_mux("tve_ext_sel", MXC_CCM_CSCMR1, 6, 1,
- mx53_tve_ext_sel, ARRAY_SIZE(mx53_tve_ext_sel));
+ clk[tve_ext_sel] = imx_clk_mux_flags("tve_ext_sel", MXC_CCM_CSCMR1, 6, 1,
+ mx53_tve_ext_sel, ARRAY_SIZE(mx53_tve_ext_sel), CLK_SET_RATE_PARENT);
clk[tve_gate] = imx_clk_gate2("tve_gate", "tve_pred", MXC_CCM_CCGR2, 30);
clk[tve_pred] = imx_clk_divider("tve_pred", "tve_ext_sel", MXC_CCM_CDCDR, 28, 3);
clk[esdhc1_per_gate] = imx_clk_gate2("esdhc1_per_gate", "esdhc_a_podf", MXC_CCM_CCGR3, 2);
--
1.8.2.rc2
^ permalink raw reply related [flat|nested] 10+ messages in thread
* [PATCH 4/5] ARM i.MX53: tve_di clock is not part of the CCM, but of TVE
2013-04-08 14:46 [PATCH 0/5] i.MX53 TVE clock patches Philipp Zabel
` (2 preceding siblings ...)
2013-04-08 14:46 ` [PATCH 3/5] ARM i.MX53: make tve_ext_sel propagate rate change to PLL Philipp Zabel
@ 2013-04-08 14:46 ` Philipp Zabel
2013-04-08 14:46 ` [PATCH 5/5] ARM i.MX53: set CLK_SET_RATE_PARENT flag on the tve_ext_sel clock Philipp Zabel
` (2 subsequent siblings)
6 siblings, 0 replies; 10+ messages in thread
From: Philipp Zabel @ 2013-04-08 14:46 UTC (permalink / raw)
To: linux-arm-kernel
Remove the tve_di clock from the CCM clock tree. It will be provided
by the Television Encoder driver, as this clock is an output signal
of the TVE module.
Signed-off-by: Philipp Zabel <p.zabel@pengutronix.de>
---
Documentation/devicetree/bindings/clock/imx5-clock.txt | 1 -
arch/arm/mach-imx/clk-imx51-imx53.c | 3 +--
2 files changed, 1 insertion(+), 3 deletions(-)
diff --git a/Documentation/devicetree/bindings/clock/imx5-clock.txt b/Documentation/devicetree/bindings/clock/imx5-clock.txt
index 84cae1f..d71b4b2 100644
--- a/Documentation/devicetree/bindings/clock/imx5-clock.txt
+++ b/Documentation/devicetree/bindings/clock/imx5-clock.txt
@@ -38,7 +38,6 @@ clocks and IDs.
usb_phy_podf 23
cpu_podf 24
di_pred 25
- tve_di 26
tve_s 27
uart1_ipg_gate 28
uart1_per_gate 29
diff --git a/arch/arm/mach-imx/clk-imx51-imx53.c b/arch/arm/mach-imx/clk-imx51-imx53.c
index 9226940..189d654 100644
--- a/arch/arm/mach-imx/clk-imx51-imx53.c
+++ b/arch/arm/mach-imx/clk-imx51-imx53.c
@@ -78,7 +78,7 @@ enum imx5_clks {
dummy, ckil, osc, ckih1, ckih2, ahb, ipg, axi_a, axi_b, uart_pred,
uart_root, esdhc_a_pred, esdhc_b_pred, esdhc_c_s, esdhc_d_s,
emi_sel, emi_slow_podf, nfc_podf, ecspi_pred, ecspi_podf, usboh3_pred,
- usboh3_podf, usb_phy_pred, usb_phy_podf, cpu_podf, di_pred, tve_di,
+ usboh3_podf, usb_phy_pred, usb_phy_podf, cpu_podf, di_pred, tve_di_unused,
tve_s, uart1_ipg_gate, uart1_per_gate, uart2_ipg_gate,
uart2_per_gate, uart3_ipg_gate, uart3_per_gate, i2c1_gate, i2c2_gate,
gpt_ipg_gate, pwm1_ipg_gate, pwm1_hf_gate, pwm2_ipg_gate, pwm2_hf_gate,
@@ -187,7 +187,6 @@ static void __init mx5_clocks_common_init(unsigned long rate_ckil,
usb_phy_sel_str, ARRAY_SIZE(usb_phy_sel_str));
clk[cpu_podf] = imx_clk_divider("cpu_podf", "pll1_sw", MXC_CCM_CACRR, 0, 3);
clk[di_pred] = imx_clk_divider("di_pred", "pll3_sw", MXC_CCM_CDCDR, 6, 3);
- clk[tve_di] = imx_clk_fixed("tve_di", 65000000); /* FIXME */
clk[iim_gate] = imx_clk_gate2("iim_gate", "ipg", MXC_CCM_CCGR0, 30);
clk[uart1_ipg_gate] = imx_clk_gate2("uart1_ipg_gate", "ipg", MXC_CCM_CCGR1, 6);
clk[uart1_per_gate] = imx_clk_gate2("uart1_per_gate", "uart_root", MXC_CCM_CCGR1, 8);
--
1.8.2.rc2
^ permalink raw reply related [flat|nested] 10+ messages in thread
* [PATCH 5/5] ARM i.MX53: set CLK_SET_RATE_PARENT flag on the tve_ext_sel clock
2013-04-08 14:46 [PATCH 0/5] i.MX53 TVE clock patches Philipp Zabel
` (3 preceding siblings ...)
2013-04-08 14:46 ` [PATCH 4/5] ARM i.MX53: tve_di clock is not part of the CCM, but of TVE Philipp Zabel
@ 2013-04-08 14:46 ` Philipp Zabel
2013-04-08 15:26 ` [PATCH 0/5] i.MX53 TVE clock patches Fabio Estevam
2013-04-09 12:49 ` Shawn Guo
6 siblings, 0 replies; 10+ messages in thread
From: Philipp Zabel @ 2013-04-08 14:46 UTC (permalink / raw)
To: linux-arm-kernel
Use imx_clk_mux_flags to set the appropriate flags for the TVE
selector clock. This is needed so tve_clk rate changes can propagate
up to pll4_sw.
Signed-off-by: Philipp Zabel <p.zabel@pengutronix.de>
---
arch/arm/mach-imx/clk-imx51-imx53.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/arch/arm/mach-imx/clk-imx51-imx53.c b/arch/arm/mach-imx/clk-imx51-imx53.c
index 189d654..6fc486b 100644
--- a/arch/arm/mach-imx/clk-imx51-imx53.c
+++ b/arch/arm/mach-imx/clk-imx51-imx53.c
@@ -362,8 +362,8 @@ int __init mx51_clocks_init(unsigned long rate_ckil, unsigned long rate_osc,
mx51_ipu_di0_sel, ARRAY_SIZE(mx51_ipu_di0_sel));
clk[ipu_di1_sel] = imx_clk_mux("ipu_di1_sel", MXC_CCM_CSCMR2, 29, 3,
mx51_ipu_di1_sel, ARRAY_SIZE(mx51_ipu_di1_sel));
- clk[tve_ext_sel] = imx_clk_mux("tve_ext_sel", MXC_CCM_CSCMR1, 6, 1,
- mx51_tve_ext_sel, ARRAY_SIZE(mx51_tve_ext_sel));
+ clk[tve_ext_sel] = imx_clk_mux_flags("tve_ext_sel", MXC_CCM_CSCMR1, 6, 1,
+ mx51_tve_ext_sel, ARRAY_SIZE(mx51_tve_ext_sel), CLK_SET_RATE_PARENT);
clk[tve_s] = imx_clk_mux("tve_sel", MXC_CCM_CSCMR1, 7, 1,
mx51_tve_sel, ARRAY_SIZE(mx51_tve_sel));
clk[tve_gate] = imx_clk_gate2("tve_gate", "tve_sel", MXC_CCM_CCGR2, 30);
--
1.8.2.rc2
^ permalink raw reply related [flat|nested] 10+ messages in thread
* [PATCH 0/5] i.MX53 TVE clock patches
2013-04-08 14:46 [PATCH 0/5] i.MX53 TVE clock patches Philipp Zabel
` (4 preceding siblings ...)
2013-04-08 14:46 ` [PATCH 5/5] ARM i.MX53: set CLK_SET_RATE_PARENT flag on the tve_ext_sel clock Philipp Zabel
@ 2013-04-08 15:26 ` Fabio Estevam
2013-04-08 16:11 ` Fabio Estevam
2013-04-08 16:17 ` Philipp Zabel
2013-04-09 12:49 ` Shawn Guo
6 siblings, 2 replies; 10+ messages in thread
From: Fabio Estevam @ 2013-04-08 15:26 UTC (permalink / raw)
To: linux-arm-kernel
Hi Phiipp,
On Mon, Apr 8, 2013 at 11:46 AM, Philipp Zabel <p.zabel@pengutronix.de> wrote:
> Hi,
>
> the first two are just cleanups, the following three patches are changes
> to the i.MX53 clock tree that are necessary to use the TVEv2 module as
> VGA output on the Freescale i.MX53-QSB or TQ MBa53 boards.
I would like to test this series on a mx53qsb.
Is the TVE driver available in some git tree?
Thanks,
Fabio Estevam
^ permalink raw reply [flat|nested] 10+ messages in thread
* [PATCH 0/5] i.MX53 TVE clock patches
2013-04-08 15:26 ` [PATCH 0/5] i.MX53 TVE clock patches Fabio Estevam
@ 2013-04-08 16:11 ` Fabio Estevam
2013-04-08 16:17 ` Philipp Zabel
1 sibling, 0 replies; 10+ messages in thread
From: Fabio Estevam @ 2013-04-08 16:11 UTC (permalink / raw)
To: linux-arm-kernel
On Mon, Apr 8, 2013 at 12:26 PM, Fabio Estevam <festevam@gmail.com> wrote:
> Hi Phiipp,
>
> On Mon, Apr 8, 2013 at 11:46 AM, Philipp Zabel <p.zabel@pengutronix.de> wrote:
>> Hi,
>>
>> the first two are just cleanups, the following three patches are changes
>> to the i.MX53 clock tree that are necessary to use the TVEv2 module as
>> VGA output on the Freescale i.MX53-QSB or TQ MBa53 boards.
>
> I would like to test this series on a mx53qsb.
>
> Is the TVE driver available in some git tree?
Just found the driver in my Inbox now.
Thanks for your work,Philipp
^ permalink raw reply [flat|nested] 10+ messages in thread
* [PATCH 0/5] i.MX53 TVE clock patches
2013-04-08 15:26 ` [PATCH 0/5] i.MX53 TVE clock patches Fabio Estevam
2013-04-08 16:11 ` Fabio Estevam
@ 2013-04-08 16:17 ` Philipp Zabel
1 sibling, 0 replies; 10+ messages in thread
From: Philipp Zabel @ 2013-04-08 16:17 UTC (permalink / raw)
To: linux-arm-kernel
Hi Fabio,
Am Montag, den 08.04.2013, 12:26 -0300 schrieb Fabio Estevam:
> Hi Phiipp,
>
> On Mon, Apr 8, 2013 at 11:46 AM, Philipp Zabel <p.zabel@pengutronix.de> wrote:
> > Hi,
> >
> > the first two are just cleanups, the following three patches are changes
> > to the i.MX53 clock tree that are necessary to use the TVEv2 module as
> > VGA output on the Freescale i.MX53-QSB or TQ MBa53 boards.
>
> I would like to test this series on a mx53qsb.
>
> Is the TVE driver available in some git tree?
I have pushed the series for you at:
git://git.pengutronix.de/git/pza/linux.git imx-ipu-tve/wip
regards
Philipp
^ permalink raw reply [flat|nested] 10+ messages in thread
* [PATCH 0/5] i.MX53 TVE clock patches
2013-04-08 14:46 [PATCH 0/5] i.MX53 TVE clock patches Philipp Zabel
` (5 preceding siblings ...)
2013-04-08 15:26 ` [PATCH 0/5] i.MX53 TVE clock patches Fabio Estevam
@ 2013-04-09 12:49 ` Shawn Guo
6 siblings, 0 replies; 10+ messages in thread
From: Shawn Guo @ 2013-04-09 12:49 UTC (permalink / raw)
To: linux-arm-kernel
On Mon, Apr 08, 2013 at 04:46:18PM +0200, Philipp Zabel wrote:
> Hi,
>
> the first two are just cleanups, the following three patches are changes
> to the i.MX53 clock tree that are necessary to use the TVEv2 module as
> VGA output on the Freescale i.MX53-QSB or TQ MBa53 boards.
>
> regards
> Philipp
>
> ---
> Documentation/devicetree/bindings/clock/imx5-clock.txt | 1 -
> arch/arm/mach-imx/clk-imx51-imx53.c | 17 ++++++++---------
> 2 files changed, 8 insertions(+), 10 deletions(-)
All 5 patches applied, thanks.
^ permalink raw reply [flat|nested] 10+ messages in thread
end of thread, other threads:[~2013-04-09 12:49 UTC | newest]
Thread overview: 10+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-04-08 14:46 [PATCH 0/5] i.MX53 TVE clock patches Philipp Zabel
2013-04-08 14:46 ` [PATCH 1/5] ARM i.MX5: Remove tve_sel clock from i.MX53 clock tree Philipp Zabel
2013-04-08 14:46 ` [PATCH 2/5] ARM i.MX53: Remove unused tve_gate clkdev entry Philipp Zabel
2013-04-08 14:46 ` [PATCH 3/5] ARM i.MX53: make tve_ext_sel propagate rate change to PLL Philipp Zabel
2013-04-08 14:46 ` [PATCH 4/5] ARM i.MX53: tve_di clock is not part of the CCM, but of TVE Philipp Zabel
2013-04-08 14:46 ` [PATCH 5/5] ARM i.MX53: set CLK_SET_RATE_PARENT flag on the tve_ext_sel clock Philipp Zabel
2013-04-08 15:26 ` [PATCH 0/5] i.MX53 TVE clock patches Fabio Estevam
2013-04-08 16:11 ` Fabio Estevam
2013-04-08 16:17 ` Philipp Zabel
2013-04-09 12:49 ` 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).