blob: bd8902718f203daa6bb10e5b8655573cf31afecb [file] [log] [blame]
Jagan Teki249a2382022-12-14 23:21:05 +05301// SPDX-License-Identifier: GPL-2.0
2/*
3 * Copyright (c) 2018 Fuzhou Rockchip Electronics Co., Ltd
4 * Copyright (c) 2022 Edgeble AI Technologies Pvt. Ltd.
5 */
6
7#include <common.h>
8#include <dm.h>
9#include <syscon.h>
10#include <asm/arch-rockchip/clock.h>
11#include <asm/arch-rockchip/cru_rv1126.h>
12#include <linux/err.h>
13
14int rockchip_get_clk(struct udevice **devp)
15{
16 return uclass_get_device_by_driver(UCLASS_CLK,
17 DM_DRIVER_GET(rockchip_rv1126_cru), devp);
18}
19
20void *rockchip_get_cru(void)
21{
22 struct rv1126_clk_priv *priv;
23 struct udevice *dev;
24 int ret;
25
26 ret = rockchip_get_clk(&dev);
27 if (ret)
28 return ERR_PTR(ret);
29
30 priv = dev_get_priv(dev);
31
32 return priv->cru;
33}