1 /* 2 * (C) Copyright 2017 Rockchip Electronics Co., Ltd 3 * 4 * SPDX-License-Identifier: GPL-2.0 5 */ 6 7 #include <common.h> 8 #include <dm.h> 9 #include <asm/arch/clock.h> 10 #include <asm/arch/cru_rk3328.h> 11 12 int rockchip_get_clk(struct udevice **devp) 13 { 14 return uclass_get_device_by_driver(UCLASS_CLK, 15 DM_GET_DRIVER(rockchip_rk3328_cru), devp); 16 } 17 18 void *rockchip_get_cru(void) 19 { 20 struct rk3328_clk_priv *priv; 21 struct udevice *dev; 22 int ret; 23 24 ret = rockchip_get_clk(&dev); 25 if (ret) 26 return ERR_PTR(ret); 27 28 priv = devfdt_get_addr_ptr(dev); 29 30 return priv->cru; 31 } 32