linux/drivers/soc/amlogic/meson-clk-measure.c

// SPDX-License-Identifier: GPL-2.0+
/*
 * Copyright (c) 2018 BayLibre, SAS
 * Author: Neil Armstrong <[email protected]>
 */

#include <linux/of_address.h>
#include <linux/platform_device.h>
#include <linux/bitfield.h>
#include <linux/seq_file.h>
#include <linux/debugfs.h>
#include <linux/regmap.h>
#include <linux/module.h>

static DEFINE_MUTEX(measure_lock);

#define MSR_CLK_DUTY
#define MSR_CLK_REG0
#define MSR_CLK_REG1
#define MSR_CLK_REG2

#define MSR_DURATION
#define MSR_ENABLE
#define MSR_CONT
#define MSR_INTR
#define MSR_RUN
#define MSR_CLK_SRC
#define MSR_BUSY

#define MSR_VAL_MASK

#define DIV_MIN
#define DIV_STEP
#define DIV_MAX

#define CLK_MSR_MAX

struct meson_msr_id {};

struct meson_msr {};

#define CLK_MSR_ID(__id, __name)

static struct meson_msr_id clk_msr_m8[CLK_MSR_MAX] =;

static struct meson_msr_id clk_msr_gx[CLK_MSR_MAX] =;

static struct meson_msr_id clk_msr_axg[CLK_MSR_MAX] =;

static struct meson_msr_id clk_msr_g12a[CLK_MSR_MAX] =;

static struct meson_msr_id clk_msr_sm1[CLK_MSR_MAX] =;

static int meson_measure_id(struct meson_msr_id *clk_msr_id,
			       unsigned int duration)
{}

static int meson_measure_best_id(struct meson_msr_id *clk_msr_id,
				    unsigned int *precision)
{}

static int clk_msr_show(struct seq_file *s, void *data)
{}
DEFINE_SHOW_ATTRIBUTE();

static int clk_msr_summary_show(struct seq_file *s, void *data)
{}
DEFINE_SHOW_ATTRIBUTE();

static const struct regmap_config meson_clk_msr_regmap_config =;

static int meson_msr_probe(struct platform_device *pdev)
{}

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

static struct platform_driver meson_msr_driver =;
module_platform_driver();
MODULE_DESCRIPTION();
MODULE_LICENSE();