#include <linux/clk-provider.h>
#include <linux/mod_devicetable.h>
#include <linux/module.h>
#include <linux/platform_device.h>
#include <linux/pm_runtime.h>
#include <linux/regmap.h>
#include <dt-bindings/clock/qcom,sm8650-camcc.h>
#include "clk-alpha-pll.h"
#include "clk-branch.h"
#include "clk-rcg.h"
#include "clk-regmap.h"
#include "common.h"
#include "gdsc.h"
#include "reset.h"
enum { … };
enum { … };
static const struct pll_vco lucid_ole_vco[] = …;
static const struct pll_vco rivian_ole_vco[] = …;
static const struct alpha_pll_config cam_cc_pll0_config = …;
static struct clk_alpha_pll cam_cc_pll0 = …;
static const struct clk_div_table post_div_table_cam_cc_pll0_out_even[] = …;
static struct clk_alpha_pll_postdiv cam_cc_pll0_out_even = …;
static const struct clk_div_table post_div_table_cam_cc_pll0_out_odd[] = …;
static struct clk_alpha_pll_postdiv cam_cc_pll0_out_odd = …;
static const struct alpha_pll_config cam_cc_pll1_config = …;
static struct clk_alpha_pll cam_cc_pll1 = …;
static const struct clk_div_table post_div_table_cam_cc_pll1_out_even[] = …;
static struct clk_alpha_pll_postdiv cam_cc_pll1_out_even = …;
static const struct alpha_pll_config cam_cc_pll2_config = …;
static struct clk_alpha_pll cam_cc_pll2 = …;
static const struct alpha_pll_config cam_cc_pll3_config = …;
static struct clk_alpha_pll cam_cc_pll3 = …;
static const struct clk_div_table post_div_table_cam_cc_pll3_out_even[] = …;
static struct clk_alpha_pll_postdiv cam_cc_pll3_out_even = …;
static const struct alpha_pll_config cam_cc_pll4_config = …;
static struct clk_alpha_pll cam_cc_pll4 = …;
static const struct clk_div_table post_div_table_cam_cc_pll4_out_even[] = …;
static struct clk_alpha_pll_postdiv cam_cc_pll4_out_even = …;
static const struct alpha_pll_config cam_cc_pll5_config = …;
static struct clk_alpha_pll cam_cc_pll5 = …;
static const struct clk_div_table post_div_table_cam_cc_pll5_out_even[] = …;
static struct clk_alpha_pll_postdiv cam_cc_pll5_out_even = …;
static const struct alpha_pll_config cam_cc_pll6_config = …;
static struct clk_alpha_pll cam_cc_pll6 = …;
static const struct clk_div_table post_div_table_cam_cc_pll6_out_even[] = …;
static struct clk_alpha_pll_postdiv cam_cc_pll6_out_even = …;
static const struct alpha_pll_config cam_cc_pll7_config = …;
static struct clk_alpha_pll cam_cc_pll7 = …;
static const struct clk_div_table post_div_table_cam_cc_pll7_out_even[] = …;
static struct clk_alpha_pll_postdiv cam_cc_pll7_out_even = …;
static const struct alpha_pll_config cam_cc_pll8_config = …;
static struct clk_alpha_pll cam_cc_pll8 = …;
static const struct clk_div_table post_div_table_cam_cc_pll8_out_even[] = …;
static struct clk_alpha_pll_postdiv cam_cc_pll8_out_even = …;
static const struct alpha_pll_config cam_cc_pll9_config = …;
static struct clk_alpha_pll cam_cc_pll9 = …;
static const struct clk_div_table post_div_table_cam_cc_pll9_out_even[] = …;
static struct clk_alpha_pll_postdiv cam_cc_pll9_out_even = …;
static const struct clk_div_table post_div_table_cam_cc_pll9_out_odd[] = …;
static struct clk_alpha_pll_postdiv cam_cc_pll9_out_odd = …;
static const struct alpha_pll_config cam_cc_pll10_config = …;
static struct clk_alpha_pll cam_cc_pll10 = …;
static const struct clk_div_table post_div_table_cam_cc_pll10_out_even[] = …;
static struct clk_alpha_pll_postdiv cam_cc_pll10_out_even = …;
static const struct parent_map cam_cc_parent_map_0[] = …;
static const struct clk_parent_data cam_cc_parent_data_0[] = …;
static const struct parent_map cam_cc_parent_map_1[] = …;
static const struct clk_parent_data cam_cc_parent_data_1[] = …;
static const struct parent_map cam_cc_parent_map_2[] = …;
static const struct clk_parent_data cam_cc_parent_data_2[] = …;
static const struct parent_map cam_cc_parent_map_3[] = …;
static const struct clk_parent_data cam_cc_parent_data_3[] = …;
static const struct parent_map cam_cc_parent_map_4[] = …;
static const struct clk_parent_data cam_cc_parent_data_4[] = …;
static const struct parent_map cam_cc_parent_map_5[] = …;
static const struct clk_parent_data cam_cc_parent_data_5[] = …;
static const struct parent_map cam_cc_parent_map_6[] = …;
static const struct clk_parent_data cam_cc_parent_data_6[] = …;
static const struct parent_map cam_cc_parent_map_7[] = …;
static const struct clk_parent_data cam_cc_parent_data_7[] = …;
static const struct parent_map cam_cc_parent_map_8[] = …;
static const struct clk_parent_data cam_cc_parent_data_8[] = …;
static const struct parent_map cam_cc_parent_map_9[] = …;
static const struct clk_parent_data cam_cc_parent_data_9[] = …;
static const struct parent_map cam_cc_parent_map_10[] = …;
static const struct clk_parent_data cam_cc_parent_data_10[] = …;
static const struct parent_map cam_cc_parent_map_11_ao[] = …;
static const struct clk_parent_data cam_cc_parent_data_11_ao[] = …;
static const struct freq_tbl ftbl_cam_cc_bps_clk_src[] = …;
static struct clk_rcg2 cam_cc_bps_clk_src = …;
static const struct freq_tbl ftbl_cam_cc_camnoc_axi_rt_clk_src[] = …;
static struct clk_rcg2 cam_cc_camnoc_axi_rt_clk_src = …;
static const struct freq_tbl ftbl_cam_cc_cci_0_clk_src[] = …;
static struct clk_rcg2 cam_cc_cci_0_clk_src = …;
static struct clk_rcg2 cam_cc_cci_1_clk_src = …;
static struct clk_rcg2 cam_cc_cci_2_clk_src = …;
static const struct freq_tbl ftbl_cam_cc_cphy_rx_clk_src[] = …;
static struct clk_rcg2 cam_cc_cphy_rx_clk_src = …;
static const struct freq_tbl ftbl_cam_cc_cre_clk_src[] = …;
static struct clk_rcg2 cam_cc_cre_clk_src = …;
static const struct freq_tbl ftbl_cam_cc_csi0phytimer_clk_src[] = …;
static struct clk_rcg2 cam_cc_csi0phytimer_clk_src = …;
static struct clk_rcg2 cam_cc_csi1phytimer_clk_src = …;
static struct clk_rcg2 cam_cc_csi2phytimer_clk_src = …;
static struct clk_rcg2 cam_cc_csi3phytimer_clk_src = …;
static struct clk_rcg2 cam_cc_csi4phytimer_clk_src = …;
static struct clk_rcg2 cam_cc_csi5phytimer_clk_src = …;
static struct clk_rcg2 cam_cc_csi6phytimer_clk_src = …;
static struct clk_rcg2 cam_cc_csi7phytimer_clk_src = …;
static const struct freq_tbl ftbl_cam_cc_csid_clk_src[] = …;
static struct clk_rcg2 cam_cc_csid_clk_src = …;
static const struct freq_tbl ftbl_cam_cc_fast_ahb_clk_src[] = …;
static struct clk_rcg2 cam_cc_fast_ahb_clk_src = …;
static const struct freq_tbl ftbl_cam_cc_icp_clk_src[] = …;
static struct clk_rcg2 cam_cc_icp_clk_src = …;
static const struct freq_tbl ftbl_cam_cc_ife_0_clk_src[] = …;
static struct clk_rcg2 cam_cc_ife_0_clk_src = …;
static const struct freq_tbl ftbl_cam_cc_ife_1_clk_src[] = …;
static struct clk_rcg2 cam_cc_ife_1_clk_src = …;
static const struct freq_tbl ftbl_cam_cc_ife_2_clk_src[] = …;
static struct clk_rcg2 cam_cc_ife_2_clk_src = …;
static struct clk_rcg2 cam_cc_ife_lite_clk_src = …;
static struct clk_rcg2 cam_cc_ife_lite_csid_clk_src = …;
static const struct freq_tbl ftbl_cam_cc_ipe_nps_clk_src[] = …;
static struct clk_rcg2 cam_cc_ipe_nps_clk_src = …;
static const struct freq_tbl ftbl_cam_cc_jpeg_clk_src[] = …;
static struct clk_rcg2 cam_cc_jpeg_clk_src = …;
static const struct freq_tbl ftbl_cam_cc_mclk0_clk_src[] = …;
static struct clk_rcg2 cam_cc_mclk0_clk_src = …;
static struct clk_rcg2 cam_cc_mclk1_clk_src = …;
static struct clk_rcg2 cam_cc_mclk2_clk_src = …;
static struct clk_rcg2 cam_cc_mclk3_clk_src = …;
static struct clk_rcg2 cam_cc_mclk4_clk_src = …;
static struct clk_rcg2 cam_cc_mclk5_clk_src = …;
static struct clk_rcg2 cam_cc_mclk6_clk_src = …;
static struct clk_rcg2 cam_cc_mclk7_clk_src = …;
static const struct freq_tbl ftbl_cam_cc_qdss_debug_clk_src[] = …;
static struct clk_rcg2 cam_cc_qdss_debug_clk_src = …;
static const struct freq_tbl ftbl_cam_cc_sfe_0_clk_src[] = …;
static struct clk_rcg2 cam_cc_sfe_0_clk_src = …;
static const struct freq_tbl ftbl_cam_cc_sfe_1_clk_src[] = …;
static struct clk_rcg2 cam_cc_sfe_1_clk_src = …;
static const struct freq_tbl ftbl_cam_cc_sfe_2_clk_src[] = …;
static struct clk_rcg2 cam_cc_sfe_2_clk_src = …;
static const struct freq_tbl ftbl_cam_cc_sleep_clk_src[] = …;
static struct clk_rcg2 cam_cc_sleep_clk_src = …;
static const struct freq_tbl ftbl_cam_cc_slow_ahb_clk_src[] = …;
static struct clk_rcg2 cam_cc_slow_ahb_clk_src = …;
static const struct freq_tbl ftbl_cam_cc_xo_clk_src[] = …;
static struct clk_rcg2 cam_cc_xo_clk_src = …;
static struct clk_branch cam_cc_bps_ahb_clk = …;
static struct clk_branch cam_cc_bps_clk = …;
static struct clk_branch cam_cc_bps_fast_ahb_clk = …;
static struct clk_branch cam_cc_bps_shift_clk = …;
static struct clk_branch cam_cc_camnoc_axi_nrt_clk = …;
static struct clk_branch cam_cc_camnoc_axi_rt_clk = …;
static struct clk_branch cam_cc_camnoc_dcd_xo_clk = …;
static struct clk_branch cam_cc_camnoc_xo_clk = …;
static struct clk_branch cam_cc_cci_0_clk = …;
static struct clk_branch cam_cc_cci_1_clk = …;
static struct clk_branch cam_cc_cci_2_clk = …;
static struct clk_branch cam_cc_core_ahb_clk = …;
static struct clk_branch cam_cc_cpas_ahb_clk = …;
static struct clk_branch cam_cc_cpas_bps_clk = …;
static struct clk_branch cam_cc_cpas_cre_clk = …;
static struct clk_branch cam_cc_cpas_fast_ahb_clk = …;
static struct clk_branch cam_cc_cpas_ife_0_clk = …;
static struct clk_branch cam_cc_cpas_ife_1_clk = …;
static struct clk_branch cam_cc_cpas_ife_2_clk = …;
static struct clk_branch cam_cc_cpas_ife_lite_clk = …;
static struct clk_branch cam_cc_cpas_ipe_nps_clk = …;
static struct clk_branch cam_cc_cpas_sbi_clk = …;
static struct clk_branch cam_cc_cpas_sfe_0_clk = …;
static struct clk_branch cam_cc_cpas_sfe_1_clk = …;
static struct clk_branch cam_cc_cpas_sfe_2_clk = …;
static struct clk_branch cam_cc_cre_ahb_clk = …;
static struct clk_branch cam_cc_cre_clk = …;
static struct clk_branch cam_cc_csi0phytimer_clk = …;
static struct clk_branch cam_cc_csi1phytimer_clk = …;
static struct clk_branch cam_cc_csi2phytimer_clk = …;
static struct clk_branch cam_cc_csi3phytimer_clk = …;
static struct clk_branch cam_cc_csi4phytimer_clk = …;
static struct clk_branch cam_cc_csi5phytimer_clk = …;
static struct clk_branch cam_cc_csi6phytimer_clk = …;
static struct clk_branch cam_cc_csi7phytimer_clk = …;
static struct clk_branch cam_cc_csid_clk = …;
static struct clk_branch cam_cc_csid_csiphy_rx_clk = …;
static struct clk_branch cam_cc_csiphy0_clk = …;
static struct clk_branch cam_cc_csiphy1_clk = …;
static struct clk_branch cam_cc_csiphy2_clk = …;
static struct clk_branch cam_cc_csiphy3_clk = …;
static struct clk_branch cam_cc_csiphy4_clk = …;
static struct clk_branch cam_cc_csiphy5_clk = …;
static struct clk_branch cam_cc_csiphy6_clk = …;
static struct clk_branch cam_cc_csiphy7_clk = …;
static struct clk_branch cam_cc_icp_ahb_clk = …;
static struct clk_branch cam_cc_icp_clk = …;
static struct clk_branch cam_cc_ife_0_clk = …;
static struct clk_branch cam_cc_ife_0_fast_ahb_clk = …;
static struct clk_branch cam_cc_ife_0_shift_clk = …;
static struct clk_branch cam_cc_ife_1_clk = …;
static struct clk_branch cam_cc_ife_1_fast_ahb_clk = …;
static struct clk_branch cam_cc_ife_1_shift_clk = …;
static struct clk_branch cam_cc_ife_2_clk = …;
static struct clk_branch cam_cc_ife_2_fast_ahb_clk = …;
static struct clk_branch cam_cc_ife_2_shift_clk = …;
static struct clk_branch cam_cc_ife_lite_ahb_clk = …;
static struct clk_branch cam_cc_ife_lite_clk = …;
static struct clk_branch cam_cc_ife_lite_cphy_rx_clk = …;
static struct clk_branch cam_cc_ife_lite_csid_clk = …;
static struct clk_branch cam_cc_ipe_nps_ahb_clk = …;
static struct clk_branch cam_cc_ipe_nps_clk = …;
static struct clk_branch cam_cc_ipe_nps_fast_ahb_clk = …;
static struct clk_branch cam_cc_ipe_pps_clk = …;
static struct clk_branch cam_cc_ipe_pps_fast_ahb_clk = …;
static struct clk_branch cam_cc_ipe_shift_clk = …;
static struct clk_branch cam_cc_jpeg_1_clk = …;
static struct clk_branch cam_cc_jpeg_clk = …;
static struct clk_branch cam_cc_mclk0_clk = …;
static struct clk_branch cam_cc_mclk1_clk = …;
static struct clk_branch cam_cc_mclk2_clk = …;
static struct clk_branch cam_cc_mclk3_clk = …;
static struct clk_branch cam_cc_mclk4_clk = …;
static struct clk_branch cam_cc_mclk5_clk = …;
static struct clk_branch cam_cc_mclk6_clk = …;
static struct clk_branch cam_cc_mclk7_clk = …;
static struct clk_branch cam_cc_qdss_debug_clk = …;
static struct clk_branch cam_cc_qdss_debug_xo_clk = …;
static struct clk_branch cam_cc_sbi_clk = …;
static struct clk_branch cam_cc_sbi_fast_ahb_clk = …;
static struct clk_branch cam_cc_sbi_shift_clk = …;
static struct clk_branch cam_cc_sfe_0_clk = …;
static struct clk_branch cam_cc_sfe_0_fast_ahb_clk = …;
static struct clk_branch cam_cc_sfe_0_shift_clk = …;
static struct clk_branch cam_cc_sfe_1_clk = …;
static struct clk_branch cam_cc_sfe_1_fast_ahb_clk = …;
static struct clk_branch cam_cc_sfe_1_shift_clk = …;
static struct clk_branch cam_cc_sfe_2_clk = …;
static struct clk_branch cam_cc_sfe_2_fast_ahb_clk = …;
static struct clk_branch cam_cc_sfe_2_shift_clk = …;
static struct clk_branch cam_cc_titan_top_shift_clk = …;
static struct gdsc cam_cc_titan_top_gdsc = …;
static struct gdsc cam_cc_bps_gdsc = …;
static struct gdsc cam_cc_ife_0_gdsc = …;
static struct gdsc cam_cc_ife_1_gdsc = …;
static struct gdsc cam_cc_ife_2_gdsc = …;
static struct gdsc cam_cc_ipe_0_gdsc = …;
static struct gdsc cam_cc_sbi_gdsc = …;
static struct gdsc cam_cc_sfe_0_gdsc = …;
static struct gdsc cam_cc_sfe_1_gdsc = …;
static struct gdsc cam_cc_sfe_2_gdsc = …;
static struct clk_regmap *cam_cc_sm8650_clocks[] = …;
static struct gdsc *cam_cc_sm8650_gdscs[] = …;
static const struct qcom_reset_map cam_cc_sm8650_resets[] = …;
static const struct regmap_config cam_cc_sm8650_regmap_config = …;
static struct qcom_cc_desc cam_cc_sm8650_desc = …;
static const struct of_device_id cam_cc_sm8650_match_table[] = …;
MODULE_DEVICE_TABLE(of, cam_cc_sm8650_match_table);
static int cam_cc_sm8650_probe(struct platform_device *pdev)
{ … }
static struct platform_driver cam_cc_sm8650_driver = …;
module_platform_driver(…) …;
MODULE_DESCRIPTION(…) …;
MODULE_LICENSE(…) …;