15
15
16
16
#include "clk.h"
17
17
18
- #define IMX93_CLK_END 207
18
+ #define IMX93_CLK_END 208
19
19
20
20
#define PLAT_IMX93 BIT(0)
21
21
#define PLAT_IMX91 BIT(1)
@@ -38,6 +38,7 @@ static u32 share_count_sai2;
38
38
static u32 share_count_sai3 ;
39
39
static u32 share_count_mub ;
40
40
static u32 share_count_pdm ;
41
+ static u32 share_count_spdif ;
41
42
42
43
static const char * const a55_core_sels [] = {"a55_alt" , "arm_pll" };
43
44
static const char * parent_names [MAX_SEL ][4 ] = {
@@ -70,8 +71,8 @@ static const struct imx93_clk_root {
70
71
{ IMX93_CLK_WAKEUP_AXI , "wakeup_axi_root" , 0x0380 , FAST_SEL , CLK_IS_CRITICAL },
71
72
{ IMX93_CLK_SWO_TRACE , "swo_trace_root" , 0x0400 , LOW_SPEED_IO_SEL , },
72
73
{ IMX93_CLK_M33_SYSTICK , "m33_systick_root" , 0x0480 , LOW_SPEED_IO_SEL , 0 , PLAT_IMX93 , },
73
- { IMX93_CLK_FLEXIO1 , "flexio1_root" , 0x0500 , LOW_SPEED_IO_SEL , },
74
- { IMX93_CLK_FLEXIO2 , "flexio2_root" , 0x0580 , LOW_SPEED_IO_SEL , },
74
+ { IMX93_CLK_FLEXIO1 , "flexio1_root" , 0x0500 , LOW_SPEED_IO_SEL , 0 , PLAT_IMX93 , },
75
+ { IMX93_CLK_FLEXIO2 , "flexio2_root" , 0x0580 , LOW_SPEED_IO_SEL , 0 , PLAT_IMX93 , },
75
76
{ IMX93_CLK_LPTMR1 , "lptmr1_root" , 0x0700 , LOW_SPEED_IO_SEL , },
76
77
{ IMX93_CLK_LPTMR2 , "lptmr2_root" , 0x0780 , LOW_SPEED_IO_SEL , },
77
78
{ IMX93_CLK_TPM2 , "tpm2_root" , 0x0880 , TPM_SEL , },
@@ -177,19 +178,19 @@ static const struct imx93_clk_ccgr {
177
178
{ IMX93_CLK_WDOG5_GATE , "wdog5" , "osc_24m" , 0x8400 , },
178
179
{ IMX93_CLK_SEMA1_GATE , "sema1" , "bus_aon_root" , 0x8440 , },
179
180
{ IMX93_CLK_SEMA2_GATE , "sema2" , "bus_wakeup_root" , 0x8480 , },
180
- { IMX93_CLK_MU1_A_GATE , "mu1_a" , "bus_aon_root" , 0x84c0 , CLK_IGNORE_UNUSED },
181
- { IMX93_CLK_MU2_A_GATE , "mu2_a" , "bus_wakeup_root" , 0x84c0 , CLK_IGNORE_UNUSED },
182
- { IMX93_CLK_MU1_B_GATE , "mu1_b" , "bus_aon_root" , 0x8500 , 0 , & share_count_mub },
183
- { IMX93_CLK_MU2_B_GATE , "mu2_b" , "bus_wakeup_root" , 0x8500 , 0 , & share_count_mub },
181
+ { IMX93_CLK_MU1_A_GATE , "mu1_a" , "bus_aon_root" , 0x84c0 , CLK_IGNORE_UNUSED , NULL , PLAT_IMX93 },
182
+ { IMX93_CLK_MU2_A_GATE , "mu2_a" , "bus_wakeup_root" , 0x84c0 , CLK_IGNORE_UNUSED , NULL , PLAT_IMX93 },
183
+ { IMX93_CLK_MU1_B_GATE , "mu1_b" , "bus_aon_root" , 0x8500 , 0 , & share_count_mub , PLAT_IMX93 },
184
+ { IMX93_CLK_MU2_B_GATE , "mu2_b" , "bus_wakeup_root" , 0x8500 , 0 , & share_count_mub , PLAT_IMX93 },
184
185
{ IMX93_CLK_EDMA1_GATE , "edma1" , "m33_root" , 0x8540 , },
185
186
{ IMX93_CLK_EDMA2_GATE , "edma2" , "wakeup_axi_root" , 0x8580 , },
186
187
{ IMX93_CLK_FLEXSPI1_GATE , "flexspi1" , "flexspi1_root" , 0x8640 , },
187
188
{ IMX93_CLK_GPIO1_GATE , "gpio1" , "m33_root" , 0x8880 , },
188
189
{ IMX93_CLK_GPIO2_GATE , "gpio2" , "bus_wakeup_root" , 0x88c0 , },
189
190
{ IMX93_CLK_GPIO3_GATE , "gpio3" , "bus_wakeup_root" , 0x8900 , },
190
191
{ IMX93_CLK_GPIO4_GATE , "gpio4" , "bus_wakeup_root" , 0x8940 , },
191
- { IMX93_CLK_FLEXIO1_GATE , "flexio1" , "flexio1_root" , 0x8980 , },
192
- { IMX93_CLK_FLEXIO2_GATE , "flexio2" , "flexio2_root" , 0x89c0 , },
192
+ { IMX93_CLK_FLEXIO1_GATE , "flexio1" , "flexio1_root" , 0x8980 , 0 , NULL , PLAT_IMX93 },
193
+ { IMX93_CLK_FLEXIO2_GATE , "flexio2" , "flexio2_root" , 0x89c0 , 0 , NULL , PLAT_IMX93 },
193
194
{ IMX93_CLK_LPIT1_GATE , "lpit1" , "bus_aon_root" , 0x8a00 , },
194
195
{ IMX93_CLK_LPIT2_GATE , "lpit2" , "bus_wakeup_root" , 0x8a40 , },
195
196
{ IMX93_CLK_LPTMR1_GATE , "lptmr1" , "lptmr1_root" , 0x8a80 , },
@@ -238,10 +239,10 @@ static const struct imx93_clk_ccgr {
238
239
{ IMX93_CLK_SAI3_GATE , "sai3" , "sai3_root" , 0x94c0 , 0 , & share_count_sai3 },
239
240
{ IMX93_CLK_SAI3_IPG , "sai3_ipg_clk" , "bus_wakeup_root" , 0x94c0 , 0 , & share_count_sai3 },
240
241
{ IMX93_CLK_MIPI_CSI_GATE , "mipi_csi" , "media_apb_root" , 0x9580 , },
241
- { IMX93_CLK_MIPI_DSI_GATE , "mipi_dsi" , "media_apb_root" , 0x95c0 , },
242
- { IMX93_CLK_LVDS_GATE , "lvds" , "media_ldb_root" , 0x9600 , },
242
+ { IMX93_CLK_MIPI_DSI_GATE , "mipi_dsi" , "media_apb_root" , 0x95c0 , 0 , NULL , PLAT_IMX93 },
243
+ { IMX93_CLK_LVDS_GATE , "lvds" , "media_ldb_root" , 0x9600 , 0 , NULL , PLAT_IMX93 },
243
244
{ IMX93_CLK_LCDIF_GATE , "lcdif" , "media_apb_root" , 0x9640 , },
244
- { IMX93_CLK_PXP_GATE , "pxp" , "media_apb_root" , 0x9680 , },
245
+ { IMX93_CLK_PXP_GATE , "pxp" , "media_apb_root" , 0x9680 , 0 , NULL , PLAT_IMX93 },
245
246
{ IMX93_CLK_ISI_GATE , "isi" , "media_apb_root" , 0x96c0 , },
246
247
{ IMX93_CLK_NIC_MEDIA_GATE , "nic_media" , "media_axi_root" , 0x9700 , },
247
248
{ IMX93_CLK_USB_CONTROLLER_GATE , "usb_controller" , "hsio_root" , 0x9a00 , },
@@ -252,12 +253,13 @@ static const struct imx93_clk_ccgr {
252
253
{ IMX93_CLK_MQS1_GATE , "mqs1" , "sai1_root" , 0x9b00 , },
253
254
{ IMX93_CLK_MQS2_GATE , "mqs2" , "sai3_root" , 0x9b40 , },
254
255
{ IMX93_CLK_AUD_XCVR_GATE , "aud_xcvr" , "audio_xcvr_root" , 0x9b80 , },
255
- { IMX93_CLK_SPDIF_GATE , "spdif" , "spdif_root" , 0x9c00 , },
256
+ { IMX93_CLK_SPDIF_IPG , "spdif_ipg_clk" , "bus_wakeup_root" , 0x9c00 , 0 , & share_count_spdif },
257
+ { IMX93_CLK_SPDIF_GATE , "spdif" , "spdif_root" , 0x9c00 , 0 , & share_count_spdif },
256
258
{ IMX93_CLK_HSIO_32K_GATE , "hsio_32k" , "osc_32k" , 0x9dc0 , },
257
259
{ IMX93_CLK_ENET1_GATE , "enet1" , "wakeup_axi_root" , 0x9e00 , 0 , NULL , PLAT_IMX93 , },
258
260
{ IMX93_CLK_ENET_QOS_GATE , "enet_qos" , "wakeup_axi_root" , 0x9e40 , 0 , NULL , PLAT_IMX93 , },
259
- { IMX91_CLK_ENET2_REGULAR_GATE , "enet2_regular" , "wakeup_axi_root" , 0x9e00 , 0 , NULL , PLAT_IMX91 , },
260
- { IMX91_CLK_ENET1_QOS_TSN_GATE , "enet1_qos_tsn" , "wakeup_axi_root" , 0x9e40 , 0 , NULL , PLAT_IMX91 , },
261
+ { IMX91_CLK_ENET2_REGULAR_GATE , "enet2_regular" , "wakeup_axi_root" , 0x9e00 , 0 , NULL , PLAT_IMX91 , },
262
+ { IMX91_CLK_ENET1_QOS_TSN_GATE , "enet1_qos_tsn" , "wakeup_axi_root" , 0x9e40 , 0 , NULL , PLAT_IMX91 , },
261
263
/* Critical because clk accessed during CPU idle */
262
264
{ IMX93_CLK_SYS_CNT_GATE , "sys_cnt" , "osc_24m" , 0x9e80 , CLK_IS_CRITICAL },
263
265
{ IMX93_CLK_TSTMR1_GATE , "tstmr1" , "bus_aon_root" , 0x9ec0 , },
0 commit comments