.set_ofs = 0x0040, .clr_ofs = 0x0044, .sta_ofs = 0x0048, }; #define GATE_ICG(_id, _name, _parent, _shift) { \ .id = _id, \ .name = _name, \ .parent_name = _parent, \ .regs = &infra_cg_regs, \ .shift = _shift, \ .ops = &mtk_clk_gate_ops_setclr, \ } static const struct mtk_gate infra_clks[] __initconst = { GATE_ICG(CLK_INFRA_DBGCLK, "infra_dbgclk", "axi_sel", 0), GATE_ICG(CLK_INFRA_SMI, "infra_smi", "mm_sel", 1), GATE_ICG(CLK_INFRA_AUDIO, "infra_audio", "aud_intbus_sel", 5), GATE_ICG(CLK_INFRA_GCE, "infra_gce", "axi_sel", 6), GATE_ICG(CLK_INFRA_L2C_SRAM, "infra_l2c_sram", "axi_sel", 7), GATE_ICG(CLK_INFRA_M4U, "infra_m4u", "mem_sel", 8), GATE_ICG(CLK_INFRA_CPUM, "infra_cpum", "cpum_ck", 15), GATE_ICG(CLK_INFRA_KP, "infra_kp", "axi_sel", 16), GATE_ICG(CLK_INFRA_CEC, "infra_cec", "clk26m", 18), GATE_ICG(CLK_INFRA_PMICSPI, "infra_pmicspi", "pmicspi_sel", 22), GATE_ICG(CLK_INFRA_PMICWRAP, "infra_pmicwrap", "axi_sel", 23), }; static const struct mtk_fixed_factor infra_divs[] __initconst = { FACTOR(CLK_INFRA_CLK_13M, "clk13m", "clk26m", 1, 2), };
.set_ofs = 0x0040, .clr_ofs = 0x0044, .sta_ofs = 0x0048, }; #define GATE_ICG(_id, _name, _parent, _shift) { \ .id = _id, \ .name = _name, \ .parent_name = _parent, \ .regs = &infra_cg_regs, \ .shift = _shift, \ .ops = &mtk_clk_gate_ops_setclr, \ } static const struct mtk_gate infra_clks[] = { GATE_ICG(CLK_INFRA_DBG, "dbgclk", "axi_sel", 0), GATE_ICG(CLK_INFRA_SMI, "smi_ck", "mm_sel", 1), GATE_ICG(CLK_INFRA_QAXI_CM4, "cm4_ck", "axi_sel", 2), GATE_ICG(CLK_INFRA_AUD_SPLIN_B, "audio_splin_bck", "hadds2pll_294m", 4), GATE_ICG(CLK_INFRA_AUDIO, "audio_ck", "clk26m", 5), GATE_ICG(CLK_INFRA_EFUSE, "efuse_ck", "clk26m", 6), GATE_ICG(CLK_INFRA_L2C_SRAM, "l2c_sram_ck", "mm_sel", 7), GATE_ICG(CLK_INFRA_M4U, "m4u_ck", "mem_sel", 8), GATE_ICG(CLK_INFRA_CONNMCU, "connsys_bus", "wbg_dig_ck_416m", 12), GATE_ICG(CLK_INFRA_TRNG, "trng_ck", "axi_sel", 13), GATE_ICG(CLK_INFRA_RAMBUFIF, "rambufif_ck", "mem_sel", 14), GATE_ICG(CLK_INFRA_CPUM, "cpum_ck", "mem_sel", 15), GATE_ICG(CLK_INFRA_KP, "kp_ck", "axi_sel", 16), GATE_ICG(CLK_INFRA_CEC, "cec_ck", "rtc_sel", 18), GATE_ICG(CLK_INFRA_IRRX, "irrx_ck", "axi_sel", 19), GATE_ICG(CLK_INFRA_PMICSPI, "pmicspi_ck", "pmicspi_sel", 22),