Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

ARM: imx6q: add the missing esai_ahb clock

The esai_ahb clock is derived from ahb and used to provide ESAI the
capability of register accessing and FSYS clock source for I2S clocks
dividing. The gate bits of this esai_ahb clock are shared with the
esai clock -- the baud clock, so we need to call imx_clk_gate2_shared()
for these two clocks.

Signed-off-by: Nicolin Chen <Guangyu.Chen@freescale.com>
Signed-off-by: Shawn Guo <shawn.guo@freescale.com>

Shawn Guo 886cda41 f9f28cdf

+6 -2
+1
Documentation/devicetree/bindings/clock/imx6q-clock.txt
··· 220 220 lvds2_sel 205 221 221 lvds1_gate 206 222 222 lvds2_gate 207 223 + esai_ahb 208 223 224 224 225 Examples: 225 226
+5 -2
arch/arm/mach-imx/clk-imx6q.c
··· 107 107 sata_ref, sata_ref_100m, pcie_ref, pcie_ref_125m, enet_ref, usbphy1_gate, 108 108 usbphy2_gate, pll4_post_div, pll5_post_div, pll5_video_div, eim_slow, 109 109 spdif, cko2_sel, cko2_podf, cko2, cko, vdoa, pll4_audio_div, 110 - lvds1_sel, lvds2_sel, lvds1_gate, lvds2_gate, clk_max 110 + lvds1_sel, lvds2_sel, lvds1_gate, lvds2_gate, esai_ahb, clk_max 111 111 }; 112 112 113 113 static struct clk *clk[clk_max]; ··· 139 139 { .val = 3, .div = 4, }, 140 140 { /* sentinel */ } 141 141 }; 142 + 143 + static unsigned int share_count_esai; 142 144 143 145 static void __init imx6q_clocks_init(struct device_node *ccm_node) 144 146 { ··· 360 358 else 361 359 clk[ecspi5] = imx_clk_gate2("ecspi5", "ecspi_root", base + 0x6c, 8); 362 360 clk[enet] = imx_clk_gate2("enet", "ipg", base + 0x6c, 10); 363 - clk[esai] = imx_clk_gate2("esai", "esai_podf", base + 0x6c, 16); 361 + clk[esai] = imx_clk_gate2_shared("esai", "esai_podf", base + 0x6c, 16, &share_count_esai); 362 + clk[esai_ahb] = imx_clk_gate2_shared("esai_ahb", "ahb", base + 0x6c, 16, &share_count_esai); 364 363 clk[gpt_ipg] = imx_clk_gate2("gpt_ipg", "ipg", base + 0x6c, 20); 365 364 clk[gpt_ipg_per] = imx_clk_gate2("gpt_ipg_per", "ipg_per", base + 0x6c, 22); 366 365 if (cpu_is_imx6dl())