2 * Copyright (C) 2016 Masahiro Yamada <yamada.masahiro@socionext.com>
4 * SPDX-License-Identifier: GPL-2.0+
7 #ifndef __CLK_UNIPHIER_H__
8 #define __CLK_UNIPHIER_H__
10 #include <linux/kernel.h>
12 struct uniphier_clk_gate_data {
19 struct uniphier_clk_rate_data {
22 #define UNIPHIER_CLK_RATE_IS_FIXED UINT_MAX
28 struct uniphier_clk_soc_data {
29 struct uniphier_clk_gate_data *gate;
31 struct uniphier_clk_rate_data *rate;
35 #define UNIPHIER_CLK_FIXED_RATE(i, f) \
38 .reg = UNIPHIER_CLK_RATE_IS_FIXED, \
43 * struct uniphier_clk_priv - private data for UniPhier clock driver
45 * @base: base address of the clock provider
46 * @socdata: SoC specific data
48 struct uniphier_clk_priv {
50 struct uniphier_clk_soc_data *socdata;
53 extern const struct clk_ops uniphier_clk_ops;
54 int uniphier_clk_probe(struct udevice *dev);
55 int uniphier_clk_remove(struct udevice *dev);
57 #endif /* __CLK_UNIPHIER_H__ */