1212#include <dt-bindings/clock/rockchip,rk3588-cru.h>
1313#include "clk.h"
1414
15- #define RK3588_LINKED_CLK CLK_IS_CRITICAL
16-
17-
1815#define RK3588_GRF_SOC_STATUS0 0x600
1916#define RK3588_PHYREF_ALT_GATE 0xc38
2017
@@ -1439,7 +1436,7 @@ static struct rockchip_clk_branch rk3588_early_clk_branches[] __initdata = {
14391436 COMPOSITE_NODIV (HCLK_NVM_ROOT , "hclk_nvm_root" , mux_200m_100m_50m_24m_p , 0 ,
14401437 RK3588_CLKSEL_CON (77 ), 0 , 2 , MFLAGS ,
14411438 RK3588_CLKGATE_CON (31 ), 0 , GFLAGS ),
1442- COMPOSITE (ACLK_NVM_ROOT , "aclk_nvm_root" , gpll_cpll_p , RK3588_LINKED_CLK ,
1439+ COMPOSITE (ACLK_NVM_ROOT , "aclk_nvm_root" , gpll_cpll_p , 0 ,
14431440 RK3588_CLKSEL_CON (77 ), 7 , 1 , MFLAGS , 2 , 5 , DFLAGS ,
14441441 RK3588_CLKGATE_CON (31 ), 1 , GFLAGS ),
14451442 GATE (ACLK_EMMC , "aclk_emmc" , "aclk_nvm_root" , 0 ,
@@ -1668,13 +1665,13 @@ static struct rockchip_clk_branch rk3588_early_clk_branches[] __initdata = {
16681665 RK3588_CLKGATE_CON (42 ), 9 , GFLAGS ),
16691666
16701667 /* vdpu */
1671- COMPOSITE (ACLK_VDPU_ROOT , "aclk_vdpu_root" , gpll_cpll_aupll_p , RK3588_LINKED_CLK ,
1668+ COMPOSITE (ACLK_VDPU_ROOT , "aclk_vdpu_root" , gpll_cpll_aupll_p , 0 ,
16721669 RK3588_CLKSEL_CON (98 ), 5 , 2 , MFLAGS , 0 , 5 , DFLAGS ,
16731670 RK3588_CLKGATE_CON (44 ), 0 , GFLAGS ),
16741671 COMPOSITE_NODIV (ACLK_VDPU_LOW_ROOT , "aclk_vdpu_low_root" , mux_400m_200m_100m_24m_p , 0 ,
16751672 RK3588_CLKSEL_CON (98 ), 7 , 2 , MFLAGS ,
16761673 RK3588_CLKGATE_CON (44 ), 1 , GFLAGS ),
1677- COMPOSITE_NODIV (HCLK_VDPU_ROOT , "hclk_vdpu_root" , mux_200m_100m_50m_24m_p , RK3588_LINKED_CLK ,
1674+ COMPOSITE_NODIV (HCLK_VDPU_ROOT , "hclk_vdpu_root" , mux_200m_100m_50m_24m_p , 0 ,
16781675 RK3588_CLKSEL_CON (98 ), 9 , 2 , MFLAGS ,
16791676 RK3588_CLKGATE_CON (44 ), 2 , GFLAGS ),
16801677 COMPOSITE (ACLK_JPEG_DECODER_ROOT , "aclk_jpeg_decoder_root" , gpll_cpll_aupll_spll_p , 0 ,
@@ -1725,9 +1722,9 @@ static struct rockchip_clk_branch rk3588_early_clk_branches[] __initdata = {
17251722 COMPOSITE (ACLK_RKVENC0_ROOT , "aclk_rkvenc0_root" , gpll_cpll_npll_p , 0 ,
17261723 RK3588_CLKSEL_CON (102 ), 7 , 2 , MFLAGS , 2 , 5 , DFLAGS ,
17271724 RK3588_CLKGATE_CON (47 ), 1 , GFLAGS ),
1728- GATE (HCLK_RKVENC0 , "hclk_rkvenc0" , "hclk_rkvenc0_root" , RK3588_LINKED_CLK ,
1725+ GATE (HCLK_RKVENC0 , "hclk_rkvenc0" , "hclk_rkvenc0_root" , 0 ,
17291726 RK3588_CLKGATE_CON (47 ), 4 , GFLAGS ),
1730- GATE (ACLK_RKVENC0 , "aclk_rkvenc0" , "aclk_rkvenc0_root" , RK3588_LINKED_CLK ,
1727+ GATE (ACLK_RKVENC0 , "aclk_rkvenc0" , "aclk_rkvenc0_root" , 0 ,
17311728 RK3588_CLKGATE_CON (47 ), 5 , GFLAGS ),
17321729 COMPOSITE (CLK_RKVENC0_CORE , "clk_rkvenc0_core" , gpll_cpll_aupll_npll_p , 0 ,
17331730 RK3588_CLKSEL_CON (102 ), 14 , 2 , MFLAGS , 9 , 5 , DFLAGS ,
@@ -1737,10 +1734,10 @@ static struct rockchip_clk_branch rk3588_early_clk_branches[] __initdata = {
17371734 RK3588_CLKGATE_CON (48 ), 6 , GFLAGS ),
17381735
17391736 /* vi */
1740- COMPOSITE (ACLK_VI_ROOT , "aclk_vi_root" , gpll_cpll_npll_aupll_spll_p , RK3588_LINKED_CLK ,
1737+ COMPOSITE (ACLK_VI_ROOT , "aclk_vi_root" , gpll_cpll_npll_aupll_spll_p , 0 ,
17411738 RK3588_CLKSEL_CON (106 ), 5 , 3 , MFLAGS , 0 , 5 , DFLAGS ,
17421739 RK3588_CLKGATE_CON (49 ), 0 , GFLAGS ),
1743- COMPOSITE_NODIV (HCLK_VI_ROOT , "hclk_vi_root" , mux_200m_100m_50m_24m_p , RK3588_LINKED_CLK ,
1740+ COMPOSITE_NODIV (HCLK_VI_ROOT , "hclk_vi_root" , mux_200m_100m_50m_24m_p , 0 ,
17441741 RK3588_CLKSEL_CON (106 ), 8 , 2 , MFLAGS ,
17451742 RK3588_CLKGATE_CON (49 ), 1 , GFLAGS ),
17461743 COMPOSITE_NODIV (PCLK_VI_ROOT , "pclk_vi_root" , mux_100m_50m_24m_p , 0 ,
@@ -1910,10 +1907,10 @@ static struct rockchip_clk_branch rk3588_early_clk_branches[] __initdata = {
19101907 COMPOSITE (ACLK_VOP_ROOT , "aclk_vop_root" , gpll_cpll_dmyaupll_npll_spll_p , 0 ,
19111908 RK3588_CLKSEL_CON (110 ), 5 , 3 , MFLAGS , 0 , 5 , DFLAGS ,
19121909 RK3588_CLKGATE_CON (52 ), 0 , GFLAGS ),
1913- COMPOSITE_NODIV (ACLK_VOP_LOW_ROOT , "aclk_vop_low_root" , mux_400m_200m_100m_24m_p , RK3588_LINKED_CLK ,
1910+ COMPOSITE_NODIV (ACLK_VOP_LOW_ROOT , "aclk_vop_low_root" , mux_400m_200m_100m_24m_p , 0 ,
19141911 RK3588_CLKSEL_CON (110 ), 8 , 2 , MFLAGS ,
19151912 RK3588_CLKGATE_CON (52 ), 1 , GFLAGS ),
1916- COMPOSITE_NODIV (HCLK_VOP_ROOT , "hclk_vop_root" , mux_200m_100m_50m_24m_p , RK3588_LINKED_CLK ,
1913+ COMPOSITE_NODIV (HCLK_VOP_ROOT , "hclk_vop_root" , mux_200m_100m_50m_24m_p , 0 ,
19171914 RK3588_CLKSEL_CON (110 ), 10 , 2 , MFLAGS ,
19181915 RK3588_CLKGATE_CON (52 ), 2 , GFLAGS ),
19191916 COMPOSITE_NODIV (PCLK_VOP_ROOT , "pclk_vop_root" , mux_100m_50m_24m_p , 0 ,
@@ -2416,7 +2413,7 @@ static struct rockchip_clk_branch rk3588_early_clk_branches[] __initdata = {
24162413static struct rockchip_clk_branch rk3588_clk_branches [] = {
24172414 GATE_LINK (ACLK_ISP1_PRE , "aclk_isp1_pre" , "aclk_isp1_root" , ACLK_VI_ROOT , 0 , RK3588_CLKGATE_CON (26 ), 6 , GFLAGS ),
24182415 GATE_LINK (HCLK_ISP1_PRE , "hclk_isp1_pre" , "hclk_isp1_root" , HCLK_VI_ROOT , 0 , RK3588_CLKGATE_CON (26 ), 8 , GFLAGS ),
2419- GATE_LINK (HCLK_NVM , "hclk_nvm" , "hclk_nvm_root" , ACLK_NVM_ROOT , RK3588_LINKED_CLK , RK3588_CLKGATE_CON (31 ), 2 , GFLAGS ),
2416+ GATE_LINK (HCLK_NVM , "hclk_nvm" , "hclk_nvm_root" , ACLK_NVM_ROOT , 0 , RK3588_CLKGATE_CON (31 ), 2 , GFLAGS ),
24202417 GATE_LINK (ACLK_USB , "aclk_usb" , "aclk_usb_root" , ACLK_VO1USB_TOP_ROOT , 0 , RK3588_CLKGATE_CON (42 ), 2 , GFLAGS ),
24212418 GATE_LINK (HCLK_USB , "hclk_usb" , "hclk_usb_root" , HCLK_VO1USB_TOP_ROOT , 0 , RK3588_CLKGATE_CON (42 ), 3 , GFLAGS ),
24222419 GATE_LINK (ACLK_JPEG_DECODER_PRE , "aclk_jpeg_decoder_pre" , "aclk_jpeg_decoder_root" , ACLK_VDPU_ROOT , 0 , RK3588_CLKGATE_CON (44 ), 7 , GFLAGS ),
@@ -2428,9 +2425,9 @@ static struct rockchip_clk_branch rk3588_clk_branches[] = {
24282425 GATE_LINK (HCLK_RKVDEC1_PRE , "hclk_rkvdec1_pre" , "hclk_rkvdec1_root" , HCLK_VDPU_ROOT , 0 , RK3588_CLKGATE_CON (41 ), 4 , GFLAGS ),
24292426 GATE_LINK (ACLK_RKVDEC1_PRE , "aclk_rkvdec1_pre" , "aclk_rkvdec1_root" , ACLK_VDPU_ROOT , 0 , RK3588_CLKGATE_CON (41 ), 5 , GFLAGS ),
24302427 GATE_LINK (ACLK_HDCP0_PRE , "aclk_hdcp0_pre" , "aclk_vo0_root" , ACLK_VOP_LOW_ROOT , 0 , RK3588_CLKGATE_CON (55 ), 9 , GFLAGS ),
2431- GATE_LINK (HCLK_VO0 , "hclk_vo0" , "hclk_vo0_root" , HCLK_VOP_ROOT , RK3588_LINKED_CLK , RK3588_CLKGATE_CON (55 ), 5 , GFLAGS ),
2428+ GATE_LINK (HCLK_VO0 , "hclk_vo0" , "hclk_vo0_root" , HCLK_VOP_ROOT , 0 , RK3588_CLKGATE_CON (55 ), 5 , GFLAGS ),
24322429 GATE_LINK (ACLK_HDCP1_PRE , "aclk_hdcp1_pre" , "aclk_hdcp1_root" , ACLK_VO1USB_TOP_ROOT , 0 , RK3588_CLKGATE_CON (59 ), 6 , GFLAGS ),
2433- GATE_LINK (HCLK_VO1 , "hclk_vo1" , "hclk_vo1_root" , HCLK_VO1USB_TOP_ROOT , RK3588_LINKED_CLK , RK3588_CLKGATE_CON (59 ), 9 , GFLAGS ),
2430+ GATE_LINK (HCLK_VO1 , "hclk_vo1" , "hclk_vo1_root" , HCLK_VO1USB_TOP_ROOT , 0 , RK3588_CLKGATE_CON (59 ), 9 , GFLAGS ),
24342431 GATE_LINK (ACLK_AV1_PRE , "aclk_av1_pre" , "aclk_av1_root" , ACLK_VDPU_ROOT , 0 , RK3588_CLKGATE_CON (68 ), 1 , GFLAGS ),
24352432 GATE_LINK (PCLK_AV1_PRE , "pclk_av1_pre" , "pclk_av1_root" , HCLK_VDPU_ROOT , 0 , RK3588_CLKGATE_CON (68 ), 4 , GFLAGS ),
24362433 GATE_LINK (HCLK_SDIO_PRE , "hclk_sdio_pre" , "hclk_sdio_root" , HCLK_NVM , 0 , RK3588_CLKGATE_CON (75 ), 1 , GFLAGS ),
0 commit comments