1 /* SPDX-License-Identifier: (GPL-2.0+ OR MIT) */
3 * Copyright (c) 2017 BayLibre, SAS
4 * Author: Neil Armstrong <narmstrong@baylibre.com>
6 * Copyright (c) 2018 Amlogic, inc.
7 * Author: Qiufang Dai <qiufang.dai@amlogic.com>
8 * Author: Yixun Lan <yixun.lan@amlogic.com>
11 #ifndef __MESON_AOCLK_H__
12 #define __MESON_AOCLK_H__
14 #include <linux/clk-provider.h>
15 #include <linux/platform_device.h>
16 #include <linux/regmap.h>
17 #include <linux/reset-controller.h>
19 #include "clk-regmap.h"
21 struct meson_aoclk_data
{
22 const unsigned int reset_reg
;
24 const unsigned int *reset
;
26 struct clk_regmap
**clks
;
27 const struct clk_hw_onecell_data
*hw_data
;
30 struct meson_aoclk_reset_controller
{
31 struct reset_controller_dev reset
;
32 const struct meson_aoclk_data
*data
;
33 struct regmap
*regmap
;
36 int meson_aoclkc_probe(struct platform_device
*pdev
);