linux/drivers/clk/qcom/camcc-sdm845.c

// SPDX-License-Identifier: GPL-2.0
/*
 * Copyright (c) 2018, The Linux Foundation. All rights reserved.
 */

#include <linux/clk-provider.h>
#include <linux/module.h>
#include <linux/platform_device.h>
#include <linux/regmap.h>

#include <dt-bindings/clock/qcom,camcc-sdm845.h>

#include "common.h"
#include "clk-alpha-pll.h"
#include "clk-branch.h"
#include "clk-rcg.h"
#include "clk-regmap.h"
#include "gdsc.h"

enum {};

static struct clk_alpha_pll cam_cc_pll0 =;

static const struct clk_div_table post_div_table_fabia_even[] =;

static struct clk_alpha_pll_postdiv cam_cc_pll0_out_even =;

static struct clk_alpha_pll cam_cc_pll1 =;

static struct clk_alpha_pll_postdiv cam_cc_pll1_out_even =;

static struct clk_alpha_pll cam_cc_pll2 =;

static struct clk_alpha_pll_postdiv cam_cc_pll2_out_even =;

static struct clk_alpha_pll cam_cc_pll3 =;

static struct clk_alpha_pll_postdiv cam_cc_pll3_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 freq_tbl ftbl_cam_cc_bps_clk_src[] =;

/*
 * As per HW design, some of the CAMCC RCGs needs to
 * move to XO clock during their clock disable so using
 * clk_rcg2_shared_ops for such RCGs. This is required
 * to power down the camera memories gracefully.
 * Also, use CLK_SET_RATE_PARENT flag for the RCGs which
 * have CAM_CC_PLL2_OUT_EVEN PLL as parent in frequency
 * table and requires reconfiguration of the PLL frequency.
 */
static struct clk_rcg2 cam_cc_bps_clk_src =;

static const struct freq_tbl ftbl_cam_cc_cci_clk_src[] =;

static struct clk_rcg2 cam_cc_cci_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_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 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_fd_core_clk_src[] =;

static struct clk_rcg2 cam_cc_fd_core_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_0_csid_clk_src[] =;

static struct clk_rcg2 cam_cc_ife_0_csid_clk_src =;

static struct clk_rcg2 cam_cc_ife_1_clk_src =;

static struct clk_rcg2 cam_cc_ife_1_csid_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_0_clk_src[] =;

static struct clk_rcg2 cam_cc_ipe_0_clk_src =;

static struct clk_rcg2 cam_cc_ipe_1_clk_src =;

static struct clk_rcg2 cam_cc_jpeg_clk_src =;

static const struct freq_tbl ftbl_cam_cc_lrme_clk_src[] =;

static struct clk_rcg2 cam_cc_lrme_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 const struct freq_tbl ftbl_cam_cc_slow_ahb_clk_src[] =;

static struct clk_rcg2 cam_cc_slow_ahb_clk_src =;

static struct clk_branch cam_cc_bps_ahb_clk =;

static struct clk_branch cam_cc_bps_areg_clk =;

static struct clk_branch cam_cc_bps_axi_clk =;

static struct clk_branch cam_cc_bps_clk =;

static struct clk_branch cam_cc_camnoc_atb_clk =;

static struct clk_branch cam_cc_camnoc_axi_clk =;

static struct clk_branch cam_cc_cci_clk =;

static struct clk_branch cam_cc_cpas_ahb_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_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_fd_core_clk =;

static struct clk_branch cam_cc_fd_core_uar_clk =;

static struct clk_branch cam_cc_icp_apb_clk =;

static struct clk_branch cam_cc_icp_atb_clk =;

static struct clk_branch cam_cc_icp_clk =;

static struct clk_branch cam_cc_icp_cti_clk =;

static struct clk_branch cam_cc_icp_ts_clk =;

static struct clk_branch cam_cc_ife_0_axi_clk =;

static struct clk_branch cam_cc_ife_0_clk =;

static struct clk_branch cam_cc_ife_0_cphy_rx_clk =;

static struct clk_branch cam_cc_ife_0_csid_clk =;

static struct clk_branch cam_cc_ife_0_dsp_clk =;

static struct clk_branch cam_cc_ife_1_axi_clk =;

static struct clk_branch cam_cc_ife_1_clk =;

static struct clk_branch cam_cc_ife_1_cphy_rx_clk =;

static struct clk_branch cam_cc_ife_1_csid_clk =;

static struct clk_branch cam_cc_ife_1_dsp_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_0_ahb_clk =;

static struct clk_branch cam_cc_ipe_0_areg_clk =;

static struct clk_branch cam_cc_ipe_0_axi_clk =;

static struct clk_branch cam_cc_ipe_0_clk =;

static struct clk_branch cam_cc_ipe_1_ahb_clk =;

static struct clk_branch cam_cc_ipe_1_areg_clk =;

static struct clk_branch cam_cc_ipe_1_axi_clk =;

static struct clk_branch cam_cc_ipe_1_clk =;

static struct clk_branch cam_cc_jpeg_clk =;

static struct clk_branch cam_cc_lrme_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_soc_ahb_clk =;

static struct clk_branch cam_cc_sys_tmr_clk =;

static struct gdsc titan_top_gdsc;

static struct gdsc bps_gdsc =;

static struct gdsc ipe_0_gdsc =;

static struct gdsc ipe_1_gdsc =;

static struct gdsc ife_0_gdsc =;

static struct gdsc ife_1_gdsc =;

static struct gdsc titan_top_gdsc =;

static struct clk_regmap *cam_cc_sdm845_clocks[] =;

static struct gdsc *cam_cc_sdm845_gdscs[] =;

static const struct regmap_config cam_cc_sdm845_regmap_config =;

static const struct qcom_cc_desc cam_cc_sdm845_desc =;

static const struct of_device_id cam_cc_sdm845_match_table[] =;
MODULE_DEVICE_TABLE(of, cam_cc_sdm845_match_table);

static int cam_cc_sdm845_probe(struct platform_device *pdev)
{}

static struct platform_driver cam_cc_sdm845_driver =;

module_platform_driver();

MODULE_DESCRIPTION();
MODULE_LICENSE();