linux/drivers/clk/qcom/clk-smd-rpm.c

// SPDX-License-Identifier: GPL-2.0-only
/*
 * Copyright (c) 2016, Linaro Limited
 * Copyright (c) 2014, The Linux Foundation. All rights reserved.
 */

#include <linux/clk-provider.h>
#include <linux/err.h>
#include <linux/export.h>
#include <linux/init.h>
#include <linux/kernel.h>
#include <linux/module.h>
#include <linux/mutex.h>
#include <linux/of.h>
#include <linux/platform_device.h>
#include <linux/soc/qcom/smd-rpm.h>

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

#define __DEFINE_CLK_SMD_RPM_PREFIX(_prefix, _name, _active,		      \
				    type, r_id, key, ao_rate, ao_flags)

#define __DEFINE_CLK_SMD_RPM(_name, _active, type, r_id, key,\
			     ao_rate, ao_flags)

#define __DEFINE_CLK_SMD_RPM_BRANCH_PREFIX(_prefix, _name, _active,\
					   type, r_id, r, key, ao_flags)

#define __DEFINE_CLK_SMD_RPM_BRANCH(_name, _active, type, r_id, r, key)

#define DEFINE_CLK_SMD_RPM(_name, type, r_id)

#define DEFINE_CLK_SMD_RPM_BUS(_name, r_id)

#define DEFINE_CLK_SMD_RPM_BUS_A(_name, r_id, ao_rate, ao_flags)

#define DEFINE_CLK_SMD_RPM_CLK_SRC(_name, type, r_id)

#define DEFINE_CLK_SMD_RPM_BRANCH(_name, type, r_id, r)

#define DEFINE_CLK_SMD_RPM_BRANCH_A(_name, type, r_id, r, ao_flags)

#define DEFINE_CLK_SMD_RPM_QDSS(_name, type, r_id)

#define DEFINE_CLK_SMD_RPM_XO_BUFFER(_name, r_id, r)

#define DEFINE_CLK_SMD_RPM_XO_BUFFER_PREFIX(_prefix, _name, r_id, r)

#define DEFINE_CLK_SMD_RPM_XO_BUFFER_PINCTRL(_name, r_id, r)

#define to_clk_smd_rpm(_hw)

static struct qcom_smd_rpm *rpmcc_smd_rpm;

struct clk_smd_rpm {};

struct rpm_smd_clk_desc {};

static DEFINE_MUTEX(rpm_smd_clk_lock);

static int clk_smd_rpm_handoff(const struct clk_smd_rpm *r)
{}

static int clk_smd_rpm_set_rate_active(struct clk_smd_rpm *r,
				       unsigned long rate)
{}

static int clk_smd_rpm_set_rate_sleep(struct clk_smd_rpm *r,
				      unsigned long rate)
{}

static void to_active_sleep(struct clk_smd_rpm *r, unsigned long rate,
			    unsigned long *active, unsigned long *sleep)
{}

static int clk_smd_rpm_prepare(struct clk_hw *hw)
{}

static void clk_smd_rpm_unprepare(struct clk_hw *hw)
{}

static int clk_smd_rpm_set_rate(struct clk_hw *hw, unsigned long rate,
				unsigned long parent_rate)
{}

static long clk_smd_rpm_round_rate(struct clk_hw *hw, unsigned long rate,
				   unsigned long *parent_rate)
{}

static unsigned long clk_smd_rpm_recalc_rate(struct clk_hw *hw,
					     unsigned long parent_rate)
{}

static int clk_smd_rpm_enable_scaling(void)
{}

static const struct clk_ops clk_smd_rpm_ops =;

static const struct clk_ops clk_smd_rpm_branch_ops =;

/* Disabling BI_TCXO_AO could gate the root clock source of the entire system. */
DEFINE_CLK_SMD_RPM_BRANCH_A();
DEFINE_CLK_SMD_RPM_BRANCH();
DEFINE_CLK_SMD_RPM_QDSS();
DEFINE_CLK_SMD_RPM_BRANCH_A();

DEFINE_CLK_SMD_RPM_BRANCH();

DEFINE_CLK_SMD_RPM_BRANCH();
DEFINE_CLK_SMD_RPM_BRANCH();
DEFINE_CLK_SMD_RPM();
DEFINE_CLK_SMD_RPM();

DEFINE_CLK_SMD_RPM_BUS_A();
DEFINE_CLK_SMD_RPM_BUS();
DEFINE_CLK_SMD_RPM_BUS();
DEFINE_CLK_SMD_RPM_BUS();
DEFINE_CLK_SMD_RPM_BUS();
DEFINE_CLK_SMD_RPM_BUS();
DEFINE_CLK_SMD_RPM_BUS();
DEFINE_CLK_SMD_RPM_BUS();
DEFINE_CLK_SMD_RPM_BUS();

DEFINE_CLK_SMD_RPM();
DEFINE_CLK_SMD_RPM();
DEFINE_CLK_SMD_RPM_CLK_SRC();
DEFINE_CLK_SMD_RPM();
DEFINE_CLK_SMD_RPM();

DEFINE_CLK_SMD_RPM();
DEFINE_CLK_SMD_RPM();
DEFINE_CLK_SMD_RPM();

DEFINE_CLK_SMD_RPM();

DEFINE_CLK_SMD_RPM();

DEFINE_CLK_SMD_RPM();
DEFINE_CLK_SMD_RPM();
DEFINE_CLK_SMD_RPM();

DEFINE_CLK_SMD_RPM();

DEFINE_CLK_SMD_RPM();

DEFINE_CLK_SMD_RPM();

