Search the Community
Showing results for 'tv'.
-
From what I know it isn't possible to boot without emmc on the amlogic TV boxes
-
hi, i recently discovered the world of linux in arm, so i wanted to test it, so i can use my retro tv to emulate, i already tried libreELEC and it worked flawlessly, but it had a lot of constrainsts so i installed armbian, first multiboot didnt showed up any image on my tv so i switched to my secondary monitor on my pc and i tworks, i wonder if theres a posibility that armbian could support composite output on the rk3229 platform
-
TV Box Status Information Template Version 1.0 TV Box Name: MXQ Pro 4k 5G (fake 16GB RAM/128GB ROM) CPU: Allwinner H3 Armbian build file name: Armbian_21.08.1_Orangepipcplus_focal_current_5.10.60.img.xz / Armbian_21.08.1_Orangepipcplus_buster_current_5.10.60.img.xz (both works) DTB file used: <none> Kernel Version: 5.10.60 Distribution Installed: focal and buster Working Ethernet (Yes/No): yes Max Ethernet Speed that works (100/1000): 100M Does wifi work (Yes/No): yes Does bluetooth work (Yes/No): not available Does HDMI audio work (Yes/No): yes Additional Comments (provide any additional information you feel is important): all other functionalities for Orange Pi PC Plus is not available (eg OTG function of USB and no GPIO). You can also run "nand-sata-install" command to install armbian to emmc, works fine, no issues.
-
I use a X88pro13 TV box. i got a log messige by changeing the file config/bootscripts/boot-rk35xx.cmd: line 15: setenv earlycon "on" line 29,30: if test "${console}" = "serial" || test "${console}" = "both"; then setenv consoleargs "console=ttyS0,1500000 ${consoleargs}"; fi if test "${earlycon}" = "on"; then setenv consoleargs "earlyprintk earlycon=snps,dw-apb-uart,ff9f0000 loglevel=7 ${consoleargs}"; fi for bumping to kernel 6.19 I add a additional edge case in config/sources/families/rk35xx.conf: case $BRANCH in ... ... edge) BOOTDIR='u-boot-rockchip64' declare -g KERNEL_MAJOR_MINOR="6.19" declare -g LINUXFAMILY=rk35xx KERNELPATCHDIR='rk35xx-edge-6.19' KERNELBRANCH='branch:v6.19-rc1' SERIALCON="ttyS0" ;; esac Bumping to kernel to 6.19-rc1 I got following: ## Loading init Ramdisk from Legacy Image at 0a200000 ... Image Name: uInitrd Image Type: AArch64 Linux RAMDisk Image (gzip compressed) Data Size: 26299482 Bytes = 25.1 MiB Load Address: 00000000 Entry Point: 00000000 Verifying Checksum ... OK ## Flattened Device Tree blob at 0x08300000 Booting using the fdt blob at 0x08300000 reserving fdt memory region: addr=8300000 size=74000 Using Device Tree in place at 0000000008300000, end 0000000008376fff [Vendor ERROR]:Invalid boot device type(0) ## reserved-memory: shmem@10f000: addr=10f000 size=100 ramoops@110000: addr=110000 size=e0000 Adding bank: 0x00200000 - 0xfc000000 (size: 0xfbe00000) Total: 201703.160/201977.24 ms Starting kernel ... [ 0.000000] Booting Linux on physical CPU 0x0000000000 [0x410fd034] [ 0.000000] Linux version 6.19.0-rc1-edge-rk35xx (build@armbian) (aarch64-linux-gnu-gcc (Ubuntu 13.3.0-6ubuntu2~24.04) 13.3.0, GNU ld (GNU Binutils for Ubuntu) 2.42) #2 SMP PREEMPT Sun Dec 14 04:05:07 UTC 2025 [ 0.000000] KASLR disabled due to lack of seed [ 0.000000] Machine model: Hungsun X88 TV box [ 0.000000] earlycon: uart8250 at MMIO32 0x00000000ff9f0000 (options '') [ 0.000000] printk: legacy bootconsole [uart8250] enabled [ 0.000000] efi: UEFI not found. [ 0.000000] OF: reserved mem: Reserved memory: failed to reserve memory for node 'drm-logo@0': base 0x0000000000000000, size 0 MiB [ 0.000000] OF: reserved mem: Reserved memory: failed to reserve memory for node 'drm-cubic-lut@0': base 0x0000000000000000, size 0 MiB [ 0.000000] OF: reserved mem: 0x000000000010f000..0x000000000010f0ff (0KiB) nomap non-reusable shmem@10f000 [ 0.000000] OF: reserved mem: 0x0000000000110000..0x00000000001effff (896 KiB) map non-reusable ramoops@110000 [ 0.000000] NUMA: Faking a node at [mem 0x0000000000200000-0x00000000fbffffff] [ 0.000000] NODE_DATA(0) allocated [mem 0xfb7d5980-0xfb7d813f] [ 0.000000] Zone ranges: [ 0.000000] DMA [mem 0x0000000000200000-0x00000000fbffffff] [ 0.000000] DMA32 empty [ 0.000000] Normal empty [ 0.000000] Movable zone start for each node [ 0.000000] Early memory node ranges [ 0.000000] node 0: [mem 0x0000000000200000-0x00000000fbffffff] [ 0.000000] Initmem setup node 0 [mem 0x0000000000200000-0x00000000fbffffff] [ 0.000000] On node 0, zone DMA: 512 pages in unavailable ranges [ 0.000000] On node 0, zone DMA: 16384 pages in unavailable ranges [ 0.000000] cma: Reserved 128 MiB at 0x00000000ef600000 [ 0.000000] psci: probing for conduit method from DT. [ 0.000000] psci: PSCIv1.1 detected in firmware. [ 0.000000] psci: Using standard PSCI v0.2 function IDs [ 0.000000] psci: MIGRATE_INFO_TYPE not supported. [ 0.000000] psci: SMC Calling Convention v1.2 [ 0.000000] percpu: Embedded 34 pages/cpu s101016 r8192 d30056 u139264 [ 0.000000] Detected VIPT I-cache on CPU0 [ 0.000000] CPU features: detected: ARM erratum 845719 [ 0.000000] alternatives: applying boot alternatives [ 0.000000] Kernel command line: root=/dev/mmcblk0p1 rootwait rootfstype=ext4 console=ttyFIQ0 earlyprintk earlycon=uart8250,mmio32,0xff9f0000 loglevel=7 consoleblank=0 androidboot.fwver=bl31-v1.17,uboot-rmbian-201-12/17/2025 [ 0.000000] Unknown kernel command line parameters "earlyprintk", willbe passed to user space. [ 0.000000] printk: log buffer data + meta data: 262144 + 917504 = 1179648 bytes [ 0.000000] Dentry cache hash table entries: 524288 (order: 10, 4194304bytes, linear) [ 0.000000] Inode-cache hash table entries: 262144 (order: 9, 2097152 bytes, linear) [ 0.000000] software IO TLB: SWIOTLB bounce buffer size adjusted to 3MB [ 0.000000] software IO TLB: area num 4. [ 0.000000] software IO TLB: mapped [mem 0x00000000eec00000-0x00000000e f000000] (4MB) [ 0.000000] Fallback order for Node 0: 0 [ 0.000000] Built 1 zonelists, mobility grouping on. Total pages: 1031680 [ 0.000000] Policy zone: DMA [ 0.000000] mem auto-init: stack:all(zero), heap alloc:on, heap free:off [ 0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=4, Nodes=1 [ 0.000000] ftrace: allocating 59497 entries in 234 pages [ 0.000000] ftrace: allocated 234 pages with 5 groups [ 0.000000] rcu: Preemptible hierarchical RCU implementation. [ 0.000000] rcu: RCU event tracing is enabled. [ 0.000000] rcu: RCU restricting CPUs from NR_CPUS=256 to nr_cpu_ids=4. [ 0.000000] Trampoline variant of Tasks RCU enabled. [ 0.000000] Rude variant of Tasks RCU enabled. [ 0.000000] Tracing variant of Tasks RCU enabled. [ 0.000000] rcu: RCU calculated value of scheduler-enlistment delay is 25 jiffies. [ 0.000000] rcu: Adjusting geometry for rcu_fanout_leaf=16, nr_cpu_ids=4 [ 0.000000] RCU Tasks: Setting shift to 2 and lim to 1 rcu_task_cb_adjust=1 rcu_task_cpu_ids=4. [ 0.000000] RCU Tasks Rude: Setting shift to 2 and lim to 1 rcu_task_cb_adjust=1 rcu_task_cpu_ids=4. [ 0.000000] RCU Tasks Trace: Setting shift to 2 and lim to 1 rcu_task_cb_adjust=1 rcu_task_cpu_ids=4. [ 0.000000] NR_IRQS: 64, nr_irqs: 64, preallocated irqs: 0 [ 0.000000] Root IRQ handler: gic_handle_irq [ 0.000000] GIC: Using split EOI/Deactivate mode [ 0.000000] rcu: srcu_init: Setting srcu_struct sizes based on contenti on. [ 0.00000 [ 0.046619] DMA: preallocated 512 KiB GFP_KERNEL pool for atomic allocations [ 0.047742] DMA: preallocated 512 KiB GFP_KERNEL|GFP_DMA pool for atomic allocations [ 0.049191] DMA: preallocated 512 KiB GFP_KERNEL|GFP_DMA32 pool for atomic allocations [ 0.049978] audit: initializing netlink subsys (disabled) [ 0.050726] audit: type=2000 audit(0.048:1): state=initialized audit_enabled=0 res=1 [ 0.052262] thermal_sys: Registered thermal governor 'fair_share' [ 0.052275] thermal_sys: Registered thermal governor 'bang_bang' [ 0.052833] thermal_sys: Registered thermal governor 'step_wise' [ 0.053379] thermal_sys: Registered thermal governor 'user_space' [ 0.053986] cpuidle: using governor menu [ 0.055119] hw-breakpoint: found 6 breakpoint and 4 watchpoint registers. [ 0.055835] ASID allocator initialised with 65536 entries [ 0.056589] Serial: AMBA PL011 UART driver [ 0.062489] /vop@ff840000: Fixed dependency cycle(s) with /hdmi@ff8d0000 [ 0.063177] /hdmi@ff8d0000: Fixed dependency cycle(s) with /vop@ff840000 [ 0.071348] /soc/interrupt-controller@fed01000: Fixed dependency cycle(s) with /soc/interrupt-controller@fed01000 [ 0.078511] rockchip-pm-domain ff600000.power-management:power-controller: power-domain: failed to get clk at index 0: -517 [ 0.079540] rockchip-pm-domain ff600000.power-management:power-controller: failed to handle node power-domain: -517 [ 0.088535] HugeTLB: registered 1.00 GiB page size, pre-allocated 0 pages [ 0.089226] HugeTLB: 0 KiB vmemmap can be freed for a 1.00 GiB page [ 0.089799] HugeTLB: registered 32.0 MiB page size, pre-allocated 0 pages [ 0.090416] HugeTLB: 0 KiB vmemmap can be freed for a 32.0 MiB page [ 0.090988] HugeTLB: registered 2.00 MiB page size, pre-allocated 0 pages [ 0.091604] HugeTLB: 0 KiB vmemmap can be freed for a 2.00 MiB page [ 0.092175] HugeTLB: registered 64.0 KiB page size, pre-allocated 0 pages [ 0.092793] HugeTLB: 0 KiB vmemmap can be freed for a 64.0 KiB page [ 0.161513] raid6: neonx8 gen() 2502 MB/s [ 0.229617] raid6: neonx4 gen() 2461 MB/s [ 0.297733] raid6: neonx2 gen() 2364 MB/s [ 0.365826] raid6: neonx1 gen() 2018 MB/s [ 0.433922] raid6: int64x8 gen() 1609 MB/s [ 0.502020] raid6: int64x4 gen() 1783 MB/s [ 0.570112] raid6: int64x2 gen() 1595 MB/s [ 0.638202] raid6: int64x1 gen() 1182 MB/s [ 0.638592] raid6: using algorithm neonx8 gen() 2502 MB/s [ 0.706279] raid6: .... xor() 1852 MB/s, rmw enabled [ 0.706733] raid6: using neon recovery algorithm [ 0.708358] iommu: Default domain type: Translated [ 0.708816] iommu: DMA domain TLB invalidation policy: strict mode [ 0.709929] SCSI subsystem initialized [ 0.710804] usbcore: registered new interface driver usbfs [ 0.711337] usbcore: registered new interface driver hub [ 0.711861] usbcore: registered new device driver usb [ 0.712860] pps_core: LinuxPPS API ver. 1 registered [ 0.713318] pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti <giometti@linux.it> [ 0.714157] PTP clock support registered [ 0.714577] EDAC MC: Ver: 3.0.0 [ 0.715269] scmi_core: SCMI protocol bus registered [ 0.716129] Advanced Linux Sound Architecture Driver Initialized. [ 0.717504] NetLabel: Initializing [ 0.717824] NetLabel: domain hash size = 128 [ 0.718220] NetLabel: protocols = UNLABELED CIPSOv4 CALIPSO [ 0.718836] NetLabel: unlabeled traffic allowed by default [ 0.719615] vgaarb: loaded [ 0.720328] clocksource: Switched to clocksource arch_sys_counter [ 0.724134] VFS: Disk quotas dquot_6.6.0 [ 0.724565] VFS: Dquot-cache hash table entries: 512 (order 0, 4096 bytes) [ 0.725999] AppArmor: AppArmor Filesystem Enabled [ 0.733475] NET: Registered PF_INET protocol family [ 0.734167] IP idents hash table entries: 65536 (order: 7, 524288 bytes , linear) [ 0.790913] tcp_listen_portaddr_hash hash table entries: 2048 (order: 3 , 32768 bytes, linear) [ 0.791838] Table-perturb hash table entries: 65536 (order: 6, 262144 bytes, linear) [ 0.792647] TCP established hash table entries: 32768 (order: 6, 262144 bytes, linear) [ 0.793734] TCP bind hash table entries: 32768 (order: 8, 1048576 bytes , linear) [ 0.795145] TCP: Hash tables configured (established 32768 bind 32768) [ 0.795913] UDP hash table entries: 2048 (order: 5, 131072 bytes, linear) [ 0.796737] UDP-Lite hash table entries: 2048 (order: 5, 131072 bytes, linear) [ 0.797707] NET: Registered PF_UNIX/PF_LOCAL protocol family [ 0.798259] NET: Registered PF_XDP protocol family [ 0.798709] PCI: CLS 0 bytes, default 64 [ 0.799346] Trying to unpack rootfs image as initramfs... [ 0.803852] kvm [1]: nv: 568 coarse grained trap handlers [ 0.804928] kvm [1]: IPA Size Limit: 40 bits [ 0.807675] kvm [1]: vgic interrupt IRQ9 [ 0.808099] kvm [1]: Hyp nVHE mode initialized successfully [ 0.810649] Initialise system trusted keyrings [ 0.811123] Key type blacklist registered [ 0.811814] workingset: timestamp_bits=44 max_order=20 bucket_order=0 [ 0.813065] squashfs: version 4.0 (2009/01/31) Phillip Lougher [ 0.814196] fuse: init (API version 7.45) [ 0.816106] integrity: Platform Keyring initialized [ 0.816952] cryptd: max_cpu_qlen set to 1000 [ 0.865647] xor: measuring software checksum speed [ 0.867255] 8regs : 2856 MB/sec [ 0.868849] 32regs : 2763 MB/sec [ 0.870578] arm64_neon : 2496 MB/sec [ 0.870979] xor: using function: 8regs (2856 MB/sec) [ 0.871446] Key type asymmetric registered [ 0.871826] Asymmetric key parser 'x509' registered [ 0.872459] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 245) [ 0.873462] io scheduler mq-deadline registered [ 0.873894] io scheduler kyber registered [ 0.874322] io scheduler bfq registered [ 0.879699] ledtrig-cpu: registered to indicate activity on CPUs [ 0.885032] of_clk_src_onecell_get: invalid clock index 511 [ 0.885566] clk: couldn't get clock 0 for /soc/clock-controller@ff4a0000 [ 0.886192] rockchip_clk_of_add_provider: could not register clk provider [ 0.890652] Serial: 8250/16550 driver, 8 ports, IRQ sharing disabled [ 0.895705] Serial: AMBA driver [ 0.906220] loop: module loaded [ 0.908175] Key type psk registered [ 0.913352] thunder_xcv, ver 1.0 [ 0.913713] thunder_bgx, ver 1.0 [ 0.914048] nicpf, ver 1.0 [ 0.915653] /usbdrd: Failed to get clk index: 0 ret: -517 [ 0.919011] usbcore: registered new interface driver usb-storage [ 0.922031] mousedev: PS/2 mouse device common for all mice [ 0.923143] i2c_dev: i2c /dev entries driver [ 0.926968] sdhci: Secure Digital Host Controller Interface driver [ 0.927548] sdhci: Copyright(c) Pierre Ossman [ 0.927976] Synopsys Designware Multimedia Card Interface Driver [ 0.929813] sdhci-pltfm: SDHCI platform and OF driver helper [ 0.933161] arm-scmi arm-scmi.0.auto: Using scmi_smc_transport [ 0.933714] arm-scmi arm-scmi.0.auto: SCMI max-rx-timeout: 30ms / max-msg-size: 104bytes / max-msg: 20 [ 0.934752] scmi_protocol scmi_dev.1: Enabled polling mode TX channel -prot_id:16 [ 0.935703] arm-scmi arm-scmi.0.auto: SCMI Notifications - Core Enabled . [ 0.936451] arm-scmi arm-scmi.0.auto: SCMI Protocol v2.0 'rockchip:' Firmware version 0x0 [ 0.937293] arm-scmi arm-scmi.0.auto: Enabling SCMI Quirk [quirk_clock_ rates_triplet_out_of_spec] [ 0.938892] SMCCC: SOC_ID: ARCH_SOC_ID not implemented, skipping .... [ 0.940075] hid: raw HID events driver (C) Jiri Kosina [ 0.940762] usbcore: registered new interface driver usbhid [ 0.941283] usbhid: USB HID core driver [ 0.947869] NET: Registered PF_INET6 protocol family [ 0.949807] Segment Routing with IPv6 [ 0.950212] In-situ OAM (IOAM) with IPv6 [ 0.950687] NET: Registered PF_PACKET protocol family [ 0.951228] bridge: filtering via arp/ip/ip6tables is no longer available by default. Update your scripts to load br_netfilter if you need this. [ 0.952714] Key type dns_resolver registered [ 0.962105] registered taskstats version 1 [ 0.962941] Loading compiled-in X.509 certificates [ 0.974817] zswap: loaded using pool zstd [ 0.975474] Demotion targets for Node 0: null [ 0.976392] Key type .fscrypt registered [ 0.976770] Key type fscrypt-provisioning registered [ 0.978529] Btrfs loaded, zoned=yes, fsverity=yes [ 0.979182] Key type encrypted registered [ 0.979562] AppArmor: AppArmor sha256 policy hashing enabled [ 0.998097] rockchip-pm-domain ff600000.power-management:power-controller: power-domain: failed to get clk at index 0: -517 [ 0.999134] rockchip-pm-domain ff600000.power-management:power-controller: failed to handle node power-domain: -517 [ 1.0
-
Hello everyone, I’m trying to install Armbian on a TV box with an RK3328 SoC, but I’m running into several issues. Here’s what I’ve done so far and the information I have: Box model: dnetSmart-YSE, version 10 Chipset: RK3328 Kernel version: 4.4.179 PCB info: t9-RK3328-D4, ver 2.0.2018 Design by: Hugsun I followed the instructions I found on the forum to install Armbian, but it’s not working. I’ve tried several methods: Using the microSD card: I tried installing Armbian on a microSD card and booting it from the box's microSD port, but it didn’t work. Using a USB drive: I also tried booting from a USB drive plugged into one of the box’s USB ports, but without success. Connecting a male-to-male cable between my PC and the box: I couldn’t retrieve any information this way. Connecting an UART (FTDI): The result is unreadable on the terminal. I haven’t received any specific details from the manufacturer. I’ll attach some photos to help illustrate the situation. My goal is to figure out if it’s possible to install Armbian on this box and, if so, how to proceed. Thank you in advance for your help!
-
Critique or improve my method to get a lightweight LabWC desktop
forumtrekker replied to robertoj's topic in Allwinner sunxi
With modifications to lightdm.conf I got lightdm working with your tutorial, however lightdm and labwc don't seem to use the SPI display. I verified the setup works on an HDMI screen (with a large box of random color artifacts filling the right quarter side, but that's hopefully just because it was a TV I tested with. I don't really care about HDMI). Do i need to specify lightdm / labwc to use the /sys/class/drm/card0-SPI-1? I'm curious if you simply launched LightDM and had it use the SPI display by default, without changing any configurations (as that is what it sounds like you achieved) I'm realizing I don't know enough about how wayland works to even know how to start debugging the issue or getting it to use the tinydrm device or even the legacy framebuffer device it adds for compatibility. Maybe I need to get Raspbian running and copy their configuration files, since Raspbian Trixie runs on wayland. The only difference between your guide and my setup is I am running kernel 6.18, as I can't seem to find how to compile or install kernel 6.13. Available installable kernels are 6.12, 6.14, and 6.18 as of 26.0.2 Armbian Trixie. The steps you outline in the github repo work with some modification, namely I will edit to include the lightdm.conf when I get home, since it requires modification from the original installed version. Further, certain packages are uninstallable, or named differently than in your guide. Here is the one line APT command to install all the packages you list, with the package names fixed. Certain packages don't seem to be required at all - namely freerdp, providing the windows equivalent of VNC, so its not included in this list. There are likely others and I assume you collected these packages to install from multiple guides / forums, so the inconsistencies are understandable. sudo apt install libcairo2-dev libpango1.0-dev libxml2-dev libglib2.0-dev libdisplay-info-dev hwdata libgbm-dev libdisplay-info-dev libseat-dev libinput-dev libpango1.0-dev libpangocairo-1.0-0 libcairo2-dev libglib2.0-dev libpixman-1-dev libxkbcommon-dev liblcms2-dev libxcb-xinput-dev libxcb-errors-dev libxcb-render-util0-dev libxcb-present-dev libxcb-res0-dev libxcb-dri3-dev libxcb-ewmh-dev libxcb-icccm4-dev libxcb-composite0-dev cmake libxml2-dev libliftoff-dev build-essential cmake libwayland-dev wayland-protocols libegl1-mesa-dev libgles2-mesa-dev libdrm-dev libgbm-dev libinput-dev libxkbcommon-dev libudev-dev libpixman-1-dev libsystemd-dev libcap-dev libxcb1-dev libxcb-composite0-dev libxcb-xfixes0-dev libxcb-xinput-dev libxcb-image0-dev libxcb-render-util0-dev libx11-xcb-dev libxcb-icccm4-dev libwinpr3-dev libpng-dev libavutil-dev libavcodec-dev libavformat-dev universal-ctags expat libexpat1 libexpat1-dev seatd foot librsvg2-dev scdoc gettext appmenu-gtk-module-common libaccountsservice-dev gir1.2-accountsservice-1.0 liblightdm-gobject-dev liblightdm-gobject-1-0 libgtk-3-dev gnome-common nasm meson I am running Armbian Trixie, and I did not need to install any packages from trixie-backports or oldstable-backports to get your setup to work properly. EDIT: It actually seemed to be my SPI clock speed was too high for the display. Lowering it to a conservative 16 or 20 MHz gets labwc to work, without having to configure and specify the display to output on. -
I have once again returned to this post in need of assistance. I have recently acquired from my tech wizard father a MXQ Pro 5G 4K TV box, which not even he managed to get working. According to him, its eMMC. Attached are photos of the motherboard, i did some looking at previous recent pages, so i have my suspicions, if someone though knows if this is a false print, or a just a freak motherboard please do tell. The problem itself is that it wont boot to the SD card, sometimes it will boot in sometimes not, but every time it boots if i try to access the files or sd card the Android freezes up. CPU: According to the print, RK3228A If any questions about any other components arise, please circle them in a photo because my knowledge on hardware electronics is limited.
-
Hello everyone, I’m trying to flash a firmware on a generic Android TV Box and I’m stuck at a hardware/bootloader compatibility issue. Device technical details: - SoC: Allwinner H618 - Board / PCB: FX-H618-D4_V10 - RAM: 4GB DDR4 - Storage: eMMC (unknown size, likely 32GB) - USB FEL ID: VID_1F3A PID_EFE8 - Original OS: BigdroidOS (Android generic) - Commercial name: Transpeed 8K618-T Current situation: - Device enters FEL mode correctly (VID_1F3A PID_EFE8) - PhoenixSuit detects the device but firmware upgrade hangs at “Beginning Firmware Upgrade” - Tried multiple PCs (Windows 10 and 11), different USB ports and cables - Allwinner FEL driver installed correctly - SD card flashing with PhoenixCard (Startup mode) is ignored, device boots normally to Android - Reset timing variations tested (short press / long press / no reset) Tested firmware: - sbx_transpeed_h618_atv_12_11.img - H618.apollo-p3.T-H618_100M_12_FD650.2023.09.13.1720.img Both firmwares show similar behavior (FEL detected but no successful flash). I believe the issue is bootloader / DDR4 initialization mismatch. I’m specifically looking for: - A firmware confirmed to work with board FX-H618-D4_V10 - Or the original BigdroidOS firmware dump for this board - Or confirmation whether this board requires a specific boot0/boot1 Any help, working firmware, or dump from the same board would be greatly appreciated. Thank you! Allwinner H618, FX-H618, DDR4, PhoenixSuit, FEL, Transpeed
-
@John Taylor I finally had some time to test this today and it is working fine for me. I built a fresh image on an ubuntu laptop, copied the image to a SD card, it mounted fine on ubuntu, where I edited the extlinux.conf file and then used the SD card to boot on an amlogic based TV box. You mention etcher as your sd card tool. Etcher in recent versions (recent being the last two years or so) is known to have problems. It is no longer recommended for use with Armbian images. I have noticed that in particular if Etcher is burning a compressed image it doesn't work for me. But I have had some success if the image is uncompressed first. But others have reported that it fails in general.
-
Efforts to develop firmware for Lemfo HK1 RBOX K8S 4G/64G
Panda posted a topic in Rockchip CPU Boxes
Hello People, I Bring to you the Lemfo HK1 RBOX K8S 4G/64G. This box came with Android 13 and can be rooted easy, follow some specs of the box: Processor: Rockchip RK3528 GPU: Mali 450 Memory: 4Gb (micron) Storage: 64Gb (eMMC 5.1 Samsung) Network: PHY Integrated stmmac-0:02 Driver RK630 100Mbps Wireless: 5G driver: rtl8822cs on gpio Bluetooth: 5.1 USB 3.0: 01 5Gbps USB 2.0: 01 HDMI: 01 TV-Out: 01 Power: 5v 2A Aliexpress link: Lemfo HK1 Rbox K8S What is Working: HDMI: partial (read bellow) Network: partial (read bellow) Bluetooth: no Wifi: no USB 3.0: yes Sound: yes over HDMI Obs: You need to use hinlink-ht2 image, but no wireless, nor ethernet, only HDMI work, and you need to turn on monitor around 15 seconds after turn on the TVBox I get the FDT from Android, and this FDT with hilink-ht2 images boot without HDMI, but with network, if you boot with hinlink-ht2 make the initial configs and start the desktop you can replace the rk-3528-hinlink-ht2.dtb with the android FDT and the box will boot, wait around 30 seconds and turn on the monitor and you have the HDMI and network working. I have build the image with xfce and include some drivers (mail450, RK630, rtl8822cs) and enable some DRM options (under test yet) I Have the Andoid boot partition dump, and other partions, I will share the files later (need some dropbox os gdrive to share) I have attached the Android.DTB and dmesg from android and armbian, if someone want take a look. Any help and sugestion will be great! Some pictures of the board: Lemfo-hk1rbox-k8s.dtb android_dmesg.log linux_dmesg.log linux-syslog -
Recently has appeared some 3566 tv boxes in the wild, would be doable to run armbian on them? Since Rockchip seems kinda dedicated to openness the same goes for the RK3566?
-
/dts-v1/; /memreserve/ 0x0000000048000000 0x0000000001000000; / { interrupt-parent = <0x1>; #address-cells = <0x2>; #size-cells = <0x2>; model = "sun50iw9"; compatible = "allwinner,h616", "arm,sun50iw9p1"; clocks { compatible = "allwinner,clk-init"; device_type = "clocks"; #address-cells = <0x2>; #size-cells = <0x2>; ranges; reg = <0x0 0x3001000 0x0 0x1000 0x0 0x7010000 0x0 0x400 0x0 0x7000000 0x0 0x4>; losc { #clock-cells = <0x0>; compatible = "allwinner,fixed-clock"; clock-frequency = <0x8000>; clock-output-names = "losc"; linux,phandle = <0x1e>; phandle = <0x1e>; }; iosc { #clock-cells = <0x0>; compatible = "allwinner,fixed-clock"; clock-frequency = <0xf42400>; clock-output-names = "iosc"; linux,phandle = <0x20>; phandle = <0x20>; }; hosc { #clock-cells = <0x0>; compatible = "allwinner,fixed-clock"; clock-frequency = <0x16e3600>; clock-output-names = "hosc"; linux,phandle = <0x9>; phandle = <0x9>; }; osc48m { #clock-cells = <0x0>; compatible = "allwinner,fixed-clock"; clock-frequency = <0x2dc6c00>; clock-output-names = "osc48m"; linux,phandle = <0xa>; phandle = <0xa>; }; hoscdiv32k { #clock-cells = <0x0>; compatible = "allwinner,fixed-clock"; clock-frequency = <0x8000>; clock-output-names = "hoscdiv32k"; linux,phandle = <0xe1>; phandle = <0xe1>; }; pll_periph0div25m { #clock-cells = <0x0>; compatible = "allwinner,fixed-clock"; clock-frequency = <0x17d7840>; clock-output-names = "pll_periph0div25m"; linux,phandle = <0xe2>; phandle = <0xe2>; }; pll_cpu { #clock-cells = <0x0>; compatible = "allwinner,pll-clock"; lock-mode = "new"; clock-output-names = "pll_cpu"; linux,phandle = <0xd5>; phandle = <0xd5>; }; pll_ddr0 { #clock-cells = <0x0>; compatible = "allwinner,pll-clock"; lock-mode = "new"; clock-output-names = "pll_ddr0"; linux,phandle = <0xda>; phandle = <0xda>; }; pll_ddr1 { #clock-cells = <0x0>; compatible = "allwinner,pll-clock"; lock-mode = "new"; clock-output-names = "pll_ddr1"; linux,phandle = <0xe3>; phandle = <0xe3>; }; pll_periph0 { #clock-cells = <0x0>; compatible = "allwinner,pll-clock"; assigned-clocks = <0x2>; assigned-clock-rates = <0x23c34600>; lock-mode = "new"; clock-output-names = "pll_periph0"; linux,phandle = <0x2>; phandle = <0x2>; }; pll_periph1 { #clock-cells = <0x0>; compatible = "allwinner,pll-clock"; assigned-clocks = <0x3>; assigned-clock-rates = <0x23c34600>; lock-mode = "new"; clock-output-names = "pll_periph1"; linux,phandle = <0x3>; phandle = <0x3>; }; pll_gpu { #clock-cells = <0x0>; compatible = "allwinner,pll-clock"; lock-mode = "new"; clock-output-names = "pll_gpu"; linux,phandle = <0xdc>; phandle = <0xdc>; }; pll_video0x4 { #clock-cells = <0x0>; compatible = "allwinner,pll-clock"; lock-mode = "new"; clock-output-names = "pll_video0x4"; linux,phandle = <0x8>; phandle = <0x8>; }; pll_video1 { #clock-cells = <0x0>; compatible = "allwinner,pll-clock"; lock-mode = "new"; assigned-clocks = <0x4>; assigned-clock-rates = <0x19bfcc00>; clock-output-names = "pll_video1"; linux,phandle = <0x4>; phandle = <0x4>; }; pll_video2 { #clock-cells = <0x0>; compatible = "allwinner,pll-clock"; lock-mode = "new"; assigned-clocks = <0x5>; clock-output-names = "pll_video2"; linux,phandle = <0x5>; phandle = <0x5>; }; pll_ve { #clock-cells = <0x0>; compatible = "allwinner,pll-clock"; device_type = "clk_pll_ve"; lock-mode = "new"; clock-output-names = "pll_ve"; linux,phandle = <0x26>; phandle = <0x26>; }; pll_de { #clock-cells = <0x0>; compatible = "allwinner,pll-clock"; assigned-clocks = <0x6>; assigned-clock-rates = <0x297c1e00>; lock-mode = "new"; clock-output-names = "pll_de"; linux,phandle = <0x6>; phandle = <0x6>; }; pll_csi { #clock-cells = <0x0>; compatible = "allwinner,pll-clock"; lock-mode = "new"; clock-output-names = "pll_csi"; linux,phandle = <0xa5>; phandle = <0xa5>; }; pll_audiox4 { #clock-cells = <0x0>; compatible = "allwinner,pll-clock"; assigned-clocks = <0x7>; assigned-clock-rates = <0x5dc0000>; lock-mode = "new"; clock-output-names = "pll_audiox4"; linux,phandle = <0x7>; phandle = <0x7>; }; pll_periph0x2 { #clock-cells = <0x0>; compatible = "allwinner,fixed-factor-clock"; clocks = <0x2>; clock-mult = <0x2>; clock-div = <0x1>; clock-output-names = "pll_periph0x2"; linux,phandle = <0xc>; phandle = <0xc>; }; pll_periph0x4 { #clock-cells = <0x0>; compatible = "allwinner,fixed-factor-clock"; clocks = <0x2>; clock-mult = <0x4>; clock-div = <0x1>; clock-output-names = "pll_periph0x4"; linux,phandle = <0xe4>; phandle = <0xe4>; }; periph32k { #clock-cells = <0x0>; compatible = "allwinner,fixed-factor-clock"; clocks = <0x2>; clock-mult = <0x2>; clock-div = <0x8f0d>; clock-output-names = "periph32k"; linux,phandle = <0xe5>; phandle = <0xe5>; }; pll_periph1x2 { #clock-cells = <0x0>; compatible = "allwinner,fixed-factor-clock"; clocks = <0x3>; clock-mult = <0x2>; clock-div = <0x1>; clock-output-names = "pll_periph1x2"; linux,phandle = <0x86>; phandle = <0x86>; }; pll_audio { #clock-cells = <0x0>; compatible = "allwinner,fixed-factor-clock"; clocks = <0x7>; clock-mult = <0x1>; clock-div = <0x4>; clock-output-names = "pll_audio"; linux,phandle = <0x60>; phandle = <0x60>; }; pll_audiox2 { #clock-cells = <0x0>; compatible = "allwinner,fixed-factor-clock"; clocks = <0x7>; clock-mult = <0x1>; clock-div = <0x2>; clock-output-names = "pll_audiox2"; linux,phandle = <0xe6>; phandle = <0xe6>; }; pll_video0 { #clock-cells = <0x0>; compatible = "allwinner,fixed-factor-clock"; clocks = <0x8>; clock-mult = <0x1>; clock-div = <0x4>; clock-output-names = "pll_video0"; linux,phandle = <0xe7>; phandle = <0xe7>; }; pll_video1x4 { #clock-cells = <0x0>; compatible = "allwinner,fixed-factor-clock"; clocks = <0x4>; clock-mult = <0x4>; clock-div = <0x1>; clock-output-names = "pll_video1x4"; linux,phandle = <0xe8>; phandle = <0xe8>; }; pll_video2x4 { #clock-cells = <0x0>; compatible = "allwinner,fixed-factor-clock"; clocks = <0x5>; clock-mult = <0x4>; clock-div = <0x1>; clock-output-names = "pll_video2x4"; linux,phandle = <0xe9>; phandle = <0xe9>; }; hoscd2 { #clock-cells = <0x0>; compatible = "allwinner,fixed-factor-clock"; clocks = <0x9>; clock-mult = <0x1>; clock-div = <0x2>; clock-output-names = "hoscd2"; linux,phandle = <0xea>; phandle = <0xea>; }; osc48md4 { #clock-cells = <0x0>; compatible = "allwinner,fixed-factor-clock"; clocks = <0xa>; clock-mult = <0x1>; clock-div = <0x4>; clock-output-names = "osc48md4"; linux,phandle = <0x52>; phandle = <0x52>; }; pll_periph0d6 { #clock-cells = <0x0>; compatible = "allwinner,fixed-factor-clock"; clocks = <0x2>; clock-mult = <0x1>; clock-div = <0x6>; clock-output-names = "pll_periph0d6"; linux,phandle = <0xeb>; phandle = <0xeb>; }; cpu { #clock-cells = <0x0>; compatible = "allwinner,cpu-clock"; clock-output-names = "cpu"; linux,phandle = <0xec>; phandle = <0xec>; }; axi { #clock-cells = <0x0>; compatible = "allwinner,periph-clock"; clock-output-names = "axi"; linux,phandle = <0xed>; phandle = <0xed>; }; cpuapb { #clock-cells = <0x0>; compatible = "allwinner,periph-clock"; clock-output-names = "cpuapb"; linux,phandle = <0xee>; phandle = <0xee>; }; psi { #clock-cells = <0x0>; compatible = "allwinner,periph-clock"; clock-output-names = "psi"; linux,phandle = <0xef>; phandle = <0xef>; }; ahb1 { #clock-cells = <0x0>; compatible = "allwinner,periph-clock"; clock-output-names = "ahb1"; linux,phandle = <0xf0>; phandle = <0xf0>; }; ahb2 { #clock-cells = <0x0>; compatible = "allwinner,periph-clock"; clock-output-names = "ahb2"; linux,phandle = <0xf1>; phandle = <0xf1>; }; ahb3 { #clock-cells = <0x0>; compatible = "allwinner,periph-clock"; clock-output-names = "ahb3"; linux,phandle = <0xf2>; phandle = <0xf2>; }; apb1 { #clock-cells = <0x0>; compatible = "allwinner,periph-clock"; clock-output-names = "apb1"; linux,phandle = <0xf3>; phandle = <0xf3>; }; apb2 { #clock-cells = <0x0>; compatible = "allwinner,periph-clock"; clock-output-names = "apb2"; linux,phandle = <0xb7>; phandle = <0xb7>; }; mbus { #clock-cells = <0x0>; compatible = "allwinner,periph-clock"; clock-output-names = "mbus"; linux,phandle = <0xf4>; phandle = <0xf4>; }; de { #clock-cells = <0x0>; compatible = "allwinner,periph-clock"; assigned-clock-parents = <0x6>; assigned-clock-rates = <0x297c1e00>; assigned-clocks = <0xb>; clock-output-names = "de"; linux,phandle = <0xb>; phandle = <0xb>; }; g2d { #clock-cells = <0x0>; compatible = "allwinner,periph-clock"; assigned-clock-parents = <0xc>; assigned-clock-rates = <0x11e1a300>; assigned-clocks = <0xd>; clock-output-names = "g2d"; linux,phandle = <0xd>; phandle = <0xd>; }; di { #clock-cells = <0x0>; compatible = "allwinner,periph-clock"; assigned-clock-parents = <0xc>; assigned-clock-rates = <0x11e1a300>; assigned-clocks = <0xe>; clock-output-names = "di"; linux,phandle = <0xe>; phandle = <0xe>; }; gpu0 { #clock-cells = <0x0>; compatible = "allwinner,periph-clock"; clock-output-names = "gpu0"; linux,phandle = <0xdd>; phandle = <0xdd>; }; gpu1 { #clock-cells = <0x0>; compatible = "allwinner,periph-clock"; clock-output-names = "gpu1"; linux,phandle = <0xde>; phandle = <0xde>; }; ce { #clock-cells = <0x0>; compatible = "allwinner,periph-clock"; clock-output-names = "ce"; linux,phandle = <0xb5>; phandle = <0xb5>; }; ve { #clock-cells = <0x0>; compatible = "allwinner,periph-clock"; clock-output-names = "ve"; linux,phandle = <0x27>; phandle = <0x27>; }; dma { #clock-cells = <0x0>; compatible = "allwinner,periph-clock"; clock-output-names = "dma"; linux,phandle = <0x1f>; phandle = <0x1f>; }; msgbox { #clock-cells = <0x0>; compatible = "allwinner,periph-clock"; clock-output-names = "msgbox"; linux,phandle = <0x21>; phandle = <0x21>; }; hwspinlock_rst { #clock-cells = <0x0>; compatible = "allwinner,periph-clock"; clock-output-names = "hwspinlock_rst"; linux,phandle = <0x22>; phandle = <0x22>; }; hwspinlock_bus { #clock-cells = <0x0>; compatible = "allwinner,periph-clock"; clock-output-names = "hwspinlock_bus"; linux,phandle = <0x23>; phandle = <0x23>; }; hstimer { #clock-cells = <0x0>; compatible = "allwinner,periph-clock"; clock-output-names = "hstimer"; linux,phandle = <0xf5>; phandle = <0xf5>; }; avs { #clock-cells = <0x0>; compatible = "allwinner,periph-clock"; clock-output-names = "avs"; linux,phandle = <0xf6>; phandle = <0xf6>; }; dbgsys { #clock-cells = <0x0>; compatible = "allwinner,periph-clock"; clock-output-names = "dbgsys"; linux,phandle = <0xf7>; phandle = <0xf7>; }; pwm { #clock-cells = <0x0>; compatible = "allwinner,periph-clock"; clock-output-names = "pwm"; linux,phandle = <0x9b>; phandle = <0x9b>; }; iommu { #clock-cells = <0x0>; compatible = "allwinner,periph-clock"; clock-output-names = "iommu"; linux,phandle = <0xdb>; phandle = <0xdb>; }; sdram { #clock-cells = <0x0>; compatible = "allwinner,periph-clock"; clock-output-names = "sdram"; linux,phandle = <0xf8>; phandle = <0xf8>; }; nand0 { #clock-cells = <0x0>; compatible = "allwinner,periph-clock"; clock-output-names = "nand0"; linux,phandle = <0xbb>; phandle = <0xbb>; }; nand1 { #clock-cells = <0x0>; compatible = "allwinner,periph-clock"; clock-output-names = "nand1"; linux,phandle = <0xbc>; phandle = <0xbc>; }; sdmmc0_mod { #clock-cells = <0x0>; compatible = "allwinner,periph-clock"; clock-output-names = "sdmmc0_mod"; linux,phandle = <0x8d>; phandle = <0x8d>; }; sdmmc0_bus { #clock-cells = <0x0>; compatible = "allwinner,periph-clock"; clock-output-names = "sdmmc0_bus"; linux,phandle = <0x8e>; phandle = <0x8e>; }; sdmmc0_rst { #clock-cells = <0x0>; compatible = "allwinner,periph-clock"; clock-output-names = "sdmmc0_rst"; linux,phandle = <0x8f>; phandle = <0x8f>; }; sdmmc1_mod { #clock-cells = <0x0>; compatible = "allwinner,periph-clock"; clock-output-names = "sdmmc1_mod"; linux,phandle = <0x93>; phandle = <0x93>; }; sdmmc1_bus { #clock-cells = <0x0>; compatible = "allwinner,periph-clock"; clock-output-names = "sdmmc1_bus"; linux,phandle = <0x94>; phandle = <0x94>; }; sdmmc1_rst { #clock-cells = <0x0>; compatible = "allwinner,periph-clock"; clock-output-names = "sdmmc1_rst"; linux,phandle = <0x95>; phandle = <0x95>; }; sdmmc2_mod { #clock-cells = <0x0>; compatible = "allwinner,periph-clock"; clock-output-names = "sdmmc2_mod"; linux,phandle = <0x87>; phandle = <0x87>; }; sdmmc2_bus { #clock-cells = <0x0>; compatible = "allwinner,periph-clock"; clock-output-names = "sdmmc2_bus"; linux,phandle = <0x88>; phandle = <0x88>; }; sdmmc2_rst { #clock-cells = <0x0>; compatible = "allwinner,periph-clock"; clock-output-names = "sdmmc2_rst"; linux,phandle = <0x89>; phandle = <0x89>; }; uart0 { #clock-cells = <0x0>; compatible = "allwinner,periph-clock"; clock-output-names = "uart0"; linux,phandle = <0x29>; phandle = <0x29>; }; uart1 { #clock-cells = <0x0>; compatible = "allwinner,periph-clock"; clock-output-names = "uart1"; linux,phandle = <0x2c>; phandle = <0x2c>; }; uart2 { #clock-cells = <0x0>; compatible = "allwinner,periph-clock"; clock-output-names = "uart2"; linux,phandle = <0x2f>; phandle = <0x2f>; }; uart3 { #clock-cells = <0x0>; compatible = "allwinner,periph-clock"; clock-output-names = "uart3"; linux,phandle = <0x32>; phandle = <0x32>; }; uart4 { #clock-cells = <0x0>; compatible = "allwinner,periph-clock"; clock-output-names = "uart4"; linux,phandle = <0x35>; phandle = <0x35>; }; uart5 { #clock-cells = <0x0>; compatible = "allwinner,periph-clock"; clock-output-names = "uart5"; linux,phandle = <0x38>; phandle = <0x38>; }; twi0 { #clock-cells = <0x0>; compatible = "allwinner,periph-clock"; clock-output-names = "twi0"; linux,phandle = <0x3b>; phandle = <0x3b>; }; twi1 { #clock-cells = <0x0>; compatible = "allwinner,periph-clock"; clock-output-names = "twi1"; linux,phandle = <0x3e>; phandle = <0x3e>; }; twi2 { #clock-cells = <0x0>; compatible = "allwinner,periph-clock"; clock-output-names = "twi2"; linux,phandle = <0x41>; phandle = <0x41>; }; twi3 { #clock-cells = <0x0>; compatible = "allwinner,periph-clock"; clock-output-names = "twi3"; linux,phandle = <0x44>; phandle = <0x44>; }; twi4 { #clock-cells = <0x0>; compatible = "allwinner,periph-clock"; clock-output-names = "twi4"; linux,phandle = <0x47>; phandle = <0x47>; }; scr0 { #clock-cells = <0x0>; compatible = "allwinner,periph-clock"; clock-output-names = "scr0"; linux,phandle = <0xb6>; phandle = <0xb6>; }; spi0 { #clock-cells = <0x0>; compatible = "allwinner,periph-clock"; clock-output-names = "spi0"; linux,phandle = <0x7d>; phandle = <0x7d>; }; spi1 { #clock-cells = <0x0>; compatible = "allwinner,periph-clock"; clock-output-names = "spi1"; linux,phandle = <0x81>; phandle = <0x81>; }; ephy_25m { #clock-cells = <0x0>; compatible = "allwinner,periph-clock"; clock-output-names = "ephy_25m"; linux,phandle = <0xcd>; phandle = <0xcd>; }; gmac0 { #clock-cells = <0x0>; compatible = "allwinner,periph-clock"; clock-output-names = "gmac0"; linux,phandle = <0xcc>; phandle = <0xcc>; }; gmac1 { #clock-cells = <0x0>; compatible = "allwinner,periph-clock"; clock-output-names = "gmac1"; linux,phandle = <0xd0>; phandle = <0xd0>; }; gpadc { #clock-cells = <0x0>; compatible = "allwinner,periph-clock"; clock-output-names = "gpadc"; linux,phandle = <0xca>; phandle = <0xca>; }; ts { #clock-cells = <0x0>; compatible = "allwinner,periph-clock"; clock-output-names = "ts"; linux,phandle = <0xc0>; phandle = <0xc0>; }; ths { #clock-cells = <0x0>; compatible = "allwinner,periph-clock"; clock-output-names = "ths"; linux,phandle = <0xc3>; phandle = <0xc3>; }; spdif { #clock-cells = <0x0>; compatible = "allwinner,periph-clock"; clock-output-names = "spdif"; linux,phandle = <0x61>; phandle = <0x61>; }; dmic { #clock-cells = <0x0>; compatible = "allwinner,periph-clock"; clock-output-names = "dmic"; linux,phandle = <0x64>; phandle = <0x64>; }; codec_1x { #clock-cells = <0x0>; compatible = "allwinner,periph-clock"; clock-output-names = "codec_1x"; linux,phandle = <0x67>; phandle = <0x67>; }; codec_4x { #clock-cells = <0x0>; compatible = "allwinner,periph-clock"; clock-output-names = "codec_4x"; linux,phandle = <0xf9>; phandle = <0xf9>; }; ahub { #clock-cells = <0x0>; compatible = "allwinner,periph-clock"; clock-output-names = "ahub"; linux,phandle = <0x6a>; phandle = <0x6a>; }; usbphy0 { #clock-cells = <0x0>; compatible = "allwinner,periph-clock"; clock-output-names = "usbphy0"; linux,phandle = <0x4d>; phandle = <0x4d>; }; usbphy1 { #clock-cells = <0x0>; compatible = "allwinner,periph-clock"; clock-output-names = "usbphy1"; linux,phandle = <0x54>; phandle = <0x54>; }; usbphy2 { #clock-cells = <0x0>; compatible = "allwinner,periph-clock"; clock-output-names = "usbphy2"; linux,phandle = <0x58>; phandle = <0x58>; }; usbphy3 { #clock-cells = <0x0>; compatible = "allwinner,periph-clock"; clock-output-names = "usbphy3"; linux,phandle = <0x5c>; phandle = <0x5c>; }; usbohci0 { #clock-cells = <0x0>; compatible = "allwinner,periph-clock"; clock-output-names = "usbohci0"; linux,phandle = <0x50>; phandle = <0x50>; }; usbohci0_12m { #clock-cells = <0x0>; compatible = "allwinner,periph-clock"; clock-output-names = "usbohci0_12m"; linux,phandle = <0x51>; phandle = <0x51>; }; usbohci1 { #clock-cells = <0x0>; compatible = "allwinner,periph-clock"; clock-output-names = "usbohci1"; linux,phandle = <0x56>; phandle = <0x56>; }; usbohci1_12m { #clock-cells = <0x0>; compatible = "allwinner,periph-clock"; clock-output-names = "usbohci1_12m"; linux,phandle = <0x57>; phandle = <0x57>; }; usbohci2 { #clock-cells = <0x0>; compatible = "allwinner,periph-clock"; clock-output-names = "usbohci2"; linux,phandle = <0x5a>; phandle = <0x5a>; }; usbohci2_12m { #clock-cells = <0x0>; compatible = "allwinner,periph-clock"; clock-output-names = "usbohci2_12m"; linux,phandle = <0x5b>; phandle = <0x5b>; }; usbohci3 { #clock-cells = <0x0>; compatible = "allwinner,periph-clock"; clock-output-names = "usbohci3"; linux,phandle = <0x5e>; phandle = <0x5e>; }; usbohci3_12m { #clock-cells = <0x0>; compatible = "allwinner,periph-clock"; clock-output-names = "usbohci3_12m"; linux,phandle = <0x5f>; phandle = <0x5f>; }; usbehci0 { #clock-cells = <0x0>; compatible = "allwinner,periph-clock"; clock-output-names = "usbehci0"; linux,phandle = <0x4f>; phandle = <0x4f>; }; usbehci1 { #clock-cells = <0x0>; compatible = "allwinner,periph-clock"; clock-output-names = "usbehci1"; linux,phandle = <0x55>; phandle = <0x55>; }; usbehci2 { #clock-cells = <0x0>; compatible = "allwinner,periph-clock"; clock-output-names = "usbehci2"; linux,phandle = <0x59>; phandle = <0x59>; }; usbehci3 { #clock-cells = <0x0>; compatible = "allwinner,periph-clock"; clock-output-names = "usbehci3"; linux,phandle = <0x5d>; phandle = <0x5d>; }; usb3_0_host { #clock-cells = <0x0>; compatible = "allwinner,periph-clock"; clock-output-names = "usb3_0_host"; linux,phandle = <0xfa>; phandle = <0xfa>; }; usbotg { #clock-cells = <0x0>; compatible = "allwinner,periph-clock"; clock-output-names = "usbotg"; linux,phandle = <0x4e>; phandle = <0x4e>; }; lradc { #clock-cells = <0x0>; compatible = "allwinner,periph-clock"; clock-output-names = "lradc"; linux,phandle = <0xcb>; phandle = <0xcb>; }; hdmi { #clock-cells = <0x0>; compatible = "allwinner,periph-clock"; assigned-clock-parents = <0x5>; assigned-clocks = <0xf>; clock-output-names = "hdmi"; linux,phandle = <0xf>; phandle = <0xf>; }; hdmi_slow { #clock-cells = <0x0>; compatible = "allwinner,periph-clock"; assigned-clocks = <0x10>; clock-output-names = "hdmi_slow"; linux,phandle = <0x10>; phandle = <0x10>; }; hdmi_cec { #clock-cells = <0x0>; compatible = "allwinner,periph-clock"; assigned-clocks = <0x11>; clock-output-names = "hdmi_cec"; linux,phandle = <0x11>; phandle = <0x11>; }; display_top { #clock-cells = <0x0>; compatible = "allwinner,periph-clock"; clock-output-names = "display_top"; linux,phandle = <0x98>; phandle = <0x98>; }; tcon_lcd { #clock-cells = <0x0>; compatible = "allwinner,periph-clock"; clock-output-names = "tcon_lcd"; assigned-clock-parents = <0x8>; assigned-clocks = <0x12>; linux,phandle = <0x12>; phandle = <0x12>; }; tcon_lcd1 { #clock-cells = <0x0>; compatible = "allwinner,periph-clock"; clock-output-names = "tcon_lcd1"; assigned-clock-parents = <0x4>; assigned-clocks = <0x13>; linux,phandle = <0x13>; phandle = <0x13>; }; tcon_tv { #clock-cells = <0x0>; compatible = "allwinner,periph-clock"; assigned-clock-parents = <0x5>; assigned-clocks = <0x14>; clock-output-names = "tcon_tv"; linux,phandle = <0x14>; phandle = <0x14>; }; tcon_tv1 { #clock-cells = <0x0>; compatible = "allwinner,periph-clock"; assigned-clock-parents = <0x4>; assigned-clocks = <0x15>; clock-output-names = "tcon_tv1"; linux,phandle = <0x15>; phandle = <0x15>; }; lvds { #clock-cells = <0x0>; compatible = "allwinner,periph-clock"; clock-output-names = "lvds"; assigned-clocks = <0x16>; linux,phandle = <0x16>; phandle = <0x16>; }; tve { #clock-cells = <0x0>; compatible = "allwinner,periph-clock"; clock-output-names = "tve"; assigned-clock-parents = <0x4>; assigned-clocks = <0x17>; linux,phandle = <0x17>; phandle = <0x17>; }; tve_top { #clock-cells = <0x0>; compatible = "allwinner,periph-clock"; clock-output-names = "tve_top"; assigned-clock-parents = <0x4>; assigned-clocks = <0x18>; linux,phandle = <0x18>; phandle = <0x18>; }; csi_top { #clock-cells = <0x0>; compatible = "allwinner,periph-clock"; clock-output-names = "csi_top"; linux,phandle = <0xa4>; phandle = <0xa4>; }; csi_master0 { #clock-cells = <0x0>; compatible = "allwinner,periph-clock"; clock-output-names = "csi_master0"; linux,phandle = <0xa6>; phandle = <0xa6>; }; csi_master1 { #clock-cells = <0x0>; compatible = "allwinner,periph-clock"; clock-output-names = "csi_master1"; linux,phandle = <0xa7>; phandle = <0xa7>; }; hdmi_hdcp { #clock-cells = <0x0>; compatible = "allwinner,periph-clock"; assigned-clock-parents = <0x3>; assigned-clocks = <0x19>; clock-output-names = "hdmi_hdcp"; linux,phandle = <0x19>; phandle = <0x19>; }; pio { #clock-cells = <0x0>; compatible = "allwinner,periph-clock"; clock-output-names = "pio"; linux,phandle = <0x1d>; phandle = <0x1d>; }; cpurcir { #clock-cells = <0x0>; compatible = "allwinner,periph-cpus-clock"; clock-output-names = "cpurcir"; linux,phandle = <0x25>; phandle = <0x25>; }; hosc32k { #clock-cells = <0x0>; compatible = "allwinner,periph-cpus-clock"; clock-output-names = "hosc32k"; linux,phandle = <0x1a>; phandle = <0x1a>; }; losc_out { #clock-cells = <0x0>; compatible = "allwinner,periph-cpus-clock"; assigned-clock-parents = <0x1a>; assigned-clocks = <0x1b>; clock-output-names = "losc_out"; linux,phandle = <0x1b>; phandle = <0x1b>; }; cpurcpus_pll { #clock-cells = <0x0>; compatible = "allwinner,periph-cpus-clock"; clock-output-names = "cpurcpus_pll"; linux,phandle = <0xfb>; phandle = <0xfb>; }; cpurcpus { #clock-cells = <0x0>; compatible = "allwinner,periph-cpus-clock"; clock-output-names = "cpurcpus"; linux,phandle = <0xfc>; phandle = <0xfc>; }; cpurahbs { #clock-cells = <0x0>; compatible = "allwinner,periph-cpus-clock"; clock-output-names = "cpurahbs"; linux,phandle = <0xfd>; phandle = <0xfd>; }; cpurapbs1 { #clock-cells = <0x0>; compatible = "allwinner,periph-cpus-clock"; clock-output-names = "cpurapbs1"; linux,phandle = <0xfe>; phandle = <0xfe>; }; cpurapbs2_pll { #clock-cells = <0x0>; compatible = "allwinner,periph-cpus-clock"; clock-output-names = "cpurapbs2_pll"; linux,phandle = <0xff>; phandle = <0xff>; }; cpurapbs2 { #clock-cells = <0x0>; compatible = "allwinner,periph-cpus-clock"; clock-output-names = "cpurapbs2"; linux,phandle = <0x100>; phandle = <0x100>; }; cpurpio { #clock-cells = <0x0>; compatible = "allwinner,periph-cpus-clock"; clock-output-names = "cpurpio"; linux,phandle = <0x1c>; phandle = <0x1c>; }; dcxo_out { #clock-cells = <0x0>; compatible = "allwinner,periph-cpus-clock"; clock-output-names = "dcxo_out"; linux,phandle = <0x101>; phandle = <0x101>; }; stwi { #clock-cells = <0x0>; compatible = "allwinner,periph-cpus-clock"; clock-output-names = "stwi"; linux,phandle = <0x4a>; phandle = <0x4a>; }; }; soc@03000000 { compatible = "simple-bus"; #address-cells = <0x2>; #size-cells = <0x2>; ranges; device_type = "soc"; linux,phandle = <0x102>; phandle = <0x102>; pinctrl@07022000 { compatible = "allwinner,sun50iw9p1-r-pinctrl"; reg = <0x0 0x7022000 0x0 0x400>; clocks = <0x1c>; device_type = "r_pio"; gpio-controller; interrupt-controller; #interrupt-cells = <0x3>; #size-cells = <0x0>; #gpio-cells = <0x6>; linux,phandle = <0x103>; phandle = <0x103>; s_rsb0@0 { allwinner,pins = "PL0", "PL1"; allwinner,function = "s_rsb0"; allwinner,muxsel = <0x2>; allwinner,drive = <0x2>; allwinner,pull = <0x1>; linux,phandle = <0x104>; phandle = <0x104>; }; s_twi0@0 { allwinner,pins = "PL0", "PL1"; allwinner,pname = "s_twi0_scl", "s_twi0_sda"; allwinner,function = "s_twi0"; allwinner,muxsel = <0x3>; allwinner,drive = <0x1>; allwinner,pull = <0x1>; linux,phandle = <0x4b>; phandle = <0x4b>; }; s_twi0@1 { allwinner,pins = "PL0", "PL1"; allwinner,function = "io_disabled"; allwinner,muxsel = <0x7>; allwinner,drive = <0x1>; allwinner,pull = <0x0>; linux,phandle = <0x4c>; phandle = <0x4c>; }; }; pinctrl@0300b000 { compatible = "allwinner,sun50iw9p1-pinctrl"; reg = <0x0 0x300b000 0x0 0x400>; interrupts = <0x0 0x33 0x4 0x0 0x34 0x4 0x0 0x35 0x4 0x0 0x2b 0x4 0x0 0x36 0x4 0x0 0x37 0x4 0x0 0x38 0x4 0x0 0x39 0x4>; device_type = "pio"; clocks = <0x1d 0x1e 0x9>; gpio-controller; interrupt-controller; #interrupt-cells = <0x3>; #size-cells = <0x0>; #gpio-cells = <0x6>; input-debounce = <0x0 0x0 0x0 0x0 0x0 0x0 0x0>; linux,phandle = <0x53>; phandle = <0x53>; clk_losc@0 { allwinner,pins = "PG10"; allwinner,function = "x32kfout"; allwinner,muxsel = <0x3>; allwinner,drive = <0x2>; allwinner,pull = <0x1>; linux,phandle = <0xd3>; phandle = <0xd3>; }; s_cir0@0 { allwinner,pins = "PH10"; allwinner,function = "ir"; allwinner,muxsel = <0x3>; allwinner,drive = <0x2>; allwinner,pull = <0x1>; linux,phandle = <0x24>; phandle = <0x24>; }; vdevice@0 { allwinner,pins = "PA1", "PA2"; allwinner,function = "Vdevice"; allwinner,muxsel = <0x5>; allwinner,drive = <0x1>; allwinner,pull = <0x1>; linux,phandle = <0xb4>; phandle = <0xb4>; }; uart0@1 { allwinner,pins = "PH0", "PH1"; allwinner,function = "uart0"; allwinner,muxsel = <0x7>; allwinner,drive = <0x1>; allwinner,pull = <0x0>; linux,phandle = <0x2b>; phandle = <0x2b>; }; uart1@0 { allwinner,pins = "PG6", "PG7", "PG8", "PG9"; allwinner,pname = "uart1_tx", "uart1_rx", "uart1_rts", "uart1_cts"; allwinner,function = "uart1"; allwinner,muxsel = <0x2>; allwinner,drive = <0x1>; allwinner,pull = <0x1>; linux,phandle = <0x2d>; phandle = <0x2d>; }; uart1@1 { allwinner,pins = "PG6", "PG7", "PG8", "PG9"; allwinner,function = "io_disabled"; allwinner,muxsel = <0x7>; allwinner,drive = <0x1>; allwinner,pull = <0x0>; linux,phandle = <0x2e>; phandle = <0x2e>; }; uart2@0 { allwinner,pins = "PH5", "PH6", "PH7", "PH8"; allwinner,pname = "uart2_tx", "uart2_rx", "uart2_rts", "uart2_cts"; allwinner,function = "uart2"; allwinner,muxsel = <0x2>; allwinner,drive = <0x1>; allwinner,pull = <0x1>; linux,phandle = <0x30>; phandle = <0x30>; }; uart2@1 { allwinner,pins = "PH5", "PH6", "PH7", "PH8"; allwinner,function = "io_disabled"; allwinner,muxsel = <0x7>; allwinner,drive = <0x1>; allwinner,pull = <0x0>; linux,phandle = <0x31>; phandle = <0x31>; }; uart3@0 { allwinner,pins = "PI9", "PI10", "PI11", "PI12"; allwinner,pname = "uart3_tx", "uart3_rx", "uart3_rts", "uart3_cts"; allwinner,function = "uart3"; allwinner,muxsel = <0x3>; allwinner,drive = <0x1>; allwinner,pull = <0x1>; linux,phandle = <0x33>; phandle = <0x33>; }; uart3@1 { allwinner,pins = "PI9", "PI10", "PI11", "PI12"; allwinner,function = "io_disabled"; allwinner,muxsel = <0x7>; allwinner,drive = <0x1>; allwinner,pull = <0x0>; linux,phandle = <0x34>; phandle = <0x34>; }; uart4@0 { allwinner,pins = "PI13", "PI14", "PI15", "PI16"; allwinner,pname = "uart4_tx", "uart4_rx", "uart4_rts", "uart4_cts"; allwinner,function = "uart4"; allwinner,muxsel = <0x3>; allwinner,drive = <0x1>; allwinner,pull = <0x1>; linux,phandle = <0x36>; phandle = <0x36>; }; uart4@1 { allwinner,pins = "PI13", "PI14", "PI15", "PI16"; allwinner,function = "io_disabled"; allwinner,muxsel = <0x7>; allwinner,drive = <0x1>; allwinner,pull = <0x0>; linux,phandle = <0x37>; phandle = <0x37>; }; uart5@0 { allwinner,pins = "PH2", "PH3"; allwinner,pname = "uart3_tx", "uart3_rx"; allwinner,function = "uart5"; allwinner,muxsel = <0x2>; allwinner,drive = <0x1>; allwinner,pull = <0x1>; linux,phandle = <0x39>; phandle = <0x39>; }; uart5@1 { allwinner,pins = "PH2", "PH3"; allwinner,function = "io_disabled"; allwinner,muxsel = <0x7>; allwinner,drive = <0x1>; allwinner,pull = <0x0>; linux,phandle = <0x3a>; phandle = <0x3a>; }; twi0@0 { allwinner,pins = "PA0", "PA1"; allwinner,pname = "twi0_scl", "twi0_sda"; allwinner,function = "twi0"; allwinner,muxsel = <0x4>; allwinner,drive = <0x1>; allwinner,pull = <0x0>; linux,phandle = <0x3c>; phandle = <0x3c>; }; twi0@1 { allwinner,pins = "PA0", "PA1"; allwinner,function = "io_disabled"; allwinner,muxsel = <0x7>; allwinner,drive = <0x1>; allwinner,pull = <0x0>; linux,phandle = <0x3d>; phandle = <0x3d>; }; twi1@0 { allwinner,pins = "PA2", "PA3"; allwinner,pname = "twi1_scl", "twi1_sda"; allwinner,function = "twi1"; allwinner,muxsel = <0x4>; allwinner,drive = <0x1>; allwinner,pull = <0x0>; linux,phandle = <0x3f>; phandle = <0x3f>; }; twi1@1 { allwinner,pins = "PA2", "PA3"; allwinner,function = "io_disabled"; allwinner,muxsel = <0x7>; allwinner,drive = <0x1>; allwinner,pull = <0x0>; linux,phandle = <0x40>; phandle = <0x40>; }; twi2@0 { allwinner,pins = "PE20", "PE21"; allwinner,pname = "twi2_scl", "twi2_sda"; allwinner,function = "twi2"; allwinner,muxsel = <0x5>; allwinner,drive = <0x1>; allwinner,pull = <0x0>; linux,phandle = <0x42>; phandle = <0x42>; }; twi2@1 { allwinner,pins = "PE20", "PE21"; allwinner,function = "io_disabled"; allwinner,muxsel = <0x7>; allwinner,drive = <0x1>; allwinner,pull = <0x0>; linux,phandle = <0x43>; phandle = <0x43>; }; twi3@0 { allwinner,pins = "PA10", "PA11"; allwinner,pname = "twi3_scl", "twi3_sda"; allwinner,function = "twi3"; allwinner,muxsel = <0x2>; allwinner,drive = <0x1>; allwinner,pull = <0x1>; linux,phandle = <0x45>; phandle = <0x45>; }; twi3@1 { allwinner,pins = "PA10", "PA11"; allwinner,function = "io_disabled"; allwinner,muxsel = <0x7>; allwinner,drive = <0x1>; allwinner,pull = <0x0>; linux,phandle = <0x46>; phandle = <0x46>; }; twi4@0 { allwinner,pins = "PG15", "PG16"; allwinner,pname = "twi4_scl", "twi4_sda"; allwinner,function = "twi4"; allwinner,muxsel = <0x5>; allwinner,drive = <0x1>; allwinner,pull = <0x0>; linux,phandle = <0x48>; phandle = <0x48>; }; twi4@1 { allwinner,pins = "PG15", "PG16"; allwinner,function = "io_disabled"; allwinner,muxsel = <0x7>; allwinner,drive = <0x1>; allwinner,pull = <0x0>; linux,phandle = <0x49>; phandle = <0x49>; }; ts0@0 { allwinner,pins = "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11"; allwinner,pname = "ts0_clk", "ts0_err", "ts0_sync", "ts0_dvld", "ts0_d0", "ts0_d1", "ts0_d2", "ts0_d3", "ts0_d4", "ts0_d5", "ts0_d6", "ts0_d7"; allwinner,function = "ts0"; allwinner,muxsel = <0x4>; allwinner,drive = <0x1>; allwinner,pull = <0x0>; linux,phandle = <0xc1>; phandle = <0xc1>; }; ts0_sleep@0 { allwinner,pins = "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11"; allwinner,pname = "ts0_clk", "ts0_err", "ts0_sync", "ts0_dvld", "ts0_d0", "ts0_d1", "ts0_d2", "ts0_d3", "ts0_d4", "ts0_d5", "ts0_d6", "ts0_d7"; allwinner,function = "io_disabled"; allwinner,muxsel = <0x7>; allwinner,drive = <0x1>; allwinner,pull = <0x0>; linux,phandle = <0xc2>; phandle = <0xc2>; }; spi0@0 { allwinner,pins = "PC0", "PC2", "PC4", "PC15", "PC16"; allwinner,pname = "spi0_sclk", "spi0_mosi", "spi0_miso", "spi0_wp", "spi0_hold"; allwinner,function = "spi0"; allwinner,muxsel = <0x4>; allwinner,drive = <0x1>; allwinner,pull = <0x0>; linux,phandle = <0x7e>; phandle = <0x7e>; }; spi0@1 { allwinner,pins = "PC3", "PC7"; allwinner,pname = "spi0_cs0", "spi0_cs1"; allwinner,function = "spi0"; allwinner,muxsel = <0x4>; allwinner,drive = <0x1>; allwinner,pull = <0x1>; linux,phandle = <0x7f>; phandle = <0x7f>; }; spi0@2 { allwinner,pins = "PC0", "PC2", "PC3", "PC4", "PC7", "PC15", "PC16"; allwinner,function = "io_disabled"; allwinner,muxsel = <0x7>; allwinner,drive = <0x1>; allwinner,pull = <0x0>; linux,phandle = <0x80>; phandle = <0x80>; }; spi1@0 { allwinner,pins = "PH6", "PH7", "PH8"; allwinner,pname = "spi1_sclk", "spi1_mosi", "spi1_miso"; allwinner,function = "spi1"; allwinner,muxsel = <0x4>; allwinner,drive = <0x1>; allwinner,pull = <0x0>; linux,phandle = <0x82>; phandle = <0x82>; }; spi1@1 { allwinner,pins = "PH5", "PH9"; allwinner,pname = "spi1_cs0", "spi1_cs1"; allwinner,function = "spi1"; allwinner,muxsel = <0x4>; allwinner,drive = <0x1>; allwinner,pull = <0x1>; linux,phandle = <0x83>; phandle = <0x83>; }; spi1@2 { allwinner,pins = "PH5", "PH6", "PH7", "PH8", "PH9"; allwinner,function = "io_disabled"; allwinner,muxsel = <0x7>; allwinner,drive = <0x1>; allwinner,pull = <0x0>; linux,phandle = <0x84>; phandle = <0x84>; }; sdc0@0 { allwinner,pins = "PF0", "PF1", "PF2", "PF3", "PF4", "PF5"; allwinner,function = "sdc0"; allwinner,muxsel = <0x2>; allwinner,drive = <0x3>; allwinner,pull = <0x1>; linux,phandle = <0x90>; phandle = <0x90>; }; sdc0@1 { allwinner,pins = "PF0", "PF1", "PF2", "PF3", "PF4", "PF5"; allwinner,function = "io_disabled"; allwinner,muxsel = <0x7>; allwinner,drive = <0x1>; allwinner,pull = <0x1>; linux,phandle = <0x91>; phandle = <0x91>; }; sdc0@2 { allwinner,pins = "PF0", "PF1", "PF2", "PF3", "PF4", "PF5"; allwinner,function = "uart0_jtag"; allwinner,muxsel = <0x3>; allwinner,drive = <0x1>; allwinner,pull = <0x1>; linux,phandle = <0x92>; phandle = <0x92>; }; sdc1@0 { allwinner,pins = "PG0", "PG1", "PG2", "PG3", "PG4", "PG5"; allwinner,function = "sdc1"; allwinner,muxsel = <0x2>; allwinner,drive = <0x3>; allwinner,pull = <0x1>; linux,phandle = <0x96>; phandle = <0x96>; }; sdc1@1 { allwinner,pins = "PG0", "PG1", "PG2", "PG3", "PG4", "PG5"; allwinner,function = "io_disabled"; allwinner,muxsel = <0x7>; allwinner,drive = <0x1>; allwinner,pull = <0x1>; linux,phandle = <0x97>; phandle = <0x97>; }; sdc2@0 { allwinner,pins = "PC1", "PC5", "PC6", "PC8", "PC9", "PC10", "PC11", "PC13", "PC14", "PC15", "PC16"; allwinner,function = "sdc2"; allwinner,muxsel = <0x3>; allwinner,drive = <0x2>; allwinner,pull = <0x1>; linux,phandle = <0x8a>; phandle = <0x8a>; }; sdc2@1 { allwinner,pins = "PC0", "PC1", "PC5", "PC6", "PC8", "PC9", "PC10", "PC11", "PC13", "PC14", "PC15", "PC16"; allwinner,function = "io_disabled"; allwinner,muxsel = <0x7>; allwinner,drive = <0x1>; allwinner,pull = <0x1>; linux,phandle = <0x8c>; phandle = <0x8c>; }; sdc2@2 { allwinner,pins = "PC0"; allwinner,function = "sdc2"; allwinner,muxsel = <0x3>; allwinner,drive = <0x2>; allwinner,pull = <0x2>; linux,phandle = <0x8b>; phandle = <0x8b>; }; spdif@0 { allwinner,pins = "PH2", "PH3", "PH4"; allwinner,function = "spdif"; allwinner,muxsel = <0x3>; allwinner,drive = <0x1>; allwinner,pull = <0x0>; linux,phandle = <0x62>; phandle = <0x62>; }; spdif_sleep@0 { allwinner,pins = "PH2", "PH3", "PH4"; allwinner,function = "io_disabled"; allwinner,muxsel = <0x7>; allwinner,drive = <0x1>; allwinner,pull = <0x0>; linux,phandle = <0x63>; phandle = <0x63>; }; dmic@0 { allwinner,pins = "PI0", "PI1", "PI2", "PI3", "PI4"; allwinner,function = "dmic"; allwinner,muxsel = <0x3>; allwinner,drive = <0x1>; allwinner,pull = <0x0>; linux,phandle = <0x65>; phandle = <0x65>; }; dmic_sleep@0 { allwinner,pins = "PI0", "PI1", "PI2", "PI3", "PI4"; allwinner,function = "io_disabled"; allwinner,muxsel = <0x7>; allwinner,drive = <0x1>; allwinner,pull = <0x0>; linux,phandle = <0x66>; phandle = <0x66>; }; ahub_daudio0@0 { allwinner,pins = "PA6", "PA7", "PA8", "PA9"; allwinner,function = "h_pcm0"; allwinner,muxsel = <0x3>; allwinner,drive = <0x1>; allwinner,pull = <0x0>; linux,phandle = <0x105>; phandle = <0x105>; }; ahub_daudio0_sleep@0 { allwinner,pins = "PA6", "PA7", "PA8", "PA9"; allwinner,function = "io_disabled"; allwinner,muxsel = <0x7>; allwinner,drive = <0x1>; allwinner,pull = <0x0>; linux,phandle = <0x106>; phandle = <0x106>; }; h_ahub_daudio0@0 { allwinner,pins = "PI0", "PI1", "PI2", "PI3", "PI4"; allwinner,function = "h_pcm0"; allwinner,muxsel = <0x4>; allwinner,drive = <0x1>; allwinner,pull = <0x0>; linux,phandle = <0x6b>; phandle = <0x6b>; }; h_ahub_daudio0_sleep@0 { allwinner,pins = "PI0", "PI1", "PI2", "PI3", "PI4"; allwinner,function = "io_disabled"; allwinner,muxsel = <0x7>; allwinner,drive = <0x1>; allwinner,pull = <0x0>; linux,phandle = <0x6c>; phandle = <0x6c>; }; ahub_daudio2@0 { allwinner,pins = "PG10", "PG11", "PG12", "PG13", "PG14"; allwinner,function = "h_pcm2"; allwinner,muxsel = <0x2>; allwinner,drive = <0x1>; allwinner,pull = <0x0>; linux,phandle = <0x6d>; phandle = <0x6d>; }; ahub_daudio2_sleep@0 { allwinner,pins = "PG10", "PG11", "PG12", "PG13", "PG14"; allwinner,function = "io_disabled"; allwinner,muxsel = <0x7>; allwinner,drive = <0x1>; allwinner,pull = <0x0>; linux,phandle = <0x6e>; phandle = <0x6e>; }; ahub_daudio3@0 { allwinner,pins = "PH5", "PH6", "PH7", "PH8", "PH9"; allwinner,function = "h_pcm3"; allwinner,muxsel = <0x3>; allwinner,drive = <0x1>; allwinner,pull = <0x0>; linux,phandle = <0x6f>; phandle = <0x6f>; }; ahub_daudio3_sleep@0 { allwinner,pins = "PH5", "PH6", "PH7", "PH8", "PH9"; allwinner,function = "io_disabled"; allwinner,muxsel = <0x7>; allwinner,drive = <0x1>; allwinner,pull = <0x0>; linux,phandle = <0x70>; phandle = <0x70>; }; csi1@0 { allwinner,pins = "PE0", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PE16", "PE17", "PE18", "PE19"; allwinner,pname = "csi1_pck", "csi1_hsync", "csi1_vsync", "csi1_d0", "csi1_d1", "csi1_d2", "csi1_d3", "csi1_d4", "csi1_d5", "csi1_d6", "csi1_d7", "csi1_d8", "csi1_d9", "csi1_d10", "csi1_d11", "csi1_d12", "csi1_d13", "csi1_d14", "csi1_d15"; allwinner,function = "csi1"; allwinner,muxsel = <0x2>; allwinner,drive = <0x1>; allwinner,pull = <0x0>; linux,phandle = <0xb0>; phandle = <0xb0>; }; csi1@1 { allwinner,pins = "PE0", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PE16", "PE17", "PE18", "PE19"; allwinner,pname = "csi1_pck", "csi1_hsync", "csi1_vsync", "csi1_d0", "csi1_d1", "csi1_d2", "csi1_d3", "csi1_d4", "csi1_d5", "csi1_d6", "csi1_d7", "csi1_d8", "csi1_d9", "csi1_d10", "csi1_d11", "csi1_d12", "csi1_d13", "csi1_d14", "csi1_d15"; allwinner,function = "io_disabled"; allwinner,muxsel = <0x7>; allwinner,drive = <0x1>; allwinner,pull = <0x0>; linux,phandle = <0xb1>; phandle = <0xb1>; }; csi_mclk0@0 { allwinner,pins = "PG19"; allwinner,pname = "csi_mclk0"; allwinner,function = "csi_mclk0"; allwinner,muxsel = <0x3>; allwinner,drive = <0x2>; allwinner,pull = <0x0>; linux,phandle = <0xa8>; phandle = <0xa8>; }; csi_mclk0@1 { allwinner,pins = "PG19"; allwinner,pname = "csi_mclk0"; allwinner,function = "io_disabled"; allwinner,muxsel = <0x7>; allwinner,drive = <0x2>; allwinner,pull = <0x0>; linux,phandle = <0xa9>; phandle = <0xa9>; }; csi_cci0@0 { allwinner,pins = "PG17", "PG18"; allwinner,pname = "csi_cci0_sck", "csi_cci0_sda"; allwinner,function = "csi_cci0"; allwinner,muxsel = <0x3>; allwinner,drive = <0x2>; allwinner,pull = <0x0>; linux,phandle = <0xac>; phandle = <0xac>; }; csi_cci0@1 { allwinner,pins = "PG17", "PG18"; allwinner,pname = "csi_cci0_sck", "csi_cci0_sda"; allwinner,function = "io_disabled"; allwinner,muxsel = <0x7>; allwinner,drive = <0x2>; allwinner,pull = <0x0>; linux,phandle = <0xad>; phandle = <0xad>; }; csi_mclk1@0 { allwinner,pins = "PE1"; allwinner,pname = "csi_mclk1"; allwinner,function = "csi_mclk1"; allwinner,muxsel = <0x2>; allwinner,drive = <0x2>; allwinner,pull = <0x0>; linux,phandle = <0xaa>; phandle = <0xaa>; }; csi_mclk1@1 { allwinner,pins = "PE1"; allwinner,pname = "csi_mclk1"; allwinner,function = "io_disabled"; allwinner,muxsel = <0x7>; allwinner,drive = <0x2>; allwinner,pull = <0x0>; linux,phandle = <0xab>; phandle = <0xab>; }; csi_cci1@0 { allwinner,pins = "PE20", "PE21"; allwinner,pname = "csi_cci1_sck", "csi_cci1_sda"; allwinner,function = "csi_cci1"; allwinner,muxsel = <0x2>; allwinner,drive = <0x2>; allwinner,pull = <0x0>; linux,phandle = <0xae>; phandle = <0xae>; }; csi_cci1@1 { allwinner,pins = "PE20", "PE21"; allwinner,pname = "csi_cci1_sck", "csi_cci1_sda"; allwinner,function = "io_disabled"; allwinner,muxsel = <0x7>; allwinner,drive = <0x2>; allwinner,pull = <0x0>; linux,phandle = <0xaf>; phandle = <0xaf>; }; scr0@0 { allwinner,pins = "PG13", "PG14", "PG10", "PG11", "PG12"; allwinner,pname = "scr0_rst", "scr0_det", "scr0_vccen", "scr0_sck", "scr0_sda"; allwinner,function = "sim0"; allwinner,muxsel = <0x4>; allwinner,drive = <0x0>; allwinner,pull = <0x1>; linux,phandle = <0xb8>; phandle = <0xb8>; }; scr0@1 { allwinner,pins = "PG8", "PG9"; allwinner,pname = "scr0_vppen", "scr0_vppp"; allwinner,function = "sim0"; allwinner,muxsel = <0x4>; allwinner,drive = <0x0>; allwinner,pull = <0x1>; linux,phandle = <0xb9>; phandle = <0xb9>; }; scr0@2 { allwinner,pins = "PG8", "PG9", "PG10", "PG11", "PG12", "PG13", "PG14"; allwinner,function = "io_disabled"; allwinner,muxsel = <0x7>; allwinner,drive = <0x0>; allwinner,pull = <0x0>; linux,phandle = <0xba>; phandle = <0xba>; }; scr1@0 { allwinner,pins = "PH5", "PH6", "PH2", "PH3", "PH4"; allwinner,pname = "scr1_rst", "scr1_det", "scr1_vccen", "scr1_sck", "scr1_sda"; allwinner,function = "sim1"; allwinner,muxsel = <0x5>; allwinner,drive = <0x1>; allwinner,pull = <0x1>; linux,phandle = <0x107>; phandle = <0x107>; }; scr1@1 { allwinner,pins = "PH0", "PH1"; allwinner,pname = "scr1_vppen", "scr1_vppp"; allwinner,function = "sim1"; allwinner,muxsel = <0x5>; allwinner,drive = <0x1>; allwinner,pull = <0x1>; linux,phandle = <0x108>; phandle = <0x108>; }; scr1@2 { allwinner,pins = "PH0", "PH1", "PH2", "PH3", "PH4", "PH5", "PH6"; allwinner,function = "io_disabled"; allwinner,muxsel = <0x7>; allwinner,drive = <0x1>; allwinner,pull = <0x0>; linux,phandle = <0x109>; phandle = <0x109>; }; nand0@2 { allwinner,pins = "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PC16"; allwinner,function = "io_disabled"; allwinner,muxsel = <0x7>; allwinner,drive = <0x1>; allwinner,pull = <0x0>; linux,phandle = <0xbf>; phandle = <0xbf>; }; ac200@2 { allwinner,pins = "PB0"; allwinner,function = "ac200"; allwinner,muxsel = <0x2>; allwinner,drive = <0x1>; allwinner,pull = <0x0>; linux,phandle = <0x10a>; phandle = <0x10a>; }; ac200@3 { allwinner,pins = "PB0"; allwinner,function = "io_disabled"; allwinner,muxsel = <0x7>; allwinner,drive = <0x1>; allwinner,pull = <0x0>; linux,phandle = <0x10b>; phandle = <0x10b>; }; gmac@0 { allwinner,pins = "PI0", "PI1", "PI2", "PI3", "PI4", "PI5", "PI6", "PI7", "PI8", "PI9", "PI10", "PI11", "PI12", "PI13", "PI14", "PI15", "PI16"; allwinner,function = "gmac0"; allwinner,muxsel = <0x2>; allwinner,drive = <0x3>; allwinner,pull = <0x0>; linux,phandle = <0xce>; phandle = <0xce>; }; gmac@1 { allwinner,pins = "PI0", "PI1", "PI2", "PI3", "PI4", "PI5", "PI6", "PI7", "PI8", "PI9", "PI10", "PI11", "PI12", "PI13", "PI14", "PI15", "PI16"; allwinner,function = "io_disabled"; allwinner,muxsel = <0x7>; allwinner,drive = <0x3>; allwinner,pull = <0x0>; linux,phandle = <0xcf>; phandle = <0xcf>; }; gmac1@0 { allwinner,pins = "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9"; allwinner,function = "gmac1"; allwinner,muxsel = <0x2>; allwinner,drive = <0x3>; allwinner,pull = <0x0>; linux,phandle = <0xd1>; phandle = <0xd1>; }; gmac1@1 { allwinner,pins = "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9"; allwinner,function = "io_disabled"; allwinner,muxsel = <0x7>; allwinner,drive = <0x3>; allwinner,pull = <0x0>; linux,phandle = <0xd2>; phandle = <0xd2>; }; lvds0@0 { allwinner,pins = "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD8", "PD9", "PD6", "PD7"; allwinner,pname = "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD8", "PD9", "PD6", "PD7"; allwinner,function = "lvds0"; allwinner,muxsel = <0x3>; allwinner,drive = <0x3>; allwinner,pull = <0x0>; linux,phandle = <0x10c>; phandle = <0x10c>; }; lvds0@1 { allwinner,pins = "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD8", "PD9", "PD6", "PD7"; allwinner,pname = "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD8", "PD9", "PD6", "PD7"; allwinner,function = "lvds0_suspend"; allwinner,muxsel = <0x7>; allwinner,drive = <0x3>; allwinner,pull = <0x0>; linux,phandle = <0x10d>; phandle = <0x10d>; }; lvds1@0 { allwinner,pins = "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD18", "PD19", "PD16", "PD17"; allwinner,pname = "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD18", "PD19", "PD16", "PD17"; allwinner,function = "lvds1"; allwinner,muxsel = <0x3>; allwinner,drive = <0x3>; allwinner,pull = <0x0>; linux,phandle = <0x10e>; phandle = <0x10e>; }; lvds1@1 { allwinner,pins = "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD18", "PD19", "PD16", "PD17"; allwinner,pname = "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD18", "PD19", "PD16", "PD17"; allwinner,function = "lvds1_suspend"; allwinner,muxsel = <0x7>; allwinner,drive = <0x3>; allwinner,pull = <0x0>; linux,phandle = <0x10f>; phandle = <0x10f>; }; lvds2link@0 { allwinner,pins = "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD8", "PD9", "PD6", "PD7", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD18", "PD19", "PD16", "PD17"; allwinner,pname = "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD8", "PD9", "PD6", "PD7", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD18", "PD19", "PD16", "PD17"; allwinner,function = "lvds1"; allwinner,muxsel = <0x3>; allwinner,drive = <0x3>; allwinner,pull = <0x0>; linux,phandle = <0x110>; phandle = <0x110>; }; lvds2link@1 { allwinner,pins = "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD8", "PD9", "PD6", "PD7", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD18", "PD19", "PD16", "PD17"; allwinner,pname = "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD8", "PD9", "PD6", "PD7", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD18", "PD19", "PD16", "PD17"; allwinner,function = "lvds1_suspend"; allwinner,muxsel = <0x7>; allwinner,drive = <0x3>; allwinner,pull = <0x0>; linux,phandle = <0x111>; phandle = <0x111>; }; rgb24@0 { allwinner,pins = "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD16", "PD17", "PD18", "PD19", "PD20", "PD21", "PD22", "PD23", "PD24", "PD25", "PD26", "PD27"; allwinner,pname = "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD16", "PD17", "PD18", "PD19", "PD20", "PD21", "PD22", "PD23", "PD24", "PD25", "PD26", "PD27"; allwinner,function = "rgb24"; allwinner,muxsel = <0x2>; allwinner,drive = <0x3>; allwinner,pull = <0x0>; linux,phandle = <0x99>; phandle = <0x99>; }; rgb24@1 { allwinner,pins = "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD16", "PD17", "PD18", "PD19", "PD20", "PD21", "PD22", "PD23", "PD24", "PD25", "PD26", "PD27"; allwinner,pname = "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD16", "PD17", "PD18", "PD19", "PD20", "PD21", "PD22", "PD23", "PD24", "PD25", "PD26", "PD27"; allwinner,function = "rgb24_suspend"; allwinner,muxsel = <0x7>; allwinner,drive = <0x3>; allwinner,pull = <0x0>; linux,phandle = <0x9a>; phandle = <0x9a>; }; pwm5@0 { allwinner,pins = "PA12"; allwinner,function = "pwm5"; allwinner,muxsel = <0x2>; allwinner,drive = <0xffffffff>; allwinner,pull = <0x0>; allwinner,data = <0xffffffff>; linux,phandle = <0xa2>; phandle = <0xa2>; }; pwm5@1 { allwinner,pins = "PA12"; allwinner,function = "io_disabled"; allwinner,muxsel = <0x7>; allwinner,drive = <0xffffffff>; allwinner,pull = <0x0>; allwinner,data = <0xffffffff>; linux,phandle = <0xa3>; phandle = <0xa3>; }; standby@0 { allwinner,pins = "PH6"; allwinner,function = "gpio_out"; allwinner,muxsel = <0x1>; allwinner,data = <0x0>; allwinner,drive = <0x0>; allwinner,pull = <0x0>; linux,phandle = <0xe0>; phandle = <0xe0>; }; standby@1 { allwinner,pins = "PH7"; allwinner,function = "gpio_out"; allwinner,muxsel = <0x1>; allwinner,data = <0x0>; allwinner,drive = <0x2>; allwinner,pull = <0x2>; linux,phandle = <0xdf>; phandle = <0xdf>; }; standby@2 { allwinner,pins = "PG16"; allwinner,function = "gpio_in"; allwinner,muxsel = <0x0>; allwinner,data = <0x0>; allwinner,drive = <0x0>; allwinner,pull = <0x0>; linux,phandle = <0x112>; phandle = <0x112>; }; card0_boot_para@0 { linux,phandle = <0x184>; phandle = <0x184>; allwinner,pins = "PF0", "PF1", "PF2", "PF3", "PF4", "PF5"; allwinner,function = "card0_boot_para"; allwinner,pname = "sdc_d1", "sdc_d0", "sdc_clk", "sdc_cmd", "sdc_d3", "sdc_d2"; allwinner,muxsel = <0x2>; allwinner,pull = <0x1>; allwinner,drive = <0x3>; allwinner,data = <0xffffffff>; }; card2_boot_para@0 { linux,phandle = <0x185>; phandle = <0x185>; allwinner,pins = "PC5", "PC6", "PC10", "PC13", "PC15", "PC8", "PC9", "PC11", "PC14", "PC16", "PC1"; allwinner,function = "card2_boot_para"; allwinner,pname = "sdc_clk", "sdc_cmd", "sdc_d0", "sdc_d1", "sdc_d2", "sdc_d3", "sdc_d4", "sdc_d5", "sdc_d6", "sdc_d7", "sdc_emmc_rst"; allwinner,muxsel = <0x3>; allwinner,pull = <0x1>; allwinner,drive = <0x3>; allwinner,data = <0xffffffff>; }; card2_boot_para@1 { linux,phandle = <0x186>; phandle = <0x186>; allwinner,pins = "PC0"; allwinner,function = "card2_boot_para"; allwinner,pname = "sdc_ds"; allwinner,muxsel = <0x3>; allwinner,pull = <0x2>; allwinner,drive = <0x3>; allwinner,data = <0xffffffff>; }; twi_para@0 { linux,phandle = <0x187>; phandle = <0x187>; allwinner,pins = "PH14", "PH15"; allwinner,function = "twi_para"; allwinner,pname = "twi_scl", "twi_sda"; allwinner,muxsel = <0x2>; allwinner,pull = <0xffffffff>; allwinner,drive = <0xffffffff>; allwinner,data = <0xffffffff>; }; uart_para@0 { linux,phandle = <0x188>; phandle = <0x188>; allwinner,pins = "PH0", "PH1"; allwinner,function = "uart_para"; allwinner,pname = "uart_debug_tx", "uart_debug_rx"; allwinner,muxsel = <0x2>; allwinner,pull = <0x1>; allwinner,drive = <0xffffffff>; allwinner,data = <0xffffffff>; }; jtag_para@0 { linux,phandle = <0x189>; phandle = <0x189>; allwinner,pins = "PH9", "PH10", "PH11", "PH12"; allwinner,function = "jtag_para"; allwinner,pname = "jtag_ms", "jtag_ck", "jtag_do", "jtag_di"; allwinner,muxsel = <0x3>; allwinner,pull = <0xffffffff>; allwinner,drive = <0xffffffff>; allwinner,data = <0xffffffff>; }; uart0@0 { linux,phandle = <0x18a>; phandle = <0x18a>; allwinner,pins = "PH0", "PH1"; allwinner,function = "uart0"; allwinner,pname = "uart0_tx", "uart0_rx"; allwinner,muxsel = <0x2>; allwinner,pull = <0x1>; allwinner,drive = <0xffffffff>; allwinner,data = <0xffffffff>; }; nand0@0 { linux,phandle = <0x18b>; phandle = <0x18b>; allwinner,pins = "PC0", "PC1", "PC2", "PC4", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14"; allwinner,function = "nand0"; allwinner,pname = "nand0_we", "nand0_ale", "nand0_cle", "nand0_nre", "nand0_d0", "nand0_d1", "nand0_d2", "nand0_d3", "nand0_d4", "nand0_d5", "nand0_d6", "nand0_d7", "nand0_ndqs"; allwinner,muxsel = <0x2>; allwinner,pull = <0x0>; allwinner,drive = <0x1>; allwinner,data = <0xffffffff>; }; nand0@1 { linux,phandle = <0x18c>; phandle = <0x18c>; allwinner,pins = "PC3", "PC5", "PC15", "PC16"; allwinner,function = "nand0"; allwinner,pname = "nand0_ce0", "nand0_rb0", "nand0_ce1", "nand0_rb1"; allwinner,muxsel = <0x2>; allwinner,pull = <0x1>; allwinner,drive = <0x1>; allwinner,data = <0xffffffff>; }; }; auto_print { device_type = "auto_print"; status = "okay"; }; dma-controller@03002000 { compatible = "allwinner,sun50i-dma"; reg = <0x0 0x3002000 0x0 0x1000>; interrupts = <0x0 0x2a 0x4>; clocks = <0x1f>; #dma-cells = <0x1>; linux,phandle = <0x113>; phandle = <0x113>; }; mbus-controller@047fa000 { compatible = "allwinner,sun50i-mbus"; reg = <0x0 0x47fa000 0x0 0x1000>; #mbus-cells = <0x1>; linux,phandle = <0x114>; phandle = <0x114>; }; arisc { compatible = "allwinner,sunxi-arisc"; #address-cells = <0x2>; #size-cells = <0x2>; clocks = <0x1e 0x20 0x9 0x2>; clock-names = "losc", "iosc", "hosc", "pll_periph0"; powchk_used = <0x0>; power_reg = <0x2309621>; system_power = <0x32>; }; arisc_space { compatible = "allwinner,arisc_space"; space1 = <0x48040000 0x0 0x14000>; space2 = <0x48100000 0x18000 0x4000>; space3 = <0x48104000 0x0 0x1000>; space4 = <0x48105000 0x0 0x1000>; }; standby_space { compatible = "allwinner,sun50iw9-usbstandby"; space1 = <0x40020000 0x0 0x800>; }; msgbox@03003000 { compatible = "allwinner,msgbox"; clocks = <0x21>; clock-names = "clk_msgbox"; reg = <0x0 0x3003000 0x0 0x1000>; interrupts = <0x0 0x27 0x1>; status = "okay"; linux,phandle = <0x115>; phandle = <0x115>; }; hwspinlock@3004000 { compatible = "allwinner,sunxi-hwspinlock"; clocks = <0x22 0x23>; clock-names = "clk_hwspinlock_rst", "clk_hwspinlock_bus"; reg = <0x0 0x3004000 0x0 0x1000>; num-locks = <0x8>; status = "okay"; linux,phandle = <0x116>; phandle = <0x116>; }; s_cir@07040000 { compatible = "allwinner,s_cir"; reg = <0x0 0x7040000 0x0 0x400>; interrupts = <0x0 0x6a 0x4>; pinctrl-names = "default"; pinctrl-0 = <0x24>; clocks = <0x9 0x25>; supply = "vcc-pl"; supply_vol = "3300000"; status = "okay"; s_cir0_used = <0x1>; ir_power_key_code0 = <0x40>; ir_addr_code0 = <0xfe01>; ir_power_key_code1 = <0x1a>; ir_addr_code1 = <0xfb04>; ir_power_key_code2 = <0xf2>; ir_addr_code2 = <0x2992>; ir_power_key_code3 = <0x57>; ir_addr_code3 = <0x9f00>; ir_power_key_code4 = <0xdc>; ir_addr_code4 = <0x4cb3>; ir_power_key_code5 = <0x18>; ir_addr_code5 = <0xff00>; ir_power_key_code6 = <0xdc>; ir_addr_code6 = <0xdd22>; ir_power_key_code7 = <0xd>; ir_addr_code7 = <0xbc00>; ir_power_key_code8 = <0x4d>; ir_addr_code8 = <0x4040>; ir_power_key_code9 = <0x51>; ir_addr_code9 = <0x7f80>; wakeup-source; linux,phandle = <0x117>; phandle = <0x117>; }; timer@03009000 { compatible = "allwinner,sun4i-a10-timer"; device_type = "soc_timer"; reg = <0x0 0x3009000 0x0 0x400>; interrupts = <0x0 0x30 0x4>; clocks = <0x9>; linux,phandle = <0x118>; phandle = <0x118>; }; rtc@07000000 { compatible = "allwinner,sunxi-rtc"; device_type = "rtc"; auto_switch; wakeup-source; reg = <0x0 0x7000000 0x0 0x200>; interrupts = <0x0 0x68 0x4>; gpr_offset = <0x100>; gpr_len = <0x8>; gpr_cur_pos = <0x6>; linux,phandle = <0x119>; phandle = <0x119>; }; watchdog@030090a0 { compatible = "allwinner,sun50i-wdt"; reg = <0x0 0x30090a0 0x0 0x20>; interrupts = <0x0 0x32 0x4>; linux,phandle = <0x11a>; phandle = <0x11a>; }; ve@01c0e000 { compatible = "allwinner,sunxi-cedar-ve"; reg = <0x0 0x1c0e000 0x0 0x1000 0x0 0x3000000 0x0 0x10 0x0 0x3001000 0x0 0x1000>; interrupts = <0x0 0x5d 0x4>; clocks = <0x26 0x27>; iommus = <0x28 0x3 0x1>; linux,phandle = <0x11b>; phandle = <0x11b>; }; vp9@01c00000 { compatible = "allwinner,sunxi-google-vp9"; reg = <0x0 0x1c00000 0x0 0x1000 0x0 0x3000000 0x0 0x10 0x0 0x3001000 0x0 0x1000>; interrupts = <0x0 0x5a 0x4>; clocks = <0x26>; iommus = <0x28 0x2 0x1>; #clocks = <0xc>; linux,phandle = <0x11c>; phandle = <0x11c>; }; uart@05000000 { compatible = "allwinner,sun50i-uart"; device_type = "uart0"; reg = <0x0 0x5000000 0x0 0x400>; interrupts = <0x0 0x0 0x4>; clocks = <0x29>; pinctrl-names = "default", "sleep"; pinctrl-1 = <0x2b>; uart0_port = <0x0>; uart0_type = <0x2>; status = "okay"; linux,phandle = <0x11d>; phandle = <0x11d>; pinctrl-0 = <0x18a>; }; uart@05000400 { compatible = "allwinner,sun50i-uart"; device_type = "uart1"; reg = <0x0 0x5000400 0x0 0x400>; interrupts = <0x0 0x1 0x4>; clocks = <0x2c>; pinctrl-names = "default", "sleep"; pinctrl-0 = <0x2d>; pinctrl-1 = <0x2e>; uart1_port = <0x1>; uart1_type = <0x4>; status = "okay"; linux,phandle = <0x11e>; phandle = <0x11e>; }; uart@05000800 { compatible = "allwinner,sun50i-uart"; device_type = "uart2"; reg = <0x0 0x5000800 0x0 0x400>; interrupts = <0x0 0x2 0x4>; clocks = <0x2f>; pinctrl-names = "default", "sleep"; pinctrl-0 = <0x30>; pinctrl-1 = <0x31>; uart2_port = <0x2>; uart2_type = <0x4>; status = "disabled"; linux,phandle = <0x11f>; phandle = <0x11f>; }; uart@05000c00 { compatible = "allwinner,sun50i-uart"; device_type = "uart3"; reg = <0x0 0x5000c00 0x0 0x400>; interrupts = <0x0 0x3 0x4>; clocks = <0x32>; pinctrl-names = "default", "sleep"; pinctrl-0 = <0x33>; pinctrl-1 = <0x34>; uart3_port = <0x3>; uart3_type = <0x4>; status = "disabled"; linux,phandle = <0x120>; phandle = <0x120>; }; uart@05001000 { compatible = "allwinner,sun50i-uart"; device_type = "uart4"; reg = <0x0 0x5001000 0x0 0x400>; interrupts = <0x0 0x4 0x4>; clocks = <0x35>; pinctrl-names = "default", "sleep"; pinctrl-0 = <0x36>; pinctrl-1 = <0x37>; uart4_port = <0x4>; uart4_type = <0x4>; status = "disabled"; linux,phandle = <0x121>; phandle = <0x121>; }; uart@05001400 { compatible = "allwinner,sun50i-uart"; device_type = "uart5"; reg = <0x0 0x5001400 0x0 0x400>; interrupts = <0x0 0x5 0x4>; clocks = <0x38>; pinctrl-names = "default", "sleep"; pinctrl-0 = <0x39>; pinctrl-1 = <0x3a>; uart5_port = <0x5>; uart5_type = <0x2>; status = "disabled"; linux,phandle = <0x122>; phandle = <0x122>; }; twi@0x05002000 { #address-cells = <0x1>; #size-cells = <0x0>; compatible = "allwinner,sun50i-twi"; device_type = "twi0"; reg = <0x0 0x5002000 0x0 0x400>; interrupts = <0x0 0x6 0x4>; clocks = <0x3b>; clock-frequency = <0x61a80>; pinctrl-names = "default", "sleep"; pinctrl-0 = <0x3c>; pinctrl-1 = <0x3d>; status = "disable"; linux,phandle = <0x123>; phandle = <0x123>; }; twi@0x05002400 { #address-cells = <0x1>; #size-cells = <0x0>; compatible = "allwinner,sun50i-twi"; device_type = "twi1"; reg = <0x0 0x5002400 0x0 0x400>; interrupts = <0x0 0x7 0x4>; clocks = <0x3e>; clock-frequency = <0x30d40>; pinctrl-names = "default", "sleep"; pinctrl-0 = <0x3f>; pinctrl-1 = <0x40>; status = "disable"; linux,phandle = <0x124>; phandle = <0x124>; }; twi@0x05002800 { #address-cells = <0x1>; #size-cells = <0x0>; compatible = "allwinner,sun50i-twi"; device_type = "twi2"; reg = <0x0 0x5002800 0x0 0x400>; interrupts = <0x0 0x8 0x4>; clocks = <0x41>; clock-frequency = <0x30d40>; pinctrl-names = "default", "sleep"; pinctrl-0 = <0x42>; pinctrl-1 = <0x43>; status = "disable"; linux,phandle = <0x125>; phandle = <0x125>; }; twi@0x05002c00 { #address-cells = <0x1>; #size-cells = <0x0>; compatible = "allwinner,sun50i-twi"; device_type = "twi3"; reg = <0x0 0x5002c00 0x0 0x400>; interrupts = <0x0 0x9 0x4>; clocks = <0x44>; clock-frequency = <0x30d40>; pinctrl-names = "default", "sleep"; pinctrl-0 = <0x45>; pinctrl-1 = <0x46>; status = "okay"; linux,phandle = <0x126>; phandle = <0x126>; }; twi@0x05003000 { #address-cells = <0x1>; #size-cells = <0x0>; compatible = "allwinner,sun50i-twi"; device_type = "twi4"; reg = <0x0 0x5003000 0x0 0x400>; interrupts = <0x0 0xa 0x4>; clocks = <0x47>; clock-frequency = <0x30d40>; pinctrl-names = "default", "sleep"; pinctrl-0 = <0x48>; pinctrl-1 = <0x49>; status = "disable"; linux,phandle = <0x127>; phandle = <0x127>; }; twi@0x07081400 { #address-cells = <0x1>; #size-cells = <0x0>; compatible = "allwinner,sun50i-twi"; device_type = "twi5"; reg = <0x0 0x7081400 0x0 0x400>; interrupts = <0x0 0x69 0x4>; clocks = <0x4a>; clock-frequency = <0x30d40>; pinctrl-names = "default", "sleep"; pinctrl-0 = <0x4b>; pinctrl-1 = <0x4c>; status = "okay"; no_suspend = <0x1>; linux,phandle = <0x128>; phandle = <0x128>; pmu { compatible = "x-powers,axp1530"; reg = <0x36>; wakeup-source; linux,phandle = <0x129>; phandle = <0x129>; standby_param { vcc-dram = <0x4>; linux,phandle = <0x12a>; phandle = <0x12a>; }; regulators { dcdc1 { regulator-name = "axp1530-dcdc1"; regulator-min-microvolt = <0x7a120>; regulator-max-microvolt = <0x33e140>; regulator-step-delay-us = <0x19>; regulator-final-delay-us = <0x32>; regulator-always-on; linux,phandle = <0x12b>; phandle = <0x12b>; }; dcdc2 { regulator-name = "axp1530-dcdc2"; regulator-min-microvolt = <0x7a120>; regulator-max-microvolt = <0x177fa0>; regulator-step-delay-us = <0x19>; regulator-final-delay-us = <0x32>; regulator-ramp-delay = <0xc8>; regulator-always-on; linux,phandle = <0xd8>; phandle = <0xd8>; }; dcdc3 { regulator-name = "axp1530-dcdc3"; regulator-min-microvolt = <0x7a120>; regulator-max-microvolt = <0x1c1380>; regulator-step-delay-us = <0x19>; regulator-final-delay-us = <0x32>; regulator-always-on; linux,phandle = <0x12c>; phandle = <0x12c>; }; ldo1 { regulator-name = "axp1530-aldo1"; regulator-min-microvolt = <0x7a120>; regulator-max-microvolt = <0x3567e0>; regulator-step-delay-us = <0x19>; regulator-final-delay-us = <0x32>; regulator-always-on; linux,phandle = <0x68>; phandle = <0x68>; }; ldo2 { regulator-name = "axp1530-dldo1"; regulator-min-microvolt = <0x7a120>; regulator-max-microvolt = <0x3567e0>; regulator-step-delay-us = <0x19>; regulator-final-delay-us = <0x32>; regulator-always-on; linux,phandle = <0x69>; phandle = <0x69>; }; }; }; }; usbc0@0 { device_type = "usbc0"; compatible = "allwinner,sunxi-otg-manager"; usb_port_type = <0x1>; usb_detect_type = <0x1>; usb_id_gpio; usb_det_vbus_gpio; usb_drv_vbus_gpio; usb_host_init_state = <0x0>; usb_regulator_io = "nocare"; usb_wakeup_suspend = <0x2>; usb_luns = <0x3>; usb_serial_unique = <0x0>; usb_serial_number = "20080411"; rndis_wceis = <0x1>; wakeup-source; status = "okay"; usb_detect_mode = <0x0>; linux,phandle = <0x12d>; phandle = <0x12d>; }; udc-controller@0x05100000 { compatible = "allwinner,sunxi-udc"; reg = <0x0 0x5100000 0x0 0x1000 0x0 0x0 0x0 0x100>; interrupts = <0x0 0x19 0x4>; clocks = <0x4d 0x4e>; status = "okay"; linux,phandle = <0x12e>; phandle = <0x12e>; }; ehci0-controller@0x05101000 { compatible = "allwinner,sunxi-ehci0"; reg = <0x0 0x5101000 0x0 0xfff 0x0 0x0 0x0 0x100 0x0 0x5100000 0x0 0x1000>; interrupts = <0x0 0x1a 0x4>; clocks = <0x4d 0x4f>; hci_ctrl_no = <0x0>; status = "okay"; linux,phandle = <0x12f>; phandle = <0x12f>; }; ohci0-controller@0x05101400 { compatible = "allwinner,sunxi-ohci0"; reg = <0x0 0x5101000 0x0 0xfff 0x0 0x0 0x0 0x100 0x0 0x5100000 0x0 0x1000>; interrupts = <0x0 0x1b 0x4>; clocks = <0x4d 0x50 0x51 0x52 0x9 0x1e>; hci_ctrl_no = <0x0>; status = "okay"; linux,phandle = <0x130>; phandle = <0x130>; }; usbc1@0 { device_type = "usbc1"; usb_drv_vbus_gpio = <0x53 0x7 0x8 0x0 0x1 0xffffffff 0xffffffff>; usb_host_init_state = <0x1>; usb_regulator_io = "nocare"; usb_wakeup_suspend = <0x2>; wakeup-source; status = "okay"; linux,phandle = <0x131>; phandle = <0x131>; }; ehci1-controller@0x05200000 { compatible = "allwinner,sunxi-ehci1"; reg = <0x0 0x5200000 0x0 0xfff 0x0 0x0 0x0 0x100 0x0 0x5100000 0x0 0x1000>; interrupts = <0x0 0x1c 0x4>; clocks = <0x54 0x55>; hci_ctrl_no = <0x1>; status = "okay"; linux,phandle = <0x132>; phandle = <0x132>; }; ohci1-controller@0x05200400 { compatible = "allwinner,sunxi-ohci1"; reg = <0x0 0x5200000 0x0 0xfff 0x0 0x0 0x0 0x100 0x0 0x5100000 0x0 0x1000>; interrupts = <0x0 0x1d 0x4>; clocks = <0x54 0x56 0x57 0x52 0x9 0x1e>; hci_ctrl_no = <0x1>; status = "okay"; linux,phandle = <0x133>; phandle = <0x133>; }; usbc2@0 { device_type = "usbc2"; usb_drv_vbus_gpio; usb_host_init_state = <0x1>; usb_regulator_io = "nocare"; usb_wakeup_suspend = <0x2>; wakeup-source; status = "okay"; linux,phandle = <0x134>; phandle = <0x134>; }; ehci2-controller@0x05310000 { compatible = "allwinner,sunxi-ehci2"; reg = <0x0 0x5310000 0x0 0xfff 0x0 0x0 0x0 0x100 0x0 0x5100000 0x0 0x1000>; interrupts = <0x0 0x1e 0x4>; clocks = <0x58 0x59>; hci_ctrl_no = <0x2>; status = "okay"; linux,phandle = <0x135>; phandle = <0x135>; }; ohci2-controller@0x05310400 { compatible = "allwinner,sunxi-ohci2"; reg = <0x0 0x5310000 0x0 0xfff 0x0 0x0 0x0 0x100 0x0 0x5100000 0x0 0x1000>; interrupts = <0x0 0x1f 0x4>; clocks = <0x58 0x5a 0x5b 0x52 0x9 0x1e>; hci_ctrl_no = <0x2>; status = "okay"; linux,phandle = <0x136>; phandle = <0x136>; }; usbc3@0 { device_type = "usbc3"; usb_drv_vbus_gpio; usb_host_init_state = <0x1>; usb_regulator_io = "nocare"; usb_wakeup_suspend = <0x2>; wakeup-source; status = "okay"; linux,phandle = <0x137>; phandle = <0x137>; }; ehci3-controller@0x05311000 { compatible = "allwinner,sunxi-ehci3"; reg = <0x0 0x5311000 0x0 0xfff 0x0 0x0 0x0 0x100 0x0 0x5100000 0x0 0x1000>; interrupts = <0x0 0x20 0x4>; clocks = <0x5c 0x5d>; hci_ctrl_no = <0x3>; status = "okay"; linux,phandle = <0x138>; phandle = <0x138>; }; ohci3-controller@0x05311400 { compatible = "allwinner,sunxi-ohci3"; reg = <0x0 0x5311000 0x0 0xfff 0x0 0x0 0x0 0x100 0x0 0x5100000 0x0 0x1000>; interrupts = <0x0 0x21 0x4>; clocks = <0x5c 0x5e 0x5f 0x52 0x9 0x1e>; hci_ctrl_no = <0x3>; status = "okay"; linux,phandle = <0x139>; phandle = <0x139>; }; ac200_codec { compatible = "allwinner,ac200_codec"; status = "disabled"; linux,phandle = <0x13a>; phandle = <0x13a>; }; spdif-controller@0x05093000 { compatible = "allwinner,sunxi-spdif"; reg = <0x0 0x5093000 0x0 0x40>; clocks = <0x60 0x7 0x61>; pinctrl-names = "default", "sleep"; pinctrl-0 = <0x62>; pinctrl-1 = <0x63>; device_type = "spdif"; status = "okay"; linux,phandle = <0x75>; phandle = <0x75>; }; dmic-controller@0x05095000 { compatible = "allwinner,sunxi-dmic"; reg = <0x0 0x5095000 0x0 0x50>; clocks = <0x60 0x7 0x64>; pinctrl-names = "default", "sleep"; pinctrl-0 = <0x65>; pinctrl-1 = <0x66>; device_type = "dmic"; status = "disabled"; linux,phandle = <0x76>; phandle = <0x76>; }; codec@0x05096000 { compatible = "allwinner,sunxi-internal-codec"; reg = <0x0 0x5096000 0x0 0x31c>; clocks = <0x60 0x7 0x67>; device_type = "codec"; status = "okay"; adcdrc_cfg = <0x0>; adchpf_cfg = <0x0>; dacdrc_cfg = <0x0>; dachpf_cfg = <0x0>; fmin_gain = <0x3>; linein_gain = <0x3>; digital_vol = <0x0>; lineout_vol = <0x1a>; ramp_func_used = <0x1>; avcc-supply = <0x68>; vcc33_audio-supply = <0x69>; linux,phandle = <0x78>; phandle = <0x78>; }; cpudai-controller@0x05096000 { compatible = "allwinner,sunxi-internal-cpudai"; reg = <0x0 0x5096000 0x0 0x31c>; device_type = "cpudai"; status = "okay"; linux,phandle = <0x77>; phandle = <0x77>; }; cpudai0-controller@0x05097000 { compatible = "allwinner,sunxi-ahub-cpudai"; reg = <0x0 0x5097000 0x0 0xadf>; id = <0x0>; status = "okay"; linux,phandle = <0x79>; phandle = <0x79>; }; cpudai1-controller@0x05097000 { compatible = "allwinner,sunxi-ahub-cpudai"; reg = <0x0 0x5097000 0x0 0xadf>; id = <0x1>; status = "okay"; linux,phandle = <0x7a>; phandle = <0x7a>; }; cpudai2-controller@0x05097000 { compatible = "allwinner,sunxi-ahub-cpudai"; reg = <0x0 0x5097000 0x0 0xadf>; id = <0x2>; status = "okay"; linux,phandle = <0x7b>; phandle = <0x7b>; }; cpudai3-controller@0x05097000 { compatible = "allwinner,sunxi-ahub-cpudai"; reg = <0x0 0x5097000 0x0 0xadf>; id = <0x3>; status = "okay"; linux,phandle = <0x13b>; phandle = <0x13b>; }; ahub_codec@0x05097000 { compatible = "allwinner,sunxi-ahub"; reg = <0x0 0x5097000 0x0 0xadf>; clocks = <0x60 0x7 0x6a>; status = "okay"; linux,phandle = <0x7c>; phandle = <0x7c>; }; ahub_daudio0@0x05097000 { compatible = "allwinner,sunxi-ahub-daudio"; reg = <0x0 0x5097000 0x0 0xadf>; clocks = <0x60 0x7 0x6a>; pinctrl-names = "default", "sleep"; pinctrl-0 = <0x6b>; pinctrl-1 = <0x6c>; tdm_num = <0x0>; device_type = "ahub_daudio0"; status = "okay"; pinconfig = <0x1>; frametype = <0x0>; pcm_lrck_period = <0x20>; slot_width_select = <0x20>; daudio_master = <0x4>; audio_format = <0x1>; signal_inversion = <0x1>; tdm_config = <0x1>; mclk_div = <0x0>; linux,phandle = <0x71>; phandle = <0x71>; }; ahub_daudio1@0x05097000 { compatible = "allwinner,sunxi-ahub-daudio"; reg = <0x0 0x5097000 0x0 0xadf>; clocks = <0x60 0x7 0x6a>; tdm_num = <0x1>; device_type = "ahub_daudio1"; status = "okay"; pinconfig = <0x0>; frametype = <0x0>; pcm_lrck_period = <0x20>; slot_width_select = <0x20>; daudio_master = <0x4>; audio_format = <0x1>; signal_inversion = <0x1>; tdm_config = <0x1>; mclk_div = <0x1>; linux,phandle = <0x72>; phandle = <0x72>; }; ahub_daudio2@0x05097000 { compatible = "allwinner,sunxi-ahub-daudio"; reg = <0x0 0x5097000 0x0 0xadf>; clocks = <0x60 0x7 0x6a>; pinctrl-names = "default", "sleep"; pinctrl-0 = <0x6d>; pinctrl-1 = <0x6e>; tdm_num = <0x2>; device_type = "ahub_daudio2"; status = "disabled"; pinconfig = <0x1>; frametype = <0x0>; pcm_lrck_period = <0x20>; slot_width_select = <0x20>; daudio_master = <0x4>; audio_format = <0x1>; signal_inversion = <0x1>; tdm_config = <0x1>; mclk_div = <0x4>; linux,phandle = <0x73>; phandle = <0x73>; }; ahub_daudio3@0x05097000 { compatible = "allwinner,sunxi-ahub-daudio"; reg = <0x0 0x5097000 0x0 0xadf>; clocks = <0x60 0x7 0x6a>; pinctrl-names = "default", "sleep"; pinctrl-0 = <0x6f>; pinctrl-1 = <0x70>; tdm_num = <0x3>; device_type = "ahub_daudio3"; status = "disabled"; pinconfig = <0x1>; frametype = <0x0>; pcm_lrck_period = <0x20>; slot_width_select = <0x20>; daudio_master = <0x4>; audio_format = <0x1>; signal_inversion = <0x1>; tdm_config = <0x1>; mclk_div = <0x4>; linux,phandle = <0x74>; phandle = <0x74>; }; sound@0 { compatible = "allwinner,sunxi-daudio0-machine"; sunxi,cpudai-controller = <0x71>; device_type = "snddaudio0"; status = "okay"; linux,phandle = <0x13c>; phandle = <0x13c>; }; sound@1 { compatible = "allwinner,sunxi-hdmi-machine"; sunxi,cpudai-controller = <0x72>; device_type = "sndhdmi"; status = "okay"; linux,phandle = <0x13d>; phandle = <0x13d>; }; sound@2 { compatible = "allwinner,sunxi-daudio2-machine"; sunxi,cpudai-controller = <0x73>; device_type = "snddaudio2"; status = "disabled"; linux,phandle = <0x13e>; phandle = <0x13e>; }; sound@3 { compatible = "allwinner,sunxi-daudio3-machine"; sunxi,cpudai-controller = <0x74>; device_type = "snddaudio3"; status = "disabled"; linux,phandle = <0x13f>; phandle = <0x13f>; }; sound@4 { compatible = "allwinner,sunxi-spdif-machine"; sunxi,spdif-controller = <0x75>; device_type = "sndspdif"; status = "okay"; linux,phandle = <0x140>; phandle = <0x140>; }; sound@5 { compatible = "allwinner,sunxi-dmic-machine"; sunxi,dmic-controller = <0x76>; device_type = "snddmic"; status = "disabled"; linux,phandle = <0x141>; phandle = <0x141>; }; sound@6 { compatible = "allwinner,sunxi-codec-machine"; sunxi,cpudai-controller = <0x77>; sunxi,audio-codec = <0x78>; device_type = "sndcodec"; status = "okay"; linux,phandle = <0x142>; phandle = <0x142>; }; sound@7 { compatible = "allwinner,sunxi-ahub-machine"; sunxi,cpudai-controller0 = <0x79>; sunxi,cpudai-controller1 = <0x7a>; sunxi,cpudai-controller2 = <0x7b>; sunxi,audio-codec = <0x7c>; device_type = "sndahub"; status = "okay"; linux,phandle = <0x143>; phandle = <0x143>; }; spi@05010000 { #address-cells = <0x1>; #size-cells = <0x0>; compatible = "allwinner,sun50i-spi"; device_type = "spi0"; reg = <0x0 0x5010000 0x0 0x1000>; interrupts = <0x0 0xc 0x4>; clocks = <0x2 0x7d>; clock-frequency = <0x5f5e100>; pinctrl-names = "default", "sleep"; pinctrl-0 = <0x7e 0x7f>; pinctrl-1 = <0x80>; spi0_cs_number = <0x1>; spi0_cs_bitmap = <0x1>; status = "disabled"; linux,phandle = <0x144>; phandle = <0x144>; }; spi@05011000 { #address-cells = <0x1>; #size-cells = <0x0>; compatible = "allwinner,sun50i-spi"; device_type = "spi1"; reg = <0x0 0x5011000 0x0 0x1000>; interrupts = <0x0 0xd 0x4>; clocks = <0x2 0x81>; clock-frequency = <0x5f5e100>; pinctrl-names = "default", "sleep"; pinctrl-0 = <0x82 0x83>; pinctrl-1 = <0x84>; spi1_cs_number = <0x1>; spi1_cs_bitmap = <0x1>; status = "disable"; spi_slave_mode = <0x0>; linux,phandle = <0x145>; phandle = <0x145>; spi_board1 { device_type = "spi_board1"; compatible = "rohm,dh2228fv"; spi-max-frequency = <0x5f5e100>; reg = <0x0>; spi-rx-bus-width = <0x1>; spi-tx-bus-width = <0x1>; }; }; pcie@0x05400000 { #address-cells = <0x3>; #size-cells = <0x2>; compatible = "allwinner,sun50i-pcie"; reg = <0x0 0x5400000 0x0 0x2000 0x0 0x5410000 0x0 0x10000>; reg-names = "dbi", "config"; device_type = "pci"; ranges = <0x800 0x0 0x5410000 0x0 0x5410000 0x0 0x10000 0x81000000 0x0 0x0 0x0 0x5e00000 0x0 0x10000 0x82000000 0x0 0x5500000 0x0 0x5500000 0x0 0x800000>; num-lanes = <0x1>; interrupts = <0x0 0x7f 0x4 0x0 0x7e 0x4>; interrupt-names = "msi"; #interrupt-cells = <0x1>; interrupt-map-mask = <0x0 0x0 0x0 0x0>; interrupt-map = <0x0 0x0 0x0 0x1 0x85 0x0 0x7f 0x4>; status = "okay"; linux,phandle = <0x146>; phandle = <0x146>; }; sdmmc@04022000 { compatible = "allwinner,sunxi-mmc-v4p6x"; device_type = "sdc2"; reg = <0x0 0x4022000 0x0 0x1000>; interrupts = <0x0 0x25 0x4>; clocks = <0x9 0x86 0x87 0x88 0x89>; clock-names = "osc24m", "pll_periph", "mmc", "ahb", "rst"; pinctrl-names = "default", "sleep"; pinctrl-0 = <0x8a 0x8b>; pinctrl-1 = <0x8c>; bus-width = <0x8>; cap-mmc-highspeed; cap-cmd23; mmc-cache-ctrl; non-removable; max-frequency = <0x5f5e100>; cap-erase; mmc-high-capacity-erase-size; no-sdio; no-sd; sdc_tm4_sm0_freq0 = <0x0>; sdc_tm4_sm0_freq1 = <0x0>; sdc_tm4_sm1_freq0 = <0x0>; sdc_tm4_sm1_freq1 = <0x0>; sdc_tm4_sm2_freq0 = <0x0>; sdc_tm4_sm2_freq1 = <0x0>; sdc_tm4_sm3_freq0 = <0x5000000>; sdc_tm4_sm3_freq1 = <0x5>; sdc_tm4_sm4_freq0 = <0x50000>; sdc_tm4_sm4_freq1 = <0x4>; status = "disabled"; mmc-ddr-1_8v; mmc-hs200-1_8v; mmc-hs400-1_8v; sunxi-power-save-mode; sunxi-dis-signal-vol-sw; ctl-spec-caps = <0x8>; vmmc-supply = <0x69>; vqmmc-supply = <0x68>; linux,phandle = <0x147>; phandle = <0x147>; }; sdmmc@04020000 { compatible = "allwinner,sunxi-mmc-v4p1x"; device_type = "sdc0"; reg = <0x0 0x4020000 0x0 0x1000>; interrupts = <0x0 0x23 0x4>; clocks = <0x9 0x86 0x8d 0x8e 0x8f>; clock-names = "osc24m", "pll_periph", "mmc", "ahb", "rst"; pinctrl-names = "default", "sleep", "uart_jtag"; pinctrl-0 = <0x90>; pinctrl-1 = <0x91>; pinctrl-2 = <0x92>; max-frequency = <0x8f0d180>; bus-width = <0x4>; cd-gpios = <0x53 0x8 0x10 0x6 0x1 0x3 0xffffffff>; cap-sd-highspeed; cap-wait-while-busy; no-sdio; no-mmc; sunxi-power-save-mode; status = "okay"; cd-used-24M; sd-uhs-sdr50; sd-uhs-ddr50; sd-uhs-sdr104; ctl-spec-caps = <0x8>; vmmc-supply = <0x69>; vqmmc33sw-supply = <0x69>; vdmmc33sw-supply = <0x69>; vqmmc18sw-supply = <0x68>; vdmmc18sw-supply = <0x68>; linux,phandle = <0x148>; phandle = <0x148>; }; sdmmc@04021000 { compatible = "allwinner,sunxi-mmc-v4p1x"; device_type = "sdc1"; reg = <0x0 0x4021000 0x0 0x1000>; interrupts = <0x0 0x24 0x4>; clocks = <0x9 0x86 0x93 0x94 0x95>; clock-names = "osc24m", "pll_periph", "mmc", "ahb", "rst"; pinctrl-names = "default", "sleep"; pinctrl-0 = <0x96>; pinctrl-1 = <0x97>; max-frequency = <0x8f0d180>; bus-width = <0x4>; keep-power-in-suspend; sunxi-dly-52M-ddr4 = <0x1 0x0 0x0 0x0 0x2>; sunxi-dly-104M = <0x1 0x0 0x0 0x0 0x1>; sunxi-dly-208M = <0x1 0x0 0x0 0x0 0x1>; status = "okay"; no-mmc; no-sd; cap-sd-highspeed; sd-uhs-sdr50; sd-uhs-ddr50; sd-uhs-sdr104; sunxi-dis-signal-vol-sw; cap-sdio-irq; ignore-pm-notify; ctl-spec-caps = <0x8>; linux,phandle = <0xd4>; phandle = <0xd4>; }; disp@01000000 { compatible = "allwinner,sunxi-disp"; reg = <0x0 0x1000000 0x0 0x1400000 0x0 0x6510000 0x0 0x200 0x0 0x6511000 0x0 0x1000 0x0 0x6512000 0x0 0x1000 0x0 0x6515000 0x0 0x1000 0x0 0x6516000 0x0 0x1000>; interrupts = <0x0 0x58 0x4 0x0 0x40 0x4 0x0 0x41 0x4 0x0 0x42 0x4 0x0 0x43 0x4>; clocks = <0xb 0x98 0x12 0x13 0x14 0x15 0x16>; boot_disp = <0x0>; fb_base = <0x0>; iommus = <0x28 0x0 0x0>; status = "okay"; disp_init_enable = <0x1>; disp_mode = <0x0>; screen0_output_type = <0x3>; screen0_output_mode = <0xa>; screen0_output_format = <0x0>; screen0_output_bits = <0x0>; screen0_output_eotf = <0x4>; screen0_output_cs = <0x101>; screen0_output_dvi_hdmi = <0x2>; screen0_output_range = <0x2>; screen0_output_scan = <0x0>; screen0_output_aspect_ratio = <0x8>; screen1_output_type = <0x2>; screen1_output_mode = <0xb>; screen1_output_format = <0x1>; screen1_output_bits = <0x0>; screen1_output_eotf = <0x4>; screen1_output_cs = <0x104>; screen1_output_dvi_hdmi = <0x0>; screen1_output_range = <0x2>; screen1_output_scan = <0x0>; screen1_output_aspect_ratio = <0x8>; dev0_output_type = <0x4>; dev0_output_mode = <0xa>; dev0_screen_id = <0x0>; dev0_do_hpd = <0x1>; dev1_output_type = <0x2>; dev1_output_mode = <0xb>; dev1_screen_id = <0x1>; dev1_do_hpd = <0x1>; dev2_output_type = <0x0>; def_output_dev = <0x0>; hdmi_mode_check = <0x1>; fb0_format = <0x0>; fb0_width = <0x500>; fb0_height = <0x2d0>; fb1_format = <0x0>; fb1_width = <0x0>; fb1_height = <0x0>; chn_cfg_mode = <0x1>; disp_para_zone = <0x1>; linux,phandle = <0x149>; phandle = <0x149>; }; tv0@01c94000 { compatible = "allwinner,sunxi-tv"; reg = <0x0 0x6520000 0x0 0x100 0x0 0x6524000 0x0 0x3fc>; clocks = <0x18 0x17>; device_type = "tv0"; pinctrl-names = "active", "sleep"; status = "okay"; dac_src0 = <0x0>; dac_type0 = <0x0>; interface = <0x1>; linux,phandle = <0x14a>; phandle = <0x14a>; }; lcd0@01c0c000 { compatible = "allwinner,sunxi-lcd0"; pinctrl-names = "active", "sleep"; status = "okay"; lcd_used = <0x0>; lcd_driver_name = "default_lcd"; lcd_backlight = <0x32>; lcd_if = <0x0>; lcd_x = <0x500>; lcd_y = <0x320>; lcd_width = <0x96>; lcd_height = <0x5e>; lcd_dclk_freq = <0x46>; lcd_pwm_used = <0x0>; lcd_pwm_ch = <0x0>; lcd_pwm_freq = <0xc350>; lcd_pwm_pol = <0x0>; lcd_pwm_max_limit = <0xff>; lcd_hbp = <0x14>; lcd_ht = <0x58a>; lcd_hspw = <0xa>; lcd_vbp = <0xa>; lcd_vt = <0x32e>; lcd_vspw = <0x5>; lcd_lvds_if = <0x0>; lcd_lvds_colordepth = <0x0>; lcd_lvds_mode = <0x0>; lcd_frm = <0x0>; lcd_hv_clk_phase = <0x0>; lcd_hv_sync_polarity = <0x0>; lcd_gamma_en = <0x0>; lcd_bright_curve_en = <0x0>; lcd_cmap_en = <0x0>; deu_mode = <0x0>; lcdgamma4iep = <0x16>; smart_color = <0x5a>; lcd_pin_power = "bldo1"; lcd_power = "dc1sw"; pinctrl-0 = <0x99>; pinctrl-1 = <0x9a>; linux,phandle = <0x14b>; phandle = <0x14b>; }; lcd1@01c0c001 { compatible = "allwinner,sunxi-lcd1"; pinctrl-names = "active", "sleep"; status = "okay"; linux,phandle = <0x14c>; phandle = <0x14c>; }; boot_disp { compatible = "allwinner,boot_disp"; linux,phandle = <0x14d>; phandle = <0x14d>; }; hdmi@06000000 { compatible = "allwinner,sunxi-hdmi"; reg = <0x0 0x6000000 0x0 0x100000>; interrupts = <0x0 0x3f 0x0>; clocks = <0xf 0x10 0x19 0x11>; status = "okay"; hdmi_used = <0x1>; hdmi_power_cnt = <0x2>; hdmi_power0 = "vcc-hdmi"; hdmi_power1 = "vdd-hdmi"; hdmi_hdcp_enable = <0x1>; hdmi_hdcp22_enable = <0x1>; hdmi_cts_compatibility = <0x0>; hdmi_cec_support = <0x0>; hdmi_cec_super_standby = <0x0>; hdmi_skip_bootedid = <0x1>; ddc_en_io_ctrl = <0x0>; power_io_ctrl = <0x0>; linux,phandle = <0x14e>; phandle = <0x14e>; }; g2d@01480000 { compatible = "allwinner,sunxi-g2d"; reg = <0x0 0x1480000 0x0 0x3ffff>; interrupts = <0x0 0x5a 0x4>; clocks = <0xd>; iommus = <0x28 0x6 0x1>; linux,phandle = <0x14f>; phandle = <0x14f>; }; tr@01000000 { compatible = "allwinner,sun50i-tr"; reg = <0x0 0x1000000 0x0 0x200bc>; interrupts = <0x0 0x60 0x4>; clocks = <0xb>; status = "okay"; linux,phandle = <0x150>; phandle = <0x150>; }; pwm@0300a000 { compatible = "allwinner,sunxi-pwm"; reg = <0x0 0x300a000 0x0 0x3ff>; clocks = <0x9b>; pwm-number = <0x6>; pwm-base = <0x0>; pwms = <0x9c 0x9d 0x9e 0x9f 0xa0 0xa1>; linux,phandle = <0x151>; phandle = <0x151>; }; pwm0@0300a000 { compatible = "allwinner,sunxi-pwm0"; pinctrl-names = "active", "sleep"; reg_base = <0x300a000>; linux,phandle = <0x9c>; phandle = <0x9c>; }; pwm1@0300a000 { compatible = "allwinner,sunxi-pwm1"; pinctrl-names = "active", "sleep"; reg_base = <0x300a000>; linux,phandle = <0x9d>; phandle = <0x9d>; }; pwm2@0300a000 { compatible = "allwinner,sunxi-pwm2"; pinctrl-names = "active", "sleep"; reg_base = <0x300a000>; linux,phandle = <0x9e>; phandle = <0x9e>; }; pwm3@0300a000 { compatible = "allwinner,sunxi-pwm3"; pinctrl-names = "active", "sleep"; reg_base = <0x300a000>; linux,phandle = <0x9f>; phandle = <0x9f>; }; pwm4@0300a000 { compatible = "allwinner,sunxi-pwm4"; pinctrl-names = "active", "sleep"; reg_base = <0x300a000>; linux,phandle = <0xa0>; phandle = <0xa0>; }; pwm5@0300a000 { compatible = "allwinner,sunxi-pwm5"; pinctrl-names = "active", "sleep"; reg_base = <0x300a000>; pinctrl-0 = <0xa2>; pinctrl-1 = <0xa3>; clk_bypass_output = <0x1>; linux,phandle = <0xa1>; phandle = <0xa1>; }; ac200 { compatible = "allwinner,sunxi-ac200"; status = "okay"; tv_used = <0x1>; tv_twi_used = <0x1>; tv_twi_id = <0x3>; tv_twi_addr = <0x10>; tv_pwm_ch = <0x5>; linux,phandle = <0x152>; phandle = <0x152>; }; vind@0 { compatible = "allwinner,sunxi-vin-media", "simple-bus"; #address-cells = <0x2>; #size-cells = <0x2>; ranges; device_id = <0x0>; vind0_clk = <0x16e36000>; reg = <0x0 0x6600800 0x0 0x200 0x0 0x6600000 0x0 0x800>; clocks = <0xa4 0xa5 0xa6 0x9 0xa5 0xa7 0x9 0xa5>; pinctrl-names = "mclk0-default", "mclk0-sleep", "mclk1-default", "mclk1-sleep"; pinctrl-0 = <0xa8>; pinctrl-1 = <0xa9>; pinctrl-2 = <0xaa>; pinctrl-3 = <0xab>; status = "okay"; linux,phandle = <0x153>; phandle = <0x153>; cci@0 { compatible = "allwinner,sunxi-csi_cci"; reg = <0x0 0x6614000 0x0 0x400>; interrupts = <0x0 0x4b 0x4>; pinctrl-names = "default", "sleep"; pinctrl-0 = <0xac>; pinctrl-1 = <0xad>; device_id = <0x0>; status = "okay"; linux,phandle = <0x154>; phandle = <0x154>; }; cci@1 { compatible = "allwinner,sunxi-csi_cci"; reg = <0x0 0x6614400 0x0 0x400>; interrupts = <0x0 0x4c 0x4>; pinctrl-names = "default", "sleep"; pinctrl-0 = <0xae>; pinctrl-1 = <0xaf>; device_id = <0x1>; status = "okay"; linux,phandle = <0x155>; phandle = <0x155>; }; csi@0 { device_type = "csi0"; compatible = "allwinner,sunxi-csi"; reg = <0x0 0x6601000 0x0 0x1000>; interrupts = <0x0 0x49 0x4>; device_id = <0x0>; iommus = <0x28 0x4 0x1>; status = "okay"; linux,phandle = <0x156>; phandle = <0x156>; }; csi@1 { device_type = "csi1"; compatible = "allwinner,sunxi-csi"; reg = <0x0 0x6602000 0x0 0x1000>; interrupts = <0x0 0x4a 0x4>; pinctrl-names = "default", "sleep"; pinctrl-0 = <0xb0>; pinctrl-1 = <0xb1>; device_id = <0x1>; iommus = <0x28 0x4 0x1>; status = "okay"; linux,phandle = <0x157>; phandle = <0x157>; }; mipi@0 { compatible = "allwinner,sunxi-mipi"; reg = <0x0 0x660c000 0x0 0x1000>; interrupts = <0x0 0x4d 0x4>; device_id = <0x0>; status = "okay"; linux,phandle = <0x158>; phandle = <0x158>; }; isp@0 { compatible = "allwinner,sunxi-isp"; device_id = <0x0>; status = "okay"; linux,phandle = <0x159>; phandle = <0x159>; }; isp@1 { compatible = "allwinner,sunxi-isp"; device_id = <0x1>; status = "okay"; linux,phandle = <0x15a>; phandle = <0x15a>; }; scaler@0 { compatible = "allwinner,sunxi-scaler"; device_id = <0x0>; iommus = <0x28 0x4 0x1>; status = "okay"; linux,phandle = <0x15b>; phandle = <0x15b>; }; scaler@1 { compatible = "allwinner,sunxi-scaler"; device_id = <0x1>; iommus = <0x28 0x4 0x1>; status = "okay"; linux,phandle = <0x15c>; phandle = <0x15c>; }; scaler@2 { compatible = "allwinner,sunxi-scaler"; device_id = <0x2>; iommus = <0x28 0x4 0x1>; status = "okay"; linux,phandle = <0x15d>; phandle = <0x15d>; }; scaler@3 { compatible = "allwinner,sunxi-scaler"; device_id = <0x3>; iommus = <0x28 0x4 0x1>; status = "okay"; linux,phandle = <0x15e>; phandle = <0x15e>; }; scaler@4 { compatible = "allwinner,sunxi-scaler"; device_id = <0x4>; iommus = <0x28 0x4 0x1>; status = "okay"; linux,phandle = <0x15f>; phandle = <0x15f>; }; scaler@5 { compatible = "allwinner,sunxi-scaler"; device_id = <0x5>; iommus = <0x28 0x4 0x1>; status = "okay"; linux,phandle = <0x160>; phandle = <0x160>; }; actuator@0 { device_type = "actuator0"; compatible = "allwinner,sunxi-actuator"; actuator0_name = "ad5820_act"; actuator0_slave = <0x18>; actuator0_af_pwdn; actuator0_afvdd = "afvcc-csi"; actuator0_afvdd_vol = <0x2ab980>; status = "disabled"; linux,phandle = <0xb3>; phandle = <0xb3>; }; flash@0 { device_type = "flash0"; compatible = "allwinner,sunxi-flash"; flash0_type = <0x2>; flash0_en; flash0_mode; flash0_flvdd = [00]; flash0_flvdd_vol; device_id = <0x0>; status = "disabled"; linux,phandle = <0xb2>; phandle = <0xb2>; }; sensor@0 { device_type = "sensor0"; compatible = "allwinner,sunxi-sensor"; sensor0_mname = "ov5640"; sensor0_twi_cci_id = <0x0>; sensor0_twi_addr = <0x78>; sensor0_mclk_id = <0x0>; sensor0_pos = "rear"; sensor0_isp_used = <0x0>; sensor0_fmt = <0x0>; sensor0_stby_mode = <0x0>; sensor0_vflip = <0x0>; sensor0_hflip = <0x0>; sensor0_cameravdd-supply; sensor0_cameravdd_vol = <0x2ab980>; sensor0_iovdd-supply; sensor0_iovdd_vol = <0x2ab980>; sensor0_avdd-supply; sensor0_avdd_vol = <0x2ab980>; sensor0_dvdd-supply; sensor0_dvdd_vol = <0x16e360>; sensor0_power_en; sensor0_reset = <0x53 0x4 0xe 0x1 0x0 0x1 0x0>; sensor0_pwdn = <0x53 0x4 0x10 0x1 0x0 0x1 0x0>; sensor0_sm_vs; flash_handle = <0xb2>; act_handle = <0xb3>; device_id = <0x0>; status = "okay"; linux,phandle = <0x161>; phandle = <0x161>; }; sensor@1 { device_type = "sensor1"; compatible = "allwinner,sunxi-sensor"; sensor1_mname = "ov5647"; sensor1_twi_cci_id = <0x1>; sensor1_twi_addr = <0x6c>; sensor1_mclk_id = <0x1>; sensor1_pos = "front"; sensor1_isp_used = <0x0>; sensor1_fmt = <0x0>; sensor1_stby_mode = <0x0>; sensor1_vflip = <0x0>; sensor1_hflip = <0x0>; sensor1_cameravdd-supply; sensor1_cameravdd_vol = <0x2ab980>; sensor1_iovdd-supply; sensor1_iovdd_vol = <0x2ab980>; sensor1_avdd-supply; sensor1_avdd_vol = <0x2ab980>; sensor1_dvdd-supply; sensor1_dvdd_vol = <0x16e360>; sensor1_power_en; sensor1_reset = <0x53 0x4 0xe 0x1 0x0 0x1 0x0>; sensor1_pwdn = <0x53 0x4 0xf 0x1 0x0 0x1 0x0>; sensor1_sm_vs; flash_handle; act_handle; device_id = <0x1>; status = "okay"; linux,phandle = <0x162>; phandle = <0x162>; }; vinc@0 { device_type = "vinc0"; compatible = "allwinner,sunxi-vin-core"; reg = <0x0 0x6609000 0x0 0x200>; interrupts = <0x0 0x45 0x4>; vinc0_csi_sel = <0x0>; vinc0_mipi_sel = <0x0>; vinc0_isp_sel = <0x0>; vinc0_isp_tx_ch = <0x0>; vinc0_rear_sensor_sel = <0x0>; vinc0_front_sensor_sel = <0x0>; vinc0_sensor_list = <0x0>; device_id = <0x0>; iommus = <0x28 0x4 0x1>; status = "okay"; linux,phandle = <0x163>; phandle = <0x163>; }; vinc@1 { device_type = "vinc1"; compatible = "allwinner,sunxi-vin-core"; reg = <0x0 0x6609200 0x0 0x200>; interrupts = <0x0 0x46 0x4>; vinc1_csi_sel = <0x0>; vinc1_mipi_sel = <0x0>; vinc1_isp_sel = <0x0>; vinc1_isp_tx_ch = <0x0>; vinc1_rear_sensor_sel = <0x0>; vinc1_front_sensor_sel = <0x0>; vinc1_sensor_list = <0x0>; device_id = <0x1>; iommus = <0x28 0x4 0x1>; status = "okay"; linux,phandle = <0x164>; phandle = <0x164>; }; vinc@2 { device_type = "vinc2"; compatible = "allwinner,sunxi-vin-core"; reg = <0x0 0x6609400 0x0 0x200>; interrupts = <0x0 0x47 0x4>; vinc2_csi_sel = <0x0>; vinc2_mipi_sel = <0x0>; vinc2_isp_sel = <0x0>; vinc2_isp_tx_ch = <0x0>; vinc2_rear_sensor_sel = <0x0>; vinc2_front_sensor_sel = <0x0>; vinc2_sensor_list = <0x0>; device_id = <0x2>; iommus = <0x28 0x4 0x1>; status = "disabled"; linux,phandle = <0x165>; phandle = <0x165>; }; vinc@3 { device_type = "vinc3"; compatible = "allwinner,sunxi-vin-core"; reg = <0x0 0x6609600 0x0 0x200>; interrupts = <0x0 0x48 0x4>; vinc3_csi_sel = <0x0>; vinc3_mipi_sel = <0x0>; vinc3_isp_sel = <0x0>; vinc3_isp_tx_ch = <0x0>; vinc3_rear_sensor_sel = <0x0>; vinc3_front_sensor_sel = <0x0>; vinc3_sensor_list = <0x0>; device_id = <0x3>; iommus = <0x28 0x4 0x1>; status = "disabled"; linux,phandle = <0x166>; phandle = <0x166>; }; vinc@4 { device_type = "vinc4"; compatible = "allwinner,sunxi-vin-core"; reg = <0x0 0x6609800 0x0 0x200>; interrupts = <0x0 0x4f 0x4>; vinc4_csi_sel = <0x1>; vinc4_mipi_sel = <0xff>; vinc4_isp_sel = <0x1>; vinc4_isp_tx_ch = <0x0>; vinc4_rear_sensor_sel = <0x1>; vinc4_front_sensor_sel = <0x1>; vinc4_sensor_list = <0x0>; device_id = <0x4>; iommus = <0x28 0x5 0x1>; status = "disabled"; linux,phandle = <0x167>; phandle = <0x167>; }; vinc@5 { device_type = "vinc5"; compatible = "allwinner,sunxi-vin-core"; reg = <0x0 0x6609a00 0x0 0x200>; interrupts = <0x0 0x50 0x4>; vinc5_csi_sel = <0x1>; vinc5_mipi_sel = <0xff>; vinc5_isp_sel = <0x1>; vinc5_isp_tx_ch = <0x0>; vinc5_rear_sensor_sel = <0x1>; vinc5_front_sensor_sel = <0x1>; vinc5_sensor_list = <0x0>; device_id = <0x5>; iommus = <0x28 0x5 0x1>; status = "disabled"; linux,phandle = <0x168>; phandle = <0x168>; }; }; vdevice@0 { compatible = "allwinner,sun50i-vdevice"; device_type = "Vdevice"; pinctrl-names = "default"; interrupt-parent = <0x53>; interrupts = <0x0 0x3 0x4>; pinctrl-0 = <0xb4>; test-gpios = <0x53 0x0 0x0 0x1 0x2 0x2 0x1>; status = "okay"; linux,phandle = <0x169>; phandle = <0x169>; }; emce@01905000 { compatible = "allwinner,sunxi-emce"; device_name = "emce"; reg = <0x0 0x1905000 0x0 0x100>; clock-frequency = <0x11e1a300>; linux,phandle = <0x16a>; phandle = <0x16a>; }; ce@1904000 { compatible = "allwinner,sunxi-ce"; device_name = "ce"; reg = <0x0 0x1904000 0x0 0xa0 0x0 0x1904800 0x0 0xa0>; interrupts = <0x0 0x5b 0x1 0x0 0x5c 0x1>; clock-frequency = <0x11e1a300>; clocks = <0xb5 0xc>; linux,phandle = <0x16b>; phandle = <0x16b>; }; deinterlace@0x01420000 { #address-cells = <0x1>; #size-cells = <0x0>; compatible = "allwinner,sunxi-deinterlace"; reg = <0x0 0x1420000 0x0 0x40000>; interrupts = <0x0 0x59 0x4>; clocks = <0xe 0xc>; iommus = <0x28 0x1 0x1>; status = "okay"; linux,phandle = <0x16c>; phandle = <0x16c>; }; smartcard@0x05005000 { #address-cells = <0x1>; #size-cells = <0x0>; compatible = "allwinner,sunxi-scr"; device_type = "scr0"; reg = <0x0 0x5005000 0x0 0x400>; interrupts = <0x0 0x8 0x4>; clocks = <0xb6 0xb7>; clock-frequency = <0x16e3600>; pinctrl-names = "default", "sleep"; pinctrl-0 = <0xb8 0xb9>; pinctrl-1 = <0xba>; status = "disabled"; linux,phandle = <0x16d>; phandle = <0x16d>; }; nand0@04011000 { compatible = "allwinner,sun50iw9-nand"; device_type = "nand0"; reg = <0x0 0x4011000 0x0 0x1000>; interrupts = <0x0 0x22 0x4>; clocks = <0xc 0xbb 0xbc>; pinctrl-names = "default", "sleep"; pinctrl-1 = <0xbf>; nand0_regulator1 = "vcc-nand"; nand0_regulator2 = "none"; nand0_cache_level = <0x55aaaa55>; nand0_flush_cache_num = <0x55aaaa55>; nand0_capacity_level = <0x55aaaa55>; nand0_id_number_ctl = <0x55aaaa55>; nand0_print_level = <0x55aaaa55>; nand0_p0 = <0x55aaaa55>; nand0_p1 = <0x55aaaa55>; nand0_p2 = <0x55aaaa55>; nand0_p3 = <0x55aaaa55>; chip_code = "sun50iw9"; status = "disabled"; linux,phandle = <0x16e>; phandle = <0x16e>; nand0_support_2ch = <0x0>; pinctrl-0 = <0x18b 0x18c>; }; ts0@05060000 { compatible = "allwinner,sun50i-tsc"; device_type = "ts0"; reg = <0x0 0x5060000 0x0 0x1000>; interrupts = <0x0 0x11 0x4>; clocks = <0x2 0xc0>; clock-frequency = <0x7270e00>; pinctrl-names = "ts0-default", "ts0-sleep"; pinctrl-0 = <0xc1>; pinctrl-1 = <0xc2>; ts0config = <0x1>; status = "okay"; linux,phandle = <0x16f>; phandle = <0x16f>; }; thermal_sensor { compatible = "arm,sun50iw9p1"; reg = <0x0 0x5070400 0x0 0x400>; clocks = <0xc3>; clock-names = "bus"; nvmem-cells = <0xc4>; nvmem-cell-names = "calibration"; nvmem-names = "sid"; nvmem = <0xc5>; #thermal-sensor-cells = <0x1>; linux,phandle = <0xc6>; phandle = <0xc6>; }; thermal-zones { cpu_thermal_zone { polling-delay-passive = <0x1f4>; polling-delay = <0x3e8>; thermal-sensors = <0xc6 0x2>; sustainable-power = <0x3e8>; k_po = <0x14>; k_pu = <0x28>; k_i = <0x0>; trips { linux,phandle = <0x170>; phandle = <0x170>; trip-point@0 { temperature = <0xea60>; type = "passive"; hysteresis = <0x0>; linux,phandle = <0x171>; phandle = <0x171>; }; trip-point@1 { temperature = <0x11170>; type = "passive"; hysteresis = <0x0>; linux,phandle = <0xc7>; phandle = <0xc7>; }; cpu_crit@0 { temperature = <0x1c138>; type = "critical"; hysteresis = <0x0>; linux,phandle = <0x172>; phandle = <0x172>; }; }; cooling-maps { map0 { trip = <0xc7>; cooling-device = <0xc8 0xffffffff 0xffffffff>; contribution = <0x400>; }; map1 { trip = <0xc7>; cooling-device = <0xc9 0xffffffff 0xffffffff>; contribution = <0x400>; }; }; }; gpu_thermal_zone { polling-delay-passive = <0x1f4>; polling-delay = <0x3e8>; thermal-sensors = <0xc6 0x0>; sustainable-power = <0x44c>; }; ve_thermal_zone { polling-delay-passive = <0x0>; polling-delay = <0x0>; thermal-sensors = <0xc6 0x1>; }; ddr_thermal_zone { polling-delay-passive = <0x0>; polling-delay = <0x0>; thermal-sensors = <0xc6 0x3>; }; }; gpadc { compatible = "allwinner,sunxi-gpadc"; reg = <0x0 0x5070000 0x0 0x400>; interrupts = <0x0 0x12 0x0>; clocks = <0xca>; status = "okay"; channel_num = <0x1>; channel_select = <0x1>; channel_data_select = <0x0>; channel_compare_select = <0x1>; channel_cld_select = <0x1>; channel_chd_select = <0x0>; channel0_compare_lowdata = <0x19f0a0>; channel0_compare_higdata = <0x124f80>; key_cnt = <0x5>; key0_vol = <0x73>; key0_val = <0x73>; key1_vol = <0xf0>; key1_val = <0x72>; key2_vol = <0x168>; key2_val = <0x8b>; key3_vol = <0x1e0>; key3_val = <0x1c>; key4_vol = <0x258>; key4_val = <0x66>; linux,phandle = <0x173>; phandle = <0x173>; }; keyboard { compatible = "allwinner,keyboard_1350mv"; reg = <0x0 0x5070800 0x0 0x400>; clocks = <0xcb>; interrupts = <0x0 0x14 0x0>; status = "okay"; key_cnt = <0x5>; key0 = <0xd2 0x73>; key1 = <0x19a 0x72>; key2 = <0x24e 0x8b>; key3 = <0x2ee 0x1c>; key4 = <0x370 0xac>; linux,phandle = <0x174>; phandle = <0x174>; }; eth@05020000 { compatible = "allwinner,sunxi-gmac"; reg = <0x0 0x5020000 0x0 0x10000 0x0 0x3000030 0x0 0x4>; interrupts = <0x0 0xe 0x4>; interrupt-names = "gmacirq"; clocks = <0xcc 0xcd>; clock-names = "gmac", "ephy"; device_type = "gmac0"; pinctrl-0 = <0xce>; pinctrl-1 = <0xcf>; pinctrl-names = "default", "sleep"; phy-mode; tx-delay = <0x7>; rx-delay = <0x1f>; phy-rst; gmac-power0; gmac-power1; gmac-power2; status = "disable"; linux,phandle = <0x175>; phandle = <0x175>; }; eth@05030000 { compatible = "allwinner,sunxi-gmac"; reg = <0x0 0x5030000 0x0 0x10000 0x0 0x3000034 0x0 0x4>; interrupts = <0x0 0xf 0x4>; interrupt-names = "gmacirq"; clocks = <0xd0>; clock-names = "gmac"; device_type = "gmac1"; pinctrl-0 = <0xd1>; pinctrl-1 = <0xd2>; pinctrl-names = "default", "sleep"; phy-mode = "rmii"; tx-delay = <0x7>; rx-delay = <0x1f>; phy-rst; gmac-power0; gmac-power1; gmac-power2; status = "okay"; linux,phandle = <0x176>; phandle = <0x176>; }; gpio_encrypt { compatible = "allwinner,gpio_encrypt"; gpio_number_sun = <0x5>; gpio1_value = <0x0>; gpio2_value = <0x0>; gpio3_value = <0x0>; gpio4_value = <0x0>; gpio5_value = <0x0>; gpio1_pin = <0x53 0x8 0x1 0x1 0xffffffff 0xffffffff 0x0>; gpio2_pin = <0x53 0x8 0x2 0x1 0xffffffff 0xffffffff 0x0>; gpio3_pin = <0x53 0x8 0x3 0x1 0xffffffff 0xffffffff 0x0>; gpio4_pin = <0x53 0x8 0x4 0x1 0xffffffff 0xffffffff 0x0>; gpio5_pin = <0x53 0x8 0x5 0x1 0xffffffff 0xffffffff 0x0>; status = "disable"; linux,phandle = <0x177>; phandle = <0x177>; }; fd650 { compatible = "oranth,fd650"; status = "okay"; fd650_gpio_clk = <0x53 0x8 0xb 0x1 0xffffffff 0xffffffff 0x0>; fd650_gpio_dat = <0x53 0x8 0xc 0x1 0xffffffff 0xffffffff 0x0>; }; wlan { compatible = "allwinner,sunxi-wlan"; clocks = <0x1b>; pinctrl-0 = <0xd3>; pinctrl-names = "default"; wlan_busnum = <0x1>; wlan_power; wlan_io_regulator; wlan_regon = <0x53 0x6 0x12 0x1 0xffffffff 0xffffffff 0x0>; wlan_hostwake = <0x53 0x6 0xf 0x6 0xffffffff 0xffffffff 0x0>; chip_en; power_en; status = "okay"; linux,phandle = <0x178>; phandle = <0x178>; }; bt { compatible = "allwinner,sunxi-bt"; clocks = <0x1b>; bt_power; bt_io_regulator; bt_rst_n = <0x53 0x6 0x13 0x1 0xffffffff 0xffffffff 0x0>; status = "okay"; linux,phandle = <0x179>; phandle = <0x179>; }; btlpm { compatible = "allwinner,sunxi-btlpm"; uart_index = <0x1>; bt_wake = <0x53 0x6 0x11 0x1 0xffffffff 0xffffffff 0x1>; bt_hostwake = <0x53 0x6 0x10 0x6 0xffffffff 0xffffffff 0x0>; status = "okay"; linux,phandle = <0x17a>; phandle = <0x17a>; }; addr_mgt { compatible = "allwinner,sunxi-addr_mgt"; type_addr_wifi = <0x0>; type_addr_bt = <0x0>; type_addr_eth = <0x0>; status = "okay"; linux,phandle = <0x17b>; phandle = <0x17b>; }; sprd-marlin3 { compatible = "sprd,marlin3"; reset-gpios = <0x53 0x6 0x13 0x1 0xffffffff 0xffffffff 0x0>; enable-gpios = <0x53 0x6 0x12 0x1 0xffffffff 0xffffffff 0x0>; m2-to-ap-irq-gpios = <0x53 0x6 0x10 0x6 0xffffffff 0xffffffff 0x0>; sdhci-name = <0xd4>; sprd,btwf-file-name = "/vendor/etc/firmware/wcnmodem.bin"; sprd,gnss-file-name = "/vendor/etc/firmware/gnssmodem.bin"; adma-tx; adma-rx; data-irq; linux,phandle = <0x17c>; phandle = <0x17c>; }; gpio_para { device_type = "gpio_para"; status = "okay"; compatible = "allwinner,sunxi-init-gpio"; gpio_num = <0x2>; gpio_pin_1 = <0x53 0x7 0x6 0x1 0xffffffff 0xffffffff 0x1>; gpio_pin_2 = <0x53 0x7 0x7 0x1 0xffffffff 0xffffffff 0x0>; normal_led = "gpio_pin_1"; standby_led = "gpio_pin_2"; easy_light_used = <0x1>; normal_led_light = <0x1>; standby_led_light = <0x1>; }; product { device_type = "product"; version = "100"; machine = "evb"; }; platform { device_type = "platform"; eraseflag = <0x1>; debug_mode = <0x3>; }; target { device_type = "target"; boot_clock = <0x3f0>; storage_type = <0xffffffff>; advert_enable = <0x0>; burn_key = <0x1>; dragonboard_test = <0x0>; auto_fel = <0x1>; }; power_sply { device_type = "power_sply"; dcdc2_vol = <0xf4628>; aldo1_vol = <0xf4948>; dldo1_vol = <0xf4f24>; }; axp1530_power_sply { device_type = "axp1530_power_sply"; dcdc2_vol = <0xf4628>; aldo1_vol = <0xf4948>; dldo1_vol = <0xf4f24>; }; axp806_power_sply { device_type = "axp806_power_sply"; dcdce_vol = <0xf4f24>; aldo1_vol = <0xf4f24>; bldo1_vol = <0xf4948>; }; card_boot { device_type = "card_boot"; logical_start = <0xa000>; sprite_gpio0 = <0x53 0x7 0x6 0x1 0xffffffff 0xffffffff 0x1>; }; boot_init_gpio { device_type = "boot_init_gpio"; status = "okay"; gpio0 = <0x53 0x7 0x6 0x1 0xffffffff 0xffffffff 0x1>; gpio1 = <0x53 0x7 0x7 0x1 0xffffffff 0xffffffff 0x0>; }; ir_boot_recovery { device_type = "ir_boot_recovery"; status = "okay"; ir_work_mode = <0x2>; ir_press_times = <0x1>; ir_detect_time = <0x7d0>; ir_key_no_duplicate = <0x0>; ir_recovery_key_code0 = <0x45>; ir_addr_code0 = <0x4040>; ir_recovery_key_code1 = <0x49>; ir_addr_code1 = <0x7f80>; }; key_boot_recovery { device_type = "key_boot_recovery"; recovery_key_used = <0x1>; press_mode_enable = <0x0>; key_work_mode = <0x2>; short_press_mode = <0x0>; long_press_mode = <0x1>; key_press_time = <0x7d0>; recovery_key = <0x53 0x7 0x9 0x0 0xffffffff 0xffffffff 0xffffffff>; }; pm_para { device_type = "pm_para"; standby_mode = <0x1>; }; card0_boot_para { device_type = "card0_boot_para"; card_ctrl = <0x0>; card_high_speed = <0x1>; card_line = <0x4>; pinctrl-0 = <0x184>; }; card2_boot_para { device_type = "card2_boot_para"; card_ctrl = <0x2>; card_high_speed = <0x1>; card_line = <0x8>; pinctrl-0 = <0x185 0x186>; sdc_ex_dly_used = <0x2>; sdc_io_1v8 = <0x1>; sdc_tm4_win_th = <0xa>; }; gpio_bias { device_type = "gpio_bias"; pc_bias = <0x708>; }; twi_para { device_type = "twi_para"; twi_port = <0x0>; pinctrl-0 = <0x187>; }; uart_para { device_type = "uart_para"; uart_debug_port = <0x0>; pinctrl-0 = <0x188>; }; jtag_para { device_type = "jtag_para"; jtag_enable = <0x1>; pinctrl-0 = <0x189>; }; clock { device_type = "clock"; pll4 = <0x12c>; pll6 = <0x258>; pll8 = <0x168>; pll9 = <0x129>; pll10 = <0x108>; }; dram_select_para { device_type = "dram_select_para"; select_mode = <0x0>; select_gpio0 = <0x53 0x8 0xe 0x0 0x1 0xffffffff 0xffffffff>; select_gpio1 = <0x53 0x8 0xf 0x0 0x1 0xffffffff 0xffffffff>; select_gpio2 = <0x53 0x8 0x10 0x0 0x1 0xffffffff 0xffffffff>; select_gpio3; }; dram_para1 { device_type = "dram_para1"; dram_clk = <0x258>; dram_type = <0x3>; dram_dx_odt = <0x3030303>; dram_dx_dri = <0xe0e0e0e>; dram_ca_dri = <0x1c12>; dram_odt_en = <0x1>; dram_para1 = <0x30fb>; dram_para2 = <0x0>; dram_mr0 = <0x840>; dram_mr1 = <0x4>; dram_mr2 = <0x8>; dram_mr3 = <0x0>; dram_mr4 = <0x0>; dram_mr5 = <0x0>; dram_mr6 = <0x0>; dram_mr11 = <0x0>; dram_mr12 = <0x0>; dram_mr13 = <0x0>; dram_mr14 = <0x0>; dram_mr16 = <0x0>; dram_mr17 = <0x0>; dram_mr22 = <0x0>; dram_tpr0 = <0xc0000a05>; dram_tpr1 = <0x0>; dram_tpr2 = <0x0>; dram_tpr3 = <0x0>; dram_tpr6 = <0x33808080>; dram_tpr10 = <0x2f0006>; dram_tpr11 = <0xddddcccc>; dram_tpr12 = <0xeddc7564>; dram_tpr13 = <0x40>; }; dram_para2 { device_type = "dram_para2"; dram_clk = <0x258>; dram_type = <0x3>; dram_dx_odt = <0x3030303>; dram_dx_dri = <0xe0e0e0e>; dram_ca_dri = <0x1c12>; dram_odt_en = <0x1>; dram_para1 = <0x30fb>; dram_para2 = <0x0>; dram_mr0 = <0x840>; dram_mr1 = <0x4>; dram_mr2 = <0x8>; dram_mr3 = <0x0>; dram_mr4 = <0x0>; dram_mr5 = <0x0>; dram_mr6 = <0x0>; dram_mr11 = <0x0>; dram_mr12 = <0x0>; dram_mr13 = <0x0>; dram_mr14 = <0x0>; dram_mr16 = <0x0>; dram_mr17 = <0x0>; dram_mr22 = <0x0>; dram_tpr0 = <0xc0000a05>; dram_tpr1 = <0x0>; dram_tpr2 = <0x0>; dram_tpr3 = <0x0>; dram_tpr6 = <0x33808080>; dram_tpr10 = <0x2f0006>; dram_tpr11 = <0xddddcccc>; dram_tpr12 = <0xeddc7564>; dram_tpr13 = <0x40>; }; dram_para3 { device_type = "dram_para3"; dram_clk = <0x258>; dram_type = <0x3>; dram_dx_odt = <0x3030303>; dram_dx_dri = <0xe0e0e0e>; dram_ca_dri = <0x1c12>; dram_odt_en = <0x1>; dram_para1 = <0x30fb>; dram_para2 = <0x0>; dram_mr0 = <0x840>; dram_mr1 = <0x4>; dram_mr2 = <0x8>; dram_mr3 = <0x0>; dram_mr4 = <0x0>; dram_mr5 = <0x0>; dram_mr6 = <0x0>; dram_mr11 = <0x0>; dram_mr12 = <0x0>; dram_mr13 = <0x0>; dram_mr14 = <0x0>; dram_mr16 = <0x0>; dram_mr17 = <0x0>; dram_mr22 = <0x0>; dram_tpr0 = <0xc0000a05>; dram_tpr1 = <0x0>; dram_tpr2 = <0x0>; dram_tpr3 = <0x0>; dram_tpr6 = <0x33808080>; dram_tpr10 = <0x2f0006>; dram_tpr11 = <0xddddcccc>; dram_tpr12 = <0xeddc7564>; dram_tpr13 = <0x40>; }; dram_para4 { device_type = "dram_para4"; dram_clk = <0x258>; dram_type = <0x3>; dram_dx_odt = <0x3030303>; dram_dx_dri = <0xe0e0e0e>; dram_ca_dri = <0x1c12>; dram_odt_en = <0x1>; dram_para1 = <0x30fb>; dram_para2 = <0x0>; dram_mr0 = <0x840>; dram_mr1 = <0x4>; dram_mr2 = <0x8>; dram_mr3 = <0x0>; dram_mr4 = <0x0>; dram_mr5 = <0x0>; dram_mr6 = <0x0>; dram_mr11 = <0x0>; dram_mr12 = <0x0>; dram_mr13 = <0x0>; dram_mr14 = <0x0>; dram_mr16 = <0x0>; dram_mr17 = <0x0>; dram_mr22 = <0x0>; dram_tpr0 = <0xc0000a05>; dram_tpr1 = <0x0>; dram_tpr2 = <0x0>; dram_tpr3 = <0x0>; dram_tpr6 = <0x33808080>; dram_tpr10 = <0x2f0006>; dram_tpr11 = <0xddddcccc>; dram_tpr12 = <0xeddc7564>; dram_tpr13 = <0x40>; }; dram_para5 { device_type = "dram_para5"; dram_clk = <0x258>; dram_type = <0x3>; dram_dx_odt = <0x3030303>; dram_dx_dri = <0xe0e0e0e>; dram_ca_dri = <0x1c12>; dram_odt_en = <0x1>; dram_para1 = <0x30fb>; dram_para2 = <0x0>; dram_mr0 = <0x840>; dram_mr1 = <0x4>; dram_mr2 = <0x8>; dram_mr3 = <0x0>; dram_mr4 = <0x0>; dram_mr5 = <0x0>; dram_mr6 = <0x0>; dram_mr11 = <0x0>; dram_mr12 = <0x0>; dram_mr13 = <0x0>; dram_mr14 = <0x0>; dram_mr16 = <0x0>; dram_mr17 = <0x0>; dram_mr22 = <0x0>; dram_tpr0 = <0xc0000a05>; dram_tpr1 = <0x0>; dram_tpr2 = <0x0>; dram_tpr3 = <0x0>; dram_tpr6 = <0x33808080>; dram_tpr10 = <0x2f0006>; dram_tpr11 = <0xddddcccc>; dram_tpr12 = <0xeddc7564>; dram_tpr13 = <0x40>; }; dram_para6 { device_type = "dram_para6"; dram_clk = <0x258>; dram_type = <0x3>; dram_dx_odt = <0x3030303>; dram_dx_dri = <0xe0e0e0e>; dram_ca_dri = <0x1c12>; dram_odt_en = <0x1>; dram_para1 = <0x30fb>; dram_para2 = <0x0>; dram_mr0 = <0x840>; dram_mr1 = <0x4>; dram_mr2 = <0x8>; dram_mr3 = <0x0>; dram_mr4 = <0x0>; dram_mr5 = <0x0>; dram_mr6 = <0x0>; dram_mr11 = <0x0>; dram_mr12 = <0x0>; dram_mr13 = <0x0>; dram_mr14 = <0x0>; dram_mr16 = <0x0>; dram_mr17 = <0x0>; dram_mr22 = <0x0>; dram_tpr0 = <0xc0000a05>; dram_tpr1 = <0x0>; dram_tpr2 = <0x0>; dram_tpr3 = <0x0>; dram_tpr6 = <0x33808080>; dram_tpr10 = <0x2f0006>; dram_tpr11 = <0xddddcccc>; dram_tpr12 = <0xeddc7564>; dram_tpr13 = <0x40>; }; dram_para7 { device_type = "dram_para7"; dram_clk = <0x258>; dram_type = <0x3>; dram_dx_odt = <0x3030303>; dram_dx_dri = <0xe0e0e0e>; dram_ca_dri = <0x1f12>; dram_odt_en = <0x1>; dram_para1 = <0x30fb>; dram_para2 = <0x0>; dram_mr0 = <0x840>; dram_mr1 = <0x4>; dram_mr2 = <0x8>; dram_mr3 = <0x0>; dram_mr4 = <0x0>; dram_mr5 = <0x0>; dram_mr6 = <0x0>; dram_mr11 = <0x0>; dram_mr12 = <0x0>; dram_mr13 = <0x0>; dram_mr14 = <0x0>; dram_mr16 = <0x0>; dram_mr17 = <0x0>; dram_mr22 = <0x0>; dram_tpr0 = <0xc0001002>; dram_tpr1 = <0x0>; dram_tpr2 = <0x0>; dram_tpr3 = <0x0>; dram_tpr6 = <0x33808080>; dram_tpr10 = <0x2f1107>; dram_tpr11 = <0xddddcccc>; dram_tpr12 = <0xeddc7665>; dram_tpr13 = <0x40>; }; secure { device_type = "secure"; dram_region_mbytes = <0x50>; drm_region_mbytes = <0x0>; drm_region_start_mbytes = <0x0>; }; }; aliases { serial0 = "/soc@03000000/uart@05000000", "/soc@03000000/uart@05000000"; serial1 = "/soc@03000000/uart@05000400", "/soc@03000000/uart@05000400"; serial2 = "/soc@03000000/uart@05000800", "/soc@03000000/uart@05000800"; serial3 = "/soc@03000000/uart@05000c00", "/soc@03000000/uart@05000c00"; serial4 = "/soc@03000000/uart@05001000", "/soc@03000000/uart@05001000"; serial5 = "/soc@03000000/uart@05001400", "/soc@03000000/uart@05001400"; twi0 = "/soc@03000000/twi@0x05002000", "/soc@03000000/twi@0x05002000"; twi1 = "/soc@03000000/twi@0x05002400", "/soc@03000000/twi@0x05002400"; twi2 = "/soc@03000000/twi@0x05002800", "/soc@03000000/twi@0x05002800"; twi3 = "/soc@03000000/twi@0x05002c00", "/soc@03000000/twi@0x05002c00"; twi4 = "/soc@03000000/twi@0x05003000", "/soc@03000000/twi@0x05003000"; twi5 = "/soc@03000000/twi@0x07081400", "/soc@03000000/twi@0x07081400"; spi0 = "/soc@03000000/spi@05010000", "/soc@03000000/spi@05010000"; spi1 = "/soc@03000000/spi@05011000", "/soc@03000000/spi@05011000"; ir0 = "/soc@03000000/s_cir@07040000", "/soc@03000000/s_cir@07040000"; pcie = "/soc@03000000/pcie@0x05400000", "/soc@03000000/pcie@0x05400000"; scr0 = "/soc@03000000/smartcard@0x05005000", "/soc@03000000/smartcard@0x05005000"; gmac0 = "/soc@03000000/eth@05020000", "/soc@03000000/eth@05020000"; gmac1 = "/soc@03000000/eth@05030000", "/soc@03000000/eth@05030000"; global_timer0 = "/soc@03000000/timer@03009000", "/soc@03000000/timer@03009000"; mmc0 = "/soc@03000000/sdmmc@04020000", "/soc@03000000/sdmmc@04020000"; mmc2 = "/soc@03000000/sdmmc@04022000", "/soc@03000000/sdmmc@04022000"; nand0 = "/soc@03000000/nand0@04011000", "/soc@03000000/nand0@04011000"; disp = "/soc@03000000/disp@01000000", "/soc@03000000/disp@01000000"; lcd0 = "/soc@03000000/lcd0@01c0c000", "/soc@03000000/lcd0@01c0c000"; lcd1 = "/soc@03000000/lcd1@01c0c001", "/soc@03000000/lcd1@01c0c001"; hdmi = "/soc@03000000/hdmi@06000000", "/soc@03000000/hdmi@06000000"; pwm = "/soc@03000000/pwm@0300a000", "/soc@03000000/pwm@0300a000"; tv0 = "/soc@03000000/tv0@01c94000", "/soc@03000000/tv0@01c94000"; ac200 = "/soc@03000000/ac200", "/soc@03000000/ac200"; boot_disp = "/soc@03000000/boot_disp", "/soc@03000000/boot_disp"; pmu0 = "/soc@03000000/twi@0x07081400/pmu", "/soc@03000000/twi@0x07081400/pmu"; standby_param = "/soc@03000000/twi@0x07081400/pmu/standby_param", "/soc@03000000/twi@0x07081400/pmu/standby_param"; linux,phandle = <0x17d>; phandle = <0x17d>; }; chosen { bootargs = "earlyprintk=sunxi-uart,0x05000000 loglevel=8 initcall_debug=1 console=ttyS0 init=/init"; linux,initrd-start = <0x0 0x0>; linux,initrd-end = <0x0 0x0>; }; firmware { android { compatible = "android,firmware"; boot_devices = "soc/sdc0,soc/sdc2,soc"; vbmeta { compatible = "android,vbmeta"; parts = "vbmeta,vbmeta_system,vbmeta_vendor,boot,super,recovery"; }; }; optee { compatible = "linaro,optee-tz"; method = "smc"; }; }; cpus { #address-cells = <0x2>; #size-cells = <0x0>; cpu@0 { device_type = "cpu"; compatible = "arm,cortex-a53", "arm,armv8"; reg = <0x0 0x0>; enable-method = "psci"; clocks = <0xd5>; operating-points-v2 = <0xd6>; cpu-idle-states = <0xd7>; dynamic-power-coefficient = <0x64>; #cooling-cells = <0x2>; cpu-supply = <0xd8>; linux,phandle = <0xc8>; phandle = <0xc8>; }; cpu@1 { device_type = "cpu"; compatible = "arm,cortex-a53", "arm,armv8"; reg = <0x0 0x1>; enable-method = "psci"; clocks = <0xd5>; operating-points-v2 = <0xd6>; cpu-idle-states = <0xd7>; #cooling-cells = <0x2>; }; cpu@2 { device_type = "cpu"; compatible = "arm,cortex-a53", "arm,armv8"; reg = <0x0 0x2>; enable-method = "psci"; clocks = <0xd5>; operating-points-v2 = <0xd6>; cpu-idle-states = <0xd7>; #cooling-cells = <0x2>; }; cpu@3 { device_type = "cpu"; compatible = "arm,cortex-a53", "arm,armv8"; reg = <0x0 0x3>; enable-method = "psci"; clocks = <0xd5>; operating-points-v2 = <0xd6>; cpu-idle-states = <0xd7>; #cooling-cells = <0x2>; }; idle-states { entry-method = "arm,psci"; cpu-sleep-0 { compatible = "arm,idle-state"; arm,psci-suspend-param = <0x10000>; entry-latency-us = <0x2e>; exit-latency-us = <0x3b>; min-residency-us = <0xdf2>; local-timer-stop; linux,phandle = <0xd7>; phandle = <0xd7>; }; }; }; opp_l_table { compatible = "allwinner,sun50i-operating-points"; nvmem-cells = <0xd9>; nvmem-cell-names = "speed"; opp-shared; linux,phandle = <0xd6>; phandle = <0xd6>; opp@480000000-0 { opp-hz = <0x0 0x1c9c3800>; opp-microvolt = <0xdbba0>; clock-latency-ns = <0x3b9b0>; opp-supported-hw = <0x33>; }; opp@480000000-1 { opp-hz = <0x0 0x1c9c3800>; opp-microvolt = <0xdbba0>; clock-latency-ns = <0x3b9b0>; opp-supported-hw = <0xc>; }; opp@600000000-0 { opp-hz = <0x0 0x23c34600>; opp-microvolt = <0xdbba0>; clock-latency-ns = <0x3b9b0>; opp-supported-hw = <0x23>; }; opp@600000000-1 { opp-hz = <0x0 0x23c34600>; opp-microvolt = <0xdbba0>; clock-latency-ns = <0x3b9b0>; opp-supported-hw = <0xc>; }; opp@720000000 { opp-hz = <0x0 0x2aea5400>; opp-microvolt = <0xdbba0>; clock-latency-ns = <0x3b9b0>; opp-supported-hw = <0x30>; }; opp@792000000-0 { opp-hz = <0x0 0x2f34f600>; opp-microvolt = <0xdbba0>; clock-latency-ns = <0x3b9b0>; opp-supported-hw = <0x3>; }; opp@792000000-1 { opp-hz = <0x0 0x2f34f600>; opp-microvolt = <0xe57e0>; clock-latency-ns = <0x3b9b0>; opp-supported-hw = <0xc>; }; opp@936000000 { opp-hz = <0x0 0x37ca3a00>; opp-microvolt = <0xdbba0>; clock-latency-ns = <0x3b9b0>; opp-supported-hw = <0x30>; }; opp@1008000000-0 { opp-hz = <0x0 0x3c14dc00>; opp-microvolt = <0xe09c0>; clock-latency-ns = <0x3b9b0>; opp-supported-hw = <0x1>; }; opp@1008000000-1 { opp-hz = <0x0 0x3c14dc00>; opp-microvolt = <0xdbba0>; clock-latency-ns = <0x3b9b0>; opp-supported-hw = <0x2>; }; opp@1008000000-2 { opp-hz = <0x0 0x3c14dc00>; opp-microvolt = <0xf9060>; clock-latency-ns = <0x3b9b0>; opp-supported-hw = <0xc>; }; opp@1008000000-3 { opp-hz = <0x0 0x3c14dc00>; opp-microvolt = <0xe7ef0>; clock-latency-ns = <0x3b9b0>; opp-supported-hw = <0x30>; }; opp@1104000000 { opp-hz = <0x0 0x41cdb400>; opp-microvolt = <0xf4240>; clock-latency-ns = <0x3b9b0>; opp-supported-hw = <0x30>; }; opp@1200000000-0 { opp-hz = <0x0 0x47868c00>; opp-microvolt = <0xef420>; clock-latency-ns = <0x3b9b0>; opp-supported-hw = <0x1>; }; opp@1200000000-1 { opp-hz = <0x0 0x47868c00>; opp-microvolt = <0xea600>; clock-latency-ns = <0x3b9b0>; opp-supported-hw = <0x2>; }; opp@1200000000-2 { opp-hz = <0x0 0x47868c00>; opp-microvolt = <0x10c8e0>; clock-latency-ns = <0x3b9b0>; opp-supported-hw = <0xc>; }; opp@1200000000-3 { opp-hz = <0x0 0x47868c00>; opp-microvolt = <0x100590>; clock-latency-ns = <0x3b9b0>; opp-supported-hw = <0x30>; }; opp@1296000000-0 { opp-hz = <0x0 0x4d3f6400>; opp-microvolt = <0x10c8e0>; clock-latency-ns = <0x3b9b0>; opp-supported-hw = <0x2>; }; opp@1296000000-1 { opp-hz = <0x0 0x4d3f6400>; opp-microvolt = <0x111700>; clock-latency-ns = <0x3b9b0>; opp-supported-hw = <0x8>; }; opp@1320000000 { opp-hz = <0x0 0x4ead9a00>; opp-microvolt = <0x10c8e0>; clock-latency-ns = <0x3b9b0>; opp-supported-hw = <0x30>; }; opp@1344000000 { opp-hz = <0x0 0x501bd000>; opp-microvolt = <0x111700>; clock-latency-ns = <0x3b9b0>; opp-supported-hw = <0x4>; }; opp@1416000000-0 { opp-hz = <0x0 0x54667200>; opp-microvolt = <0x118c30>; clock-latency-ns = <0x3b9b0>; opp-supported-hw = <0x10>; }; opp@1416000000-1 { opp-hz = <0x0 0x54667200>; opp-microvolt = <0x11b340>; clock-latency-ns = <0x3b9b0>; opp-supported-hw = <0x20>; }; opp@1416000000 { opp-hz = <0x0 0x54667200>; opp-microvolt = <0x118c30>; clock-latency-ns = <0x3b9b0>; opp-supported-hw = <0x10>; }; opp@1512000000 { opp-hz = <0x0 0x5a1f4a00>; opp-microvolt = <0x111700>; clock-latency-ns = <0x3b9b0>; opp-supported-hw = <0x1>; }; opp@480000000-ab { opp-hz = <0x0 0x1c9c3800>; opp-microvolt-a1 = <0xdbba0>; opp-microvolt-b1 = <0xdbba0>; opp-microvolt-b0 = <0xdbba0>; opp-microvolt-c0 = <0xdbba0>; opp-microvolt-c1 = <0xdbba0>; opp-microvolt-c2 = <0xdbba0>; clock-latency-ns = <0x3b9b0>; }; opp@600000000-ab { opp-hz = <0x0 0x23c34600>; opp-microvolt-b0 = <0xdbba0>; opp-microvolt-c0 = <0xdbba0>; opp-microvolt-c2 = <0xdbba0>; clock-latency-ns = <0x3b9b0>; }; opp@720000000-ab { opp-hz = <0x0 0x2aea5400>; opp-microvolt-a1 = <0xdbba0>; opp-microvolt-b1 = <0xdbba0>; opp-microvolt-c1 = <0xe7ef0>; clock-latency-ns = <0x3b9b0>; }; opp@792000000-ab { opp-hz = <0x0 0x2f34f600>; opp-microvolt-b0 = <0xdbba0>; opp-microvolt-c0 = <0xe57e0>; opp-microvolt-c2 = <0xe57e0>; clock-latency-ns = <0x3b9b0>; }; opp@936000000-ab { opp-hz = <0x0 0x37ca3a00>; opp-microvolt-c1 = <0xe7ef0>; clock-latency-ns = <0x3b9b0>; }; opp@1008000000-ab { opp-hz = <0x0 0x3c14dc00>; opp-microvolt-b0 = <0xe09c0>; opp-microvolt-c0 = <0xf9060>; opp-microvolt-c1 = <0xf4240>; opp-microvolt-c2 = <0xf9060>; clock-latency-ns = <0x3b9b0>; }; opp@1032000000-ab { opp-hz = <0x0 0x3d831200>; opp-microvolt-a1 = <0xdbba0>; opp-microvolt-b1 = <0xdbba0>; clock-latency-ns = <0x3b9b0>; }; opp@1104000000-ab { opp-hz = <0x0 0x41cdb400>; opp-microvolt-a1 = <0xe7ef0>; opp-microvolt-b1 = <0xe7ef0>; opp-microvolt-c1 = <0x100590>; clock-latency-ns = <0x3b9b0>; }; opp@1200000000-ab { opp-hz = <0x0 0x47868c00>; opp-microvolt-a1 = <0xf4240>; opp-microvolt-b1 = <0xf4240>; opp-microvolt-b0 = <0xef420>; opp-microvolt-c0 = <0x10c8e0>; opp-microvolt-c1 = <0x10c8e0>; opp-microvolt-c2 = <0x10c8e0>; clock-latency-ns = <0x3b9b0>; }; opp@1296000000-ab { opp-hz = <0x0 0x4d3f6400>; opp-microvolt-a1 = <0x100590>; opp-microvolt-b1 = <0x100590>; clock-latency-ns = <0x3b9b0>; }; opp@1320000000-ab { opp-hz = <0x0 0x4ead9a00>; opp-microvolt-c1 = <0x11b340>; clock-latency-ns = <0x3b9b0>; }; opp@1344000000-ab { opp-hz = <0x0 0x501bd000>; opp-microvolt-c0 = <0x111700>; opp-microvolt-c2 = <0x111700>; clock-latency-ns = <0x3b9b0>; }; opp@1416000000-ab { opp-hz = <0x0 0x54667200>; opp-microvolt-a1 = <0x10c8e0>; opp-microvolt-b1 = <0x10c8e0>; clock-latency-ns = <0x3b9b0>; }; opp@1512000000-ab { opp-hz = <0x0 0x5a1f4a00>; opp-microvolt-a1 = <0x11b340>; opp-microvolt-b1 = <0x11b340>; opp-microvolt-b0 = <0x111700>; clock-latency-ns = <0x3b9b0>; }; }; psci { compatible = "arm,psci-1.0"; method = "smc"; }; n_brom { compatible = "allwinner,n-brom"; reg = <0x0 0x0 0x0 0xa000>; }; s_brom { compatible = "allwinner,s-brom"; reg = <0x0 0x0 0x0 0x10000>; }; sram_ctrl { device_type = "sram_ctrl"; compatible = "allwinner,sram_ctrl"; reg = <0x0 0x3000000 0x0 0x100>; }; sram_a1 { compatible = "allwinner,sram_a1"; reg = <0x0 0x20000 0x0 0x8000>; }; sram_a2 { compatible = "allwinner,sram_a2"; reg = <0x0 0x100000 0x0 0x14000>; }; prcm { compatible = "allwinner,prcm"; reg = <0x0 0x1f01400 0x0 0x400>; }; s_cpuscfg { compatible = "allwinner,s_cpuscfg"; reg = <0x0 0x1f01c00 0x0 0x400>; }; ion { compatible = "allwinner,sunxi-ion"; heap_sys_user@0 { compatible = "allwinner,sys_user"; heap-name = "sys_user"; heap-id = <0x0>; heap-base = <0x0>; heap-size = <0x0>; heap-type = "ion_system"; }; heap_cma@0 { compatible = "allwinner,cma"; heap-name = "cma"; heap-id = <0x4>; heap-base = <0x0>; heap-size = <0x0>; heap-type = "ion_cma"; }; heap_secure@0 { compatible = "allwinner,secure"; heap-name = "secure"; heap-id = <0x6>; heap-base = <0x0>; heap-size = <0x0>; heap-type = "ion_secure"; }; }; dram { compatible = "allwinner,dram"; clocks = <0xda>; clock-names = "pll_ddr"; dram_clk = <0x2d0>; dram_type = <0x7>; dram_zq = <0x3f3fdd>; dram_odt_en = <0x9988eeee>; dram_para1 = <0x30fa>; dram_para2 = <0x1000>; dram_mr0 = <0x0>; dram_mr1 = <0xc3>; dram_mr2 = <0x6>; dram_mr3 = <0x1>; dram_tpr0 = <0x0>; dram_tpr1 = <0x0>; dram_tpr2 = <0x0>; dram_tpr3 = <0x0>; dram_tpr4 = <0x0>; dram_tpr5 = <0x0>; dram_tpr6 = <0x2fb08080>; dram_tpr7 = <0x0>; dram_tpr8 = <0x0>; dram_tpr9 = <0x0>; dram_tpr10 = <0x402f4469>; dram_tpr11 = <0xe0f0d0d>; dram_tpr12 = <0x11131213>; dram_tpr13 = <0x60>; linux,phandle = <0x17e>; phandle = <0x17e>; device_type = "dram"; dram_dx_odt = <0x6060606>; dram_dx_dri = <0xd0d0d0d>; dram_ca_dri = <0x1919>; dram_mr4 = <0x0>; dram_mr5 = <0x0>; dram_mr6 = <0x0>; dram_mr11 = <0x0>; dram_mr12 = <0x0>; dram_mr13 = <0x0>; dram_mr14 = <0x0>; dram_mr16 = <0x0>; dram_mr17 = <0x0>; dram_mr22 = <0x0>; }; memory@40000000 { device_type = "memory"; reg = <0x0 0x40000000 0x0 0x20000000>; }; interrupt-controller@03020000 { compatible = "arm,cortex-a15-gic", "arm,cortex-a9-gic"; #interrupt-cells = <0x3>; #address-cells = <0x0>; device_type = "gic"; interrupt-controller; reg = <0x0 0x3021000 0x0 0x1000 0x0 0x3022000 0x0 0x2000 0x0 0x3024000 0x0 0x2000 0x0 0x3026000 0x0 0x2000>; interrupts = <0x1 0x9 0xf04>; interrupt-parent = <0x85>; linux,phandle = <0x85>; phandle = <0x85>; }; interrupt-controller@0 { compatible = "allwinner,sunxi-wakeupgen"; interrupt-controller; #interrupt-cells = <0x3>; interrupt-parent = <0x85>; linux,phandle = <0x1>; phandle = <0x1>; }; intc-nmi@07010320 { compatible = "allwinner,sun8i-nmi"; interrupt-parent = <0x85>; #interrupt-cells = <0x2>; #address-cells = <0x0>; interrupt-controller; reg = <0x0 0x7010320 0x0 0xc>; pad-control-v1 = <0x7000208>; interrupts = <0x0 0x67 0x4>; linux,phandle = <0x17f>; phandle = <0x17f>; }; sunxi-sid@03006000 { compatible = "allwinner,sunxi-sid"; device_type = "sid"; reg = <0x0 0x3006000 0x0 0x1000>; linux,phandle = <0x180>; phandle = <0x180>; }; sunxi-sid-ng@03006000 { compatible = "allwinner,sun50iw9p1-sid"; reg = <0x0 0x3006000 0x0 0x1000>; #address-cells = <0x1>; #size-cells = <0x1>; linux,phandle = <0xc5>; phandle = <0xc5>; speed@00 { reg = <0x0 0x2>; linux,phandle = <0xd9>; phandle = <0xd9>; }; calib@14 { reg = <0x14 0x8>; linux,phandle = <0xc4>; phandle = <0xc4>; }; }; sunxi-chipid@03006200 { compatible = "allwinner,sunxi-chipid"; device_type = "chipid"; reg = <0x0 0x3006200 0x0 0x200>; linux,phandle = <0x181>; phandle = <0x181>; }; timer_arch { compatible = "arm,armv8-timer"; interrupts = <0x1 0xd 0xf08 0x1 0xe 0xf08 0x1 0xb 0xf08 0x1 0xa 0xf08>; clock-frequency = <0x16e3600>; interrupt-parent = <0x85>; arm,no-tick-in-suspend; }; pmu { compatible = "arm,armv8-pmuv3"; interrupts = <0x0 0x8c 0x4 0x0 0x8d 0x4 0x0 0x8e 0x4 0x0 0x8f 0x4>; }; dramfreq { compatible = "allwinner,sunxi-dramfreq"; reg = <0x0 0x4002000 0x0 0x1000 0x0 0x4003000 0x0 0x3000 0x0 0x3001000 0x0 0x1000>; interrupts = <0x0 0x21 0x4>; clocks = <0xda>; status = "okay"; }; uboot { linux,phandle = <0x182>; phandle = <0x182>; }; iommu@030f0000 { compatible = "allwinner,sunxi-iommu"; reg = <0x0 0x30f0000 0x0 0x1000>; interrupts = <0x0 0x3d 0x4>; interrupt-names = "iommu-irq"; clocks = <0xdb>; clock-names = "iommu"; #iommu-cells = <0x2>; status = "okay"; linux,phandle = <0x28>; phandle = <0x28>; }; gpu@0x01800000 { device_type = "gpu"; compatible = "arm,mali-midgard"; reg = <0x0 0x1800000 0x0 0x10000>; interrupts = <0x0 0x5f 0x4 0x0 0x60 0x4 0x0 0x61 0x4>; interrupt-names = "JOB", "MMU", "GPU"; clocks = <0xdc 0xdd 0xde>; clock-names = "clk_parent", "clk_mali", "clk_bak"; #cooling-cells = <0x2>; gpu_idle = <0x1>; dvfs_status = <0x0>; operating-points = <0x927c0 0xe7ef0 0x8ca00 0xe7ef0 0x83d60 0xe7ef0 0x7b0c0 0xe7ef0>; linux,phandle = <0xc9>; phandle = <0xc9>; ipa_dvfs { compatible = "arm,mali-simple-power-model"; static-coefficient = <0x4268>; dynamic-coefficient = <0x2ee>; ts = <0x3e2da 0x2568 0xffffff98 0x4>; thermal-zone = "gpu_thermal_zone"; ss-coefficient = <0x24>; ff-coefficient = <0x123>; linux,phandle = <0x183>; phandle = <0x183>; }; }; box_start_os0 { compatible = "allwinner,box_start_os"; start_type = <0x1>; irkey_used = <0x0>; pmukey_used = <0x0>; pmukey_num = <0x0>; led_power = <0x0>; led_state = <0x0>; pinctrl-0 = <0xdf>; pinctrl-1 = <0xe0>; }; __symbols__ { clk_losc = "/clocks/losc"; clk_iosc = "/clocks/iosc"; clk_hosc = "/clocks/hosc"; clk_osc48m = "/clocks/osc48m"; clk_hoscdiv32k = "/clocks/hoscdiv32k"; clk_pll_periph0div25m = "/clocks/pll_periph0div25m"; clk_pll_cpu = "/clocks/pll_cpu"; clk_pll_ddr0 = "/clocks/pll_ddr0"; clk_pll_ddr1 = "/clocks/pll_ddr1"; clk_pll_periph0 = "/clocks/pll_periph0"; clk_pll_periph1 = "/clocks/pll_periph1"; clk_pll_gpu = "/clocks/pll_gpu"; clk_pll_video0x4 = "/clocks/pll_video0x4"; clk_pll_video1 = "/clocks/pll_video1"; clk_pll_video2 = "/clocks/pll_video2"; clk_pll_ve = "/clocks/pll_ve"; clk_pll_de = "/clocks/pll_de"; clk_pll_csi = "/clocks/pll_csi"; clk_pll_audiox4 = "/clocks/pll_audiox4"; clk_pll_periph0x2 = "/clocks/pll_periph0x2"; clk_pll_periph0x4 = "/clocks/pll_periph0x4"; clk_periph32k = "/clocks/periph32k"; clk_pll_periph1x2 = "/clocks/pll_periph1x2"; clk_pll_audio = "/clocks/pll_audio"; clk_pll_audiox2 = "/clocks/pll_audiox2"; clk_pll_video0 = "/clocks/pll_video0"; clk_pll_video1x4 = "/clocks/pll_video1x4"; clk_pll_video2x4 = "/clocks/pll_video2x4"; clk_hoscd2 = "/clocks/hoscd2"; clk_osc48md4 = "/clocks/osc48md4"; clk_pll_periph0d6 = "/clocks/pll_periph0d6"; clk_cpu = "/clocks/cpu"; clk_axi = "/clocks/axi"; clk_cpuapb = "/clocks/cpuapb"; clk_psi = "/clocks/psi"; clk_ahb1 = "/clocks/ahb1"; clk_ahb2 = "/clocks/ahb2"; clk_ahb3 = "/clocks/ahb3"; clk_apb1 = "/clocks/apb1"; clk_apb2 = "/clocks/apb2"; clk_mbus = "/clocks/mbus"; clk_de = "/clocks/de"; clk_g2d = "/clocks/g2d"; clk_di = "/clocks/di"; clk_gpu0 = "/clocks/gpu0"; clk_gpu1 = "/clocks/gpu1"; clk_ce = "/clocks/ce"; clk_ve = "/clocks/ve"; clk_dma = "/clocks/dma"; clk_msgbox = "/clocks/msgbox"; clk_hwspinlock_rst = "/clocks/hwspinlock_rst"; clk_hwspinlock_bus = "/clocks/hwspinlock_bus"; clk_hstimer = "/clocks/hstimer"; clk_avs = "/clocks/avs"; clk_dbgsys = "/clocks/dbgsys"; clk_pwm = "/clocks/pwm"; clk_iommu = "/clocks/iommu"; clk_sdram = "/clocks/sdram"; clk_nand0 = "/clocks/nand0"; clk_nand1 = "/clocks/nand1"; clk_sdmmc0_mod = "/clocks/sdmmc0_mod"; clk_sdmmc0_bus = "/clocks/sdmmc0_bus"; clk_sdmmc0_rst = "/clocks/sdmmc0_rst"; clk_sdmmc1_mod = "/clocks/sdmmc1_mod"; clk_sdmmc1_bus = "/clocks/sdmmc1_bus"; clk_sdmmc1_rst = "/clocks/sdmmc1_rst"; clk_sdmmc2_mod = "/clocks/sdmmc2_mod"; clk_sdmmc2_bus = "/clocks/sdmmc2_bus"; clk_sdmmc2_rst = "/clocks/sdmmc2_rst"; clk_uart0 = "/clocks/uart0"; clk_uart1 = "/clocks/uart1"; clk_uart2 = "/clocks/uart2"; clk_uart3 = "/clocks/uart3"; clk_uart4 = "/clocks/uart4"; clk_uart5 = "/clocks/uart5"; clk_twi0 = "/clocks/twi0"; clk_twi1 = "/clocks/twi1"; clk_twi2 = "/clocks/twi2"; clk_twi3 = "/clocks/twi3"; clk_twi4 = "/clocks/twi4"; clk_scr0 = "/clocks/scr0"; clk_spi0 = "/clocks/spi0"; clk_spi1 = "/clocks/spi1"; clk_ephy_25m = "/clocks/ephy_25m"; clk_gmac0 = "/clocks/gmac0"; clk_gmac1 = "/clocks/gmac1"; clk_gpadc = "/clocks/gpadc"; clk_ts = "/clocks/ts"; clk_ths = "/clocks/ths"; clk_spdif = "/clocks/spdif"; clk_dmic = "/clocks/dmic"; clk_codec_1x = "/clocks/codec_1x"; clk_codec_4x = "/clocks/codec_4x"; clk_ahub = "/clocks/ahub"; clk_usbphy0 = "/clocks/usbphy0"; clk_usbphy1 = "/clocks/usbphy1"; clk_usbphy2 = "/clocks/usbphy2"; clk_usbphy3 = "/clocks/usbphy3"; clk_usbohci0 = "/clocks/usbohci0"; clk_usbohci0_12m = "/clocks/usbohci0_12m"; clk_usbohci1 = "/clocks/usbohci1"; clk_usbohci1_12m = "/clocks/usbohci1_12m"; clk_usbohci2 = "/clocks/usbohci2"; clk_usbohci2_12m = "/clocks/usbohci2_12m"; clk_usbohci3 = "/clocks/usbohci3"; clk_usbohci3_12m = "/clocks/usbohci3_12m"; clk_usbehci0 = "/clocks/usbehci0"; clk_usbehci1 = "/clocks/usbehci1"; clk_usbehci2 = "/clocks/usbehci2"; clk_usbehci3 = "/clocks/usbehci3"; clk_usb3_0_host = "/clocks/usb3_0_host"; clk_usbotg = "/clocks/usbotg"; clk_lradc = "/clocks/lradc"; clk_hdmi = "/clocks/hdmi"; clk_hdmi_slow = "/clocks/hdmi_slow"; clk_hdmi_cec = "/clocks/hdmi_cec"; clk_display_top = "/clocks/display_top"; clk_tcon_lcd = "/clocks/tcon_lcd"; clk_tcon_lcd1 = "/clocks/tcon_lcd1"; clk_tcon_tv = "/clocks/tcon_tv"; clk_tcon_tv1 = "/clocks/tcon_tv1"; clk_lvds = "/clocks/lvds"; clk_tve = "/clocks/tve"; clk_tve_top = "/clocks/tve_top"; clk_csi_top = "/clocks/csi_top"; clk_csi_master0 = "/clocks/csi_master0"; clk_csi_master1 = "/clocks/csi_master1"; clk_hdmi_hdcp = "/clocks/hdmi_hdcp"; clk_pio = "/clocks/pio"; clk_cpurcir = "/clocks/cpurcir"; clk_hosc32k = "/clocks/hosc32k"; clk_losc_out = "/clocks/losc_out"; clk_cpurcpus_pll = "/clocks/cpurcpus_pll"; clk_cpurcpus = "/clocks/cpurcpus"; clk_cpurahbs = "/clocks/cpurahbs"; clk_cpurapbs1 = "/clocks/cpurapbs1"; clk_cpurapbs2_pll = "/clocks/cpurapbs2_pll"; clk_cpurapbs2 = "/clocks/cpurapbs2"; clk_cpurpio = "/clocks/cpurpio"; clk_dcxo_out = "/clocks/dcxo_out"; clk_stwi = "/clocks/stwi"; soc = "/soc@03000000"; r_pio = "/soc@03000000/pinctrl@07022000"; s_rsb0_pins_a = "/soc@03000000/pinctrl@07022000/s_rsb0@0"; s_twi0_pins_a = "/soc@03000000/pinctrl@07022000/s_twi0@0"; s_twi0_pins_b = "/soc@03000000/pinctrl@07022000/s_twi0@1"; pio = "/soc@03000000/pinctrl@0300b000"; clk_losc_pins_a = "/soc@03000000/pinctrl@0300b000/clk_losc@0"; s_cir0_pins_a = "/soc@03000000/pinctrl@0300b000/s_cir0@0"; vdevice_pins_a = "/soc@03000000/pinctrl@0300b000/vdevice@0"; uart0_pins_a = "/soc@03000000/pinctrl@0300b000/uart0@0"; uart0_pins_b = "/soc@03000000/pinctrl@0300b000/uart0@1"; uart1_pins_a = "/soc@03000000/pinctrl@0300b000/uart1@0"; uart1_pins_b = "/soc@03000000/pinctrl@0300b000/uart1@1"; uart2_pins_a = "/soc@03000000/pinctrl@0300b000/uart2@0"; uart2_pins_b = "/soc@03000000/pinctrl@0300b000/uart2@1"; uart3_pins_a = "/soc@03000000/pinctrl@0300b000/uart3@0"; uart3_pins_b = "/soc@03000000/pinctrl@0300b000/uart3@1"; uart4_pins_a = "/soc@03000000/pinctrl@0300b000/uart4@0"; uart4_pins_b = "/soc@03000000/pinctrl@0300b000/uart4@1"; uart5_pins_a = "/soc@03000000/pinctrl@0300b000/uart5@0"; uart5_pins_b = "/soc@03000000/pinctrl@0300b000/uart5@1"; twi0_pins_a = "/soc@03000000/pinctrl@0300b000/twi0@0"; twi0_pins_b = "/soc@03000000/pinctrl@0300b000/twi0@1"; twi1_pins_a = "/soc@03000000/pinctrl@0300b000/twi1@0"; twi1_pins_b = "/soc@03000000/pinctrl@0300b000/twi1@1"; twi2_pins_a = "/soc@03000000/pinctrl@0300b000/twi2@0"; twi2_pins_b = "/soc@03000000/pinctrl@0300b000/twi2@1"; twi3_pins_a = "/soc@03000000/pinctrl@0300b000/twi3@0"; twi3_pins_b = "/soc@03000000/pinctrl@0300b000/twi3@1"; twi4_pins_a = "/soc@03000000/pinctrl@0300b000/twi4@0"; twi4_pins_b = "/soc@03000000/pinctrl@0300b000/twi4@1"; ts0_pins_a = "/soc@03000000/pinctrl@0300b000/ts0@0"; ts0_pins_b = "/soc@03000000/pinctrl@0300b000/ts0_sleep@0"; spi0_pins_a = "/soc@03000000/pinctrl@0300b000/spi0@0"; spi0_pins_b = "/soc@03000000/pinctrl@0300b000/spi0@1"; spi0_pins_c = "/soc@03000000/pinctrl@0300b000/spi0@2"; spi1_pins_a = "/soc@03000000/pinctrl@0300b000/spi1@0"; spi1_pins_b = "/soc@03000000/pinctrl@0300b000/spi1@1"; spi1_pins_c = "/soc@03000000/pinctrl@0300b000/spi1@2"; sdc0_pins_a = "/soc@03000000/pinctrl@0300b000/sdc0@0"; sdc0_pins_b = "/soc@03000000/pinctrl@0300b000/sdc0@1"; sdc0_pins_c = "/soc@03000000/pinctrl@0300b000/sdc0@2"; sdc1_pins_a = "/soc@03000000/pinctrl@0300b000/sdc1@0"; sdc1_pins_b = "/soc@03000000/pinctrl@0300b000/sdc1@1"; sdc2_pins_a = "/soc@03000000/pinctrl@0300b000/sdc2@0"; sdc2_pins_b = "/soc@03000000/pinctrl@0300b000/sdc2@1"; sdc2_pins_c = "/soc@03000000/pinctrl@0300b000/sdc2@2"; spdif_pins_a = "/soc@03000000/pinctrl@0300b000/spdif@0"; spdif_pins_b = "/soc@03000000/pinctrl@0300b000/spdif_sleep@0"; dmic_pins_a = "/soc@03000000/pinctrl@0300b000/dmic@0"; dmic_pins_b = "/soc@03000000/pinctrl@0300b000/dmic_sleep@0"; ahub_daudio0_pins_a = "/soc@03000000/pinctrl@0300b000/ahub_daudio0@0"; ahub_daudio0_pins_b = "/soc@03000000/pinctrl@0300b000/ahub_daudio0_sleep@0"; ahub_daudio0_pins_c = "/soc@03000000/pinctrl@0300b000/h_ahub_daudio0@0"; ahub_daudio0_pins_d = "/soc@03000000/pinctrl@0300b000/h_ahub_daudio0_sleep@0"; ahub_daudio2_pins_a = "/soc@03000000/pinctrl@0300b000/ahub_daudio2@0"; ahub_daudio2_pins_b = "/soc@03000000/pinctrl@0300b000/ahub_daudio2_sleep@0"; ahub_daudio3_pins_a = "/soc@03000000/pinctrl@0300b000/ahub_daudio3@0"; ahub_daudio3_pins_b = "/soc@03000000/pinctrl@0300b000/ahub_daudio3_sleep@0"; csi1_pins_a = "/soc@03000000/pinctrl@0300b000/csi1@0"; csi1_pins_b = "/soc@03000000/pinctrl@0300b000/csi1@1"; csi_mclk0_pins_a = "/soc@03000000/pinctrl@0300b000/csi_mclk0@0"; csi_mclk0_pins_b = "/soc@03000000/pinctrl@0300b000/csi_mclk0@1"; csi_cci0_pins_a = "/soc@03000000/pinctrl@0300b000/csi_cci0@0"; csi_cci0_pins_b = "/soc@03000000/pinctrl@0300b000/csi_cci0@1"; csi_mclk1_pins_a = "/soc@03000000/pinctrl@0300b000/csi_mclk1@0"; csi_mclk1_pins_b = "/soc@03000000/pinctrl@0300b000/csi_mclk1@1"; csi_cci1_pins_a = "/soc@03000000/pinctrl@0300b000/csi_cci1@0"; csi_cci1_pins_b = "/soc@03000000/pinctrl@0300b000/csi_cci1@1"; scr0_pins_a = "/soc@03000000/pinctrl@0300b000/scr0@0"; scr0_pins_b = "/soc@03000000/pinctrl@0300b000/scr0@1"; scr0_pins_c = "/soc@03000000/pinctrl@0300b000/scr0@2"; scr1_pins_a = "/soc@03000000/pinctrl@0300b000/scr1@0"; scr1_pins_b = "/soc@03000000/pinctrl@0300b000/scr1@1"; scr1_pins_c = "/soc@03000000/pinctrl@0300b000/scr1@2"; nand0_pins_a = "/soc@03000000/pinctrl@0300b000/nand0@0"; nand0_pins_b = "/soc@03000000/pinctrl@0300b000/nand0@1"; nand0_pins_c = "/soc@03000000/pinctrl@0300b000/nand0@2"; ccir_clk_pin_a = "/soc@03000000/pinctrl@0300b000/ac200@2"; ccir_clk_pin_b = "/soc@03000000/pinctrl@0300b000/ac200@3"; gmac_pins_a = "/soc@03000000/pinctrl@0300b000/gmac@0"; gmac_pins_b = "/soc@03000000/pinctrl@0300b000/gmac@1"; gmac1_pins_a = "/soc@03000000/pinctrl@0300b000/gmac1@0"; gmac1_pins_b = "/soc@03000000/pinctrl@0300b000/gmac1@1"; lvds0_pins_a = "/soc@03000000/pinctrl@0300b000/lvds0@0"; lvds0_pins_b = "/soc@03000000/pinctrl@0300b000/lvds0@1"; lvds1_pins_a = "/soc@03000000/pinctrl@0300b000/lvds1@0"; lvds1_pins_b = "/soc@03000000/pinctrl@0300b000/lvds1@1"; lvds2link_pins_a = "/soc@03000000/pinctrl@0300b000/lvds2link@0"; lvds2link_pins_b = "/soc@03000000/pinctrl@0300b000/lvds2link@1"; rgb24_pins_a = "/soc@03000000/pinctrl@0300b000/rgb24@0"; rgb24_pins_b = "/soc@03000000/pinctrl@0300b000/rgb24@1"; pwm5_pin_a = "/soc@03000000/pinctrl@0300b000/pwm5@0"; pwm5_pin_b = "/soc@03000000/pinctrl@0300b000/pwm5@1"; standby_red = "/soc@03000000/pinctrl@0300b000/standby@0"; standby_blue = "/soc@03000000/pinctrl@0300b000/standby@1"; standby_bt = "/soc@03000000/pinctrl@0300b000/standby@2"; dma0 = "/soc@03000000/dma-controller@03002000"; mbus0 = "/soc@03000000/mbus-controller@047fa000"; msgbox = "/soc@03000000/msgbox@03003000"; hwspinlock = "/soc@03000000/hwspinlock@3004000"; s_cir0 = "/soc@03000000/s_cir@07040000"; soc_timer0 = "/soc@03000000/timer@03009000"; rtc = "/soc@03000000/rtc@07000000"; wdt = "/soc@03000000/watchdog@030090a0"; ve = "/soc@03000000/ve@01c0e000"; vp9 = "/soc@03000000/vp9@01c00000"; uart0 = "/soc@03000000/uart@05000000"; uart1 = "/soc@03000000/uart@05000400"; uart2 = "/soc@03000000/uart@05000800"; uart3 = "/soc@03000000/uart@05000c00"; uart4 = "/soc@03000000/uart@05001000"; uart5 = "/soc@03000000/uart@05001400"; twi0 = "/soc@03000000/twi@0x05002000"; twi1 = "/soc@03000000/twi@0x05002400"; twi2 = "/soc@03000000/twi@0x05002800"; twi3 = "/soc@03000000/twi@0x05002c00"; twi4 = "/soc@03000000/twi@0x05003000"; twi5 = "/soc@03000000/twi@0x07081400"; pmu0 = "/soc@03000000/twi@0x07081400/pmu"; standby_param = "/soc@03000000/twi@0x07081400/pmu/standby_param"; reg_dcdc1 = "/soc@03000000/twi@0x07081400/pmu/regulators/dcdc1"; reg_dcdc2 = "/soc@03000000/twi@0x07081400/pmu/regulators/dcdc2"; reg_dcdc3 = "/soc@03000000/twi@0x07081400/pmu/regulators/dcdc3"; reg_aldo1 = "/soc@03000000/twi@0x07081400/pmu/regulators/ldo1"; reg_dldo1 = "/soc@03000000/twi@0x07081400/pmu/regulators/ldo2"; usbc0 = "/soc@03000000/usbc0@0"; udc = "/soc@03000000/udc-controller@0x05100000"; ehci0 = "/soc@03000000/ehci0-controller@0x05101000"; ohci0 = "/soc@03000000/ohci0-controller@0x05101400"; usbc1 = "/soc@03000000/usbc1@0"; ehci1 = "/soc@03000000/ehci1-controller@0x05200000"; ohci1 = "/soc@03000000/ohci1-controller@0x05200400"; usbc2 = "/soc@03000000/usbc2@0"; ehci2 = "/soc@03000000/ehci2-controller@0x05310000"; ohci2 = "/soc@03000000/ohci2-controller@0x05310400"; usbc3 = "/soc@03000000/usbc3@0"; ehci3 = "/soc@03000000/ehci3-controller@0x05311000"; ohci3 = "/soc@03000000/ohci3-controller@0x05311400"; ac200_codec = "/soc@03000000/ac200_codec"; spdif = "/soc@03000000/spdif-controller@0x05093000"; dmic = "/soc@03000000/dmic-controller@0x05095000"; codec = "/soc@03000000/codec@0x05096000"; cpudai = "/soc@03000000/cpudai-controller@0x05096000"; ahub_cpudai0 = "/soc@03000000/cpudai0-controller@0x05097000"; ahub_cpudai1 = "/soc@03000000/cpudai1-controller@0x05097000"; ahub_cpudai2 = "/soc@03000000/cpudai2-controller@0x05097000"; ahub_cpudai3 = "/soc@03000000/cpudai3-controller@0x05097000"; ahub_codec = "/soc@03000000/ahub_codec@0x05097000"; ahub_daudio0 = "/soc@03000000/ahub_daudio0@0x05097000"; ahub_daudio1 = "/soc@03000000/ahub_daudio1@0x05097000"; ahub_daudio2 = "/soc@03000000/ahub_daudio2@0x05097000"; ahub_daudio3 = "/soc@03000000/ahub_daudio3@0x05097000"; snddaudio0 = "/soc@03000000/sound@0"; sndhdmi = "/soc@03000000/sound@1"; snddaudio2 = "/soc@03000000/sound@2"; snddaudio3 = "/soc@03000000/sound@3"; sndspdif = "/soc@03000000/sound@4"; snddmic = "/soc@03000000/sound@5"; sndcodec = "/soc@03000000/sound@6"; sndahub = "/soc@03000000/sound@7"; spi0 = "/soc@03000000/spi@05010000"; spi1 = "/soc@03000000/spi@05011000"; pcie = "/soc@03000000/pcie@0x05400000"; sdc2 = "/soc@03000000/sdmmc@04022000"; sdc0 = "/soc@03000000/sdmmc@04020000"; sdc1 = "/soc@03000000/sdmmc@04021000"; disp = "/soc@03000000/disp@01000000"; tv0 = "/soc@03000000/tv0@01c94000"; lcd0 = "/soc@03000000/lcd0@01c0c000"; lcd1 = "/soc@03000000/lcd1@01c0c001"; boot_disp = "/soc@03000000/boot_disp"; hdmi = "/soc@03000000/hdmi@06000000"; g2d = "/soc@03000000/g2d@01480000"; soc_tr = "/soc@03000000/tr@01000000"; pwm = "/soc@03000000/pwm@0300a000"; pwm0 = "/soc@03000000/pwm0@0300a000"; pwm1 = "/soc@03000000/pwm1@0300a000"; pwm2 = "/soc@03000000/pwm2@0300a000"; pwm3 = "/soc@03000000/pwm3@0300a000"; pwm4 = "/soc@03000000/pwm4@0300a000"; pwm5 = "/soc@03000000/pwm5@0300a000"; ac200 = "/soc@03000000/ac200"; vind0 = "/soc@03000000/vind@0"; csi_cci0 = "/soc@03000000/vind@0/cci@0"; csi_cci1 = "/soc@03000000/vind@0/cci@1"; csi0 = "/soc@03000000/vind@0/csi@0"; csi1 = "/soc@03000000/vind@0/csi@1"; mipi0 = "/soc@03000000/vind@0/mipi@0"; isp0 = "/soc@03000000/vind@0/isp@0"; isp1 = "/soc@03000000/vind@0/isp@1"; scaler0 = "/soc@03000000/vind@0/scaler@0"; scaler1 = "/soc@03000000/vind@0/scaler@1"; scaler2 = "/soc@03000000/vind@0/scaler@2"; scaler3 = "/soc@03000000/vind@0/scaler@3"; scaler4 = "/soc@03000000/vind@0/scaler@4"; scaler5 = "/soc@03000000/vind@0/scaler@5"; actuator0 = "/soc@03000000/vind@0/actuator@0"; flash0 = "/soc@03000000/vind@0/flash@0"; sensor0 = "/soc@03000000/vind@0/sensor@0"; sensor1 = "/soc@03000000/vind@0/sensor@1"; vinc0 = "/soc@03000000/vind@0/vinc@0"; vinc1 = "/soc@03000000/vind@0/vinc@1"; vinc2 = "/soc@03000000/vind@0/vinc@2"; vinc3 = "/soc@03000000/vind@0/vinc@3"; vinc4 = "/soc@03000000/vind@0/vinc@4"; vinc5 = "/soc@03000000/vind@0/vinc@5"; Vdevice = "/soc@03000000/vdevice@0"; emce = "/soc@03000000/emce@01905000"; cryptoengine = "/soc@03000000/ce@1904000"; di = "/soc@03000000/deinterlace@0x01420000"; scr0 = "/soc@03000000/smartcard@0x05005000"; nand0 = "/soc@03000000/nand0@04011000"; ts0 = "/soc@03000000/ts0@05060000"; ths = "/soc@03000000/thermal_sensor"; cpu_trips = "/soc@03000000/thermal-zones/cpu_thermal_zone/trips"; cpu_threshold = "/soc@03000000/thermal-zones/cpu_thermal_zone/trips/trip-point@0"; cpu_target = "/soc@03000000/thermal-zones/cpu_thermal_zone/trips/trip-point@1"; cpu_crit = "/soc@03000000/thermal-zones/cpu_thermal_zone/trips/cpu_crit@0"; gpadc = "/soc@03000000/gpadc"; keyboard0 = "/soc@03000000/keyboard"; gmac0 = "/soc@03000000/eth@05020000"; gmac1 = "/soc@03000000/eth@05030000"; gpio_encrypt = "/soc@03000000/gpio_encrypt"; wlan = "/soc@03000000/wlan"; bt = "/soc@03000000/bt"; btlpm = "/soc@03000000/btlpm"; addr_mgt = "/soc@03000000/addr_mgt"; sprd_marlin3 = "/soc@03000000/sprd-marlin3"; aliases = "/aliases"; cpu0 = "/cpus/cpu@0"; CPU_SLEEP_0 = "/cpus/idle-states/cpu-sleep-0"; cpu_opp_l_table = "/opp_l_table"; dram = "/dram"; gic = "/interrupt-controller@03020000"; wakeupgen = "/interrupt-controller@0"; nmi_intc = "/intc-nmi@07010320"; sid = "/sunxi-sid@03006000"; sunxi_sid = "/sunxi-sid-ng@03006000"; speedbin_efuse = "/sunxi-sid-ng@03006000/speed@00"; ths_calib = "/sunxi-sid-ng@03006000/calib@14"; chipid = "/sunxi-chipid@03006200"; uboot = "/uboot"; mmu_aw = "/iommu@030f0000"; gpu = "/gpu@0x01800000"; ipa_dvfs = "/gpu@0x01800000/ipa_dvfs"; }; };
-
So I need a create a cache server using a tv box for my activity this device your motherboard is a Rk3299 and for this i need pass to cryptography used in streaming services because my idea is a cache service for optimize my router when i watch my favorite series and movies finally how can i descrypt ( i think using squid for cache but i not sure)
-
Hey. I have no idea whether this will work for the H313 but I got my H713 Projector rooted using the following method. I'm assuming you at least have the stock firmware, but if not, it seems you can grab it here: https://androidpctv.com/firmware-android-tv-box-h96-max-h313 I dislike Windows so I was irritated that PhoenixSuit only seemed to run well on that platform, and ImgRePacker wasn't great either but then I found this project on GitHub: https://github.com/uictorius/imagewty-tool I'm unsure how you'd do this on Windows and I assume you know of a way to flash your box with a custom img file, but this was my work flow: 1. Back up your original img somewhere safe. Don't play around with this file. 2. Grab the latest available version of Magisk from https://github.com/topjohnwu/Magisk/releases. You want the APK file. 3. Go to this Project on GitHub. CircleTeam provide a browser based method of doing this here: https://circlecashteam.github.io/MagiskPatcher/ 4. Using imagewty-tool you first want to grab your boot partition. Run this against your copy of your firmware img. Let's say it's called update.img: imagewty-tool extract update.img 5. This will extract a bunch of FEX files to a directory called update.img.dump. You want to find the file called "boot.fex" 6. Now copy that file and rename it to "boot.img". Go to the MagiskPatcher site. 7. Upload the "boot.img" file at "Upload boot image" and the Magisk APK at "Upload Magisk APK". 8. Select armeabi-v7a radio button, then check every box below except "Recovery Mode" and click "Patch". 9. After a minute or two, the program will download a new patched boot.img to your Downloads folder. 10. Let's say it's called "new-boot.img", you'll want to rename it as "boot.fex" and overwrite the original boot.fex file in the update.img.dump directory. 11. Run imagewty-tool again, but this time: imagewty-tool repack update.img.dump new-image.img The beauty of this is that repacking recalculates all V-file checksums automatically. 12. Flash new-image.img to your box whatever way you're used to doing it with PhoenixSuit or whatever. However, you're not done. 13. Hopefully the box boots up. Get to adb, grab the Magisk APK again and run: adb install Magisk*.apk Once installed, open the Magisk app up and it will say it needs to complete installation, so go ahead and allow that install. Select the Recommended radio button to install and then reboot. 14. Assuming all went well it should boot back up for you. Run this to check root: adb shell su whoami If all went well it should say "root" in your terminal rather than "shell". A dialogue will pop up on the Android screen asking to allow root privileges so go ahead and allow those.
-
Device: A95X F1 TV Box SoC: Amlogic S905W OS: Armbian Linux Server (v6.12 and v6.18) & Desktop versions. Installation: To NAND/eMMC. The Issue: I am deploying about 10 units. The installation to NAND goes smoothly, and the system boots correctly. However, after running perfectly for a few hours, the devices crash: Video output goes to a black screen. Network is dead (No SSH, No PING). Power cycling the device does not recover the system; it remains in this "bricked" state. Recovery Method: Once the device crashes, I cannot simply reinstall Armbian. I am forced to: Flash the stock Android firmware using the USB Burning Tool. Reinstall Armbian from scratch. Troubleshooting done: Tested on multiple units (10 different boxes). Tested over a period of one month with various incremental updates. Tested both Server and Desktop images. Result remains the same: corruption/crash after a few hours of uptime. ¿Some help?
-
@Jerry Falken Unfortunately you must remain on kernel 4.4.xxx because as many times said newer kernels doesn t support NAND. About upgrading to newer distros, blacklist kernel update in apt and try doing seguential apt dist upgrades changing repository and starting by a well working distro I have up to Debian bookworm ( Debian 12 ) but only cli, no desktop May I ask what the purpose are you using for your tv box ?
-
No clue if it will work. There are hundreds of different TV boxes. It is unlikely anyone here has that exact model So just try. The general rule as the instructions on this site indicate are to try different dtbs until you find one that works the best.
-
mxq pro 4k 5g allwinner h313 can't sd card boot
Sergey Lepeshkin replied to Ducdanh Nguyen's topic in Allwinner CPU Boxes
@Octavio Cuatrochio, your box is locked no more than others. ADB over USB doesn't work on all versions. su works only through uart console. Toothpick method is only for recovery from backup partition (so 'upgrade' is not really upgrade - it's reflashing from backup). What to check: 1. Check you haven't shorted Tx and Rx to +3.3V. bus (trace between two test points). 2. Are Gnd's of the usb converter and tv box connected? 3. You have some switches on usb converter - what it is for? I/O voltage select? 4. Make sure you open serial port on PC with 115200 8n1 settings without hardware or software flow control. 5. You've checked it while lines was free-floating or connected to usb converter? If last, make measurements without usb converter connected. About performance of Android and Armbian: idk. Current Android firmware is 32-bit. But, according to datasheet, Hi3798MV310 have 64-bit core. So, if you manage to create 64-bit build of Android or Armbian, I suppose it should have slightly better performance. -
Efforts to develop firmware for H96 MAX V56 RK3566 8G/64G
BEHROUZ MOLAVI replied to Hqnicolas's topic in Rockchip CPU Boxes
Hello, I need the correct stock firmware for my Android TV Box. Here are the exact hardware details of my device: Model: X88 Pro 20 Chipset: Rockchip RK3566 RAM: 8GB ROM / Storage: 64GB Board Name / PCB: X88 PRO-RK3566-4D32-V1.0 Additional Markings: AIP 1628 – 46BD110 (printed on the board) Issue: The device is stuck in Safe Mode and previous firmware files did not work. Need: A fully compatible IMG firmware (Android 11 or stock version) that matches my PCB version and hardware configuration. Please provide: Download link to the correct firmware Flash tool + driver if required Any notes about WiFi/Bluetooth compatibility for this board Thank you very much! -
mxq pro 4k 5g allwinner h313 can't sd card boot
Octavio Cuatrochio replied to Ducdanh Nguyen's topic in Allwinner CPU Boxes
Hey @Sergey Lepeshkin, your information proved very helpful! I have a tv box in the same vein as yours, but mine is version Z01S-V13.3, so they probably revised it a little bit. Thanks for finding the UART pins! I will try it out and post what I find! My objective here is to overclock it, install active cooling and a heatsink, and see how it runs some emulators. Btw, quick question, performance wise the box would be faster on Armbian or Android? Thanks! -
I installed armbian on a micro sd to be able to install it on my Dq08 RK3528. The boot succeeded on the sd card perfectly. I wanted to install armbian on the memory of the box with "armbian-install" I followed the instructions I did the 2. and Then I did the 5. it ask me to poweroff and since it does not want to turn on or be recognized by my peripherals connected. I've tried rebooting from an sd but it doesn't work. But I tried on another box with the same sd and it worked. So I think the box is brick. I've decided to do the tutorial from the sellers on aliexpress with the usb to usb cable. With the av button, the software doesn't even recognise it. I don't know what to do now.
-
Efforts to develop firmware for H96 MAX M9 RK3576 TV Box 8G/128G
cmuki replied to Hqnicolas's topic in Rockchip CPU Boxes
@xiaobao80I did manage to get 3.5mm working with the help of ChatGPT. The box is using HT5010. ChatGPT told me to disable the es8388 nodes, but it still works with them enabled. My sai@2a61000 looks like this: My ht5010-sound node looks like this: I got bluetooth working with a hack from the Radxa forums here (creating a shell script and adding it to the root's crontab): I tried to send audio from a TV to the rk3576 box - it did work, but the latency is too much for me. The brown box has beefier cooling than the purple one. I haven't recompiled, used my "stable" image from before to fix the 3.5mm issue, might need to recompile to try the GPU driver. Tried the rkr7.1 dts, but couldn't get it to work (might need additional time to look at it); armbian / linux-rockchip is still at rkr5.1. -
you may actually want to extract the dtb file on the android side of the tvbox you have just to get the OS to get recognize that chipset (but may not work due to missing driver).The odds for this kind of tv box to have a working wifi chipset is a lottery, most likely you better off not waste that effort and just buy a USB WiFi dongle instead, at least it works far better than a SDIO based wifi chipset like that.
-
I am a newbie making first steps with Armbian on my random MXQ PRO4 tv-box, huge thanks for everyone who made it possible, I find it to be a great way to improve my Linux skills. I wanted to ask for the help with it's wifi/bt chip marked as MSN8830A. I am currently running Armbian-unofficial_24.11.0-trunk_Rk322x-box_noble_current_6.6.56_xfce_desktop.img.xz from eMMC and apart from wifi/bt everything else works perfect. Will greatly appreciate any advise on prober driver/armbian image that may help with wifi. Attaching the picture showing the chip and board name. 74ea9647-b0c9-44d7-9233-0bdea959de5a.jfif
-
(I prepared this spiel before I found this thread, but it still holds) /// Spent the last 2 days on this issue with an ALLWINNER image, not an AMLOGIC image. Back in October I had NO issue configuring this same image (downloaded to my nVME drive) on W11, with the same image, same copy of Balena etcher. PC 1 I flashed an Armbian community image onto an SD card (in a USB SD Card adapter), but was unable to see the FAT32 partition in Windows. I mounted the same USB in a VMware VM, and could only see one partition(!) I reflashed the image using dd (in VMware) and again only one partition was written. The flashed SD card (unconfigured for DTB etc) ran fine on my TV box. The default DTB setup clearly works. I loaded Linux Reader for Windows (LRFW) but had the same result, could not see a FAT32 boot partition. PC 2 I flashed the same image using etcher on a different Windows 11 PC. Same result on that PC, unable to see a FAT32 partition. (Back to) PC1 I Inserted the SD card adapter back into the first computer, and was able to see the root partition, mounted as armbi_root(F:) and also as armbi_root(i), but still no BOOT partition (maybe the LRFW software took a few minutes to start working). It seems to me the only variable is Windows 11 having some driver issue, since that's the only remaining variable I can think of. //// Does any knowledgeable contributor know of any POSSIBLE reason why etcher would now only write ONE partition, whereas previously it would write 2 partitions from the same image? Is anyone having this issue using only Linux as the dev environment? best John
