18c2ecf20Sopenharmony_ci* Rockchip General Register Files (GRF) 28c2ecf20Sopenharmony_ci 38c2ecf20Sopenharmony_ciThe general register file will be used to do static set by software, which 48c2ecf20Sopenharmony_ciis composed of many registers for system control. 58c2ecf20Sopenharmony_ci 68c2ecf20Sopenharmony_ciFrom RK3368 SoCs, the GRF is divided into two sections, 78c2ecf20Sopenharmony_ci- GRF, used for general non-secure system, 88c2ecf20Sopenharmony_ci- SGRF, used for general secure system, 98c2ecf20Sopenharmony_ci- PMUGRF, used for always on system 108c2ecf20Sopenharmony_ci 118c2ecf20Sopenharmony_ciOn RK3328 SoCs, the GRF adds a section for USB2PHYGRF, 128c2ecf20Sopenharmony_ci 138c2ecf20Sopenharmony_ciON RK3308 SoC, the GRF is divided into four sections: 148c2ecf20Sopenharmony_ci- GRF, used for general non-secure system, 158c2ecf20Sopenharmony_ci- SGRF, used for general secure system, 168c2ecf20Sopenharmony_ci- DETECTGRF, used for audio codec system, 178c2ecf20Sopenharmony_ci- COREGRF, used for pvtm, 188c2ecf20Sopenharmony_ci 198c2ecf20Sopenharmony_ciRequired Properties: 208c2ecf20Sopenharmony_ci 218c2ecf20Sopenharmony_ci- compatible: GRF should be one of the following: 228c2ecf20Sopenharmony_ci - "rockchip,px30-grf", "syscon": for px30 238c2ecf20Sopenharmony_ci - "rockchip,rk3036-grf", "syscon": for rk3036 248c2ecf20Sopenharmony_ci - "rockchip,rk3066-grf", "syscon": for rk3066 258c2ecf20Sopenharmony_ci - "rockchip,rk3188-grf", "syscon": for rk3188 268c2ecf20Sopenharmony_ci - "rockchip,rk3228-grf", "syscon": for rk3228 278c2ecf20Sopenharmony_ci - "rockchip,rk3288-grf", "syscon": for rk3288 288c2ecf20Sopenharmony_ci - "rockchip,rk3308-grf", "syscon": for rk3308 298c2ecf20Sopenharmony_ci - "rockchip,rk3328-grf", "syscon": for rk3328 308c2ecf20Sopenharmony_ci - "rockchip,rk3368-grf", "syscon": for rk3368 318c2ecf20Sopenharmony_ci - "rockchip,rk3399-grf", "syscon": for rk3399 328c2ecf20Sopenharmony_ci - "rockchip,rv1108-grf", "syscon": for rv1108 338c2ecf20Sopenharmony_ci- compatible: DETECTGRF should be one of the following: 348c2ecf20Sopenharmony_ci - "rockchip,rk3308-detect-grf", "syscon": for rk3308 358c2ecf20Sopenharmony_ci- compatilbe: COREGRF should be one of the following: 368c2ecf20Sopenharmony_ci - "rockchip,rk3308-core-grf", "syscon": for rk3308 378c2ecf20Sopenharmony_ci- compatible: PMUGRF should be one of the following: 388c2ecf20Sopenharmony_ci - "rockchip,px30-pmugrf", "syscon": for px30 398c2ecf20Sopenharmony_ci - "rockchip,rk3368-pmugrf", "syscon": for rk3368 408c2ecf20Sopenharmony_ci - "rockchip,rk3399-pmugrf", "syscon": for rk3399 418c2ecf20Sopenharmony_ci- compatible: SGRF should be one of the following: 428c2ecf20Sopenharmony_ci - "rockchip,rk3288-sgrf", "syscon": for rk3288 438c2ecf20Sopenharmony_ci- compatible: USB2PHYGRF should be one of the following: 448c2ecf20Sopenharmony_ci - "rockchip,px30-usb2phy-grf", "syscon": for px30 458c2ecf20Sopenharmony_ci - "rockchip,rk3328-usb2phy-grf", "syscon": for rk3328 468c2ecf20Sopenharmony_ci- compatible: USBGRF should be one of the following: 478c2ecf20Sopenharmony_ci - "rockchip,rv1108-usbgrf", "syscon": for rv1108 488c2ecf20Sopenharmony_ci- reg: physical base address of the controller and length of memory mapped 498c2ecf20Sopenharmony_ci region. 508c2ecf20Sopenharmony_ci 518c2ecf20Sopenharmony_ciExample: GRF and PMUGRF of RK3399 SoCs 528c2ecf20Sopenharmony_ci 538c2ecf20Sopenharmony_ci pmugrf: syscon@ff320000 { 548c2ecf20Sopenharmony_ci compatible = "rockchip,rk3399-pmugrf", "syscon"; 558c2ecf20Sopenharmony_ci reg = <0x0 0xff320000 0x0 0x1000>; 568c2ecf20Sopenharmony_ci }; 578c2ecf20Sopenharmony_ci 588c2ecf20Sopenharmony_ci grf: syscon@ff770000 { 598c2ecf20Sopenharmony_ci compatible = "rockchip,rk3399-grf", "syscon"; 608c2ecf20Sopenharmony_ci reg = <0x0 0xff770000 0x0 0x10000>; 618c2ecf20Sopenharmony_ci }; 62