1*4882a593Smuzhiyun/* 2*4882a593Smuzhiyun * Copyright (c) 2018 Fuzhou Rockchip Electronics Co., Ltd 3*4882a593Smuzhiyun * 4*4882a593Smuzhiyun * SPDX-License-Identifier: (GPL-2.0+ OR MIT). 5*4882a593Smuzhiyun */ 6*4882a593Smuzhiyun#include <dt-bindings/soc/rockchip-system-status.h> 7*4882a593Smuzhiyun#include "rk3288-dram-default-timing.dtsi" 8*4882a593Smuzhiyun 9*4882a593Smuzhiyun/ { 10*4882a593Smuzhiyun chosen { 11*4882a593Smuzhiyun bootargs = "earlycon=uart8250,mmio32,0xff690000 console=ttyFIQ0 vmalloc=496M rw root=PARTUUID=614e0000-0000 rootfstype=ext4 rootwait"; 12*4882a593Smuzhiyun }; 13*4882a593Smuzhiyun 14*4882a593Smuzhiyun /delete-node/ dmc@ff610000; 15*4882a593Smuzhiyun 16*4882a593Smuzhiyun dfi: dfi { 17*4882a593Smuzhiyun compatible = "rockchip,rk3288-dfi"; 18*4882a593Smuzhiyun rockchip,pmu = <&pmu>; 19*4882a593Smuzhiyun rockchip,grf = <&grf>; 20*4882a593Smuzhiyun status = "disabled"; 21*4882a593Smuzhiyun }; 22*4882a593Smuzhiyun 23*4882a593Smuzhiyun dmc: dmc { 24*4882a593Smuzhiyun compatible = "rockchip,rk3288-dmc"; 25*4882a593Smuzhiyun devfreq-events = <&dfi>; 26*4882a593Smuzhiyun clocks = <&cru SCLK_DDRCLK>, <&cru PCLK_PUBL0>, 27*4882a593Smuzhiyun <&cru PCLK_DDRUPCTL0>, <&cru PCLK_PUBL1>, 28*4882a593Smuzhiyun <&cru PCLK_DDRUPCTL1>; 29*4882a593Smuzhiyun clock-names = "dmc_clk", "pclk_phy0", "pclk_upctl0", 30*4882a593Smuzhiyun "pclk_phy1", "pclk_upctl1"; 31*4882a593Smuzhiyun upthreshold = <55>; 32*4882a593Smuzhiyun downdifferential = <10>; 33*4882a593Smuzhiyun operating-points-v2 = <&dmc_opp_table>; 34*4882a593Smuzhiyun vop-dclk-mode = <0>; 35*4882a593Smuzhiyun min-cpu-freq = <600000>; 36*4882a593Smuzhiyun rockchip,ddr_timing = <&ddr_timing>; 37*4882a593Smuzhiyun system-status-freq = < 38*4882a593Smuzhiyun /*system status freq(KHz)*/ 39*4882a593Smuzhiyun SYS_STATUS_NORMAL 396000 40*4882a593Smuzhiyun SYS_STATUS_REBOOT 396000 41*4882a593Smuzhiyun SYS_STATUS_SUSPEND 192000 42*4882a593Smuzhiyun SYS_STATUS_VIDEO_1080P 300000 43*4882a593Smuzhiyun SYS_STATUS_VIDEO_4K 396000 44*4882a593Smuzhiyun SYS_STATUS_VIDEO_4K_10B 528000 45*4882a593Smuzhiyun SYS_STATUS_PERFORMANCE 528000 46*4882a593Smuzhiyun SYS_STATUS_BOOST 396000 47*4882a593Smuzhiyun SYS_STATUS_DUALVIEW 396000 48*4882a593Smuzhiyun SYS_STATUS_ISP 396000 49*4882a593Smuzhiyun >; 50*4882a593Smuzhiyun auto-min-freq = <396000>; 51*4882a593Smuzhiyun auto-freq-en = <0>; 52*4882a593Smuzhiyun status = "diasbled"; 53*4882a593Smuzhiyun }; 54*4882a593Smuzhiyun 55*4882a593Smuzhiyun dmc_opp_table: opp_table2 { 56*4882a593Smuzhiyun compatible = "operating-points-v2"; 57*4882a593Smuzhiyun 58*4882a593Smuzhiyun opp-192000000 { 59*4882a593Smuzhiyun opp-hz = /bits/ 64 <192000000>; 60*4882a593Smuzhiyun opp-microvolt = <1100000>; 61*4882a593Smuzhiyun }; 62*4882a593Smuzhiyun opp-300000000 { 63*4882a593Smuzhiyun opp-hz = /bits/ 64 <300000000>; 64*4882a593Smuzhiyun opp-microvolt = <1100000>; 65*4882a593Smuzhiyun }; 66*4882a593Smuzhiyun opp-396000000 { 67*4882a593Smuzhiyun opp-hz = /bits/ 64 <396000000>; 68*4882a593Smuzhiyun opp-microvolt = <1100000>; 69*4882a593Smuzhiyun }; 70*4882a593Smuzhiyun opp-528000000 { 71*4882a593Smuzhiyun opp-hz = /bits/ 64 <528000000>; 72*4882a593Smuzhiyun opp-microvolt = <1150000>; 73*4882a593Smuzhiyun }; 74*4882a593Smuzhiyun }; 75*4882a593Smuzhiyun 76*4882a593Smuzhiyun reserved-memory { 77*4882a593Smuzhiyun ramoops_mem: ramoops@8000000 { 78*4882a593Smuzhiyun reg = <0x0 0x8000000 0x0 0xF0000>; 79*4882a593Smuzhiyun }; 80*4882a593Smuzhiyun 81*4882a593Smuzhiyun drm_logo: drm-logo@00000000 { 82*4882a593Smuzhiyun compatible = "rockchip,drm-logo"; 83*4882a593Smuzhiyun reg = <0x0 0x0 0x0 0x0>; 84*4882a593Smuzhiyun }; 85*4882a593Smuzhiyun }; 86*4882a593Smuzhiyun 87*4882a593Smuzhiyun fiq-debugger { 88*4882a593Smuzhiyun compatible = "rockchip,fiq-debugger"; 89*4882a593Smuzhiyun interrupts = <GIC_SPI 155 IRQ_TYPE_LEVEL_HIGH>; 90*4882a593Smuzhiyun rockchip,serial-id = <2>; 91*4882a593Smuzhiyun rockchip,wake-irq = <0>; 92*4882a593Smuzhiyun rockchip,irq-mode-enable = <1>; /* If enable uart uses irq instead of fiq */ 93*4882a593Smuzhiyun rockchip,baudrate = <115200>; /* Only 115200 and 1500000 */ 94*4882a593Smuzhiyun pinctrl-names = "default"; 95*4882a593Smuzhiyun pinctrl-0 = <&uart2_xfer>; 96*4882a593Smuzhiyun }; 97*4882a593Smuzhiyun 98*4882a593Smuzhiyun /delete-node/ timer@ff810000; 99*4882a593Smuzhiyun 100*4882a593Smuzhiyun display-subsystem { 101*4882a593Smuzhiyun status = "okay"; 102*4882a593Smuzhiyun 103*4882a593Smuzhiyun ports = <&vopb_out>, <&vopl_out>; 104*4882a593Smuzhiyun logo-memory-region = <&drm_logo>; 105*4882a593Smuzhiyun 106*4882a593Smuzhiyun route { 107*4882a593Smuzhiyun route_hdmi: route-hdmi { 108*4882a593Smuzhiyun status = "disabled"; 109*4882a593Smuzhiyun logo,uboot = "logo.bmp"; 110*4882a593Smuzhiyun logo,kernel = "logo_kernel.bmp"; 111*4882a593Smuzhiyun logo,mode = "center"; 112*4882a593Smuzhiyun charge_logo,mode = "center"; 113*4882a593Smuzhiyun connect = <&vopb_out_hdmi>; 114*4882a593Smuzhiyun }; 115*4882a593Smuzhiyun 116*4882a593Smuzhiyun route_edp: route-edp { 117*4882a593Smuzhiyun status = "disabled"; 118*4882a593Smuzhiyun logo,uboot = "logo.bmp"; 119*4882a593Smuzhiyun logo,kernel = "logo_kernel.bmp"; 120*4882a593Smuzhiyun logo,mode = "center"; 121*4882a593Smuzhiyun charge_logo,mode = "center"; 122*4882a593Smuzhiyun connect = <&vopl_out_edp>; 123*4882a593Smuzhiyun }; 124*4882a593Smuzhiyun 125*4882a593Smuzhiyun route_dsi0: route-dsi0 { 126*4882a593Smuzhiyun status = "disabled"; 127*4882a593Smuzhiyun logo,uboot = "logo.bmp"; 128*4882a593Smuzhiyun logo,kernel = "logo_kernel.bmp"; 129*4882a593Smuzhiyun logo,mode = "center"; 130*4882a593Smuzhiyun charge_logo,mode = "center"; 131*4882a593Smuzhiyun connect = <&vopl_out_dsi0>; 132*4882a593Smuzhiyun }; 133*4882a593Smuzhiyun 134*4882a593Smuzhiyun route_lvds: route-lvds { 135*4882a593Smuzhiyun status = "disabled"; 136*4882a593Smuzhiyun logo,uboot = "logo.bmp"; 137*4882a593Smuzhiyun logo,kernel = "logo_kernel.bmp"; 138*4882a593Smuzhiyun logo,mode = "center"; 139*4882a593Smuzhiyun charge_logo,mode = "center"; 140*4882a593Smuzhiyun connect = <&vopl_out_lvds>; 141*4882a593Smuzhiyun }; 142*4882a593Smuzhiyun 143*4882a593Smuzhiyun route_rgb: route-rgb { 144*4882a593Smuzhiyun status = "disabled"; 145*4882a593Smuzhiyun logo,uboot = "logo.bmp"; 146*4882a593Smuzhiyun logo,kernel = "logo_kernel.bmp"; 147*4882a593Smuzhiyun logo,mode = "center"; 148*4882a593Smuzhiyun charge_logo,mode = "center"; 149*4882a593Smuzhiyun connect = <&vopl_out_rgb>; 150*4882a593Smuzhiyun }; 151*4882a593Smuzhiyun }; 152*4882a593Smuzhiyun }; 153*4882a593Smuzhiyun}; 154*4882a593Smuzhiyun 155*4882a593Smuzhiyun&dmac_bus_s { 156*4882a593Smuzhiyun /* change to non-secure dmac */ 157*4882a593Smuzhiyun reg = <0x0 0xff600000 0x0 0x4000>; 158*4882a593Smuzhiyun}; 159*4882a593Smuzhiyun 160*4882a593Smuzhiyun&efuse { 161*4882a593Smuzhiyun compatible = "rockchip,rk3288-secure-efuse"; 162*4882a593Smuzhiyun}; 163*4882a593Smuzhiyun 164*4882a593Smuzhiyun&mpp_srv { 165*4882a593Smuzhiyun status = "okay"; 166*4882a593Smuzhiyun}; 167*4882a593Smuzhiyun 168*4882a593Smuzhiyun&hevc { 169*4882a593Smuzhiyun status = "okay"; 170*4882a593Smuzhiyun}; 171*4882a593Smuzhiyun 172*4882a593Smuzhiyun&hevc_mmu { 173*4882a593Smuzhiyun status = "okay"; 174*4882a593Smuzhiyun}; 175*4882a593Smuzhiyun 176*4882a593Smuzhiyun&iep { 177*4882a593Smuzhiyun status = "okay"; 178*4882a593Smuzhiyun}; 179*4882a593Smuzhiyun 180*4882a593Smuzhiyun&iep_mmu { 181*4882a593Smuzhiyun status = "okay"; 182*4882a593Smuzhiyun}; 183*4882a593Smuzhiyun 184*4882a593Smuzhiyun&rga { 185*4882a593Smuzhiyun compatible = "rockchip,rga2"; 186*4882a593Smuzhiyun clocks = <&cru ACLK_RGA>, <&cru HCLK_RGA>, <&cru SCLK_RGA>; 187*4882a593Smuzhiyun clock-names = "aclk_rga", "hclk_rga", "clk_rga"; 188*4882a593Smuzhiyun status = "okay"; 189*4882a593Smuzhiyun}; 190*4882a593Smuzhiyun 191*4882a593Smuzhiyun&rng { 192*4882a593Smuzhiyun status = "okay"; 193*4882a593Smuzhiyun}; 194*4882a593Smuzhiyun 195*4882a593Smuzhiyun&uart2 { 196*4882a593Smuzhiyun status = "disabled"; 197*4882a593Smuzhiyun}; 198*4882a593Smuzhiyun 199*4882a593Smuzhiyun&vdpu { 200*4882a593Smuzhiyun status = "okay"; 201*4882a593Smuzhiyun}; 202*4882a593Smuzhiyun 203*4882a593Smuzhiyun&vepu { 204*4882a593Smuzhiyun status = "okay"; 205*4882a593Smuzhiyun}; 206*4882a593Smuzhiyun 207*4882a593Smuzhiyun&vpu_mmu { 208*4882a593Smuzhiyun status = "okay"; 209*4882a593Smuzhiyun}; 210*4882a593Smuzhiyun 211*4882a593Smuzhiyun&video_phy { 212*4882a593Smuzhiyun status = "okay"; 213*4882a593Smuzhiyun}; 214