aboutsummaryrefslogtreecommitdiff
path: root/arch/arm/mach-rockchip/common.c
blob: fc7ac726cc89a08567ab5d7bc9fa3596803783cb (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
/*
 * (C) Copyright 2015 Google, Inc
 *
 * SPDX-License-Identifier:     GPL-2.0+
 */

#include <common.h>
#include <dm.h>
#include <errno.h>
#include <fdtdec.h>
#include <linux/err.h>

void *rockchip_get_cru(void)
{
	struct udevice *dev;
	fdt_addr_t addr;
	int ret;

	ret = uclass_get_device(UCLASS_CLK, 0, &dev);
	if (ret)
		return ERR_PTR(ret);

	addr = dev_get_addr(dev);
	if (addr == FDT_ADDR_T_NONE)
		return ERR_PTR(-EINVAL);

	return (void *)addr;
}