@@ -1119,13 +1119,54 @@ static const struct rpm_smd_clk_desc rpm_clk_sm6115 = {
1119
1119
.num_clks = ARRAY_SIZE (sm6115_clks ),
1120
1120
};
1121
1121
1122
+ /* SM6375 */
1123
+ DEFINE_CLK_SMD_RPM (sm6375 , mmnrt_clk , mmnrt_a_clk , QCOM_SMD_RPM_MMXI_CLK , 0 );
1124
+ DEFINE_CLK_SMD_RPM (sm6375 , mmrt_clk , mmrt_a_clk , QCOM_SMD_RPM_MMXI_CLK , 1 );
1125
+ DEFINE_CLK_SMD_RPM (qcm2290 , hwkm_clk , hwkm_a_clk , QCOM_SMD_RPM_HWKM_CLK , 0 );
1126
+ DEFINE_CLK_SMD_RPM (qcm2290 , pka_clk , pka_a_clk , QCOM_SMD_RPM_PKA_CLK , 0 );
1127
+ DEFINE_CLK_SMD_RPM_BRANCH (sm6375 , bimc_freq_log , bimc_freq_log_a , QCOM_SMD_RPM_MISC_CLK , 4 , 1 );
1128
+ static struct clk_smd_rpm * sm6375_clks [] = {
1129
+ [RPM_SMD_XO_CLK_SRC ] = & sdm660_bi_tcxo ,
1130
+ [RPM_SMD_XO_A_CLK_SRC ] = & sdm660_bi_tcxo_a ,
1131
+ [RPM_SMD_SNOC_CLK ] = & sm6125_snoc_clk ,
1132
+ [RPM_SMD_SNOC_A_CLK ] = & sm6125_snoc_a_clk ,
1133
+ [RPM_SMD_BIMC_CLK ] = & msm8916_bimc_clk ,
1134
+ [RPM_SMD_BIMC_A_CLK ] = & msm8916_bimc_a_clk ,
1135
+ [RPM_SMD_QDSS_CLK ] = & sm6125_qdss_clk ,
1136
+ [RPM_SMD_QDSS_A_CLK ] = & sm6125_qdss_a_clk ,
1137
+ [RPM_SMD_CNOC_CLK ] = & sm6125_cnoc_clk ,
1138
+ [RPM_SMD_CNOC_A_CLK ] = & sm6125_cnoc_a_clk ,
1139
+ [RPM_SMD_IPA_CLK ] = & msm8976_ipa_clk ,
1140
+ [RPM_SMD_IPA_A_CLK ] = & msm8976_ipa_a_clk ,
1141
+ [RPM_SMD_QUP_CLK ] = & sm6125_qup_clk ,
1142
+ [RPM_SMD_QUP_A_CLK ] = & sm6125_qup_a_clk ,
1143
+ [RPM_SMD_MMRT_CLK ] = & sm6375_mmrt_clk ,
1144
+ [RPM_SMD_MMRT_A_CLK ] = & sm6375_mmrt_a_clk ,
1145
+ [RPM_SMD_MMNRT_CLK ] = & sm6375_mmnrt_clk ,
1146
+ [RPM_SMD_MMNRT_A_CLK ] = & sm6375_mmnrt_a_clk ,
1147
+ [RPM_SMD_SNOC_PERIPH_CLK ] = & sm6125_snoc_periph_clk ,
1148
+ [RPM_SMD_SNOC_PERIPH_A_CLK ] = & sm6125_snoc_periph_a_clk ,
1149
+ [RPM_SMD_SNOC_LPASS_CLK ] = & sm6125_snoc_lpass_clk ,
1150
+ [RPM_SMD_SNOC_LPASS_A_CLK ] = & sm6125_snoc_lpass_a_clk ,
1151
+ [RPM_SMD_CE1_CLK ] = & msm8992_ce1_clk ,
1152
+ [RPM_SMD_CE1_A_CLK ] = & msm8992_ce1_a_clk ,
1153
+ [RPM_SMD_HWKM_CLK ] = & qcm2290_hwkm_clk ,
1154
+ [RPM_SMD_HWKM_A_CLK ] = & qcm2290_hwkm_a_clk ,
1155
+ [RPM_SMD_PKA_CLK ] = & qcm2290_pka_clk ,
1156
+ [RPM_SMD_PKA_A_CLK ] = & qcm2290_pka_a_clk ,
1157
+ [RPM_SMD_BIMC_FREQ_LOG ] = & sm6375_bimc_freq_log ,
1158
+ };
1159
+
1160
+ static const struct rpm_smd_clk_desc rpm_clk_sm6375 = {
1161
+ .clks = sm6375_clks ,
1162
+ .num_clks = ARRAY_SIZE (sm6375_clks ),
1163
+ };
1164
+
1122
1165
/* QCM2290 */
1123
1166
DEFINE_CLK_SMD_RPM_XO_BUFFER (qcm2290 , ln_bb_clk2 , ln_bb_clk2_a , 0x2 , 19200000 );
1124
1167
DEFINE_CLK_SMD_RPM_XO_BUFFER (qcm2290 , rf_clk3 , rf_clk3_a , 6 , 38400000 );
1125
1168
1126
1169
DEFINE_CLK_SMD_RPM (qcm2290 , qpic_clk , qpic_a_clk , QCOM_SMD_RPM_QPIC_CLK , 0 );
1127
- DEFINE_CLK_SMD_RPM (qcm2290 , hwkm_clk , hwkm_a_clk , QCOM_SMD_RPM_HWKM_CLK , 0 );
1128
- DEFINE_CLK_SMD_RPM (qcm2290 , pka_clk , pka_a_clk , QCOM_SMD_RPM_PKA_CLK , 0 );
1129
1170
DEFINE_CLK_SMD_RPM (qcm2290 , cpuss_gnoc_clk , cpuss_gnoc_a_clk ,
1130
1171
QCOM_SMD_RPM_MEM_CLK , 1 );
1131
1172
DEFINE_CLK_SMD_RPM (qcm2290 , bimc_gpu_clk , bimc_gpu_a_clk ,
@@ -1195,6 +1236,7 @@ static const struct of_device_id rpm_smd_clk_match_table[] = {
1195
1236
{ .compatible = "qcom,rpmcc-sdm660" , .data = & rpm_clk_sdm660 },
1196
1237
{ .compatible = "qcom,rpmcc-sm6115" , .data = & rpm_clk_sm6115 },
1197
1238
{ .compatible = "qcom,rpmcc-sm6125" , .data = & rpm_clk_sm6125 },
1239
+ { .compatible = "qcom,rpmcc-sm6375" , .data = & rpm_clk_sm6375 },
1198
1240
{ }
1199
1241
};
1200
1242
MODULE_DEVICE_TABLE (of , rpm_smd_clk_match_table );
0 commit comments