xref: /rk3399_rockchip-uboot/arch/arm/mach-rockchip/rk3506/syscon_rk3506.c (revision 85e5c21076b78fe71b961926fac1aa66a345c2bf)
1 /*
2  * (C) Copyright 2024 Rockchip Electronics Co., Ltd
3  *
4  * SPDX-License-Identifier:     GPL-2.0+
5  */
6 
7 #include <common.h>
8 #include <dm.h>
9 #include <syscon.h>
10 #include <asm/arch/clock.h>
11 
12 static const struct udevice_id rk3506_syscon_ids[] = {
13 	{ .compatible = "rockchip,rk3506-grf", .data = ROCKCHIP_SYSCON_GRF },
14 	{ .compatible = "rockchip,rk3506-ioc-grf", .data = ROCKCHIP_SYSCON_IOC },
15 	{ .compatible = "rockchip,rk3506-ioc1", .data = ROCKCHIP_SYSCON_IOC },
16 	{ .compatible = "rockchip,rk3506-grf-pmu", .data = ROCKCHIP_SYSCON_PMUGRF },
17 	{ .compatible = "rockchip,rk3506-ioc-pmu", .data = ROCKCHIP_SYSCON_IOC },
18 	{ }
19 };
20 
21 U_BOOT_DRIVER(syscon_rk3506) = {
22 	.name = "rk3506_syscon",
23 	.id = UCLASS_SYSCON,
24 	.of_match = rk3506_syscon_ids,
25 #if !CONFIG_IS_ENABLED(OF_PLATDATA)
26 	.bind = dm_scan_fdt_dev,
27 #endif
28 };
29