Skip to content

Commit bfacad5

Browse files
Elaine Zhangrkhuangtao
authored andcommitted
clk: rockchip: rk3328: Set max parent rate for i2s fractional divider
Set I2S clk parent to CPLL. Change-Id: I2eaa920c6ab02cbec944b11f3aea2e7fe8551659 Signed-off-by: Elaine Zhang <zhangqing@rock-chips.com>
1 parent f2a7328 commit bfacad5

1 file changed

Lines changed: 8 additions & 6 deletions

File tree

drivers/clk/rockchip/clk-rk3328.c

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@
2424
#define RK3328_GRF_SOC_STATUS0 0x480
2525
#define RK3328_GRF_MAC_CON1 0x904
2626
#define RK3328_GRF_MAC_CON2 0x908
27+
#define RK3328_I2S_FRAC_MAX_PRATE 600000000
2728

2829
enum rk3328_plls {
2930
apll, dpll, cpll, gpll, npll,
@@ -217,6 +218,7 @@ PNAME(mux_mac2phy_src_p) = { "clk_mac2phy_src",
217218
"phy_50m_out" };
218219
PNAME(mux_mac2io_ext_p) = { "clk_mac2io",
219220
"gmac_clkin" };
221+
PNAME(mux_i2s_plls_p) = { "cpll", "dummy_gpll" };
220222

221223
static struct rockchip_pll_clock rk3328_pll_clks[] __initdata = {
222224
[apll] = PLL(pll_rk3328, PLL_APLL, "apll", mux_pll_p,
@@ -375,36 +377,36 @@ static struct rockchip_clk_branch rk3328_clk_branches[] __initdata = {
375377
RK3328_CLKGATE_CON(17), 13, GFLAGS),
376378

377379
/* PD_I2S */
378-
COMPOSITE(0, "clk_i2s0_div", mux_2plls_p, 0,
380+
COMPOSITE(0, "clk_i2s0_div", mux_i2s_plls_p, 0,
379381
RK3328_CLKSEL_CON(6), 15, 1, MFLAGS, 0, 7, DFLAGS,
380382
RK3328_CLKGATE_CON(1), 1, GFLAGS),
381383
COMPOSITE_FRACMUX(0, "clk_i2s0_frac", "clk_i2s0_div", CLK_SET_RATE_PARENT,
382384
RK3328_CLKSEL_CON(7), 0,
383385
RK3328_CLKGATE_CON(1), 2, GFLAGS,
384-
&rk3328_i2s0_fracmux, 0),
386+
&rk3328_i2s0_fracmux, RK3328_I2S_FRAC_MAX_PRATE),
385387
GATE(SCLK_I2S0, "clk_i2s0", "i2s0_pre", CLK_SET_RATE_PARENT,
386388
RK3328_CLKGATE_CON(1), 3, GFLAGS),
387389

388-
COMPOSITE(0, "clk_i2s1_div", mux_2plls_p, 0,
390+
COMPOSITE(0, "clk_i2s1_div", mux_i2s_plls_p, 0,
389391
RK3328_CLKSEL_CON(8), 15, 1, MFLAGS, 0, 7, DFLAGS,
390392
RK3328_CLKGATE_CON(1), 4, GFLAGS),
391393
COMPOSITE_FRACMUX(0, "clk_i2s1_frac", "clk_i2s1_div", CLK_SET_RATE_PARENT,
392394
RK3328_CLKSEL_CON(9), 0,
393395
RK3328_CLKGATE_CON(1), 5, GFLAGS,
394-
&rk3328_i2s1_fracmux, 0),
396+
&rk3328_i2s1_fracmux, RK3328_I2S_FRAC_MAX_PRATE),
395397
GATE(SCLK_I2S1, "clk_i2s1", "i2s1_pre", CLK_SET_RATE_PARENT,
396398
RK3328_CLKGATE_CON(1), 6, GFLAGS),
397399
COMPOSITE_NODIV(SCLK_I2S1_OUT, "i2s1_out", mux_i2s1out_p, 0,
398400
RK3328_CLKSEL_CON(8), 12, 1, MFLAGS,
399401
RK3328_CLKGATE_CON(1), 7, GFLAGS),
400402

401-
COMPOSITE(0, "clk_i2s2_div", mux_2plls_p, 0,
403+
COMPOSITE(0, "clk_i2s2_div", mux_i2s_plls_p, 0,
402404
RK3328_CLKSEL_CON(10), 15, 1, MFLAGS, 0, 7, DFLAGS,
403405
RK3328_CLKGATE_CON(1), 8, GFLAGS),
404406
COMPOSITE_FRACMUX(0, "clk_i2s2_frac", "clk_i2s2_div", CLK_SET_RATE_PARENT,
405407
RK3328_CLKSEL_CON(11), 0,
406408
RK3328_CLKGATE_CON(1), 9, GFLAGS,
407-
&rk3328_i2s2_fracmux, 0),
409+
&rk3328_i2s2_fracmux, RK3328_I2S_FRAC_MAX_PRATE),
408410
GATE(SCLK_I2S2, "clk_i2s2", "i2s2_pre", CLK_SET_RATE_PARENT,
409411
RK3328_CLKGATE_CON(1), 10, GFLAGS),
410412
COMPOSITE_NODIV(SCLK_I2S2_OUT, "i2s2_out", mux_i2s2out_p, 0,

0 commit comments

Comments
 (0)