linux/drivers/clk/clk-loongson2.c

// SPDX-License-Identifier: GPL-2.0+
/*
 * Author: Yinbo Zhu <[email protected]>
 * Copyright (C) 2022-2023 Loongson Technology Corporation Limited
 */

#include <linux/err.h>
#include <linux/init.h>
#include <linux/clk-provider.h>
#include <linux/slab.h>
#include <linux/module.h>
#include <linux/platform_device.h>
#include <linux/io-64-nonatomic-lo-hi.h>
#include <dt-bindings/clock/loongson,ls2k-clk.h>

static const struct clk_parent_data pdata[] =;

enum loongson2_clk_type {};

struct loongson2_clk_provider {};

struct loongson2_clk_data {};

struct loongson2_clk_board_info {};

#define CLK_DIV(_id, _name, _pname, _offset, _dshift, _dwidth)

#define CLK_PLL(_id, _name, _offset, _mshift, _mwidth,		\
		_dshift, _dwidth)

#define CLK_SCALE(_id, _name, _pname, _offset,			\
		  _dshift, _dwidth)

#define CLK_GATE(_id, _name, _pname, _offset, _bidx)

#define CLK_FIXED(_id, _name, _pname, _rate)

static const struct loongson2_clk_board_info ls2k0500_clks[] =;

static const struct loongson2_clk_board_info ls2k1000_clks[] =;

static const struct loongson2_clk_board_info ls2k2000_clks[] =;

static inline struct loongson2_clk_data *to_loongson2_clk(struct clk_hw *hw)
{}

static inline unsigned long loongson2_rate_part(u64 val, u8 shift, u8 width)
{}

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

static const struct clk_ops loongson2_pll_recalc_ops =;

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

static const struct clk_ops loongson2_freqscale_recalc_ops =;

static struct clk_hw *loongson2_clk_register(struct loongson2_clk_provider *clp,
					     const struct loongson2_clk_board_info *cld,
					     const struct clk_ops *ops)
{}

static int loongson2_clk_probe(struct platform_device *pdev)
{}

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

static struct platform_driver loongson2_clk_driver =;
module_platform_driver();

MODULE_DESCRIPTION();
MODULE_AUTHOR();
MODULE_LICENSE();