DEFINE_CLK_SMD_RPM_XO_BUFFER_PINCTRL();
DEFINE_CLK_SMD_RPM_XO_BUFFER_PINCTRL();
DEFINE_CLK_SMD_RPM_XO_BUFFER_PINCTRL();
DEFINE_CLK_SMD_RPM_XO_BUFFER_PINCTRL();
DEFINE_CLK_SMD_RPM_XO_BUFFER_PINCTRL();
DEFINE_CLK_SMD_RPM_XO_BUFFER_PINCTRL();
DEFINE_CLK_SMD_RPM_XO_BUFFER_PINCTRL();
DEFINE_CLK_SMD_RPM_XO_BUFFER_PINCTRL();
DEFINE_CLK_SMD_RPM_XO_BUFFER_PINCTRL();

DEFINE_CLK_SMD_RPM_XO_BUFFER_PREFIX();

DEFINE_CLK_SMD_RPM_XO_BUFFER_PINCTRL();
DEFINE_CLK_SMD_RPM_XO_BUFFER_PINCTRL();
DEFINE_CLK_SMD_RPM_XO_BUFFER_PINCTRL();
DEFINE_CLK_SMD_RPM_XO_BUFFER_PINCTRL();
DEFINE_CLK_SMD_RPM_XO_BUFFER_PINCTRL();

DEFINE_CLK_SMD_RPM_XO_BUFFER();
DEFINE_CLK_SMD_RPM_XO_BUFFER();
DEFINE_CLK_SMD_RPM_XO_BUFFER();
DEFINE_CLK_SMD_RPM_XO_BUFFER();

static const struct clk_smd_rpm *bimc_pcnoc_icc_clks[] =;

static const struct clk_smd_rpm *bimc_pcnoc_snoc_icc_clks[] =;

static const struct clk_smd_rpm *bimc_pcnoc_snoc_smmnoc_icc_clks[] =;

static const struct clk_smd_rpm *bimc_pcnoc_snoc_cnoc_ocmem_icc_clks[] =;

static const struct clk_smd_rpm *msm8996_icc_clks[] =;

static const struct clk_smd_rpm *msm8998_icc_clks[] =;

static const struct clk_smd_rpm *sdm660_icc_clks[] =;

static const struct clk_smd_rpm *sm_qnoc_icc_clks[] =;

static const struct clk_smd_rpm *qcm2290_icc_clks[] =;

static struct clk_smd_rpm *msm8909_clks[] =;

static const struct rpm_smd_clk_desc rpm_clk_msm8909 =;

static struct clk_smd_rpm *msm8916_clks[] =;

static const struct rpm_smd_clk_desc rpm_clk_msm8916 =;

static struct clk_smd_rpm *msm8917_clks[] =;

static const struct rpm_smd_clk_desc rpm_clk_msm8917 =;

static struct clk_smd_rpm *msm8936_clks[] =;

static const struct rpm_smd_clk_desc rpm_clk_msm8936 =;

static struct clk_smd_rpm *msm8974_clks[] =;

static const struct rpm_smd_clk_desc rpm_clk_msm8974 =;

static struct clk_smd_rpm *msm8976_clks[] =;

static const struct rpm_smd_clk_desc rpm_clk_msm8976 =;

static struct clk_smd_rpm *msm8992_clks[] =;

static const struct rpm_smd_clk_desc rpm_clk_msm8992 =;

static struct clk_smd_rpm *msm8994_clks[] =;

static const struct rpm_smd_clk_desc rpm_clk_msm8994 =;

static struct clk_smd_rpm *msm8996_clks[] =;

static const struct rpm_smd_clk_desc rpm_clk_msm8996 =;

static struct clk_smd_rpm *qcs404_clks[] =;

static const struct rpm_smd_clk_desc rpm_clk_qcs404 =;

static struct clk_smd_rpm *msm8998_clks[] =;

static const struct rpm_smd_clk_desc rpm_clk_msm8998 =;

static struct clk_smd_rpm *sdm660_clks[] =;

static const struct rpm_smd_clk_desc rpm_clk_sdm660 =;

static struct clk_smd_rpm *mdm9607_clks[] =;

static const struct rpm_smd_clk_desc rpm_clk_mdm9607 =;

static struct clk_smd_rpm *msm8953_clks[] =;

static const struct rpm_smd_clk_desc rpm_clk_msm8953 =;

static struct clk_smd_rpm *sm6125_clks[] =;

static const struct rpm_smd_clk_desc rpm_clk_sm6125 =;

/* SM6115 */
static struct clk_smd_rpm *sm6115_clks[] =;

static const struct rpm_smd_clk_desc rpm_clk_sm6115 =;

static struct clk_smd_rpm *sm6375_clks[] =;

static const struct rpm_smd_clk_desc rpm_clk_sm6375 =;

static struct clk_smd_rpm *qcm2290_clks[] =;

static const struct rpm_smd_clk_desc rpm_clk_qcm2290 =;

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

static struct clk_hw *qcom_smdrpm_clk_hw_get(struct of_phandle_args *clkspec,
					     void *data)
{}

static void rpm_smd_unregister_icc(void *data)
{}

static int rpm_smd_clk_probe(struct platform_device *pdev)
{}

static struct platform_driver rpm_smd_clk_driver =;

static int __init rpm_smd_clk_init(void)
{}
core_initcall(rpm_smd_clk_init);

static void __exit rpm_smd_clk_exit(void)
{}
module_exit(rpm_smd_clk_exit);

MODULE_DESCRIPTION();
MODULE_LICENSE();
MODULE_ALIAS();