linux/drivers/clk/clk-lochnagar.c

// SPDX-License-Identifier: GPL-2.0
/*
 * Lochnagar clock control
 *
 * Copyright (c) 2017-2018 Cirrus Logic, Inc. and
 *                         Cirrus Logic International Semiconductor Ltd.
 *
 * Author: Charles Keepax <[email protected]>
 */

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

#include <linux/mfd/lochnagar1_regs.h>
#include <linux/mfd/lochnagar2_regs.h>

#include <dt-bindings/clock/lochnagar.h>

#define LOCHNAGAR_NUM_CLOCKS

struct lochnagar_clk {};

struct lochnagar_clk_priv {};

#define LN_PARENT(NAME)

static const struct clk_parent_data lochnagar1_clk_parents[] =;

static const struct clk_parent_data lochnagar2_clk_parents[] =;

#define LN1_CLK(ID, NAME, REG)

#define LN2_CLK(ID, NAME)

static const struct lochnagar_clk lochnagar1_clks[LOCHNAGAR_NUM_CLOCKS] =;

static const struct lochnagar_clk lochnagar2_clks[LOCHNAGAR_NUM_CLOCKS] =;

struct lochnagar_config {};

static const struct lochnagar_config lochnagar1_conf =;

static const struct lochnagar_config lochnagar2_conf =;

static inline struct lochnagar_clk *lochnagar_hw_to_lclk(struct clk_hw *hw)
{}

static int lochnagar_clk_prepare(struct clk_hw *hw)
{}

static void lochnagar_clk_unprepare(struct clk_hw *hw)
{}

static int lochnagar_clk_set_parent(struct clk_hw *hw, u8 index)
{}

static u8 lochnagar_clk_get_parent(struct clk_hw *hw)
{}

static const struct clk_ops lochnagar_clk_ops =;

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

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

static int lochnagar_clk_probe(struct platform_device *pdev)
{}

static struct platform_driver lochnagar_clk_driver =;
module_platform_driver();

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