mirror of
https://github.com/hardkernel/linux.git
synced 2026-06-08 20:07:46 +09:00
clk: rockchip: rk3308: Set max parent rate for fractional divider
Change-Id: I90af3fad0689b65d25c328c001163882a5198ac3 Signed-off-by: Finley Xiao <finley.xiao@rock-chips.com>
This commit is contained in:
@@ -22,6 +22,10 @@
|
||||
|
||||
#define RK3308_GRF_SOC_STATUS0 0x380
|
||||
#define RK3308_VOP_FRAC_MAX_PRATE 270000000
|
||||
#define RK3308_UART_FRAC_MAX_PRATE 800000000
|
||||
#define RK3308_PDM_FRAC_MAX_PRATE 800000000
|
||||
#define RK3308_SPDIF_FRAC_MAX_PRATE 800000000
|
||||
#define RK3308_I2S_FRAC_MAX_PRATE 800000000
|
||||
|
||||
enum rk3308_plls {
|
||||
apll, dpll, vpll0, vpll1,
|
||||
@@ -341,7 +345,7 @@ static struct rockchip_clk_branch rk3308_clk_branches[] __initdata = {
|
||||
COMPOSITE_FRACMUX(0, "clk_uart0_frac", "clk_uart0_src", CLK_SET_RATE_PARENT,
|
||||
RK3308_CLKSEL_CON(12), 0,
|
||||
RK3308_CLKGATE_CON(1), 11, GFLAGS,
|
||||
&rk3308_uart0_fracmux, 0),
|
||||
&rk3308_uart0_fracmux, RK3308_UART_FRAC_MAX_PRATE),
|
||||
GATE(SCLK_UART0, "clk_uart0", "clk_uart0_mux", 0,
|
||||
RK3308_CLKGATE_CON(1), 12, GFLAGS),
|
||||
|
||||
@@ -351,7 +355,7 @@ static struct rockchip_clk_branch rk3308_clk_branches[] __initdata = {
|
||||
COMPOSITE_FRACMUX(0, "clk_uart1_frac", "clk_uart1_src", CLK_SET_RATE_PARENT,
|
||||
RK3308_CLKSEL_CON(15), 0,
|
||||
RK3308_CLKGATE_CON(1), 15, GFLAGS,
|
||||
&rk3308_uart1_fracmux, 0),
|
||||
&rk3308_uart1_fracmux, RK3308_UART_FRAC_MAX_PRATE),
|
||||
GATE(SCLK_UART1, "clk_uart1", "clk_uart1_mux", 0,
|
||||
RK3308_CLKGATE_CON(2), 0, GFLAGS),
|
||||
|
||||
@@ -361,7 +365,7 @@ static struct rockchip_clk_branch rk3308_clk_branches[] __initdata = {
|
||||
COMPOSITE_FRACMUX(0, "clk_uart2_frac", "clk_uart2_src", CLK_SET_RATE_PARENT,
|
||||
RK3308_CLKSEL_CON(18), 0,
|
||||
RK3308_CLKGATE_CON(2), 3, GFLAGS,
|
||||
&rk3308_uart2_fracmux, 0),
|
||||
&rk3308_uart2_fracmux, RK3308_UART_FRAC_MAX_PRATE),
|
||||
GATE(SCLK_UART2, "clk_uart2", "clk_uart2_mux", CLK_SET_RATE_PARENT,
|
||||
RK3308_CLKGATE_CON(2), 4, GFLAGS),
|
||||
|
||||
@@ -371,7 +375,7 @@ static struct rockchip_clk_branch rk3308_clk_branches[] __initdata = {
|
||||
COMPOSITE_FRACMUX(0, "clk_uart3_frac", "clk_uart3_src", CLK_SET_RATE_PARENT,
|
||||
RK3308_CLKSEL_CON(21), 0,
|
||||
RK3308_CLKGATE_CON(2), 7, GFLAGS,
|
||||
&rk3308_uart3_fracmux, 0),
|
||||
&rk3308_uart3_fracmux, RK3308_UART_FRAC_MAX_PRATE),
|
||||
GATE(SCLK_UART3, "clk_uart3", "clk_uart3_mux", 0,
|
||||
RK3308_CLKGATE_CON(2), 8, GFLAGS),
|
||||
|
||||
@@ -381,7 +385,7 @@ static struct rockchip_clk_branch rk3308_clk_branches[] __initdata = {
|
||||
COMPOSITE_FRACMUX(0, "clk_uart4_frac", "clk_uart4_src", CLK_SET_RATE_PARENT,
|
||||
RK3308_CLKSEL_CON(24), 0,
|
||||
RK3308_CLKGATE_CON(2), 11, GFLAGS,
|
||||
&rk3308_uart4_fracmux, 0),
|
||||
&rk3308_uart4_fracmux, RK3308_UART_FRAC_MAX_PRATE),
|
||||
GATE(SCLK_UART4, "clk_uart4", "clk_uart4_mux", 0,
|
||||
RK3308_CLKGATE_CON(2), 12, GFLAGS),
|
||||
|
||||
@@ -628,7 +632,7 @@ static struct rockchip_clk_branch rk3308_clk_branches[] __initdata = {
|
||||
COMPOSITE_FRACMUX(0, "clk_pdm_frac", "clk_pdm_src", CLK_SET_RATE_PARENT,
|
||||
RK3308_CLKSEL_CON(47), 0,
|
||||
RK3308_CLKGATE_CON(10), 4, GFLAGS,
|
||||
&rk3308_pdm_fracmux, 0),
|
||||
&rk3308_pdm_fracmux, RK3308_PDM_FRAC_MAX_PRATE),
|
||||
GATE(SCLK_PDM, "clk_pdm", "clk_pdm_mux", 0,
|
||||
RK3308_CLKGATE_CON(10), 5, GFLAGS),
|
||||
|
||||
@@ -638,7 +642,7 @@ static struct rockchip_clk_branch rk3308_clk_branches[] __initdata = {
|
||||
COMPOSITE_FRACMUX(0, "clk_i2s0_8ch_tx_frac", "clk_i2s0_8ch_tx_src", CLK_SET_RATE_PARENT,
|
||||
RK3308_CLKSEL_CON(53), 0,
|
||||
RK3308_CLKGATE_CON(10), 13, GFLAGS,
|
||||
&rk3308_i2s0_8ch_tx_fracmux, 0),
|
||||
&rk3308_i2s0_8ch_tx_fracmux, RK3308_I2S_FRAC_MAX_PRATE),
|
||||
COMPOSITE_NODIV(SCLK_I2S0_8CH_TX, "clk_i2s0_8ch_tx", mux_i2s0_8ch_tx_rx_p, CLK_SET_RATE_PARENT,
|
||||
RK3308_CLKSEL_CON(52), 12, 1, MFLAGS,
|
||||
RK3308_CLKGATE_CON(10), 14, GFLAGS),
|
||||
@@ -652,7 +656,7 @@ static struct rockchip_clk_branch rk3308_clk_branches[] __initdata = {
|
||||
COMPOSITE_FRACMUX(0, "clk_i2s0_8ch_rx_frac", "clk_i2s0_8ch_rx_src", CLK_SET_RATE_PARENT,
|
||||
RK3308_CLKSEL_CON(55), 0,
|
||||
RK3308_CLKGATE_CON(11), 1, GFLAGS,
|
||||
&rk3308_i2s0_8ch_rx_fracmux, 0),
|
||||
&rk3308_i2s0_8ch_rx_fracmux, RK3308_I2S_FRAC_MAX_PRATE),
|
||||
COMPOSITE_NODIV(SCLK_I2S0_8CH_RX, "clk_i2s0_8ch_rx", mux_i2s0_8ch_rx_tx_p, CLK_SET_RATE_PARENT,
|
||||
RK3308_CLKSEL_CON(54), 12, 1, MFLAGS,
|
||||
RK3308_CLKGATE_CON(11), 2, GFLAGS),
|
||||
@@ -665,7 +669,7 @@ static struct rockchip_clk_branch rk3308_clk_branches[] __initdata = {
|
||||
COMPOSITE_FRACMUX(0, "clk_i2s1_8ch_tx_frac", "clk_i2s1_8ch_tx_src", CLK_SET_RATE_PARENT,
|
||||
RK3308_CLKSEL_CON(57), 0,
|
||||
RK3308_CLKGATE_CON(11), 5, GFLAGS,
|
||||
&rk3308_i2s1_8ch_tx_fracmux, 0),
|
||||
&rk3308_i2s1_8ch_tx_fracmux, RK3308_I2S_FRAC_MAX_PRATE),
|
||||
COMPOSITE_NODIV(SCLK_I2S1_8CH_TX, "clk_i2s1_8ch_tx", mux_i2s1_8ch_tx_rx_p, CLK_SET_RATE_PARENT,
|
||||
RK3308_CLKSEL_CON(56), 12, 1, MFLAGS,
|
||||
RK3308_CLKGATE_CON(11), 6, GFLAGS),
|
||||
@@ -679,7 +683,7 @@ static struct rockchip_clk_branch rk3308_clk_branches[] __initdata = {
|
||||
COMPOSITE_FRACMUX(0, "clk_i2s1_8ch_rx_frac", "clk_i2s1_8ch_rx_src", CLK_SET_RATE_PARENT,
|
||||
RK3308_CLKSEL_CON(59), 0,
|
||||
RK3308_CLKGATE_CON(11), 9, GFLAGS,
|
||||
&rk3308_i2s1_8ch_rx_fracmux, 0),
|
||||
&rk3308_i2s1_8ch_rx_fracmux, RK3308_I2S_FRAC_MAX_PRATE),
|
||||
COMPOSITE_NODIV(SCLK_I2S1_8CH_RX, "clk_i2s1_8ch_rx", mux_i2s1_8ch_rx_tx_p, CLK_SET_RATE_PARENT,
|
||||
RK3308_CLKSEL_CON(58), 12, 1, MFLAGS,
|
||||
RK3308_CLKGATE_CON(11), 10, GFLAGS),
|
||||
@@ -692,7 +696,7 @@ static struct rockchip_clk_branch rk3308_clk_branches[] __initdata = {
|
||||
COMPOSITE_FRACMUX(0, "clk_i2s2_8ch_tx_frac", "clk_i2s2_8ch_tx_src", CLK_SET_RATE_PARENT,
|
||||
RK3308_CLKSEL_CON(61), 0,
|
||||
RK3308_CLKGATE_CON(11), 13, GFLAGS,
|
||||
&rk3308_i2s2_8ch_tx_fracmux, 0),
|
||||
&rk3308_i2s2_8ch_tx_fracmux, RK3308_I2S_FRAC_MAX_PRATE),
|
||||
COMPOSITE_NODIV(SCLK_I2S2_8CH_TX, "clk_i2s2_8ch_tx", mux_i2s2_8ch_tx_rx_p, CLK_SET_RATE_PARENT,
|
||||
RK3308_CLKSEL_CON(60), 12, 1, MFLAGS,
|
||||
RK3308_CLKGATE_CON(11), 14, GFLAGS),
|
||||
@@ -706,7 +710,7 @@ static struct rockchip_clk_branch rk3308_clk_branches[] __initdata = {
|
||||
COMPOSITE_FRACMUX(0, "clk_i2s2_8ch_rx_frac", "clk_i2s2_8ch_rx_src", CLK_SET_RATE_PARENT,
|
||||
RK3308_CLKSEL_CON(63), 0,
|
||||
RK3308_CLKGATE_CON(12), 1, GFLAGS,
|
||||
&rk3308_i2s2_8ch_rx_fracmux, 0),
|
||||
&rk3308_i2s2_8ch_rx_fracmux, RK3308_I2S_FRAC_MAX_PRATE),
|
||||
COMPOSITE_NODIV(SCLK_I2S2_8CH_RX, "clk_i2s2_8ch_rx", mux_i2s2_8ch_rx_tx_p, CLK_SET_RATE_PARENT,
|
||||
RK3308_CLKSEL_CON(62), 12, 1, MFLAGS,
|
||||
RK3308_CLKGATE_CON(12), 2, GFLAGS),
|
||||
@@ -719,7 +723,7 @@ static struct rockchip_clk_branch rk3308_clk_branches[] __initdata = {
|
||||
COMPOSITE_FRACMUX(0, "clk_i2s3_8ch_tx_frac", "clk_i2s3_8ch_tx_src", CLK_SET_RATE_PARENT,
|
||||
RK3308_CLKSEL_CON(65), 0,
|
||||
RK3308_CLKGATE_CON(12), 5, GFLAGS,
|
||||
&rk3308_i2s3_8ch_tx_fracmux, 0),
|
||||
&rk3308_i2s3_8ch_tx_fracmux, RK3308_I2S_FRAC_MAX_PRATE),
|
||||
COMPOSITE_NODIV(SCLK_I2S3_8CH_TX, "clk_i2s3_8ch_tx", mux_i2s3_8ch_tx_rx_p, CLK_SET_RATE_PARENT,
|
||||
RK3308_CLKSEL_CON(64), 12, 1, MFLAGS,
|
||||
RK3308_CLKGATE_CON(12), 6, GFLAGS),
|
||||
@@ -733,7 +737,7 @@ static struct rockchip_clk_branch rk3308_clk_branches[] __initdata = {
|
||||
COMPOSITE_FRACMUX(0, "clk_i2s3_8ch_rx_frac", "clk_i2s3_8ch_rx_src", CLK_SET_RATE_PARENT,
|
||||
RK3308_CLKSEL_CON(67), 0,
|
||||
RK3308_CLKGATE_CON(12), 9, GFLAGS,
|
||||
&rk3308_i2s3_8ch_rx_fracmux, 0),
|
||||
&rk3308_i2s3_8ch_rx_fracmux, RK3308_I2S_FRAC_MAX_PRATE),
|
||||
COMPOSITE_NODIV(SCLK_I2S3_8CH_RX, "clk_i2s3_8ch_rx", mux_i2s3_8ch_rx_tx_p, CLK_SET_RATE_PARENT,
|
||||
RK3308_CLKSEL_CON(66), 12, 1, MFLAGS,
|
||||
RK3308_CLKGATE_CON(12), 10, GFLAGS),
|
||||
@@ -746,7 +750,7 @@ static struct rockchip_clk_branch rk3308_clk_branches[] __initdata = {
|
||||
COMPOSITE_FRACMUX(0, "clk_i2s0_2ch_frac", "clk_i2s0_2ch_src", CLK_SET_RATE_PARENT,
|
||||
RK3308_CLKSEL_CON(69), 0,
|
||||
RK3308_CLKGATE_CON(12), 13, GFLAGS,
|
||||
&rk3308_i2s0_2ch_fracmux, 0),
|
||||
&rk3308_i2s0_2ch_fracmux, RK3308_I2S_FRAC_MAX_PRATE),
|
||||
GATE(SCLK_I2S0_2CH, "clk_i2s0_2ch", "clk_i2s0_2ch_mux", 0,
|
||||
RK3308_CLKGATE_CON(12), 14, GFLAGS),
|
||||
COMPOSITE_NODIV(SCLK_I2S0_2CH_OUT, "clk_i2s0_2ch_out", mux_i2s0_2ch_out_p, CLK_SET_RATE_PARENT,
|
||||
@@ -759,7 +763,7 @@ static struct rockchip_clk_branch rk3308_clk_branches[] __initdata = {
|
||||
COMPOSITE_FRACMUX(0, "clk_i2s1_2ch_frac", "clk_i2s1_2ch_src", CLK_SET_RATE_PARENT,
|
||||
RK3308_CLKSEL_CON(71), 0,
|
||||
RK3308_CLKGATE_CON(13), 1, GFLAGS,
|
||||
&rk3308_i2s1_2ch_fracmux, 0),
|
||||
&rk3308_i2s1_2ch_fracmux, RK3308_I2S_FRAC_MAX_PRATE),
|
||||
GATE(SCLK_I2S1_2CH, "clk_i2s1_2ch", "clk_i2s1_2ch_mux", 0,
|
||||
RK3308_CLKGATE_CON(13), 2, GFLAGS),
|
||||
COMPOSITE_NODIV(SCLK_I2S1_2CH_OUT, "clk_i2s1_2ch_out", mux_i2s1_2ch_out_p, CLK_SET_RATE_PARENT,
|
||||
@@ -777,7 +781,7 @@ static struct rockchip_clk_branch rk3308_clk_branches[] __initdata = {
|
||||
COMPOSITE_FRACMUX(0, "clk_spdif_tx_frac", "clk_spdif_tx_src", CLK_SET_RATE_PARENT,
|
||||
RK3308_CLKSEL_CON(49), 0,
|
||||
RK3308_CLKGATE_CON(10), 7, GFLAGS,
|
||||
&rk3308_spdif_tx_fracmux, 0),
|
||||
&rk3308_spdif_tx_fracmux, RK3308_SPDIF_FRAC_MAX_PRATE),
|
||||
GATE(SCLK_SPDIF_TX, "clk_spdif_tx", "clk_spdif_tx_mux", 0,
|
||||
RK3308_CLKGATE_CON(10), 8, GFLAGS),
|
||||
|
||||
@@ -792,7 +796,7 @@ static struct rockchip_clk_branch rk3308_clk_branches[] __initdata = {
|
||||
COMPOSITE_FRACMUX(0, "clk_spdif_rx_frac", "clk_spdif_rx_src", CLK_SET_RATE_PARENT,
|
||||
RK3308_CLKSEL_CON(51), 0,
|
||||
RK3308_CLKGATE_CON(10), 10, GFLAGS,
|
||||
&rk3308_spdif_rx_fracmux, 0),
|
||||
&rk3308_spdif_rx_fracmux, RK3308_SPDIF_FRAC_MAX_PRATE),
|
||||
GATE(SCLK_SPDIF_RX, "clk_spdif_rx", "clk_spdif_rx_mux", 0,
|
||||
RK3308_CLKGATE_CON(10), 11, GFLAGS),
|
||||
|
||||
|
||||
Reference in New Issue
Block a user