您尚未登录。

#1 Re: 全志 SOC » 全志V831 在SDK中编译python3.8 报错 » 2022-11-22 22:11:20

定位到原因,无法构建
Failed to build these modules:
_curses            _curses_panel
网上说要安装libncurses-dev,在配置里面没有这个选项,在配置中libncurses、相关的都勾选了

#2 全志 SOC » 全志V831 在SDK中编译python3.8 报错 » 2022-11-22 19:47:43

rtqq
回复: 1

在menuconfig 中 Language -> Python -> python3,make之后报错


提示无法找到Tcl/TK lib ,我找menuconfig里面没找到 这个lib,求求各位帮忙看看
错误信息:

running build
running build_ext
INFO: Can't locate Tcl/Tk libs and/or headers
building '_curses' extension
arm-openwrt-linux-muslgnueabi-gcc -fPIC -Wno-unused-result -Wsign-compare -DNDEBUG -Os -pipe -march=armv7-a -mtune=cortex-a7 -mfpu=neon -fno-caller-saves -Wno-unused-result -mfloat-abi=hard -Wformat -Werror=format-security -fstack-protector -D_FORTIFY_SOURCE=1 -Wl,-z,now -Wl,-z,relro -Os -pipe -march=armv7-a -mtune=cortex-a7 -mfpu=neon -fno-caller-saves -Wno-unused-result -mfloat-abi=hard -Wformat -Werror=format-security -fstack-protector -D_FORTIFY_SOURCE=1 -Wl,-z,now -Wl,-z,relro -DNDEBUG -fno-inline -Os -pipe -march=armv7-a -mtune=cortex-a7 -mfpu=neon -fno-caller-saves -Wno-unused-result -mfloat-abi=hard -Wformat -Werror=format-security -fstack-protector -D_FORTIFY_SOURCE=1 -Wl,-z,now -Wl,-z,relro -DNDEBUG -fno-inline -I/home/tina/Desktop/tina-V83x/out/v831-YuzukiIRC/staging_dir/target/usr/include -I/home/tina/Desktop/tina-V83x/out/v831-YuzukiIRC/staging_dir/target/include -I/home/tina/Desktop/tina-V83x/prebuilt/gcc/linux-x86/arm/toolchain-sunxi-musl/toolchain/usr/include -I/home/tina/Desktop/tina-V83x/prebuilt/gcc/linux-x86/arm/toolchain-sunxi-musl/toolchain/include -I/home/tina/Desktop/tina-V83x/prebuilt/gcc/linux-x86/arm/toolchain-sunxi-musl/toolchain/include/fortify -flto -fuse-linker-plugin -ffat-lto-objects -flto-partition=none -g -std=c99 -Wextra -Wno-unused-result -Wno-unused-parameter -Wno-missing-field-initializers -Werror=implicit-function-declaration -fprofile-generate -I./Include/internal -DHAVE_NCURSESW=1 -I./Include -I. -I/home/tina/Desktop/tina-V83x/out/v831-YuzukiIRC/staging_dir/target/include -I/home/tina/Desktop/tina-V83x/prebuilt/gcc/linux-x86/arm/toolchain-sunxi-musl/toolchain/include -I/home/tina/Desktop/tina-V83x/prebuilt/gcc/linux-x86/arm/toolchain-sunxi-musl/toolchain/include/fortify -I/home/tina/Desktop/tina-V83x/out/v831-YuzukiIRC/staging_dir/target/usr/include -I/home/tina/Desktop/tina-V83x/out/v831-YuzukiIRC/compile_dir/target/Python-3.8.5/Include -I/home/tina/Desktop/tina-V83x/out/v831-YuzukiIRC/compile_dir/target/Python-3.8.5 -c /home/tina/Desktop/tina-V83x/out/v831-YuzukiIRC/compile_dir/target/Python-3.8.5/Modules/_cursesmodule.c -o build/temp.linux-arm-3.8/home/tina/Desktop/tina-V83x/out/v831-YuzukiIRC/compile_dir/target/Python-3.8.5/Modules/_cursesmodule.o
/home/tina/Desktop/tina-V83x/out/v831-YuzukiIRC/compile_dir/target/Python-3.8.5/Modules/_cursesmodule.c: In function '_curses_window_addch_impl':
/home/tina/Desktop/tina-V83x/out/v831-YuzukiIRC/compile_dir/target/Python-3.8.5/Modules/_cursesmodule.c:621:9: error: implicit declaration of function 'setcchar' [-Werror=implicit-function-declaration]
         setcchar(&wcval, wstr, attr, attr_to_color_pair(attr), NULL);
         ^~~~~~~~
/home/tina/Desktop/tina-V83x/out/v831-YuzukiIRC/compile_dir/target/Python-3.8.5/Modules/_cursesmodule.c:623:19: error: implicit declaration of function 'mvwadd_wch' [-Werror=implicit-function-declaration]
             rtn = mvwadd_wch(self->win,y,x, &wcval);
                   ^~~~~~~~~~
/home/tina/Desktop/tina-V83x/out/v831-YuzukiIRC/compile_dir/target/Python-3.8.5/Modules/_cursesmodule.c:625:19: error: implicit declaration of function 'wadd_wch' [-Werror=implicit-function-declaration]
             rtn = wadd_wch(self->win, &wcval);
                   ^~~~~~~~
/home/tina/Desktop/tina-V83x/out/v831-YuzukiIRC/compile_dir/target/Python-3.8.5/Modules/_cursesmodule.c: In function '_curses_window_addstr_impl':
/home/tina/Desktop/tina-V83x/out/v831-YuzukiIRC/compile_dir/target/Python-3.8.5/Modules/_cursesmodule.c:704:19: error: implicit declaration of function 'mvwaddwstr' [-Werror=implicit-function-declaration]
             rtn = mvwaddwstr(self->win,y,x,wstr);
                   ^~~~~~~~~~
/home/tina/Desktop/tina-V83x/out/v831-YuzukiIRC/compile_dir/target/Python-3.8.5/Modules/_cursesmodule.c:706:19: error: implicit declaration of function 'waddwstr' [-Werror=implicit-function-declaration]
             rtn = waddwstr(self->win,wstr);
                   ^~~~~~~~
/home/tina/Desktop/tina-V83x/out/v831-YuzukiIRC/compile_dir/target/Python-3.8.5/Modules/_cursesmodule.c: In function '_curses_window_addnstr_impl':
/home/tina/Desktop/tina-V83x/out/v831-YuzukiIRC/compile_dir/target/Python-3.8.5/Modules/_cursesmodule.c:787:19: error: implicit declaration of function 'mvwaddnwstr' [-Werror=implicit-function-declaration]
             rtn = mvwaddnwstr(self->win,y,x,wstr,n);
                   ^~~~~~~~~~~
/home/tina/Desktop/tina-V83x/out/v831-YuzukiIRC/compile_dir/target/Python-3.8.5/Modules/_cursesmodule.c:789:19: error: implicit declaration of function 'waddnwstr' [-Werror=implicit-function-declaration]
             rtn = waddnwstr(self->win,wstr,n);
                   ^~~~~~~~~
/home/tina/Desktop/tina-V83x/out/v831-YuzukiIRC/compile_dir/target/Python-3.8.5/Modules/_cursesmodule.c: In function '_curses_window_get_wch_impl':
/home/tina/Desktop/tina-V83x/out/v831-YuzukiIRC/compile_dir/target/Python-3.8.5/Modules/_cursesmodule.c:1360:14: error: implicit declaration of function 'wget_wch' [-Werror=implicit-function-declaration]
         ct = wget_wch(self->win ,&rtn);
              ^~~~~~~~
/home/tina/Desktop/tina-V83x/out/v831-YuzukiIRC/compile_dir/target/Python-3.8.5/Modules/_cursesmodule.c:1363:14: error: implicit declaration of function 'mvwget_wch' [-Werror=implicit-function-declaration]
         ct = mvwget_wch(self->win, y, x, &rtn);
              ^~~~~~~~~~
/home/tina/Desktop/tina-V83x/out/v831-YuzukiIRC/compile_dir/target/Python-3.8.5/Modules/_cursesmodule.c: In function '_curses_window_insstr_impl':
/home/tina/Desktop/tina-V83x/out/v831-YuzukiIRC/compile_dir/target/Python-3.8.5/Modules/_cursesmodule.c:1705:19: error: implicit declaration of function 'mvwins_wstr' [-Werror=implicit-function-declaration]
             rtn = mvwins_wstr(self->win,y,x,wstr);
                   ^~~~~~~~~~~
/home/tina/Desktop/tina-V83x/out/v831-YuzukiIRC/compile_dir/target/Python-3.8.5/Modules/_cursesmodule.c:1707:19: error: implicit declaration of function 'wins_wstr' [-Werror=implicit-function-declaration]
             rtn = wins_wstr(self->win,wstr);
                   ^~~~~~~~~
/home/tina/Desktop/tina-V83x/out/v831-YuzukiIRC/compile_dir/target/Python-3.8.5/Modules/_cursesmodule.c: In function '_curses_window_insnstr_impl':
/home/tina/Desktop/tina-V83x/out/v831-YuzukiIRC/compile_dir/target/Python-3.8.5/Modules/_cursesmodule.c:1790:19: error: implicit declaration of function 'mvwins_nwstr' [-Werror=implicit-function-declaration]
             rtn = mvwins_nwstr(self->win,y,x,wstr,n);
                   ^~~~~~~~~~~~
/home/tina/Desktop/tina-V83x/out/v831-YuzukiIRC/compile_dir/target/Python-3.8.5/Modules/_cursesmodule.c:1792:19: error: implicit declaration of function 'wins_nwstr' [-Werror=implicit-function-declaration]
             rtn = wins_nwstr(self->win,wstr,n);
                   ^~~~~~~~~~
/home/tina/Desktop/tina-V83x/out/v831-YuzukiIRC/compile_dir/target/Python-3.8.5/Modules/_cursesmodule.c: In function '_curses_unget_wch':
/home/tina/Desktop/tina-V83x/out/v831-YuzukiIRC/compile_dir/target/Python-3.8.5/Modules/_cursesmodule.c:4243:29: error: implicit declaration of function 'unget_wch' [-Werror=implicit-function-declaration]
     return PyCursesCheckERR(unget_wch(wch), "unget_wch");
                             ^~~~~~~~~
cc1: some warnings being treated as errors

Python build finished successfully!
The necessary bits to build these optional modules were not found:
_tkinter              _uuid                 nis                
To find the necessary bits, look in setup.py in detect_modules() for the module's name.


The following modules found by detect_modules() in setup.py, have been
built by the Makefile instead, as configured by the Setup files:
_abc                  atexit                pwd                
time                  zlib                                     


Failed to build these modules:
_curses                 

#3 Re: 全志 SOC » 全志V831芯片移植4G模块,发现无法生成ttyUSB节点,请教各位 » 2022-11-22 16:03:08

tocurd 说:
rtqq 说:

看了一下启动脚本,好像在 /etc/init.d/S550usb  中,将USB0 设置成了OTG 模式,不知道怎么取消

https://whycan.com/viewtopic.php?id=6021
参考下?

谢谢,问题解决,不过在v831的目录有一点点区别,记录一下,让后来者收益
手动切换到host模式命令:
cat /sys/devices/platform/soc/usbc0/usb_host

#4 Re: 全志 SOC » 全志V831芯片移植4G模块,发现无法生成ttyUSB节点,请教各位 » 2022-11-21 11:47:55

看了一下启动脚本,好像在 /etc/init.d/S550usb  中,将USB0 设置成了OTG 模式,不知道怎么取消

#6 Re: 全志 SOC » 全志V831芯片移植4G模块,发现无法生成ttyUSB节点,请教各位 » 2022-11-20 16:46:28

yixiuge 说:
tocurd 说:

lsusb看看识别到了吗

lsusb 运行失败,是不是缺库啊?

不知道缺了什么库,这是 opkg list-installed |grep usb 的输出

opkg list-installed |grep usb
kmod-usb-net - 4.9.118-1
kmod-usb-net-cdc-ether - 4.9.118-1
kmod-usb-net-cdc-mbim - 4.9.118-1
kmod-usb-net-cdc-ncm - 4.9.118-1
kmod-usb-net-cdc-subset - 4.9.118-1
kmod-usb-net-qmi-wwan - 4.9.118-1
kmod-usb-net-rndis - 4.9.118-1
kmod-usb-ohci - 4.9.118-1
kmod-usb-serial - 4.9.118-1
kmod-usb-serial-option - 4.9.118-1
kmod-usb-serial-wwan - 4.9.118-1
kmod-usb-uhci - 4.9.118-1
kmod-usb-wdm - 4.9.118-1
kmod-usb2 - 4.9.118-1
libusb-1.0 - 1.0.19-1
usb-gadget - 1-1
usbutils - 007-1

好像少了kmod-usb-core,但是我在menuconfig里已经勾选了,不知道为什么没有

#7 Re: 全志 SOC » 全志V831芯片移植4G模块,发现无法生成ttyUSB节点,请教各位 » 2022-11-20 16:42:02

吕氏春秋 说:

99    EADDRNOTAVAIL    Cannot assign requested address

这是什么意思呀?

#8 Re: 全志 SOC » 全志V831芯片移植4G模块,发现无法生成ttyUSB节点,请教各位 » 2022-11-20 16:17:21

lsusb 报错 :unable to initialize libusb: -99

root@YuzukiIRC:/# opkg list-installed |grep usb
kmod-usb-net - 4.9.118-1
kmod-usb-net-cdc-ether - 4.9.118-1
kmod-usb-net-cdc-mbim - 4.9.118-1
kmod-usb-net-cdc-ncm - 4.9.118-1
kmod-usb-net-cdc-subset - 4.9.118-1
kmod-usb-net-qmi-wwan - 4.9.118-1
kmod-usb-net-rndis - 4.9.118-1
kmod-usb-ohci - 4.9.118-1
kmod-usb-serial - 4.9.118-1
kmod-usb-serial-option - 4.9.118-1
kmod-usb-serial-wwan - 4.9.118-1
kmod-usb-uhci - 4.9.118-1
kmod-usb-wdm - 4.9.118-1
kmod-usb2 - 4.9.118-1
libusb-1.0 - 1.0.19-1
usb-gadget - 1-1
usbutils - 007-1

#9 全志 SOC » 全志V831芯片移植4G模块,发现无法生成ttyUSB节点,请教各位 » 2022-11-20 16:15:07

rtqq
回复: 10

最开始按照设备的配置过程配置了,修改了option.c 中的VID 和PID, 硬件电路上,使用的是USB0外接的sl2.1A芯片做为hub,4g网卡连接hub的dp2,dm2.其他没接,在系统启动后,无法加载ttyUSB结点,使用命令 cat /sys/kernel/debug/usb/devices 无输出。下面贴上启动输出,board.dts, sun8iw19p.dtsi, opkg list-installed |grep usb 的输出,希望大家帮忙看看问题所在。

[32]HELLO! BOOT0 is starting!
[35]BOOT0 commit : e3b2a9e
[37]board init start
[39]set pll start
[42]set pll end
[43][pmu]: bus read error
[46][pmu]: bus read error
[48]board init ok
[50]chip id check OK
[52]DRAM BOOT DRIVE INFO: V0.41
[55]DRAM CLK = 528 MHz
[57]DRAM Type = 2 (2:DDR2,3:DDR3)
[61]DRAMC read ODT  off.
[63]DRAM ODT off.
[65]DRAM SIZE =64 M
[71]DRAM simple test OK.
[74]rtc standby flag is 0x0, super standby flag is 0x0
[79]dram size =64
[81]card no is 0
[83]sdcard 0 line count 4
[86][mmc]: mmc driver ver 2020-01-08 17:05
[90][mmc]: sdc0 spd mode error, 2
[93][mmc]: set f_max to 50M, set f_max_ddr to 25M
[98][mmc]: mmc 0 bias 0
[105][mmc]: Wrong media type 0x0
[108][mmc]: ***Try SD card 0***
[119][mmc]: HSSDR52/SDR25 4 bit
[122][mmc]: 50000000 Hz
[124][mmc]: 7680 MB
[126][mmc]: ***SD/MMC 0 init OK!!!***
[189]Loading boot-pkg Succeed(index=0).
[193]Entry_name        = optee
[196]Entry_name        = u-boot
[202]Entry_name        = dtb
[206]Jump to second Boot.
MESSAGE: [0x0] TEE-CORE: OP-TEE version: sun8iw19p1_v0.6.0-14-gf6954e7 #1 2019年 11月 21日 星期四 01:34:42 UTC arm
ERROR:   [0x0] TEE-CORE:platform_standby_fdt_parse:126: no pmu node
ERROR:   [0x0] TEE-CORE:sunxi_twi_parse_from_dt:84: no pmu node


U-Boot 2018.05-00008-g384031a (Jan 16 2020 - 14:12:41 +0800) Allwinner Technology

[00.277]CPU:   Allwinner Family
[00.280]Model: sun8iw19
I2C:   ready
[00.285]DRAM:  64 MiB
[00.287]Relocation Offset is: f9f46000
[00.309]secure enable bit: 0
[00.311]pmu_axp152_probe pmic_bus_read fail
[00.315]pmu_axp2101_probe pmic_bus_read fail
[00.319]bmu_axp152_probe pmic_bus_read fail
[00.323]bmu_axp2101_probe pmic_bus_read fail
[00.327]CPU=816 MHz,PLL6=600 Mhz,AHB=200 Mhz, APB1=100Mhz  MBus=132Mhz
[00.334]gic: sec monitor mode
[00.336]flash init start
[00.338]workmode = 0,storage type = 1
[00.342]MMC:     0
[00.343]get mem for descripter OK !

card_caps:0x3000000a
host_caps:0x3000003f
[00.375]sunxi flash init ok
[00.379]Loading Environment from SUNXI_FLASH... OK
[00.406]update dts
root_partition is rootfs
set root to /dev/mmcblk0p4
[00.436]update part info
[00.462]update bootcmd
[00.464]No ethernet found.
Hit any key to stop autoboot:  0
## Booting kernel from Legacy Image at 45000000 ...
   Image Name:   ARM OpenWrt Linux-4.9.118
   Image Type:   ARM Linux Kernel Image (uncompressed)
   Data Size:    2984256 Bytes = 2.8 MiB
   Load Address: 40008000
   Entry Point:  40008000
[01.858]Starting kernel ...

[01.860]mmc 2 not find, so not exit
[    0.000000] Booting Linux on physical CPU 0x0
[    0.000000] Linux version 4.9.118 (tina@ubuntu) (gcc version 6.4.1 (OpenWrt/Linaro GCC 6.4-2017.11 2017-11) ) #24 PREEMPT Sun Nov 20 07:35:55 UTC 2022
[    0.000000] CPU: ARMv7 Processor [410fc075] revision 5 (ARMv7), cr=50c5387d
[    0.000000] CPU: div instructions available: patching division code
[    0.000000] CPU: PIPT / VIPT nonaliasing data cache, VIPT aliasing instruction cache
[    0.000000] OF: fdt:Machine model: sun8iw19
[    0.000000] ion_mem_reserve: err format for ion reserve list!
[    0.000000] Memory policy: Data cache writeback
[    0.000000] On node 0 totalpages: 16384
[    0.000000] free_area_init_node: node 0, pgdat c04d8758, node_mem_map c3f79000
[    0.000000]   Normal zone: 128 pages used for memmap
[    0.000000]   Normal zone: 0 pages reserved
[    0.000000]   Normal zone: 16384 pages, LIFO batch:3
[    0.000000] psci: probing for conduit method from DT.
[    0.000000] psci: PSCIv1.0 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.0
[    0.000000] CPU: All CPU(s) started in SVC mode.
[    0.000000] pcpu-alloc: s0 r0 d32768 u32768 alloc=1*32768
[    0.000000] pcpu-alloc: [0] 0
[    0.000000] Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 16256
[    0.000000] Kernel command line: earlyprintk=sunxi-uart,0x05000000 initcall_debug=0 console=ttyS0,115200 loglevel=8 root=/dev/mmcblk0p4 rootwait init=/pseudo_init rdinit=/sbin/rdinit partitions=boot-res@mmcblk0p1:env@mmcblk0p2:boot@mmcblk0p3:rootfs@mmcblk0p4:UDISK@mmcblk0p5 cma=0 mac_addr= wifi_mac= bt_mac= selinux= specialstr= coherent_pool=16K ion_carveout_list= androidboot.mode=normal androidboot.hardware=sun8iw19p1 boot_type=1 androidboot.boot_type=1 gpt=1 uboot_message=2018.05-00008-g384031a(01/16/2020-14:12:41) mbr_offset=1032192 bootreason=unknow
[    0.000000] PID hash table entries: 256 (order: -2, 1024 bytes)
[    0.000000] Dentry cache hash table entries: 8192 (order: 3, 32768 bytes)
[    0.000000] Inode-cache hash table entries: 4096 (order: 2, 16384 bytes)
[    0.000000] Memory: 59472K/65536K available (3147K kernel code, 236K rwdata, 1244K rodata, 144K init, 129K bss, 6064K reserved, 0K cma-reserved)
[    0.000000] Virtual kernel memory layout:
[    0.000000]     vector  : 0xffff0000 - 0xffff1000   (   4 kB)
[    0.000000]     fixmap  : 0xffc00000 - 0xfff00000   (3072 kB)
[    0.000000]     vmalloc : 0xc4800000 - 0xff800000   ( 944 MB)
[    0.000000]     lowmem  : 0xc0000000 - 0xc4000000   (  64 MB)
[    0.000000]     modules : 0xbf800000 - 0xc0000000   (   8 MB)
[    0.000000]       .text : 0xc0008000 - 0xc031afb8   (3148 kB)
[    0.000000]       .init : 0xc047a000 - 0xc049e000   ( 144 kB)
[    0.000000]       .data : 0xc049e000 - 0xc04d9358   ( 237 kB)
[    0.000000]        .bss : 0xc04d9358 - 0xc04f9a44   ( 130 kB)
[    0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=1, Nodes=1
[    0.000000] Preemptible hierarchical RCU implementation.
[    0.000000]  Build-time adjustment of leaf fanout to 32.
[    0.000000] NR_IRQS:16 nr_irqs:16 16
[    0.000000] clocksource: timer: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 79635851949 ns
[    0.000000] arm_arch_timer: Architected cp15 timer(s) running at 24.00MHz (phys).
[    0.000000] clocksource: arch_sys_counter: mask: 0xffffffffffffff max_cycles: 0x588fe9dc0, max_idle_ns: 440795202592 ns
[    0.000007] sched_clock: 56 bits at 24MHz, resolution 41ns, wraps every 4398046511097ns
[    0.000021] Switching to timer-based delay loop, resolution 41ns
[    0.000158] Console: colour dummy device 80x30
[    0.000184] Calibrating delay loop (skipped), value calculated using timer frequency.. 48.00 BogoMIPS (lpj=240000)
[    0.000199] pid_max: default: 32768 minimum: 301
[    0.000370] Mount-cache hash table entries: 1024 (order: 0, 4096 bytes)
[    0.000382] Mountpoint-cache hash table entries: 1024 (order: 0, 4096 bytes)
[    0.000975] CPU: Testing write buffer coherency: ok
[    0.001248] Setting up static identity map for 0x400081c0 - 0x4000820c
[    0.002697] devtmpfs: initialized
[    0.030520] VFP support v0.3: implementor 41 architecture 2 part 30 variant 7 rev 5
[    0.030861] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 19112604462750000 ns
[    0.030887] futex hash table entries: 256 (order: -1, 3072 bytes)
[    0.031047] atomic64_test: passed
[    0.031058] pinctrl core: initialized pinctrl subsystem
[    0.031948] NET: Registered protocol family 16
[    0.032526] DMA: preallocated 16 KiB pool for atomic coherent allocations
[    0.033972] dump_class_init,857, success
[    0.035314] sunxi iommu: irq = 23
[    0.041227] sun8iw19p1-r-pinctrl r_pio: initialized sunXi PIO driver
[    0.057148] use hosc , set rate 1000000
[    0.057176] sun8iw19p1-pinctrl pio: initialized sunXi PIO driver
[    0.059387] iommu: Adding device 1c0e000.ve to group 0
[    0.061110] iommu: Adding device 2300000.eise to group 0
[    0.068059] iommu: Adding device 1000000.disp to group 0
[    0.069831] iommu: Adding device 1480000.g2d to group 0
[    0.070434] iommu: Adding device 2400000.nna to group 0
[    0.074136] iommu: Adding device csi0 to group 0
[    0.075452] iommu: Adding device csi1 to group 0
[    0.076757] iommu: Adding device 2100000.isp to group 0
[    0.077357] iommu: Adding device 2104000.scaler to group 0
[    0.077718] iommu: Adding device 2104400.scaler to group 0
[    0.078081] iommu: Adding device 2104800.scaler to group 0
[    0.078559] iommu: Adding device 2104c00.scaler to group 0
[    0.080075] iommu: Adding device vinc0 to group 0
[    0.080791] iommu: Adding device vinc1 to group 0
[    0.131335] pwm module init!
[    0.135326] SCSI subsystem initialized
[    0.135723] usbcore: registered new interface driver usbfs
[    0.135818] usbcore: registered new interface driver hub
[    0.138499] usbcore: registered new device driver usb
[    0.138789] sunxi_i2c_adap_init()2754 - init
[    0.139350] sunxi_i2c_probe()2449 - [i2c1] twi_drv_used = 1
[    0.139367] sunxi_i2c_probe()2456 - [i2c1] twi_pkt_interval = 0
[    0.139427] twi_regulator_request()653 - [i2c1] regulator not found(isn't configured in dts)!
[    0.139438] twi_request_gpio()469 - [i2c1] init name: (null)
[    0.139868] sunxi_i2c_dma_request()1136 - [i2c1] using dma0chan0 (tx) and dma0chan1 (rx)for DMA transfers
[    0.139985] sun8iw19p1-pinctrl pio: expect_func as:twi2, but muxsel(5) is func:uart2
[    0.140005] sun8iw19p1-pinctrl pio: expect_func as:twi2, but muxsel(5) is func:uart2
[    0.140325] sunxi_i2c_probe()2449 - [i2c2] twi_drv_used = 1
[    0.140339] sunxi_i2c_probe()2456 - [i2c2] twi_pkt_interval = 0
[    0.140392] twi_regulator_request()653 - [i2c2] regulator not found(isn't configured in dts)!
[    0.140403] twi_request_gpio()469 - [i2c2] init name: (null)
[    0.141525] sunxi_i2c_dma_request()1136 - [i2c2] using dma0chan2 (tx) and dma0chan3 (rx)for DMA transfers
[    0.141946] media: Linux media interface: v0.10
[    0.142108] Linux video capture interface: v2.00
[    0.143339] ion_parse_dt_heap_common: id 0 type 0 name sys_user align 1000
[    0.143617] ion_parse_dt_heap_common: id 1 type 1 name sys_contig align 1000
[    0.143837] ion_parse_dt_heap_common: id 4 type 4 name cma align 1000
[    0.145150] Advanced Linux Sound Architecture Driver Initialized.
[    0.148587] G2D: rcq version initialized.major:251
[    0.149635] clocksource: Switched to clocksource arch_sys_counter
[    0.171997] udc_init,0
[    0.172175] NET: Registered protocol family 2
[    0.173144] TCP established hash table entries: 16 (order: -6, 64 bytes)
[    0.173164] TCP bind hash table entries: 16 (order: -6, 64 bytes)
[    0.173174] TCP: Hash tables configured (established 16 bind 16)
[    0.173241] UDP hash table entries: 256 (order: 0, 4096 bytes)
[    0.173262] UDP-Lite hash table entries: 256 (order: 0, 4096 bytes)
[    0.173438] NET: Registered protocol family 1
[    0.176423] workingset: timestamp_bits=30 max_order=14 bucket_order=0
[    0.193255] squashfs: version 4.0 (2009/01/31) Phillip Lougher
[    0.193733] jffs2: version 2.2. (NAND) © 2001-2006 Red Hat, Inc.
[    0.196472] NET: Registered protocol family 38
[    0.196519] io scheduler noop registered
[    0.196529] io scheduler deadline registered
[    0.196836] io scheduler cfq registered (default)
[    0.197792] [DISP]disp_module_init
[    0.231152] [DISP] Fb_copy_boot_fb,line:1503:
[    0.231167] no boot_fb0
[    0.233986] [DISP] disp_sys_pwm_config,line:618:
[    0.233998] disp_sys_pwm_Config, handle is NULL!
[    0.234009] [DISP] disp_sys_pwm_set_polarity,line:636:
[    0.234015] disp_sys_pwm_Set_Polarity, handle is NULL!
[    0.235397] [DISP]disp_module_init finish
[    0.237677] uart uart0: get regulator failed
[    0.237707] uart0 supply uart not found, using dummy regulator
[    0.237910] uart uart0: uart0 error to get fifo size property
[    0.237976] uart0: ttyS0 at MMIO 0x5000000 (irq = 294, base_baud = 1500000) is a SUNXI
[    0.238005] sw_console_setup()1830 - console setup baud 115200 parity n bits 8, flow n
[    0.365296] [ST7789V LCD INFO] LINE:0208-->LCD_panel_init:
[    0.365305] [ST7789V LCD INFO] LINE:0225-->lcd_panel_st7789v_init:
[    0.861872] [DISP] disp_lcd_pwm_enable,line:959:
[    0.861873] pwm device hdl is NULL
[    0.861885] [DISP] disp_device_attached_and_enable,line:221:
[    0.861885] attached ok, mgr0<-->dev0
[    0.861897] [DISP] disp_device_attached_and_enable,line:224:
[    0.861897] type:1,mode:0,fmt:rgb,bits:8bits,eotf:4,cs:0 dvi_hdmi:2, range:2 scan:0 ratio:8
[    1.207648] console [ttyS0] enabled
[    1.212351] uart uart1: get regulator failed
[    1.217165] uart1 supply uart not found, using dummy regulator
[    1.224166] uart uart1: uart1 error to get fifo size property
[    1.230810] uart1: ttyS1 at MMIO 0x5000400 (irq = 295, base_baud = 1500000) is a SUNXI
[    1.240824] misc dump reg init
[    1.246764] libphy: Fixed MDIO Bus: probed
[    1.252504] sun8iw19p1-pinctrl pio: expect_func as:gmac0, but muxsel(5) is func:ephy
[    1.261652] sun8iw19p1-pinctrl pio: pin PD1 already requested by soc@03000000:lcd0@01c0c000; cannot claim for 5020000.eth
[    1.274228] sun8iw19p1-pinctrl pio: pin-97 (5020000.eth) status -22
[    1.281348] sun8iw19p1-pinctrl pio: could not request pin 97 (PD1) from group PD1  on device pio
[    1.291293] sunxi-gmac 5020000.eth: Error applying setting, reverse things back
[    1.299563] sunxi-gmac: probe of 5020000.eth failed with error -22
[    1.306794] ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
[    1.314575] get drv_vbus is fail, 84
[    1.318604] get ehci0-controller, regulator_io is no nocare
[    1.324984] get ehci0-controller wakeup-source is fail.
[    1.331081] sunxi ehci0-controller don't init wakeup source
[    1.337388] [sunxi-ehci0]: probe, pdev->name: 5101000.ehci0-controller, sunxi_ehci: 0xc04f3e20, 0x:c48dd000, irq_no:12b
[    1.349684] sunxi-ehci 5101000.ehci0-controller: SW USB2.0 'Enhanced' Host Controller (EHCI) Driver
[    1.359951] sunxi-ehci 5101000.ehci0-controller: new USB bus registered, assigned bus number 1
[    1.369839] sunxi-ehci 5101000.ehci0-controller: irq 299, io mem 0xc39fa000
[    1.399662] sunxi-ehci 5101000.ehci0-controller: USB 0.0 started, EHCI 1.00
[    1.407505] sunxi-ehci 5101000.ehci0-controller: ehci_irq: highspeed device connect
[    1.417227] hub 1-0:1.0: USB hub found
[    1.421727] hub 1-0:1.0: 1 port detected
[    1.426487] [ehci0-controller]: sunxi_usb_disable_ehci
[    1.432362] [sunxi-ehci0]: remove, pdev->name: 5101000.ehci0-controller, sunxi_ehci: 0xc04f3e20
[    1.442216] sunxi-ehci 5101000.ehci0-controller: remove, state 1
[    1.449005] usb usb1: USB disconnect, device number 1
[    1.455759] sunxi-ehci 5101000.ehci0-controller: USB bus 1 deregistered
[    1.463969] ehci-platform: EHCI generic platform driver
[    1.470523] ohci_hcd: USB 1.1 'Open' Host Controller (OHCI) Driver
[    1.477750] get drv_vbus is fail, 84
[    1.482026] get ohci0-controller, regulator_io is no nocare
[    1.488313] get ohci0-controller wakeup-source is fail.
[    1.494492] sunxi ohci0-controller don't init wakeup source
[    1.500918] [sunxi-ohci0]: probe, pdev->name: 5101000.ohci0-controller, sunxi_ohci: 0xc04f35d0
[    1.510742] sunxi-ohci 5101000.ohci0-controller: SW USB2.0 'Open' Host Controller (OHCI) Driver
[    1.520618] sunxi-ohci 5101000.ohci0-controller: new USB bus registered, assigned bus number 1
[    1.530457] sunxi-ohci 5101000.ohci0-controller: irq 300, io mem 0xc39fa800
[    1.604719] hub 1-0:1.0: USB hub found
[    1.609137] hub 1-0:1.0: 1 port detected
[    1.613970] [ohci0-controller]: sunxi_usb_disable_ohci
[    1.619802] [sunxi-ohci0]: remove, pdev->name: 5101000.ohci0-controller, sunxi_ohci: 0xc04f35d0
[    1.629617] sunxi-ohci 5101000.ohci0-controller: remove, state 1
[    1.636477] usb usb1: USB disconnect, device number 1
[    1.642955] sunxi-ohci 5101000.ohci0-controller: USB bus 1 deregistered
[    1.651186] ohci-platform: OHCI generic platform driver
[    1.657811] usbcore: registered new interface driver cdc_acm
[    1.664391] cdc_acm: USB Abstract Control Model driver for USB modems and ISDN adapters
[    1.673690] usbcore: registered new interface driver uas
[    1.680012] usbcore: registered new interface driver usb-storage
[    1.686987] usbcore: registered new interface driver ums-alauda
[    1.693892] usbcore: registered new interface driver ums-cypress
[    1.700918] usbcore: registered new interface driver ums-datafab
[    1.707931] usbcore: registered new interface driver ums_eneub6250
[    1.715145] usbcore: registered new interface driver ums-freecom
[    1.722252] usbcore: registered new interface driver ums-isd200
[    1.729184] usbcore: registered new interface driver ums-jumpshot
[    1.736267] usbcore: registered new interface driver ums-karma
[    1.743121] usbcore: registered new interface driver ums-onetouch
[    1.750307] usbcore: registered new interface driver ums-realtek
[    1.757327] usbcore: registered new interface driver ums-sddr09
[    1.764218] usbcore: registered new interface driver ums-sddr55
[    1.771168] usbcore: registered new interface driver ums-usbat
[    1.778146] usbcore: registered new interface driver usbserial
[    1.785051] usbcore: registered new interface driver usbserial_generic
[    1.792747] usbserial: USB Serial support registered for generic
[    1.799841] usbcore: registered new interface driver option
[    1.806281] usbserial: USB Serial support registered for GSM modem (1-port)
[    1.814366] usb_serial_number:20080411
[    1.818944] sunxi_gpadc_init,1831, success
[    1.824293] sunxi_gpadc_setup: get channel scan data failed
[    1.831139] input: sunxi-gpadc0 as /devices/virtual/input/input0
[    1.839279] sunxi-rtc rtc: rtc core: registered sunxi-rtc as rtc0
[    1.846577] sunxi-rtc rtc: RTC enabled
[    1.851309] i2c /dev entries driver
[    1.855951] sunxi cedar version 0.1
[    1.860288] VE: install start!!!
[    1.860288]
[    1.865756] cedar_ve: cedar-ve the get irq is 291
[    1.871276] VE: line 1811 set the sram data
[    1.871276]
[    1.878170] VE: ve_debug_proc_info:c04f6108, data:c3bac000, lock:c04f6190
[    1.878170]
[    1.887757] VE: install end!!!
[    1.887757]
[    1.893349] google_vp9: sunxi google vp9 version 0.1
[    1.900199] sunxi-wdt 30090a0.watchdog: Watchdog enabled (timeout=16 sec, nowayout=0)
[    1.911241] sunxi-mmc sdc0: SD/MMC/SDIO Host Controller Driver(v3.37 2019-12-4 9:48)
[    1.920456] sunxi-mmc sdc0: ***ctl-spec-caps*** 8
[    1.925801] sunxi-mmc sdc0: No vmmc regulator found
[    1.931428] sunxi-mmc sdc0: No vqmmc regulator found
[    1.937031] sunxi-mmc sdc0: No vdmmc regulator found
[    1.942638] sunxi-mmc sdc0: No vd33sw regulator found
[    1.948337] sunxi-mmc sdc0: No vd18sw regulator found
[    1.954099] sunxi-mmc sdc0: No vq33sw regulator found
[    1.959837] sunxi-mmc sdc0: No vq18sw regulator found
[    1.965530] sunxi-mmc sdc0: Cann't get uart0 pinstate,check if needed
[    1.972829] sunxi-mmc sdc0: Cann't get sleep pinstate,check if needed
[    1.980575] sunxi-mmc sdc0: set host busy
[    1.985193] mmc:failed to get gpios
[    1.989134] sunxi-mmc sdc0: min-frequency:100000
[    1.994647] sunxi-mmc sdc0: sdc set ios:clk 0Hz bm PP pm UP vdd 21 width 1 timing LEGACY(SDR12) dt B
[    2.005125] sunxi-mmc sdc0: no vqmmc,Check if there is regulator
[    2.039665] sunxi-mmc sdc0: sdc set ios:clk 400000Hz bm PP pm ON vdd 21 width 1 timing LEGACY(SDR12) dt B
[    2.079664] sunxi-mmc sdc0: detmode:alway in(non removable)
[    2.079692] sunxi-mmc sdc0: sdc set ios:clk 400000Hz bm PP pm ON vdd 21 width 1 timing LEGACY(SDR12) dt B
[    2.088085] sunxi-mmc sdc0: sdc set ios:clk 400000Hz bm PP pm ON vdd 21 width 1 timing LEGACY(SDR12) dt B
[    2.111114] sunxi-mmc sdc0: sdc set ios:clk 400000Hz bm PP pm ON vdd 21 width 1 timing LEGACY(SDR12) dt B
[    2.122205] sunxi-mmc sdc1: SD/MMC/SDIO Host Controller Driver(v3.37 2019-12-4 9:48)
[    2.122347] sunxi-mmc sdc1: No vmmc regulator found
[    2.122353] sunxi-mmc sdc1: No vqmmc regulator found
[    2.122358] sunxi-mmc sdc1: No vdmmc regulator found
[    2.122363] sunxi-mmc sdc1: No vd33sw regulator found
[    2.122369] sunxi-mmc sdc1: No vd18sw regulator found
[    2.122374] sunxi-mmc sdc1: No vq33sw regulator found
[    2.122380] sunxi-mmc sdc1: No vq18sw regulator found
[    2.122396] sunxi-mmc sdc1: Cann't get uart0 pinstate,check if needed
[    2.122840] sunxi-mmc sdc1: set host busy
[    2.122904] mmc:failed to get gpios
[    2.123193] sunxi-mmc sdc1: sdc set ios:clk 0Hz bm PP pm UP vdd 21 width 1 timing LEGACY(SDR12) dt B
[    2.123224] sunxi-mmc sdc1: no vqmmc,Check if there is regulator
[    2.154631] sunxi-mmc sdc1: sdc set ios:clk 400000Hz bm PP pm ON vdd 21 width 1 timing LEGACY(SDR12) dt B
[    2.183663] sunxi-mmc sdc1: detmode:manually by software
[    2.229241] sunxi-mmc sdc0: sdc set ios:clk 400000Hz bm PP pm ON vdd 21 width 1 timing LEGACY(SDR12) dt B
[    2.243212] sunxi-mmc sdc1: smc 1 p1 err, cmd 52, RTO !!
[    2.250058] sunxi-mmc sdc1: smc 1 p1 err, cmd 52, RTO !!
[    2.256107] sunxi-mmc sdc1: sdc set ios:clk 400000Hz bm PP pm ON vdd 21 width 1 timing LEGACY(SDR12) dt B
[    2.267932] usbcore: registered new interface driver usbhid
[    2.267934] usbhid: USB HID core driver
[    2.268226] mostcore: init()
[    2.269234] sunxi_i2c_drv_core_process()1020 - [i2c2] Timeout when sending 9th SCL clk
[    2.269526] i2c_sunxi_drv_complete()1194 - [i2c2] incomplete xfer(status: 0x1, dev addr: 0x3b)
[    2.269682] sunxi_i2c_drv_core_process()1020 - [i2c2] Timeout when sending 9th SCL clk
[    2.269827] i2c_sunxi_drv_complete()1194 - [i2c2] incomplete xfer(status: 0x1, dev addr: 0x3b)
[    2.269942] sunxi_i2c_drv_core_process()1020 - [i2c2] Timeout when sending 9th SCL clk
[    2.269964] i2c_sunxi_drv_complete()1194 - [i2c2] incomplete xfer(status: 0x1, dev addr: 0x3b)
[    2.270085] sunxi_i2c_drv_core_process()1020 - [i2c2] Timeout when sending 9th SCL clk
[    2.270114] i2c_sunxi_drv_complete()1194 - [i2c2] incomplete xfer(status: 0x1, dev addr: 0x3b)
[    2.270226] sunxi_i2c_drv_core_process()1020 - [i2c2] Timeout when sending 9th SCL clk
[    2.270244] i2c_sunxi_drv_complete()1194 - [i2c2] incomplete xfer(status: 0x1, dev addr: 0x3b)
[    2.270350] sunxi_i2c_drv_core_process()1020 - [i2c2] Timeout when sending 9th SCL clk
[    2.270367] i2c_sunxi_drv_complete()1194 - [i2c2] incomplete xfer(status: 0x1, dev addr: 0x3b)
[    2.270468] sunxi_i2c_drv_core_process()1020 - [i2c2] Timeout when sending 9th SCL clk
[    2.270483] i2c_sunxi_drv_complete()1194 - [i2c2] incomplete xfer(status: 0x1, dev addr: 0x3b)
[    2.270590] sunxi_i2c_drv_core_process()1020 - [i2c2] Timeout when sending 9th SCL clk
[    2.270606] i2c_sunxi_drv_complete()1194 - [i2c2] incomplete xfer(status: 0x1, dev addr: 0x3b)
[    2.270714] sunxi_i2c_drv_core_process()1020 - [i2c2] Timeout when sending 9th SCL clk
[    2.270730] i2c_sunxi_drv_complete()1194 - [i2c2] incomplete xfer(status: 0x1, dev addr: 0x3b)
[    2.270837] sunxi_i2c_drv_core_process()1020 - [i2c2] Timeout when sending 9th SCL clk
[    2.270856] i2c_sunxi_drv_complete()1194 - [i2c2] incomplete xfer(status: 0x1, dev addr: 0x3b)
[    2.270966] sunxi_i2c_drv_core_process()1020 - [i2c2] Timeout when sending 9th SCL clk
[    2.271009] i2c_sunxi_drv_complete()1194 - [i2c2] incomplete xfer(status: 0x1, dev addr: 0x3b)
[    2.271115] sunxi_i2c_drv_core_process()1020 - [i2c2] Timeout when sending 9th SCL clk
[    2.271130] i2c_sunxi_drv_complete()1194 - [i2c2] incomplete xfer(status: 0x1, dev addr: 0x3b)
[    2.277481] sunxi_i2c_drv_core_process()1020 - [i2c2] Timeout when sending 9th SCL clk
[    2.277544] i2c_sunxi_drv_complete()1194 - [i2c2] incomplete xfer(status: 0x1, dev addr: 0x3b)
[    2.281937] sunxi_i2c_drv_core_process()1020 - [i2c2] Timeout when sending 9th SCL clk
[    2.281996] i2c_sunxi_drv_complete()1194 - [i2c2] incomplete xfer(status: 0x1, dev addr: 0x3b)
[    2.285291] sunxi_i2c_drv_core_process()1020 - [i2c2] Timeout when sending 9th SCL clk
[    2.285323] i2c_sunxi_drv_complete()1194 - [i2c2] incomplete xfer(status: 0x1, dev addr: 0x3b)
[    2.294278] sunxi_i2c_drv_core_process()1020 - [i2c2] Timeout when sending 9th SCL clk
[    2.294329] i2c_sunxi_drv_complete()1194 - [i2c2] incomplete xfer(status: 0x1, dev addr: 0x3b)
[    2.304101] sunxi_i2c_drv_core_process()1020 - [i2c2] Timeout when sending 9th SCL clk
[    2.304162] i2c_sunxi_drv_complete()1194 - [i2c2] incomplete xfer(status: 0x1, dev addr: 0x3b)
[    2.304270] sunxi_i2c_drv_core_process()1020 - [i2c2] Timeout when sending 9th SCL clk
[    2.304311] i2c_sunxi_drv_complete()1194 - [i2c2] incomplete xfer(status: 0x1, dev addr: 0x3b)
[    2.313266] sunxi_i2c_drv_core_process()1020 - [i2c2] Timeout when sending 9th SCL clk
[    2.313318] i2c_sunxi_drv_complete()1194 - [i2c2] incomplete xfer(status: 0x1, dev addr: 0x3b)
[    2.323081] sunxi_i2c_drv_core_process()1020 - [i2c2] Timeout when sending 9th SCL clk
[    2.323128] i2c_sunxi_drv_complete()1194 - [i2c2] incomplete xfer(status: 0x1, dev addr: 0x3b)
[    2.332108] sunxi_i2c_drv_core_process()1020 - [i2c2] Timeout when sending 9th SCL clk
[    2.332150] i2c_sunxi_drv_complete()1194 - [i2c2] incomplete xfer(status: 0x1, dev addr: 0x3b)
[    2.332177] mmc0: host does not support reading read-only switch, assuming write-enable
[    2.341907] sunxi_i2c_drv_core_process()1020 - [i2c2] Timeout when sending 9th SCL clk
[    2.341940] i2c_sunxi_drv_complete()1194 - [i2c2] incomplete xfer(status: 0x1, dev addr: 0x3b)
[    2.341981] sunxi-mmc sdc0: sdc set ios:clk 400000Hz bm PP pm ON vdd 21 width 1 timing SD-HS(SDR25) dt B
[    2.342044] sunxi_i2c_drv_core_process()1020 - [i2c2] Timeout when sending 9th SCL clk
[    2.342119] sunxi-mmc sdc0: sdc set ios:clk 50000000Hz bm PP pm ON vdd 21 width 1 timing SD-HS(SDR25) dt B
[    2.342253] i2c_sunxi_drv_complete()1194 - [i2c2] incomplete xfer(status: 0x1, dev addr: 0x3b)
[    2.342308] sunxi-mmc sdc0: sdc set ios:clk 50000000Hz bm PP pm ON vdd 21 width 4 timing SD-HS(SDR25) dt B
[    2.342358] sunxi_i2c_drv_core_process()1020 - [i2c2] Timeout when sending 9th SCL clk
[    2.342385] mmc0: new high speed SDHC card at address 0001
[    2.342928] i2c_sunxi_drv_complete()1194 - [i2c2] incomplete xfer(status: 0x1, dev addr: 0x3b)
[    2.351923] sunxi_i2c_drv_core_process()1020 - [i2c2] Timeout when sending 9th SCL clk
[    2.351983] i2c_sunxi_drv_complete()1194 - [i2c2] incomplete xfer(status: 0x1, dev addr: 0x3b)
[    2.352000] ac108 2-003b: ref_cfg.ref_channel:0x3, set ref_pga_gain:16
[    2.352107] sunxi_i2c_drv_core_process()1020 - [i2c2] Timeout when sending 9th SCL clk
[    2.352125] i2c_sunxi_drv_complete()1194 - [i2c2] incomplete xfer(status: 0x1, dev addr: 0x3b)
[    2.352229] sunxi_i2c_drv_core_process()1020 - [i2c2] Timeout when sending 9th SCL clk
[    2.352331] i2c_sunxi_drv_complete()1194 - [i2c2] incomplete xfer(status: 0x1, dev addr: 0x3b)
[    2.352444] sunxi_i2c_drv_core_process()1020 - [i2c2] Timeout when sending 9th SCL clk
[    2.352471] mmcblk0: mmc0:0001 ASTC 7.50 GiB
[    2.352832] i2c_sunxi_drv_complete()1194 - [i2c2] incomplete xfer(status: 0x1, dev addr: 0x3b)
[    2.352949] sunxi_i2c_drv_core_process()1020 - [i2c2] Timeout when sending 9th SCL clk
[    2.353012] i2c_sunxi_drv_complete()1194 - [i2c2] incomplete xfer(status: 0x1, dev addr: 0x3b)
[    2.353123] sunxi_i2c_drv_core_process()1020 - [i2c2] Timeout when sending 9th SCL clk
[    2.353315] i2c_sunxi_drv_complete()1194 - [i2c2] incomplete xfer(status: 0x1, dev addr: 0x3b)
[    2.353430] sunxi_i2c_drv_core_process()1020 - [i2c2] Timeout when sending 9th SCL clk
[    2.353453] i2c_sunxi_drv_complete()1194 - [i2c2] incomplete xfer(status: 0x1, dev addr: 0x3b)
[    2.353561] sunxi_i2c_drv_core_process()1020 - [i2c2] Timeout when sending 9th SCL clk
[    2.353581] i2c_sunxi_drv_complete()1194 - [i2c2] incomplete xfer(status: 0x1, dev addr: 0x3b)
[    2.363381] sunxi_i2c_drv_core_process()1020 - [i2c2] Timeout when sending 9th SCL clk
[    2.363492] i2c_sunxi_drv_complete()1194 - [i2c2] incomplete xfer(status: 0x1, dev addr: 0x3b)
[    2.372800]  mmcblk0: p1 p2 p3 p4 p5
[    2.393706] random: fast init done
[    2.440888] sunxi_i2c_drv_core_process()1020 - [i2c2] Timeout when sending 9th SCL clk
[    2.440916] i2c_sunxi_drv_complete()1194 - [i2c2] incomplete xfer(status: 0x1, dev addr: 0x3b)
[    2.449862] sunxi_i2c_drv_core_process()1020 - [i2c2] Timeout when sending 9th SCL clk
[    2.449893] i2c_sunxi_drv_complete()1194 - [i2c2] incomplete xfer(status: 0x1, dev addr: 0x3b)
[    2.449943] ac108 2-003b: i2c probe succeed.
[    2.459877] sunxi_i2c_drv_core_process()1020 - [i2c2] Timeout when sending 9th SCL clk
[    2.459910] i2c_sunxi_drv_complete()1194 - [i2c2] incomplete xfer(status: 0x1, dev addr: 0x35)
[    2.468845] sunxi_i2c_drv_core_process()1020 - [i2c2] Timeout when sending 9th SCL clk
[    2.468876] i2c_sunxi_drv_complete()1194 - [i2c2] incomplete xfer(status: 0x1, dev addr: 0x35)
[    2.478594] sunxi_i2c_drv_core_process()1020 - [i2c2] Timeout when sending 9th SCL clk
[    2.478616] i2c_sunxi_drv_complete()1194 - [i2c2] incomplete xfer(status: 0x1, dev addr: 0x35)
[    2.487565] sunxi_i2c_drv_core_process()1020 - [i2c2] Timeout when sending 9th SCL clk
[    2.487592] i2c_sunxi_drv_complete()1194 - [i2c2] incomplete xfer(status: 0x1, dev addr: 0x35)
[    2.497317] sunxi_i2c_drv_core_process()1020 - [i2c2] Timeout when sending 9th SCL clk
[    2.497338] i2c_sunxi_drv_complete()1194 - [i2c2] incomplete xfer(status: 0x1, dev addr: 0x35)
[    2.506284] sunxi_i2c_drv_core_process()1020 - [i2c2] Timeout when sending 9th SCL clk
[    2.506311] i2c_sunxi_drv_complete()1194 - [i2c2] incomplete xfer(status: 0x1, dev addr: 0x35)
[    2.516036] sunxi_i2c_drv_core_process()1020 - [i2c2] Timeout when sending 9th SCL clk
[    2.516057] i2c_sunxi_drv_complete()1194 - [i2c2] incomplete xfer(status: 0x1, dev addr: 0x35)
[    2.524996] sunxi_i2c_drv_core_process()1020 - [i2c2] Timeout when sending 9th SCL clk
[    2.525023] i2c_sunxi_drv_complete()1194 - [i2c2] incomplete xfer(status: 0x1, dev addr: 0x35)
[    2.534754] sunxi_i2c_drv_core_process()1020 - [i2c2] Timeout when sending 9th SCL clk
[    2.534776] i2c_sunxi_drv_complete()1194 - [i2c2] incomplete xfer(status: 0x1, dev addr: 0x35)
[    2.543715] sunxi_i2c_drv_core_process()1020 - [i2c2] Timeout when sending 9th SCL clk
[    2.543741] i2c_sunxi_drv_complete()1194 - [i2c2] incomplete xfer(status: 0x1, dev addr: 0x35)
[    2.553469] sunxi_i2c_drv_core_process()1020 - [i2c2] Timeout when sending 9th SCL clk
[    2.553489] i2c_sunxi_drv_complete()1194 - [i2c2] incomplete xfer(status: 0x1, dev addr: 0x35)
[    2.562430] sunxi_i2c_drv_core_process()1020 - [i2c2] Timeout when sending 9th SCL clk
[    2.562456] i2c_sunxi_drv_complete()1194 - [i2c2] incomplete xfer(status: 0x1, dev addr: 0x35)
[    2.572180] sunxi_i2c_drv_core_process()1020 - [i2c2] Timeout when sending 9th SCL clk
[    2.572200] i2c_sunxi_drv_complete()1194 - [i2c2] incomplete xfer(status: 0x1, dev addr: 0x35)
[    2.581142] sunxi_i2c_drv_core_process()1020 - [i2c2] Timeout when sending 9th SCL clk
[    2.581169] i2c_sunxi_drv_complete()1194 - [i2c2] incomplete xfer(status: 0x1, dev addr: 0x35)
[    2.590891] sunxi_i2c_drv_core_process()1020 - [i2c2] Timeout when sending 9th SCL clk
[    2.590912] i2c_sunxi_drv_complete()1194 - [i2c2] incomplete xfer(status: 0x1, dev addr: 0x35)
[    2.599853] sunxi_i2c_drv_core_process()1020 - [i2c2] Timeout when sending 9th SCL clk
[    2.599879] i2c_sunxi_drv_complete()1194 - [i2c2] incomplete xfer(status: 0x1, dev addr: 0x35)
[    2.609593] sunxi_i2c_drv_core_process()1020 - [i2c2] Timeout when sending 9th SCL clk
[    2.609611] i2c_sunxi_drv_complete()1194 - [i2c2] incomplete xfer(status: 0x1, dev addr: 0x35)
[    2.618558] sunxi_i2c_drv_core_process()1020 - [i2c2] Timeout when sending 9th SCL clk
[    2.618583] i2c_sunxi_drv_complete()1194 - [i2c2] incomplete xfer(status: 0x1, dev addr: 0x35)
[    2.628299] sunxi_i2c_drv_core_process()1020 - [i2c2] Timeout when sending 9th SCL clk
[    2.628320] i2c_sunxi_drv_complete()1194 - [i2c2] incomplete xfer(status: 0x1, dev addr: 0x35)
[    2.637264] sunxi_i2c_drv_core_process()1020 - [i2c2] Timeout when sending 9th SCL clk
[    2.637291] i2c_sunxi_drv_complete()1194 - [i2c2] incomplete xfer(status: 0x1, dev addr: 0x35)
[    2.647005] sunxi_i2c_drv_core_process()1020 - [i2c2] Timeout when sending 9th SCL clk
[    2.647027] i2c_sunxi_drv_complete()1194 - [i2c2] incomplete xfer(status: 0x1, dev addr: 0x35)
[    2.655961] sunxi_i2c_drv_core_process()1020 - [i2c2] Timeout when sending 9th SCL clk
[    2.655987] i2c_sunxi_drv_complete()1194 - [i2c2] incomplete xfer(status: 0x1, dev addr: 0x35)
[    2.665712] sunxi_i2c_drv_core_process()1020 - [i2c2] Timeout when sending 9th SCL clk
[    2.665733] i2c_sunxi_drv_complete()1194 - [i2c2] incomplete xfer(status: 0x1, dev addr: 0x35)
[    2.674673] sunxi_i2c_drv_core_process()1020 - [i2c2] Timeout when sending 9th SCL clk
[    2.674700] i2c_sunxi_drv_complete()1194 - [i2c2] incomplete xfer(status: 0x1, dev addr: 0x35)
[    2.684418] sunxi_i2c_drv_core_process()1020 - [i2c2] Timeout when sending 9th SCL clk
[    2.684440] i2c_sunxi_drv_complete()1194 - [i2c2] incomplete xfer(status: 0x1, dev addr: 0x35)
[    2.684452] ac108 2-0035: ref_cfg.ref_channel:0x3, set ref_pga_gain:16
[    2.693490] sunxi_i2c_drv_core_process()1020 - [i2c2] Timeout when sending 9th SCL clk
[    2.693517] i2c_sunxi_drv_complete()1194 - [i2c2] incomplete xfer(status: 0x1, dev addr: 0x35)
[    2.702463] sunxi_i2c_drv_core_process()1020 - [i2c2] Timeout when sending 9th SCL clk
[    2.702485] i2c_sunxi_drv_complete()1194 - [i2c2] incomplete xfer(status: 0x1, dev addr: 0x35)
[    2.712208] sunxi_i2c_drv_core_process()1020 - [i2c2] Timeout when sending 9th SCL clk
[    2.712240] i2c_sunxi_drv_complete()1194 - [i2c2] incomplete xfer(status: 0x1, dev addr: 0x35)
[    2.722937] sunxi_i2c_drv_core_process()1020 - [i2c2] Timeout when sending 9th SCL clk
[    2.722958] i2c_sunxi_drv_complete()1194 - [i2c2] incomplete xfer(status: 0x1, dev addr: 0x35)
[    2.731890] sunxi_i2c_drv_core_process()1020 - [i2c2] Timeout when sending 9th SCL clk
[    2.731918] i2c_sunxi_drv_complete()1194 - [i2c2] incomplete xfer(status: 0x1, dev addr: 0x35)
[    2.742809] sunxi_i2c_drv_core_process()1020 - [i2c2] Timeout when sending 9th SCL clk
[    2.742830] i2c_sunxi_drv_complete()1194 - [i2c2] incomplete xfer(status: 0x1, dev addr: 0x35)
[    2.752558] sunxi_i2c_drv_core_process()1020 - [i2c2] Timeout when sending 9th SCL clk
[    2.752583] i2c_sunxi_drv_complete()1194 - [i2c2] incomplete xfer(status: 0x1, dev addr: 0x35)
[    2.763484] sunxi_i2c_drv_core_process()1020 - [i2c2] Timeout when sending 9th SCL clk
[    2.763504] i2c_sunxi_drv_complete()1194 - [i2c2] incomplete xfer(status: 0x1, dev addr: 0x35)
[    2.841845] sunxi_i2c_drv_core_process()1020 - [i2c2] Timeout when sending 9th SCL clk
[    2.841871] i2c_sunxi_drv_complete()1194 - [i2c2] incomplete xfer(status: 0x1, dev addr: 0x35)
[    2.851602] sunxi_i2c_drv_core_process()1020 - [i2c2] Timeout when sending 9th SCL clk
[    2.851623] i2c_sunxi_drv_complete()1194 - [i2c2] incomplete xfer(status: 0x1, dev addr: 0x35)
[    2.851658] ac108 2-0035: i2c probe succeed.
[    2.852321] --->sunxi_daudio_dev_probe<--- strat.
[    2.852458] sunxi-daudio daudio0: regulator missing or invalid
[    2.852591] --->sunxi_daudio_dev_probe<--- end.
[    2.853206] digital_vol:0, lineout_vol:31, main_gain:23, pa_msleep:160, pa_level:1
[    2.853217] adcdrc_cfg:0, adchpf_cfg:1, dacdrc_cfg:1, dachpf:0
[    2.853304] sunxi-internal-codec codec: [sunxi_internal_codec_probe] codec probe finished.
[    2.855337] NET: Registered protocol family 10
[    2.866276] NET: Registered protocol family 17
[    2.866335] NET: Registered protocol family 15
[    2.867235] Registering SWP/SWPB emulation handler
[    3.758277] get det_vbus is fail, 84
[    3.763496] sunxi-mmc sdc1: sdc set ios:clk 400000Hz bm PP pm ON vdd 21 width 1 timing LEGACY(SDR12) dt B
[    3.775539] sunxi-mmc sdc1: smc 1 p1 err, cmd 8, RTO !!
[    3.781539] sunxi-mmc sdc1: smc 1 p1 err, cmd 5, RTO !!
[    3.787466] sunxi-mmc sdc1: smc 1 p1 err, cmd 5, RTO !!
[    3.793392] sunxi-mmc sdc1: smc 1 p1 err, cmd 5, RTO !!
[    3.799337] sunxi-mmc sdc1: smc 1 p1 err, cmd 5, RTO !!
[    3.805243] sunxi-mmc sdc1: smc 1 p1 err, cmd 55, RTO !!
[    3.811271] sunxi-mmc sdc1: smc 1 p1 err, cmd 55, RTO !!
[    3.817286] sunxi-mmc sdc1: smc 1 p1 err, cmd 55, RTO !!
[    3.823300] sunxi-mmc sdc1: smc 1 p1 err, cmd 55, RTO !!
[    3.823336] sunxi-mmc sdc1: sdc set ios:clk 400000Hz bm OD pm ON vdd 21 width 1 timing LEGACY(SDR12) dt B
[    3.829413] sunxi-mmc sdc1: smc 1 p1 err, cmd 1, RTO !!
[    3.829437] sunxi-mmc sdc1: sdc set ios:clk 0Hz bm PP pm OFF vdd 0 width 1 timing LEGACY(SDR12) dt B
[    3.857492] get id is fail, 84
[    3.861831] sunxi-rtc rtc: setting system clock to 1970-01-01 00:00:14 UTC (14)
[    3.871232] snddaudio snddaudio0: codec: ac108.2-003b, codec_dai: ac108-pcm0.
[    3.879863] snddaudio snddaudio0: ac108-pcm0 <-> daudio0 mapping ok
[    3.888417] ALSA device list:
[    3.892147]   #0: sndac108.2-003b
[    3.897959] EXT4-fs (mmcblk0p4): couldn't mount as ext3 due to feature incompatibilities
[    3.917550] EXT4-fs (mmcblk0p4): mounted filesystem without journal. Opts: (null)
[    3.926300] VFS: Mounted root (ext4 filesystem) readonly on device 179:4.
[    3.934320] Freeing unused kernel memory: 144K
[    3.939313] This architecture does not have kernel memory protection.
[    4.131255] EXT4-fs (mmcblk0p4): warning: mounting unchecked fs, running e2fsck is recommended
[    4.149331] EXT4-fs error (device mmcblk0p4): ext4_has_uninit_itable:3049: comm mount: Inode table for bg 0 marked as needing zeroing
[    4.167142] EXT4-fs (mmcblk0p4): Remounting filesystem read-only
[    4.173953] EXT4-fs (mmcblk0p4): re-mounted. Opts: block_validity,delalloc,barrier,user_xattr
------run rc.preboot file-----
[    4.380446] EXT4-fs (mmcblk0p5): mounted filesystem with ordered data mode. Opts: (null)
------run rc.modules file-----
------run rc.final file-----
Load mpp modules
[    4.587991] [sensor_power_err]fetch sensor0_phase from device_tree failed
[    4.660372] [VIN_ERR]registering sp2305_mipi, No such device!
Initializing random number generator... [    4.764930] random: dd: uninitialized urandom read (512 bytes read)
done.
Starting network...
[    5.002227] get wifi_sdc_id failed
[    5.136274] get wifi_sdc_id failed
insmod: can't insert '/lib/modules/4.9.118/8189fs.ko': Operation not permitted
ifconfig: SIOCGIFFLAGS: No such device
Successfully initialized wpa_supplicant
Line 6: Invalid passphrase length 0 (expected: 8..63) '"'.
Line 6: failed to parse psk '""'.
Line 7: failed to parse network block.
Failed to read or parse configuration '/etc/wpa_supplicant.conf'.
udhcpc: SIOCGIFINDEX: No such device
Starting telnetd: OK
enable android usb
[    7.287701] file system registered
[    7.299173] Mass Storage Function, version: 2009/09/11
[    7.305141] LUN: removable file: (no medium)
/etc/init.d/S50usb: line 99: adbd: not found
[    9.333862] configfs-gadget 5100000.udc-controller: failed to start g1: -19
sh: write error: No such device
generate key
[    9.372748] random: dropbearkey: uninitialized urandom read (32 bytes read)
[    9.383051] random: dropbearkey: uninitialized urandom read (32 bytes read)
[   17.871736] random: dropbearkey: uninitialized urandom read (32 bytes read)
Public key portion is:
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCc05XIzsTw+EDtxmBTRCYwcOducpcsP2davEwD8MfusgVOpBt4e3YDrts56O67rhlMcLJAIbZ3/Khzm+Jg8TnbIBYHoc/2K3Wjv6+ezOqSzX1ClXuwj3ARy8ipycWip0fWDnhvQBpO7YtybC3wWPmCFGQCks7pidmbLwIo3WPo7BfhwH27ayFLFXIpneOqczd9CFzInwy6h4qGMIGwUBMsdk[   17.903404] random: dropbear: uninitialized urandom read (32 bytes read)
tIJAjnsefmNjeh4w/NcPARE97IvUQTJSd7Qopp9LZC3PLZaoM2jMHl9NyVkhs9Ww0rFAYULEo+bc6BTSfwhRbW4MaPC2VxgvSM1P2R/4We9IYWDa6kunpD0lkokaXf root@YuzukiIRC
Fingerprint: md5 90:a3:29:f0:9f:26:80:8f:d4:da:40:f2:9b:44:18:8b
Start dropbear: OK
Starting ntpd: done

board.dts

/*
 * Allwinner Technology CO., Ltd. sun8iw19p1 soc board.
 *
 * soc board support.
 */

/dts-v1/;

#include "sun8iw19p1.dtsi"

/{
	dram: dram {
		dram_clk = <0x000001e0>;
		dram_type = <0x00000003>;
		dram_zq = <0x00003bfb>;
		dram_odt_en = <0x00000001>;
		dram_para1 = <0x004310f2>;
		dram_para2 = <0x02000000>;
		dram_mr0 = <0x00001c70>;
		dram_mr1 = <0x00000000>;
		dram_mr2 = <0x00000018>;
		dram_mr3 = <0x00000000>;
		dram_tpr0 = <0x0046190d>;
		dram_tpr1 = <0x0121210a>;
		dram_tpr2 = <0x0005403b>;
		dram_tpr3 = <0x00002006>;
		dram_tpr4 = <0x05040405>;
		dram_tpr5 = <0x05050302>;
		dram_tpr6 = <0x90006644>;
		dram_tpr7 = <0x42c21590>;
		dram_tpr8 = <0xd05612c0>;
		dram_tpr9 = <0x00083def>;
		dram_tpr10 = <0x00000000>;
		dram_tpr11 = <0x00210000>;
		dram_tpr12 = <0x00000055>;
		dram_tpr13 = <0x00006003>;
	};

	opp_dvfs_table:opp_dvfs_table {
		cluster_num = <1>;
		opp_table_count = <1>;

		cpu_opp_l_table0: opp_l_table0 {
			compatible = "allwinner,opp_l_table0";
			opp_count = <2>;
			opp-shared;

			opp00 {
				opp-hz = /bits/ 64 <600000000>;
				opp-microvolt = <900000>;
				axi-bus-divide-ratio = <3>;
				clock-latency-ns = <2000000>;
			};

			opp01 {
				opp-hz = /bits/ 64 <816000000>;
				opp-microvolt = <900000>;
				axi-bus-divide-ratio = <3>;
				clock-latency-ns = <2000000>;
			};
		};
	};
	soc@03000000 {
		pinctrl@0300b000 {

			twi0_pins_a: twi0@0 {
				allwinner,pins = "PI3", "PI4";
				allwinner,pname = "twi0_scl", "twi0_sda";
				allwinner,function = "twi0";
				allwinner,muxsel = <5>;
				allwinner,drive = <1>;
				allwinner,pull = <0>;
			};

			twi0_pins_b: twi0@1 {
				allwinner,pins = "PI3", "PI4";
				allwinner,function = "io_disabled";
				allwinner,muxsel = <7>;
				allwinner,drive = <1>;
				allwinner,pull = <0>;
			};

			twi1_pins_a: twi1@0 {
				allwinner,pins = "PI1", "PI2";
				allwinner,pname = "twi1_scl", "twi1_sda";
				allwinner,function = "twi1";
				allwinner,muxsel = <5>;
				allwinner,drive = <1>;
				allwinner,pull = <0>;
			};

			twi1_pins_b: twi1@1 {
				allwinner,pins = "PI1", "PI2";
				allwinner,function = "io_disabled";
				allwinner,muxsel = <7>;
				allwinner,drive = <1>;
				allwinner,pull = <0>;
			};

			twi2_pins_a: twi2@0 {
				allwinner,pins = "PH5", "PH6";
				allwinner,pname = "twi2_scl", "twi2_sda";
				allwinner,function = "twi2";
				allwinner,muxsel = <5>;
				allwinner,drive = <1>;
				allwinner,pull = <0>;
			};

			twi2_pins_b: twi2@1 {
				allwinner,pins = "PH5", "PH6";
				allwinner,function = "io_disabled";
				allwinner,muxsel = <7>;
				allwinner,drive = <1>;
				allwinner,pull = <0>;
			};

			spi0_pins_a: spi0@0 {
				allwinner,pins = "PC0", "PC2", "PC3",
						"PC5", "PC4";
				allwinner,pname = "spi0_sclk", "spi0_mosi",
						  "spi0_miso", "spi0_hold", "spi0_wp";
				allwinner,function = "spi0";
				allwinner,muxsel = <4>;
				allwinner,drive = <1>;
				allwinner,pull = <0>;
			};

			spi0_pins_b: spi0@1 {
				allwinner,pins = "PC1", "PC6";
				allwinner,pname = "spi0_cs0", "spi0_cs1";
				allwinner,function = "spi0";
				allwinner,muxsel = <4>;
				allwinner,drive = <1>;
				allwinner,pull = <1>; 	// only CS should be pulled up
			};

			spi0_pins_c: spi0@2 {
				allwinner,pins = "PC0", "PC1", "PC2", "PC3",
						"PC4", "PC5", "PC6";
				allwinner,function = "io_disabled";
				allwinner,muxsel = <7>;
				allwinner,drive = <1>;
				allwinner,pull = <0>;
			};

			spi1_pins_a: spi1@0 {
				allwinner,pins = "PH0", "PH1", "PH2";
				allwinner,pname = "spi1_sclk", "spi1_mosi",
						  "spi1_miso";
				allwinner,function = "io_disabled";
				allwinner,muxsel = <4>;
				allwinner,drive = <1>;
				allwinner,pull = <0>;
			};

			spi1_pins_b: spi1@1 {
				allwinner,pins = "PH3";
				allwinner,pname = "spi1_cs0";
				allwinner,function = "io_disabled";
				allwinner,muxsel = <4>;
				allwinner,drive = <1>;
				allwinner,pull = <1>; // only CS should be pulled up
			};

			spi1_pins_c: spi1@2 {
				allwinner,pins = "PH0", "PH1", "PH2", "PH3";
				allwinner,function = "io_disabled";
				allwinner,muxsel = <7>;
				allwinner,drive = <1>;
				allwinner,pull = <0>;
			};

			sdc0_pins_a: sdc0@0 {
				allwinner,pins = "PF0", "PF1", "PF2", "PF3",
						"PF4", "PF5";
				allwinner,function = "sdc0";
				allwinner,muxsel = <2>;
				allwinner,drive = <3>;
				allwinner,pull = <1>;
			};

			sdc0_pins_b: sdc0@1 {
				allwinner,pins = "PF0", "PF1", "PF2", "PF3",
						"PF4", "PF5";
				allwinner,function = "io_disabled";
				allwinner,muxsel = <7>;
				allwinner,drive = <1>;
				allwinner,pull = <0>;
			};

			sdc1_pins_a: sdc1@0 {
				allwinner,pins = "PG0", "PG1", "PG2", "PG3",
						"PG4", "PG5";
				allwinner,function = "sdc1";
				allwinner,muxsel = <2>;
				allwinner,drive = <3>;
				allwinner,pull = <1>;
			};

			owc0_pins_a: owc0@0 {
				allwinner,pins = "PH4";
				allwinner,pname = "owc0";
				allwinner,function = "owc0";
				allwinner,muxsel = <5>;
				allwinner,drive = <1>;
				allwinner,pull = <0>;
			};

			owc0_pins_b: owc0_sleep@0 {
				allwinner,pins = "PH4";
				allwinner,function = "io_disabled";
				allwinner,muxsel = <7>;
				allwinner,drive = <1>;
				allwinner,pull = <0>;
			};
			pwm0_pins_a: pwm0@0 {
				allwinner,pins = "PH0";
				allwinner,pname = "pwm0_positive";
				allwinner,function = "pwm0";
				allwinner,muxsel = <2>;
				allwinner,drive = <1>;
				allwinner,pull = <0>;
			};

			pwm0_pins_b: pwm0@1 {
				allwinner,pins = "PH0";
				allwinner,function = "io_disabled";
				allwinner,muxsel = <7>;
				allwinner,drive = <1>;
				allwinner,pull = <0>;
			};

			pwm1_pins_a: pwm1@0 {
				allwinner,pins = "PH1";
				allwinner,pname = "pwm1_positive";
				allwinner,function = "pwm1";
				allwinner,muxsel = <2>;
				allwinner,drive = <1>;
				allwinner,pull = <0>;
			};

			pwm1_pins_b: pwm1@1 {
				allwinner,pins = "PH1";
				allwinner,function = "io_disabled";
				allwinner,muxsel = <7>;
				allwinner,drive = <1>;
				allwinner,pull = <0>;
			};

			pwm2_pins_a: pwm2@0 {
				allwinner,pins = "PH2";
				allwinner,pname = "pwm2_positive";
				allwinner,function = "pwm2";
				allwinner,muxsel = <2>;
				allwinner,drive = <1>;
				allwinner,pull = <0>;
			};

			pwm2_pins_b: pwm2@1 {
				allwinner,pins = "PH2";
				allwinner,function = "io_disabled";
				allwinner,muxsel = <7>;
				allwinner,drive = <1>;
				allwinner,pull = <0>;
			};

			pwm3_pins_a: pwm3@0 {
				allwinner,pins = "PH3";
				allwinner,pname = "pwm3_positive";
				allwinner,function = "pwm3";
				allwinner,muxsel = <2>;
				allwinner,drive = <1>;
				allwinner,pull = <0>;
			};

			pwm3_pins_b: pwm3@1 {
				allwinner,pins = "PH3";
				allwinner,function = "io_disabled";
				allwinner,muxsel = <7>;
				allwinner,drive = <1>;
				allwinner,pull = <0>;
			};

			pwm4_pins_a: pwm4@0 {
				allwinner,pins = "PH4";
				allwinner,pname = "pwm4_positive";
				allwinner,function = "pwm4";
				allwinner,muxsel = <2>;
				allwinner,drive = <1>;
				allwinner,pull = <0>;
			};

			pwm4_pins_b: pwm4@1 {
				allwinner,pins = "PH4";
				allwinner,function = "io_disabled";
				allwinner,muxsel = <7>;
				allwinner,drive = <1>;
				allwinner,pull = <0>;
			};

			// pwm5_pins_a: pwm5@0 {
			// 	allwinner,pins = "PH5";
			// 	allwinner,pname = "pwm5_positive";
			// 	allwinner,function = "pwm5";
			// 	allwinner,muxsel = <2>;
			// 	allwinner,drive = <1>;
			// 	allwinner,pull = <0>;
			// };

			// pwm5_pins_b: pwm5@1 {
			// 	allwinner,pins = "PH5";
			// 	allwinner,function = "io_disabled";
			// 	allwinner,muxsel = <7>;
			// 	allwinner,drive = <1>;
			// 	allwinner,pull = <0>;
			// };

			//pwm6_pins_a: pwm6@0 {
			//	allwinner,pins = "PH6";
			//	allwinner,pname = "pwm6_positive";
			//	allwinner,function = "pwm6";
			//	allwinner,muxsel = <2>;
			//	allwinner,drive = <1>;
			//	allwinner,pull = <0>;
		//	};

		//	//pwm6_pins_b: pwm6@1 {
		//		allwinner,pins = "PH6";
		//		allwinner,function = "io_disabled";
		//		allwinner,muxsel = <7>;
		//		allwinner,drive = <1>;
		//		allwinner,pull = <0>;
		//	};

			pwm7_pins_a: pwm7@0 {
				allwinner,pins = "PH7";
				allwinner,pname = "pwm7_positive";
				allwinner,function = "pwm7";
				allwinner,muxsel = <2>;
				allwinner,drive = <1>;
				allwinner,pull = <0>;
			};

			pwm7_pins_b: pwm7@1 {
				allwinner,pins = "PH7";
				allwinner,function = "io_disabled";
				allwinner,muxsel = <7>;
				allwinner,drive = <1>;
				allwinner,pull = <0>;
			};

			pwm8_pins_a: pwm8@0 {
				allwinner,pins = "PH8";
				allwinner,pname = "pwm8_positive";
				allwinner,function = "pwm8";
				allwinner,muxsel = <2>;
				allwinner,drive = <1>;
				allwinner,pull = <0>;
			};

			pwm8_pins_b: pwm8@1 {
				allwinner,pins = "PH8";
				allwinner,function = "io_disabled";
				allwinner,muxsel = <7>;
				allwinner,drive = <1>;
				allwinner,pull = <0>;
			};
			
			pwm9_pins_a: pwm9@0 {
				allwinner,pins = "PH9";
				allwinner,pname = "pwm9_positive";
				allwinner,function = "pwm9";
				allwinner,muxsel = <2>;
				allwinner,drive = <1>;
				allwinner,pull = <0>;
			};

			pwm9_pins_b: pwm9@1 {
				allwinner,pins = "PH9";
				allwinner,function = "io_disabled";
				allwinner,muxsel = <7>;
				allwinner,drive = <1>;
				allwinner,pull = <0>;
			};

			rgb8_pins_a: rgb8@0 {
				allwinner,pins = "PD1", "PD2", "PD3", "PD4", "PD5", "PD6",
						"PD7", "PD8", "PD18", "PD19", "PD20";
				allwinner,pname = "lcdd3", "lcdd4", "lcdd5", "lcdd6", "lcdd7",
						"lcdd10", "lcdd11", "lcdd12", "lcdclk", "lcdde",
							"lcdhsync";
				allwinner,function = "lcd0";
				allwinner,muxsel = <2>;
				allwinner,drive = <1>;
				allwinner,pull = <0>;
			};

			rgb8_pins_b: rgb8@1 {
				allwinner,pins = "PD1", "PD2","PD3","PD4","PD5","PD6",
						"PD7","PD8","PD18","PD19","PD20";
				allwinner,function = "io_disabled";
				allwinner,muxsel = <7>;
				allwinner,drive = <1>;
				allwinner,pull = <0>;
			};
		};

		gpadc:gpadc{
			channel_num = <1>;
			channel_select = <0x01>;
			channel_data_select = <0>;
			channel_compare_select = <0x01>;
			channel_cld_select = <0x01>;
			channel_chd_select = <0x01>;
			channel0_compare_lowdata = <1700000>;
			channel0_compare_higdata = <1200000>;
			key_cnt =  <2>;
			key0_vol = <0>;
			key0_val = <2>; /* KEY_1 */
			key1_vol = <160>;
			key1_val = <3>; /* KEY_2 */
			status = "okay";
		};

		uart1: uart@05000400 {
			compatible = "allwinner,sun8i-uart";
			device_type = "uart1";
			reg = <0x0 0x05000400 0x0 0x400>;
			interrupts = <GIC_SPI 50 IRQ_TYPE_LEVEL_HIGH>;
			clocks = <&clk_uart1>;
			pinctrl-names = "default", "sleep";
			pinctrl-0 = <&uart1_pins_a>;
			pinctrl-1 = <&uart1_pins_b>;
			uart1_port = <1>;
			uart1_type = <4>;
			status = "okay";
		};

		// uart3: uart@05000c00 {
		// 	compatible = "allwinner,sun8i-uart";
		// 	device_type = "uart3";
		// 	reg = <0x0 0x05000c00 0x0 0x400>;
		// 	interrupts = <GIC_SPI 52 IRQ_TYPE_LEVEL_HIGH>;
		// 	clocks = <&clk_uart3>;
		// 	pinctrl-names = "default", "sleep";
		// 	pinctrl-0 = <&uart3_pins_a>;
		// 	pinctrl-1 = <&uart3_pins_b>;
		// 	uart3_port = <3>;
		// 	uart3_type = <4>;
		// 	status = "okay";
		// };

		twi0: twi@0x05002000{
			pinctrl-0 = <&twi0_pins_a>;
			pinctrl-1 = <&twi0_pins_b>;
			twi_drv_used = <1>;
			status = "disable";
		};

		twi1: twi@0x05002400{
			pinctrl-0 = <&twi1_pins_a>;
			pinctrl-1 = <&twi1_pins_b>;
			clock-frequency = <400000>;
			status = "okay";
		};

		twi2: twi@0x05002800{
			pinctrl-0 = <&twi2_pins_a>;
			pinctrl-1 = <&twi2_pins_b>;
			clock-frequency = <200000>;
			status = "okay";
			ac108@3b{
				#sound-dai-cells = <0>;
				compatible = "Allwinner,MicArray_0";
				reg = <0x3b>;
				regulator_used = <0x0>;
				power_voltage = <3300000>;
				regulator_name = "vcc-3v3";
				power_gpio_used = <0x0>;
				reset_gpio_used = <0x0>;
				twi_bus = <2>;
				pga_gain = <0x1F>;
				slot_width = <0x20>;
				lrck_period = <0x80>;
				ref_pga_used = <0x1>;
				ref_pga_gain = <0x10>;
				ref_channel = <0x3>;
				debug_mode = <0x0>;
				status = "okay";
				
			};

			ac108@35{
				compatible = "Allwinner,MicArray_1";
				reg = <0x35>;
				regulator_used = <0x0>;
				power_voltage = <3300000>;
				regulator_name = "vcc-3v3";
				power_gpio_used = <0x0>;
				reset_gpio_used = <0x0>;
				twi_bus = <2>;
				pga_gain = <0x1F>;
				slot_width = <0x20>;
				lrck_period = <0x80>;
				ref_pga_used = <0x1>;
				ref_pga_gain = <0x10>;
				ref_channel = <0x3>;
				debug_mode = <0x0>;
				status = "okay";
			};
		};

		spi@05010000 {
			pinctrl-0 = <&spi0_pins_a &spi0_pins_b>;
			pinctrl-1 = <&spi0_pins_c>;
			status = "disable";
			spi_board0 {
				device_type = "spi_board0";
				compatible = "m25p80";
				spi-max-frequency = <0x5f5e100>;
				reg = <0x0>;
				spi-rx-bus-width = <0x1>;
				spi-tx-bus-width = <0x1>;
			};
		};

	//	spi@05011000 {
	//		#address-cells = <1>;
	//		#size-cells = <0>;
	//		reg = <0x0 0x05011000 0x0 0x1000>;
	//		interrupts = <GIC_SPI 55 IRQ_TYPE_LEVEL_HIGH>;
	//		clocks = <&clk_pll_periph0>, <&clk_spi1>;
	//		clock-frequency = <200000000>;
	//		pinctrl-names = "default", "sleep";
	//		pinctrl-0 = <&spi1_pins_b>;
	//		pinctrl-1 = <&spi1_pins_c>;
	//		spi1_cs_number = <2>;
	//		spi1_cs_bitmap = <3>;
	//		status = "okay";
	//		spi_board1 {
	//			device_type = "spi_board1";
	//			compatible = "spidev";
	//			spi-max-frequency = <0x5f5e100>;
	//			reg = <0x0>;
	//			spi-rx-bus-width = <0x1>;
	//			spi-tx-bus-width = <0x1>;
	//		};
	//	};

		vind0:vind@0 {
			vind0_clk = <270000000>;
			vind0_isp = <200000000>;
			status = "okay";

			actuator0:actuator@0 {
				device_type = "actuator0";
				actuator0_name = "ad5820_act";
				actuator0_slave = <0x18>;
				actuator0_af_pwdn = <>;
				actuator0_afvdd = "afvcc-csi";
				actuator0_afvdd_vol = <2800000>;
				status = "disabled";
			};
			flash0:flash@0 {
				device_type = "flash0";
				flash0_type = <2>;
				flash0_en = <>;
				flash0_mode = <>;
				flash0_flvdd = "";
				flash0_flvdd_vol = <>;
				device_id = <0>;
				status = "disabled";
			};
			sensor0:sensor@0 {
				device_type = "sensor0";
				// sensor0_mname = "ov9732_mipi";
				sensor0_mname = "sp2305_mipi";
				sensor0_twi_cci_id = <1>;
				// sensor0_twi_addr = <0x6c>;
				sensor0_twi_addr = <0x78>;
				sensor0_mclk_id = <0>;
				sensor0_pos = "rear";
				sensor0_isp_used = <1>;
				sensor0_fmt = <1>;
				sensor0_stby_mode = <0>;
				sensor0_vflip = <0>;
				sensor0_hflip = <0>;
				sensor0_iovdd-supply = <>;
				sensor0_iovdd_vol = <1800000>;
				sensor0_avdd-supply = <>;
				sensor0_avdd_vol = <2800000>;
				sensor0_dvdd-supply = <>;
				sensor0_dvdd_vol = <1200000>;
				sensor0_power_en = <>;
				/* board error, we can not use the right config. */
				sensor0_reset = <&pio PE 16 1 0 1 0>;
				sensor0_pwdn = <&pio PE 17 1 0 1 0>;
				status	= "okay";
			};
			sensor1:sensor@1 {
				device_type = "sensor1";
				sensor1_mname = "ov5647";
				sensor1_twi_cci_id = <0>;
				sensor1_twi_addr = <0x6c>;
				sensor1_mclk_id = <1>;
				sensor1_pos = "front";
				sensor1_isp_used = <0>;
				sensor1_fmt = <0>;
				sensor1_stby_mode = <0>;
				sensor1_vflip = <0>;
				sensor1_hflip = <0>;
				sensor1_iovdd-supply = <>;
				sensor1_iovdd_vol = <2800000>;
				sensor1_avdd-supply = <>;
				sensor1_avdd_vol = <2800000>;
				sensor1_dvdd-supply = <>;
				sensor1_dvdd_vol = <1500000>;
				sensor1_power_en = <>;
				sensor1_reset = <&pio PI 3 1 0 1 0>;
				sensor1_pwdn = <&pio PI 4 1 0 1 0>;
				status	= "disabled";
			};
			vinc0:vinc@0 {
				vinc0_csi_sel = <0>;
				vinc0_mipi_sel = <0>;
				vinc0_isp_sel = <0>;
				vinc0_isp_tx_ch = <0>;
				vinc0_rear_sensor_sel = <0>;
				vinc0_front_sensor_sel = <0>;
				vinc0_sensor_list = <0>;
				status = "okay";
			};
			vinc1:vinc@1 {
				vinc1_csi_sel = <0>;
				vinc1_mipi_sel = <0>;
				vinc1_isp_sel = <0>;
				vinc1_isp_tx_ch = <0>;
				vinc1_rear_sensor_sel = <0>;
				vinc1_front_sensor_sel = <0>;
				vinc1_sensor_list = <0>;
				status = "okay";
			};
			vinc2:vinc@2 {
				vinc2_csi_sel = <0>;
				vinc2_mipi_sel = <0>;
				vinc2_isp_sel = <0>;
				vinc2_isp_tx_ch = <0>;
				vinc2_rear_sensor_sel = <0>;
				vinc2_front_sensor_sel = <0>;
				vinc2_sensor_list = <0>;
				status = "disabled";
			};
			vinc3:vinc@3 {
				vinc3_csi_sel = <1>;
				vinc3_mipi_sel = <0xff>;
				vinc3_isp_sel = <1>;
				vinc3_isp_tx_ch = <0>;
				vinc3_rear_sensor_sel = <1>;
				vinc3_front_sensor_sel = <1>;
				vinc3_sensor_list = <0>;
				status = "disabled";
			};
		};
	//	s_owc0: s_owc@07040400 {
	//		pinctrl-0 = <&owc0_pins_a>;
	//		pinctrl-1 = <&owc0_pins_b>;
	//		status = "okay";
	//	};

		sdc0: sdmmc@04020000 {
			pinctrl-0 = <&sdc0_pins_a>;
			bus-width = <4>;
			// cd-gpios = <&pio PF 6 0 1 3 0xffffffff>;
			non-removable;
			card-pwr-gpios;// = <&pio PC 4 1 1 2 0xffffffff>;
			sunxi-power-save-mode;
			sunxi-signal-vol-sw-without-pmu;
			sd-uhs-sdr50;
			sd-uhs-ddr50;
			sd-uhs-sdr104;
			/*sunxi-dis-signal-vol-sw;*/
			max-frequency = <150000000>;
			min-frequency = <100000>;
			cd-used-24M;
			no-sdio;
			/*broken-cd;*/
			ctl-spec-caps = <0x8>;
			status = "okay";
		};

		card0_boot_para {
			device_type = "card0_boot_para";
			card_ctrl = <0x0>;
			card_high_speed = <0x1>;
			card_line = <0x4>;
			time_pwroff_ms = <200>;
			pinctrl-1 = <&sdc0_pins_b>;
			card-pwr-gpios;// = <&pio PC 4 1 1 2 0xffffffff>;
			status = "okay";
		};

		sdc1: sdmmc@04021000 {
			pinctrl-0 = <&sdc1_pins_a>;
			bus-width = <4>;
			/*sunxi-power-save-mode;*/
			/*sd-uhs-sdr12*/
			/*sd-uhs-sdr25*/
			/*sd-uhs-sdr50*/
			/*sd-uhs-sdr104*/
			/*sunxi-dis-signal-vol-sw;*/
			cap-sdio-irq;
			keep-power-in-suspend;
			ignore-pm-notify;
			max-frequency = <50000000>;
			status = "okay";
		};

		usbc0:usbc0@0{
			usb_port_type = <0x2>;
			usb_detect_type = <0x1>;
			usb_detect_mode = <0>;
			usb_id_gpio;
			usb_det_vbus_gpio;
			usb_drv_vbus_gpio;
			usb_host_init_state = <0>;
			status = "okay";
		};

		disp: disp@01000000 {
			disp_init_enable		= <1>;
			disp_mode				= <0>;

			screen0_output_type		= <1>;
			screen0_output_mode		= <4>;

			disp_rotation_used 		= <1>;
			degree0					= <0>;
			fb0_format				= <8>;
			fb0_width				= <240>;
			fb0_height				= <240>;
			// fb0_height				= <320>;

			lcd0_backlight			= <50>;
			lcd0_bright				= <50>;
			lcd0_contrast			= <50>;
			lcd0_saturation			= <57>;
			lcd0_hue				= <50>;
		};

		lcd0: lcd0@01c0c000 {
			lcd_used            = <1>;

			lcd_size			= "1.3";
			lcd_model_name		= "inv";
			lcd_driver_name     = "st7789v_cpu";

			lcd_x               = <240>;
			lcd_y               = <240>;
			lcd_width           = <108>;
			lcd_height          = <64>;
			lcd_dclk_freq       = <10>;

			lcd_backlight       = <50>;

			lcd_pwm_used        = <0>;
			lcd_pwm_ch          = <1>;
			lcd_pwm_freq        = <50000>;
			lcd_pwm_pol         = <1>;
			lcd_pwm_max_limit   = <255>;

			lcd_hbp             = <60>;
			lcd_ht              = <298>;
			lcd_hspw            = <30>;
			lcd_vbp             = <250>;
			lcd_vt              = <265>;
			lcd_vspw            = <2>;

			lcd_if              = <1>;
			lcd_frm             = <2>;
			lcd_cpu_mode        = <1>;
			lcd_cpu_te          = <0>;
			lcd_cpu_if	        = <14>;

			lcd_io_phase        = <0x0000>;
			lcdgamma4iep        = <22>;
			lcd_gamma_en        = <0>;
			lcd_cmap_en         = <0>;
			lcd_bright_curve_en = <0>;
			lcd_rb_swap			= <0>;

			lcd_gpio_0 = <&pio PH 5 1 0 3 0>; /* rst */
			lcd_gpio_1 = <&pio PD 21 1 0 3 0>; /* cs */

			pinctrl-0 = <&rgb8_pins_a>;
			pinctrl-1 = <&rgb8_pins_b>;
		};

		daudio0:daudio@0x05090000 {
			mclk_div = <0x1>;
			frametype = <0x00>;
			tdm_config = <0x00>;
			sign_extend = <0x00>;
			tx_data_mode = <0x00>;
			rx_data_mode = <0x00>;
			msb_lsb_first = <0x00>;
			pcm_lrck_period = <0x80>;
			slot_width_select = <0x20>;
			asrc_function_en = <0x00>;
			daudio_master =  <0x04>;
			signal_inversion =  <0x01>;
			audio_format =  <0x01>;
			status = "okay";
			

		};

		daudio1:daudio@0x05091000 {
			mclk_div = <0x01>;
			frametype = <0x00>;
			tdm_config = <0x01>;
			sign_extend = <0x00>;
			tx_data_mode = <0x00>;
			rx_data_mode = <0x00>;
			msb_lsb_first = <0x00>;
			pcm_lrck_period = <0x80>;
			slot_width_select = <0x20>;
			status = "disabled";
		};

		codec:codec@0x05096000 {
			pa_level = <0x1>;
			main_gain = <0x17>;
			adcdrc_cfg = <0x00>;
			adchpf_cfg = <0x01>;
			dacdrc_cfg = <0x01>;
			dachpf_cfg = <0x00>;
			digital_vol = <0x00>;
			lineout_vol = <0x1f>;
			pa_msleep_time = <0xa0>;
			/* gpio-spk = <&pio PH 14 1 1 1 1>; */
			status = "okay";
		};
		
		sndcodec:sound@0 {
			status = "disabled";
		};

		snddaudio0:sound@1 {
			audio_format = <0x01>;
			daudio_master = <0x04>;
			signal_inversion = <0x01>;
			sunxi,snddaudio-codec = "ac108.2-003b";
			sunxi,snddaudio-codec-dai = "ac108-pcm0";
			sunxi,cpudai-controller = <&daudio0>;
			status = "okay";

		};

		snddaudio1:sound@2 {
			audio_format = <0x01>;
			daudio_master = <0x04>;
			signal_inversion = <0x01>;
			status = "disabled";
		};
	};

	//wlan:wlan {
	//	compatible = "allwinner,sunxi-wlan";
	//	clocks = <&clk_losc_out>;
	//	wlan_busnum = <1>;
	//	wlan_usbnum = <3>;
	//	wakeup_source = <0>;
//
//		/* wlan_power-supply = <&reg_dcdc1>; */
//		/* io_regulator-supply = <&reg_dcdc5>; */
//
//		/* wlan_power_vol = <3300000>; */
//		/* io_regulator_vol = <3300000>; */
//
//		/* wlan_en; */
//		wlan_regon = <&pio PH 4 1 0 1 0>;
//		/* wlan_hostwake = <&pio PG 7 0 0 1 0>; */
//		wlan_hostwake;
//		status = "okay";
//	};
};

sun8iw19p.dtsi

/*
 * Allwinner Technology CO., Ltd. sun8iw19p1 platform
 *
 * modify base on juno.dts
 */

/* kernel used */
/memreserve/ 0x41980000 0x00018000; /* optee:0x41980000~0x41998000,size=96k */
#include <dt-bindings/interrupt-controller/arm-gic.h>
#include <dt-bindings/gpio/gpio.h>
#include "sun8iw19p1-clk.dtsi"
#include "sun8iw19p1-pinctrl.dtsi"
#include <dt-bindings/thermal/thermal.h>
/ {
	model = "sun8iw19";
	compatible = "allwinner,sun8iw19p1";
	interrupt-parent = <&wakeupgen>;
	#address-cells = <2>;
	#size-cells = <2>;

	aliases {
		serial0 = &uart0;
		serial1 = &uart1;
		serial2 = &uart2;
		serial3 = &uart3;
		twi0 = &twi0;
		twi1 = &twi1;
		twi2 = &twi2;
		twi3 = &twi3;
		twi4 = &twi4;
		spi0 = &spi0;
		spi1 = &spi1;
		spi2 = &spi2;
		gmac0 = &gmac0;

		global_timer0  = &soc_timer0;
		mmc0 = &sdc0;
		mmc2 = &sdc2;
		/*nand0 =&nand0;*/
		disp = &disp;
		lcd0 = &lcd0;
		/*hdmi = &hdmi;*/
		pwm = &pwm;
		pwm0 = &pwm0;
		pwm1 = &pwm1;
		pwm2 = &pwm2;
		pwm3 = &pwm3;
		pwm4 = &pwm4;
		pwm5 = &pwm5;
		pwm6 = &pwm6;
		pwm7 = &pwm7;
		pwm8 = &pwm8;
		pwm9 = &pwm9;
		/*tv0 = &tv0;
		vdpo0 = &vdpo0;*/
		boot_disp = &boot_disp;
	};

	chosen {
		bootargs = "earlyprintk=sunxi-uart,0x05000000 loglevel=8 initcall_debug=0 console=ttyS0 init=/init";
		linux,initrd-start = <0x0 0x0>;
		linux,initrd-end = <0x0 0x0>;
	};

	cpus {
		enable-method = "allwinner,sun8iw19p1";
		#address-cells = <1>;
		#size-cells = <0>;

		cpu0: cpu@0 {
			device_type = "cpu";
			compatible = "arm,cortex-a7";
			reg = <0x0>;
			enable-method = "psci";
			clocks = <&clk_pll_cpu>;
			clock-frequency = <1008000000>;
			clock-latency = <2000000>;
		/* if divide bin <&cpu_opp_l_table0 &cpu_opp_l_table1> */
			operating-points-v2 = <&cpu_opp_l_table0>;
			cpu-idle-states = <&CPU_SLEEP_0 &CLUSTER_SLEEP_0 &SYS_SLEEP_0>;
			cooling-min-level = <5>;
			cooling-max-level = <0>;
			#cooling-cells = <2>; /* min followed by max */
			dynamic-power-coefficient = <150>;
		};

		idle-states {
			entry-method = "arm,psci";

			CPU_SLEEP_0: cpu-sleep-0 {
				compatible = "arm,idle-state";
				arm,psci-suspend-param = <0x0010000>;
				entry-latency-us = <45>;
				exit-latency-us = <90>;
				min-residency-us = <3000>;
				local-timer-stop;
			};

			CLUSTER_SLEEP_0: cluster-sleep-0 {
				compatible = "arm,idle-state";
				arm,psci-suspend-param = <0x1010000>;
				entry-latency-us = <55>;
				exit-latency-us = <570>;
				min-residency-us = <17000>;
				local-timer-stop;
			};

			SYS_SLEEP_0: sys-sleep-0 {
				compatible = "arm,idle-state";
				arm,psci-suspend-param = <0x2010000>;
				entry-latency-us = <0xffffffff>;
				exit-latency-us = <0xffffffff>;
				min-residency-us = <0xffffffff>;
				local-timer-stop;
			};
		};
	};

	psci {
		compatible = "arm,psci-1.0";
		method = "smc";
	};
	n_brom {
		compatible = "allwinner,n-brom";
		reg = <0x0 0x0 0x0 0xc000>;
	};

	s_brom {
		compatible = "allwinner,s-brom";
		reg = <0x0 0x0 0x0 0x10000>;
	};

	sram_ctrl {
		device_type = "sram_ctrl";
		compatible = "allwinner,sram_ctrl";
		reg = <0x0 0x03000000 0x0 0x100>;
	};

	sram_a1 {
		compatible = "allwinner,sram_a1";
		reg = <0x0 0x00010000 0x0 0x10000>;
	};

	sram_a2 {
		compatible = "allwinner,sram_a2";
		reg = <0x0 0x00040000 0x0 0x14000>;
	};

	prcm {
		compatible = "allwinner,prcm";
		reg = <0x0 0x01f01400 0x0 0x400>;
	};

	cpuscfg {
		compatible = "allwinner,cpuscfg";
		reg = <0x0 0x01f01c00 0x0 0x400>;
	};

	ion {
		compatible = "allwinner,sunxi-ion";
		/*
		*types list here:
			ION_HEAP_TYPE_SYSTEM = 0,
			ION_HEAP_TYPE_SYSTEM_CONTIG = 1,
			ION_HEAP_TYPE_CARVEOUT = 2,
			ION_HEAP_TYPE_CHUNK = 3,
			ION_HEAP_TYPE_DMA = 4,
			ION_HEAP_TYPE_SECURE = 6,
		**/
		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_sys_contig@0{
			compatible = "allwinner,sys_contig";
			heap-name  = "sys_contig";
			heap-id    = <0x1>;
			heap-base  = <0x0>;
			heap-size  = <0x0>;
			heap-type  = "ion_contig";
		};
		/*heap_carveout@0{
			compatible = "allwinner,carveout";
			heap-name  = "carveout";
			heap-id    = <0x2>;
			heap-base  = <0x0>;
			heap-size  = <0x0>;
			heap-type  = "ion_carveout";
		};*/
		heap_cma@0{
			compatible = "allwinner,cma";
			heap-name  = "cma";
			heap-id    = <0x4>;
			heap-base  = <0x0>;
			heap-size  = <0x0>;
			heap-type  = "ion_cma";
		};

	};

	dram: dram {
		compatible = "allwinner,dram";
		device_type = "dram";
		clocks = <&clk_pll_ddr0>;
		clock-names = "pll_ddr0";
	};

	memory@40000000 {
		device_type = "memory";
		reg = <0x00000000 0x40000000 0x00000000 0x20000000>;
	};

	gic: interrupt-controller@03020000 {
		compatible = "arm,cortex-a15-gic", "arm,cortex-a9-gic";
		#interrupt-cells = <3>;
		#address-cells = <0>;
		device_type = "gic";
		interrupt-controller;
		reg = <0x0 0x03021000 0 0x1000>, /* GIC Dist */
		      <0x0 0x03022000 0 0x2000>, /* GIC CPU */
		      <0x0 0x03024000 0 0x2000>, /* GIC VCPU Control */
		      <0x0 0x03026000 0 0x2000>; /* GIC VCPU */
		interrupts = <GIC_PPI 9 0xf04>; /* GIC Maintenence IRQ */
		interrupt-parent = <&gic>;
	};

	nmi_intc: intc-nmi@07010320 {
		compatible = "allwinner,sun8i-nmi";
		interrupt-parent = <&gic>;
		#interrupt-cells = <2>;
		#address-cells = <0>;
		interrupt-controller;
		reg = <0x0 0x07010320 0 0xc>;
		pad-control-v1 = <0x07000208>;
		interrupts = <GIC_SPI 104 4>;
	};

	wakeupgen: interrupt-controller@0 {
		compatible = "allwinner,sunxi-wakeupgen";
		interrupt-controller;
		#interrupt-cells = <3>;
		interrupt-parent = <&gic>;
	};

	sid: sunxi-sid@03006000 {
		compatible = "allwinner,sunxi-sid";
		device_type = "sid";
		reg = <0x0 0x03006000 0 0x200>;
	};

	chipid: sunxi-chipid@03006200 {
		compatible = "allwinner,sunxi-chipid";
		device_type = "chipid";
		reg = <0x0 0x03006200 0 0xC0>;
	};

	timer {
		compatible = "arm,armv7-timer";
		interrupts = <GIC_PPI 13 (GIC_CPU_MASK_SIMPLE(2) | IRQ_TYPE_LEVEL_LOW)>, /* Secure Phys IRQ */
			     <GIC_PPI 14 (GIC_CPU_MASK_SIMPLE(2) | IRQ_TYPE_LEVEL_LOW)>, /* Non-secure Phys IRQ */
			     <GIC_PPI 11 (GIC_CPU_MASK_SIMPLE(2) | IRQ_TYPE_LEVEL_LOW)>, /* Virt IRQ */
			     <GIC_PPI 10 (GIC_CPU_MASK_SIMPLE(2) | IRQ_TYPE_LEVEL_LOW)>; /* Hyp IRQ */
		clock-frequency = <24000000>;
		arm,cpu-registers-not-fw-configured;
		interrupt-parent = <&gic>;
	};

	pmu {
		compatible = "arm,cortex-a7-pmu";
		interrupts = <GIC_SPI 140 4>;
	};

	dramfreq {
		compatible = "allwinner,sunxi-dramfreq";
		reg = <0x0 0x01c62000 0x0 0x1000>,
		      <0x0 0x01c63000 0x0 0x1000>,
		      <0x0 0x01c20000 0x0 0x800>;
		interrupts = <GIC_SPI 69 0x4>;
		/* clocks = <&clk_pll_ddr>, <&clk_pll_periph0>, <&clk_ahb1>; */
		status = "okay";
	};

	uboot: uboot {
	};


	mmu_aw: iommu@030f0000 {
		compatible = "allwinner,sunxi-iommu";
		reg = <0x0 0x030f0000 0x0 0x1000>;
		interrupts = <GIC_SPI 95 IRQ_TYPE_LEVEL_HIGH>;
		interrupt-names = "iommu-irq";
		clocks = <&clk_iommu>;
		clock-names = "iommu";
		/*clock-frequency = <24000000>; */
		#iommu-cells = <2>;
		status = "okay";
	};

	mbus0:mbus-controller@047FA000 {
		compatible = "allwinner,sun8i-mbus";
		reg = <0x0 0x04002000 0x0 0x1000>;
		#mbus-cells = <1>;
	};

	ac200: ac200 {
		compatible = "allwinner,sunxi-ac200";
		/* clocks = <&clk_tcon0>; */
		pinctrl-names = "active","sleep";
		status = "okay";
	};

	ramoops@0x48106000 {
		compatible = "ramoops";
		reg = <0x0 0x48106000 0x0 0x60000>;
		record-size  = <0x00020000>;
		console-size = <0x00020000>;
		pmsg-size    = <0x00020000>;
	};

	cpucfg@09010000 {
		compatible = "allwinner,sunxi-cpucfg";
		reg = <0x0 0x09010000 0x0 0xc8>;
	};

	soc: soc@03000000 {
		compatible = "simple-bus";
		#address-cells = <2>;
		#size-cells = <2>;
		ranges;
		device_type = "soc";

		dma0:dma-controller@03002000 {
			compatible = "allwinner,sun8i-dma";
			reg = <0x0 0x03002000 0x0 0x1000>;
			interrupts = <GIC_SPI 10 IRQ_TYPE_LEVEL_HIGH>;
			clocks = <&clk_dma>;
			#dma-cells = <1>;
		};

		soc_timer0: timer@03009000 {
			compatible = "allwinner,sun4i-a10-timer";
			device_type = "soc_timer";
			reg = <0x0 0x03009000 0x0 0x90>;
			interrupts = <GIC_SPI 60 IRQ_TYPE_LEVEL_HIGH>;
			/* On FPGA, timer can only use the losc.
			 * On IC, timer should use the hosc.
			 */
			clocks = <&clk_hosc>, <&clk_losc>;
		};

		rtc: rtc@07000000 {
			compatible = "allwinner,sun8i-rtc", "allwinner,sunxi-rtc";
			device_type = "rtc";
			reg = <0x0 0x07000000 0x0 0x400>;
			interrupts = <GIC_SPI 105 IRQ_TYPE_LEVEL_HIGH>;
			auto_switch;
			wakeup-source;
			gpr_offset = <0x100>;
			gpr_len	   = <8>;
		};

		wdt: watchdog@030090a0 {
			compatible = "allwinner,sun50i-wdt";
			reg = <0x0 0x030090a0 0x0 0x20>;
			interrupts = <GIC_SPI 14 IRQ_TYPE_LEVEL_HIGH>;
		};

		ve@01c0e000 {
			compatible = "allwinner,sunxi-cedar-ve";
			reg = <0x0 0x01c0e000 0x0 0x1000>,
			      <0x0 0x03000000 0x0 0x10>,
			      <0x0 0x03001000 0x0 0x800>,
			      <0x0 0x07010000 0x0 0x300>;
			interrupts = <GIC_SPI 25 IRQ_TYPE_LEVEL_HIGH>;
			clocks = <&clk_pll_uni>, <&clk_ve>;
			iommus = <&mmu_aw 3 1>;
		};

		ise: ise@01c10000 {
			compatible = "allwinner,sunxi-ise";
			reg = <0x0 0x01c10000 0x0 0x1000>,
				  <0x0 0x03001000 0x0 0x800>;
			interrupts = <GIC_SPI 24 4>;
			/*clocks = <&clk_pll_ise>, <&clk_ise>;*/
		};

		eise: eise@0x02300000 {
			compatible = "allwinner,sunxi-eise";
			reg = <0x0 0x02300000 0x0 0x1000>,
				  <0x0 0x03001000 0x0 0x800>;
			interrupts = <GIC_SPI 26 4>;
			clocks = <&clk_pll_uni>, <&clk_eise>;
			iommus = <&mmu_aw 1 1>;
		};

		uart0: uart@05000000 {
			compatible = "allwinner,sun8i-uart";
			device_type = "uart0";
			reg = <0x0 0x05000000 0x0 0x400>;
			interrupts = <GIC_SPI 49 IRQ_TYPE_LEVEL_HIGH>;
			clocks = <&clk_uart0>;
			pinctrl-names = "default", "sleep";
			pinctrl-0 = <&uart0_pins_a>;
			pinctrl-1 = <&uart0_pins_b>;
			uart0_port = <0>;
			uart0_type = <2>;
			status = "okay";
		};

		uart1: uart@05000400 {
			compatible = "allwinner,sun8i-uart";
			device_type = "uart1";
			reg = <0x0 0x05000400 0x0 0x400>;
			interrupts = <GIC_SPI 50 IRQ_TYPE_LEVEL_HIGH>;
			clocks = <&clk_uart1>;
			pinctrl-names = "default", "sleep";
			pinctrl-0 = <&uart1_pins_a>;
			pinctrl-1 = <&uart1_pins_b>;
			uart1_port = <1>;
			uart1_type = <4>;
			status = "disabled";
		};

		uart2: uart@05000800 {
			compatible = "allwinner,sun8i-uart";
			device_type = "uart2";
			reg = <0x0 0x05000800 0x0 0x400>;
			interrupts = <GIC_SPI 51 IRQ_TYPE_LEVEL_HIGH>;
			clocks = <&clk_uart2>;
			pinctrl-names = "default", "sleep";
			pinctrl-0 = <&uart2_pins_a>;
			pinctrl-1 = <&uart2_pins_b>;
			uart2_port = <2>;
			uart2_type = <4>;
			status = "disabled";
		};

		uart3: uart@05000c00 {
			compatible = "allwinner,sun8i-uart";
			device_type = "uart3";
			reg = <0x0 0x05000c00 0x0 0x400>;
			interrupts = <GIC_SPI 52 IRQ_TYPE_LEVEL_HIGH>;
			clocks = <&clk_uart3>;
			pinctrl-names = "default", "sleep";
			pinctrl-0 = <&uart3_pins_a>;
			pinctrl-1 = <&uart3_pins_b>;
			uart3_port = <3>;
			uart3_type = <4>;
			status = "disabled";
		};

		s_owc0: s_owc@07040400 {
			compatible = "allwinner,sunxi-owc";
			device_type = "s_owc0";
			reg = <0x0 0x07040400 0x0 0x30>;
			interrupts = <GIC_SPI 114 IRQ_TYPE_LEVEL_HIGH>;
			clocks = <&clk_hosc>,<&clk_cpurowc>;
			pinctrl-names = "default", "sleep";
			pinctrl-0 = <&owc0_pins_a>;
			pinctrl-1 = <&owc0_pins_b>;
			status = "disabled";
		};

		twi0: twi@0x05002000{
			#address-cells = <1>;
			#size-cells = <0>;
			compatible = "allwinner,sun8i-twi";
			device_type = "twi0";
			reg = <0x0 0x05002000 0x0 0x400>;
			interrupts = <GIC_SPI 41 IRQ_TYPE_LEVEL_HIGH>;
			clocks = <&clk_twi0>;
			clock-frequency = <400000>;
			pinctrl-names = "default", "sleep";
			pinctrl-0 = <&twi0_pins_a>;
			pinctrl-1 = <&twi0_pins_b>;
			twi_drv_used = <1>;
			status = "disable";
		};

		twi1: twi@0x05002400{
			#address-cells = <1>;
			#size-cells = <0>;
			compatible = "allwinner,sun8i-twi";
			device_type = "twi1";
			reg = <0x0 0x05002400 0x0 0x400>;
			interrupts = <GIC_SPI 42 IRQ_TYPE_LEVEL_HIGH>;
			clocks = <&clk_twi1>;
			clock-frequency = <200000>;
			pinctrl-names = "default", "sleep";
			pinctrl-0 = <&twi1_pins_a>;
			pinctrl-1 = <&twi1_pins_b>;
			twi_drv_used = <1>;
			status = "disable";
		};

		twi2: twi@0x05002800{
			#address-cells = <1>;
			#size-cells = <0>;
			compatible = "allwinner,sun8i-twi";
			device_type = "twi2";
			reg = <0x0 0x05002800 0x0 0x400>;
			interrupts = <GIC_SPI 43 IRQ_TYPE_LEVEL_HIGH>;
			clocks = <&clk_twi2>;
			clock-frequency = <200000>;
			pinctrl-names = "default", "sleep";
			pinctrl-0 = <&twi2_pins_a>;
			pinctrl-1 = <&twi2_pins_b>;
			twi_drv_used = <1>;
			status = "disable";
		};

		twi3: twi@0x05002c00{
			#address-cells = <1>;
			#size-cells = <0>;
			compatible = "allwinner,sun8i-twi";
			device_type = "twi3";
			reg = <0x0 0x05002c00 0x0 0x400>;
			interrupts = <GIC_SPI 44 IRQ_TYPE_LEVEL_HIGH>;
			clocks = <&clk_twi3>;
			clock-frequency = <200000>;
			pinctrl-names = "default", "sleep";
			pinctrl-0 = <&twi3_pins_a>;
			pinctrl-1 = <&twi3_pins_b>;
			twi_drv_used = <1>;
			status = "disable";
		};

		twi4: twi@0x07081400{
			#address-cells = <1>;
			#size-cells = <0>;
			compatible = "allwinner,sun8i-twi";
			device_type = "twi4";
			reg = <0x0 0x07081400 0x0 0x400>;
			interrupts = <GIC_SPI 107 IRQ_TYPE_LEVEL_HIGH>;
			clocks = <&clk_stwi>;
			clock-frequency = <200000>;
			pinctrl-names = "default", "sleep";
			pinctrl-0 = <&s_twi0_pins_a>;
			pinctrl-1 = <&s_twi0_pins_b>;
			status = "disabled";
		};

		usbc0:usbc0@0 {
			device_type = "usbc0";
			compatible = "allwinner,sunxi-otg-manager";
			usb_port_type = <2>;
			usb_detect_type = <1>;
			usb_id_gpio;
			usb_det_vbus_gpio;
			usb_drv_vbus_gpio;
			usb_host_init_state = <0>;
			usb_regulator_io = "nocare";
			usb_wakeup_suspend = <0>;
			usb_luns = <3>;
			usb_serial_unique = <0>;
			usb_serial_number = "20080411";
			rndis_wceis = <1>;
			status = "okay";
		};

		udc:udc-controller@0x05100000 {
			compatible = "allwinner,sunxi-udc";
			reg = <0x0 0x05100000 0x0 0x1000>, /*udc base*/
			      <0x0 0x00000000 0x0 0x100>; /*sram base*/
			interrupts = <GIC_SPI 64 IRQ_TYPE_LEVEL_HIGH>;
			clocks = <&clk_usbphy0>, <&clk_usbotg>;
			status = "okay";
		};

		ehci0:ehci0-controller@0x05101000 {
			compatible = "allwinner,sunxi-ehci0";
			reg = <0x0 0x05101000 0x0 0xFFF>, /*hci0 base*/
			      <0x0 0x00000000 0x0 0x100>, /*sram base*/
			      <0x0 0x05100000 0x0 0x1000>; /*otg base*/
			interrupts = <GIC_SPI 65 IRQ_TYPE_LEVEL_HIGH>;
			clocks = <&clk_usbphy0>, <&clk_usbehci0>;
			hci_ctrl_no = <0>;
			status = "okay";
		};

		ohci0:ohci0-controller@0x05101400 {
			compatible = "allwinner,sunxi-ohci0";
			reg = <0x0 0x05101000 0x0 0xFFF>, /*hci0 base*/
			      <0x0 0x00000000 0x0 0x100>, /*sram base*/
			      <0x0 0x05100000 0x0 0x1000>; /*otg base*/
			interrupts = <GIC_SPI 66 IRQ_TYPE_LEVEL_HIGH>;
			clocks = <&clk_usbphy0>, <&clk_usbohci0>, <&clk_usbohci0_12m>,
				 <&clk_osc48md4>, <&clk_hosc>, <&clk_losc>;
			hci_ctrl_no = <0>;
			status = "okay";
		};

		daudio0:daudio@0x05090000 {
			compatible = "allwinner,sunxi-daudio";
			reg = <0x0 0x05090000 0x0 0x7c>;
			clocks = <&clk_pll_audio>,<&clk_i2s0>;
			pinctrl-names = "default", "sleep";
			pinctrl-0 = <&daudio0_pins_a>;
			pinctrl-1 = <&daudio0_pins_b>;
			device_type = "daudio0";
			tdm_num = <0x00>;
			status = "disabled";

			/* pcm platform runtime hwparams config */
			rate_max	 = <0x2ee00>;	/* max rate: 192000 */
			channels_max	 = <0x08>;	/* max chennels: 8 */
			buffer_bytes_max = <0x20000>;	/* max buffer size: 1024 * 128 */
			period_bytes_max = <0x10000>;	/* max period size: 1024 * 64 */
			periods_max 	 = <0x08>;	/* max count of periods: 8 */
			fifo_size	 = <0x80>;	/* fifo size in bytes: 128 */
		};

		daudio1:daudio@0x05091000 {
			compatible = "allwinner,sunxi-daudio";
			reg = <0x0 0x05091000 0x0 0x7c>;
			clocks = <&clk_pll_audio>,<&clk_i2s1>;
			pinctrl-names = "default", "sleep";
			pinctrl-0 = <&daudio1_pins_a>;
			pinctrl-1 = <&daudio1_pins_b>;
			device_type = "daudio1";
			tdm_num = <0x01>;
			status = "disabled";

			/* pcm platform runtime hwparams config */
			rate_max	 = <0x2ee00>;	/* 192000 */
			channels_max	 = <0x08>;	/* 8 */
			buffer_bytes_max = <0x20000>;	/* 1024 * 128 */
			period_bytes_max = <0x10000>;	/* 1024 * 64 */
			periods_max 	 = <0x08>;	/* 8 */
			fifo_size	 = <0x80>;	/* 128 */
		};

		codec:codec@0x05096000 {
			compatible = "allwinner,sunxi-internal-codec";
			reg = <0x0 0x05096000 0x0 0x320>;
			clocks = <&clk_pll_audio>,<&clk_codec_1x>;
			device_type = "codec";
			status = "disabled";

			/* pcm platform runtime hwparams config */
			rate_max	 = <0x2ee00>;	/* 192000 */
			channels_max	 = <0x08>;	/* 8 */
			buffer_bytes_max = <0x20000>;	/* 1024 * 128 */
			period_bytes_max = <0x10000>;	/* 1024 * 64 */
			periods_max 	 = <0x08>;	/* 8 */
			fifo_size	 = <0x80>;	/* 128 */
		};

		sndcodec:sound@0 {
			compatible = "allwinner,sunxi-codec-machine";
			interrupts = <GIC_SPI 28 IRQ_TYPE_LEVEL_HIGH>;
			sunxi,audio-codec = <&codec>;
			device_type = "sndcodec";
			status = "disabled";
		};

		snddaudio0:sound@1{
			compatible = "allwinner,sunxi-daudio0-machine";
			sunxi,daudio-controller = <&daudio0>;
			device_type = "snddaudio0";
			status = "disabled";
		};

		snddaudio1:sound@2{
			compatible = "allwinner,sunxi-daudio1-machine";
			sunxi,daudio-controller = <&daudio1>;
			device_type = "snddaudio1";
			status = "disabled";
		};

		spi0: spi@05010000 {
			#address-cells = <1>;
			#size-cells = <0>;
			compatible = "allwinner,sun8i-spi";
			device_type = "spi0";
			reg = <0x0 0x05010000 0x0 0x1000>;
			interrupts = <GIC_SPI 54 IRQ_TYPE_LEVEL_HIGH>;
			clocks = <&clk_pll_periph0>, <&clk_spi0>;
			clock-frequency = <300000000>;
			pinctrl-names = "default", "sleep";
			pinctrl-0 = <&spi0_pins_a &spi0_pins_b>;
			pinctrl-1 = <&spi0_pins_c>;
			spi0_cs_number = <2>;
			spi0_cs_bitmap = <3>;
			status = "disabled";
		};

		spi1: spi@05011000 {
			#address-cells = <1>;
			#size-cells = <0>;
			compatible = "allwinner,sun8i-spi";
			device_type = "spi1";
			reg = <0x0 0x05011000 0x0 0x1000>;
			interrupts = <GIC_SPI 55 IRQ_TYPE_LEVEL_HIGH>;
			clocks = <&clk_pll_periph0>, <&clk_spi1>;
			clock-frequency = <200000000>;
			pinctrl-names = "default", "sleep";
			pinctrl-0 = <&spi1_pins_a &spi1_pins_b>;
			pinctrl-1 = <&spi1_pins_c>;
			spi1_cs_number = <2>;
			spi1_cs_bitmap = <3>;
			status = "disabled";
		};

		spi2: spi@05012000 {
			#address-cells = <1>;
			#size-cells = <0>;
			compatible = "allwinner,sun8i-spi";
			device_type = "spi2";
			reg = <0x0 0x05012000 0x0 0x1000>;
			interrupts = <GIC_SPI 56 IRQ_TYPE_LEVEL_HIGH>;
			clocks = <&clk_pll_periph0>, <&clk_spi2>;
			clock-frequency = <200000000>;
			pinctrl-names = "default", "sleep";
			pinctrl-0 = <&spi2_pins_a &spi2_pins_b>;
			pinctrl-1 = <&spi2_pins_c>;
			spi2_cs_number = <1>;
			spi2_cs_bitmap = <1>;
			status = "disabled";
		};
/*
		spi3:	spi@05013000 {
			#address-cells = <1>;
			#size-cells = <0>;
			compatible = "allwinner,sun50i-spi";
			device_type = "spi3";
			reg = <0x0 0x05013000 0x0 0x1000>;
			interrupts = <GIC_SPI 57 IRQ_TYPE_LEVEL_HIGH>;
			clocks = <&clk_pll_periph0>, <&clk_spi3>;
			clock-frequency = <200000000>;
			pinctrl-names = "default", "sleep";
			pinctrl-0 = <&spi3_pins_a &spi3_pins_b>;
			pinctrl-1 = <&spi3_pins_c>;
			spi3_cs_number = <1>;
			spi3_cs_bitmap = <1>;
			status = "disabled";
		};
*/
		auto_print {
			device_type = "auto_print";
			status = "okay";
		};

		sdc2: sdmmc@04022000 {
			compatible = "allwinner,sunxi-mmc-v4p5x";
			device_type = "sdc2";
			reg = <0x0 0x04022000 0x0 0x1000>;
			interrupts = <GIC_SPI 48 IRQ_TYPE_LEVEL_HIGH>;
			clocks = <&clk_hosc>,
				 <&clk_pll_unix2>,
				 <&clk_sdmmc2_mod>,
				 <&clk_sdmmc2_bus>,
				 <&clk_sdmmc2_rst>;
			clock-names = "osc24m","pll_periph","mmc","ahb","rst";
			pinctrl-names = "default","sleep";
			pinctrl-0 = <&sdc2_pins_a&sdc2_pins_c>;
			pinctrl-1 = <&sdc2_pins_b>;
			bus-width = <8>;
			/*mmc-ddr-1_8v;*/
			/*mmc-hs200-1_8v;*/
			/*mmc-hs400-1_8v;*/
			cap-sd-highspeed;
			cap-mmc-highspeed;
			cap-wait-while-busy;
			mmc-high-capacity-erase-size;
			cap-erase;
			/*non-removable;*/
			/*max-frequency = <200000000>;*/
			max-frequency = <50000000>;

			/*-- speed mode --*/
			/*sm0: DS26_SDR12*/
			/*sm1: HSSDR52_SDR25*/
			/*sm2: HSDDR52_DDR50*/
			/*sm3: HS200_SDR104*/
			/*sm4: HS400*/
			/*-- frequency point --*/
			/*f0: CLK_400K*/
			/*f1: CLK_25M*/
			/*f2: CLK_50M*/
			/*f3: CLK_100M*/
			/*f4: CLK_150M*/
			/*f5: CLK_200M*/

			sdc_tm4_sm0_freq0 = <0>;
			sdc_tm4_sm0_freq1 = <0>;
			sdc_tm4_sm1_freq0 = <0x00000000>;
			sdc_tm4_sm1_freq1 = <0>;
			sdc_tm4_sm2_freq0 = <0x00000000>;
			sdc_tm4_sm2_freq1 = <0>;
			sdc_tm4_sm3_freq0 = <0x05000000>;
			sdc_tm4_sm3_freq1 = <0x00000005>;
			sdc_tm4_sm4_freq0 = <0x00050000>;
			sdc_tm4_sm4_freq1 = <0x00000004>;

			/*vmmc-supply = <&reg_3p3v>;*/
			/*vqmc-supply = <&reg_3p3v>;*/
			/*vdmc-supply = <&reg_3p3v>;*/
			/*vmmc = "vcc-card";*/
			/*vqmc = "";*/
			/*vdmc = "";*/
			/*sunxi-power-save-mode;*/
			/*status = "disabled";*/
			status = "disable";
		};

		sdc0: sdmmc@04020000 {
			compatible = "allwinner,sunxi-mmc-v4p1x";
			device_type = "sdc0";
			reg = <0x0 0x04020000 0x0 0x1000>;
			interrupts = <GIC_SPI 46 IRQ_TYPE_LEVEL_HIGH>;
			clocks = <&clk_hosc>,
				 <&clk_pll_unix2>,
				 <&clk_sdmmc0_mod>,
				 <&clk_sdmmc0_bus>,
				 <&clk_sdmmc0_rst>;
			clock-names = "osc24m","pll_periph","mmc","ahb","rst";
			pinctrl-names = "default","sleep";
			pinctrl-0 = <&sdc0_pins_a>;
			// pinctrl-1 = <&sdc0_pins_b>;
			// pinctrl-2 = <&sdc0_pins_c>;
			max-frequency = <50000000>;
			bus-width = <4>;
			/*non-removable;*/
			/*broken-cd;*/
			/*cd-inverted*/
			/*cd-gpios = <&pio PF 6 0 1 2 0>;*/
			/* vmmc-supply = <&reg_3p3v>;*/
			/* vqmc-supply = <&reg_3p3v>;*/
			/* vdmc-supply = <&reg_3p3v>;*/
			/*vmmc = "vcc-card";*/
			/*vqmc = "";*/
			/*vdmc = "";*/
			/*sd-uhs-sdr50;*/
			/*sd-uhs-ddr50;*/
			cap-sd-highspeed;
			cap-mmc-highspeed;
			cap-wait-while-busy;
			/*cap-sdio-irq;*/
			/*keep-power-in-suspend;*/
			/*ignore-pm-notify;*/
			/*sunxi-power-save-mode;*/
			/*sunxi-dly-400k = <1 0 0 0>; */
			/*sunxi-dly-26M  = <1 0 0 0>;*/
			/*sunxi-dly-52M  = <1 0 0 0>;*/
			/*sunxi-dly-52M-ddr4  = <1 0 0 0>;*/
			/*sunxi-dly-52M-ddr8  = <1 0 0 0>;*/
			/*sunxi-dly-104M  = <1 0 0 0>;*/
			/*sunxi-dly-208M  = <1 0 0 0>;*/
			/*sunxi-dly-104M-ddr  = <1 0 0 0>;*/
			/*sunxi-dly-208M-ddr  = <1 0 0 0>;*/

			status = "disable";
		};

		sdc1: sdmmc@04021000 {
			compatible = "allwinner,sunxi-mmc-v4p1x";
			device_type = "sdc1";
			reg = <0x0 0x04021000 0x0 0x1000>;
			interrupts = <GIC_SPI 47 IRQ_TYPE_LEVEL_HIGH>;
			clocks = <&clk_hosc>,
				 <&clk_pll_unix2>,
				 <&clk_sdmmc1_mod>,
				 <&clk_sdmmc1_bus>,
				 <&clk_sdmmc1_rst>;
			clock-names = "osc24m","pll_periph","mmc","ahb","rst";
			pinctrl-names = "default","sleep";
			pinctrl-0 = <&sdc1_pins_a>;
			pinctrl-1 = <&sdc1_pins_b>;
			max-frequency = <50000000>;
			bus-width = <4>;
			/*broken-cd;*/
			/*cd-inverted*/
			/*cd-gpios = <&pio PG 6 6 1 2 0>;*/
			/* vmmc-supply = <&reg_3p3v>;*/
			/* vqmc-supply = <&reg_3p3v>;*/
			/* vdmc-supply = <&reg_3p3v>;*/
			/*vmmc = "vcc-card";*/
			/*vqmc = "";*/
			/*vdmc = "";*/
			/*sd-uhs-sdr50;*/
			/*sd-uhs-ddr50;*/
			/*sd-uhs-sdr104;*/
			cap-sd-highspeed;
			cap-mmc-highspeed;
			cap-wait-while-busy;
			/*cap-sdio-irq;*/
			/*keep-power-in-suspend;*/
			/*ignore-pm-notify;*/
			/*sunxi-power-save-mode;*/
			/*sunxi-dly-400k = <1 0 0 0 0>; */
			/*sunxi-dly-26M  = <1 0 0 0 0>;*/
			/*sunxi-dly-52M  = <1 0 0 0 0>;*/
			sunxi-dly-52M-ddr4  = <1 0 0 0 2>;
			/*sunxi-dly-52M-ddr8  = <1 0 0 0 0>;*/
			sunxi-dly-104M  = <1 0 0 0 1>;
			/*sunxi-dly-208M  = <1 1 0 0 0>;*/
			sunxi-dly-208M  = <1 0 0 0 1>;
			/*sunxi-dly-104M-ddr  = <1 0 0 0 0>;*/
			/*sunxi-dly-208M-ddr  = <1 0 0 0 0>;*/

			status = "disabled";
		};

		disp: disp@01000000 {
			compatible = "allwinner,sunxi-disp";
			reg = <0x0 0x01000000 0x0 0x3fffff>,/*de*/
			      <0x0 0x06510000 0x0 0xfff>,/*disp_if_top*/
			      <0x0 0x06511000 0x0 0xfff>,/*tcon_lcd0*/
			      <0x0 0x06504000 0x0 0x2000>;/*dsi0*/
			interrupts = <GIC_SPI 62 IRQ_TYPE_LEVEL_HIGH>,
				   <GIC_SPI 63 IRQ_TYPE_LEVEL_HIGH>,
				   <GIC_SPI 45 IRQ_TYPE_LEVEL_HIGH>; /*dsi0*/
			clocks = <&clk_de>,
				 <&clk_display_top>,
				 <&clk_tcon_lcd>,
				 <&clk_mipi_dphy0>,
				 <&clk_mipi_host0>;
			boot_disp = <0>;
			fb_base = <0>;
			iommus = <&mmu_aw 0 0>;
			status = "okay";
		};

		lcd0: lcd0@01c0c000 {
			compatible = "allwinner,sunxi-lcd0";
			pinctrl-names = "active","sleep";

			status = "okay";
		};
/*
		hdmi: hdmi@06000000 {
			compatible = "allwinner,sunxi-hdmi";
			reg = <0x0 0x06000000 0x0 0x100000>;
			interrupts = <GIC_SPI 64 IRQ_TYPE_NONE>;
			clocks = <&clk_hdmi>,<&clk_hdmi_slow>,<&clk_hdmi_cec>;
			pinctrl-names = "ddc_active","ddc_sleep","cec_active", "cec_sleep";
			pinctrl-0 = <&hdmi_ddc_pin_a>;
			pinctrl-1 = <&hdmi_ddc_pin_b>;
			pinctrl-2 = <&hdmi_cec_pin_a>;
			pinctrl-3 = <&hdmi_cec_pin_b>;
			status = "okay";
		};

		tv0: tv0@06524000 {
			compatible = "allwinner,sunxi-tv";
			reg = <0x0 0x06520000 0x0 0x100>,
				<0x0 0x06524000 0x0 0x3fc>;
			clocks = <&clk_tve_top>,<&clk_tve>;
			device_type = "tv0";
			pinctrl-names = "active","sleep";
			status = "disabled";
		};

		vdpo0: vdpo0@06542000 {
			compatible = "allwinner,sunxi-vdpo";
			reg = <0x0 0x06542000 0x0 0xfff>;
			clocks = <&clk_vdpo>;
			device_type = "vdpo0";
			pinctrl-names = "active","sleep";
			interrupts = <GIC_SPI 94 IRQ_TYPE_LEVEL_HIGH>;
			status = "okay";
		};
*/
		soc_tr: tr@01000000 {
			compatible = "allwinner,sun50i-tr";
			reg = <0x0 0x01000000 0x0 0x000200bc>;
			interrupts = <GIC_SPI 96 IRQ_TYPE_LEVEL_HIGH>;
			clocks = <&clk_de>;
			status = "okay";
		};

		g2d: g2d@01480000 {
			compatible = "allwinner,sunxi-g2d";
			reg = <0x0 0x01480000 0x0 0xbffff>;
			interrupts = <GIC_SPI 21 IRQ_TYPE_LEVEL_HIGH>;
			clocks = <&clk_g2d>;
			iommus = <&mmu_aw 6 1>;
			status = "okay";
		};

		nna: nna@02400000 {
			compatible = "allwinner,sunxi-nna";
			reg = <0x0 0x02400000 0x0 0x1ffff>;
			interrupts = <GIC_SPI 20 IRQ_TYPE_LEVEL_HIGH>;
			clocks = <&clk_nna>, <&clk_nna_rst>;
			iommus = <&mmu_aw 2 1>;
			status = "okay";
		};

		pwm: pwm@0300a000 {
			compatible = "allwinner,sunxi-pwm";
			reg = <0x0 0x0300a000 0x0 0x400>;
			status = "okay";
			clocks = <&clk_pwm>;
			pwm-number = <10>;
			pwm-base = <0x0>;
			pwms = <&pwm0>, <&pwm1>, <&pwm2>, <&pwm3>, <&pwm4>,
			       <&pwm5>, <&pwm6>, <&pwm7>, <&pwm8>, <&pwm9>;
		};

		pwm0: pwm0@0300a000 {
			compatible = "allwinner,sunxi-pwm0";
			pinctrl-names = "active", "sleep";
			pinctrl-0 = <&pwm0_pins_a>;
			pinctrl-1 = <&pwm0_pins_b>;
			status = "okay";
			reg_base = <0x0300a000>;
		};

		pwm1: pwm1@0300a000 {
			compatible = "allwinner,sunxi-pwm1";
			pinctrl-names = "active", "sleep";
			reg_base = <0x0300a000>;
			pinctrl-0 = <&pwm1_pins_a>;
			pinctrl-1 = <&pwm1_pins_b>;
			status = "okay";
		};
		pwm2: pwm2@0300a000 {
			compatible = "allwinner,sunxi-pwm2";
			pinctrl-names = "active", "sleep";
			reg_base = <0x0300a000>;
			pinctrl-0 = <&pwm2_pins_a>;
			pinctrl-1 = <&pwm2_pins_b>;
			status = "okay";
		};
		pwm3: pwm3@0300a000 {
			compatible = "allwinner,sunxi-pwm3";
			pinctrl-names = "active", "sleep";
			reg_base = <0x0300a000>;
			pinctrl-0 = <&pwm3_pins_a>;
			pinctrl-1 = <&pwm3_pins_b>;
			status = "okay";
		};
		pwm4: pwm4@0300a000 {
			compatible = "allwinner,sunxi-pwm4";
			pinctrl-names = "active", "sleep";
			reg_base = <0x0300a000>;
			pinctrl-0 = <&pwm4_pins_a>;
			pinctrl-1 = <&pwm4_pins_b>;
			status = "okay";
		};
		pwm5: pwm5@0300a000 {
			compatible = "allwinner,sunxi-pwm5";
			pinctrl-names = "active", "sleep";
			reg_base = <0x0300a000>;
			pinctrl-0 = <&pwm5_pins_a>;
			pinctrl-1 = <&pwm5_pins_b>;
			status = "okay";
		};
		pwm6: pwm6@0300a000 {
			compatible = "allwinner,sunxi-pwm6";
			pinctrl-names = "active", "sleep";
			reg_base = <0x0300a000>;
			pinctrl-0 = <&pwm6_pins_a>;
			pinctrl-1 = <&pwm6_pins_b>;
			status = "okay";
		};
		pwm7: pwm7@0300a000 {
			compatible = "allwinner,sunxi-pwm7";
			pinctrl-names = "active", "sleep";
			reg_base = <0x0300a000>;
			pinctrl-0 = <&pwm7_pins_a>;
			pinctrl-1 = <&pwm7_pins_b>;
			status = "okay";
		};
		pwm8: pwm8@0300a000 {
			compatible = "allwinner,sunxi-pwm8";
			pinctrl-names = "active", "sleep";
			reg_base = <0x0300a000>;
			pinctrl-0 = <&pwm8_pins_a>;
			pinctrl-1 = <&pwm8_pins_b>;
			status = "okay";
		};
		pwm9: pwm9@0300a000 {
			compatible = "allwinner,sunxi-pwm9";
			pinctrl-names = "active", "sleep";
			reg_base = <0x0300a000>;
			pinctrl-0 = <&pwm9_pins_a>;
			pinctrl-1 = <&pwm9_pins_b>;
			status = "okay";
		};

		boot_disp: boot_disp {
			compatible = "allwinner,boot_disp";
		};

		vind0:vind@0 {
			compatible = "allwinner,sunxi-vin-media", "simple-bus";
			#address-cells = <2>;
			#size-cells = <2>;
			ranges;
			device_id = <0>;
			vind0_clk = <300000000>;
			vind0_isp = <200000000>;
			reg = <0x0 0x06600800 0x0 0x200>,
				<0x0 0x06600000 0x0 0x800>;
			interrupts = <GIC_SPI 92 4>;
			clocks = <&clk_csi_top>, <&clk_pll_csi>,
				 <&clk_csi_master0>, <&clk_hosc>, <&clk_pll_csi>,
				 <&clk_csi_master1>, <&clk_hosc>, <&clk_pll_csi>,
				 <&clk_isp>, <&clk_pll_uni>;
			pinctrl-names = "mclk0-default","mclk0-sleep","mclk1-default","mclk1-sleep";
			pinctrl-0 = <&csi_mclk0_pins_a>;
			pinctrl-1 = <&csi_mclk0_pins_b>;
			pinctrl-2 = <&csi_mclk1_pins_a>;
			pinctrl-3 = <&csi_mclk1_pins_b>;
			status = "okay";

			csi0:csi@0 {
				device_type = "csi0";
				compatible = "allwinner,sunxi-csi";
				reg = <0x0 0x06601000 0x0 0x1000>;
				interrupts = <GIC_SPI 78 4>;
				device_id = <0>;
				iommus = <&mmu_aw 4 1>;
				status = "okay";
			};
			csi1:csi@1 {
				device_type = "csi1";
				compatible = "allwinner,sunxi-csi";
				reg = <0x0 0x06602000 0x0 0x1000>;
				interrupts = <GIC_SPI 79 4>;
				pinctrl-names = "default","sleep";
				pinctrl-0 = <&csi1_pins_a>;
				pinctrl-1 = <&csi1_pins_b>;
				device_id = <1>;
				iommus = <&mmu_aw 4 1>;
				status = "okay";
			};

			mipi0:mipi@0 {
				compatible = "allwinner,sunxi-mipi";
				reg = <0x0 0x0660C000 0x0 0x1000>;
				interrupts = <GIC_SPI 82 4>;
				device_id = <0>;
				status = "okay";
			};

			isp0:isp@0 {
				compatible = "allwinner,sunxi-isp";
				reg = <0x0 0x02100000 0x0 0x800>;
				interrupts = <GIC_SPI 33 4>;
				device_id = <0>;
				iommus = <&mmu_aw 5 1>;
				status = "okay";
			};
			isp1:isp@1 {
				compatible = "allwinner,sunxi-isp";
				device_id = <1>;
				status = "okay";
			};

			scaler0:scaler@0 {
				compatible = "allwinner,sunxi-scaler";
				reg = <0x0 0x02104000 0x0 0x400>;
				device_id = <0>;
				iommus = <&mmu_aw 5 1>;
				status = "okay";
			};
			scaler1:scaler@1 {
				compatible = "allwinner,sunxi-scaler";
				reg = <0x0 0x02104400 0x0 0x400>;
				device_id = <1>;
				iommus = <&mmu_aw 5 1>;
				status = "okay";
			};
			scaler2:scaler@2 {
				compatible = "allwinner,sunxi-scaler";
				reg = <0x0 0x02104800 0x0 0x400>;
				device_id = <2>;
				iommus = <&mmu_aw 5 1>;
				status = "okay";
			};
			scaler3:scaler@3 {
				compatible = "allwinner,sunxi-scaler";
				reg = <0x0 0x02104C00 0x0 0x400>;
				device_id = <3>;
				iommus = <&mmu_aw 5 1>;
				status = "okay";
			};

			actuator0: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 = <2800000>;
				status = "disabled";
			};
			flash0:flash@0 {
				device_type = "flash0";
				compatible = "allwinner,sunxi-flash";
				flash0_type = <2>;
				flash0_en = <>;
				flash0_mode = <>;
				flash0_flvdd = "";
				flash0_flvdd_vol = <>;
				device_id = <0>;
				status = "disabled";
			};
			sensor0:sensor@0 {
				device_type = "sensor0";
				compatible = "allwinner,sunxi-sensor";
				clocks = <&clk_csi_master0>, <&clk_hosc>, <&clk_pll_csi>;
				pinctrl-names = "mclk0-default","mclk0-sleep";
				pinctrl-0 = <&csi_mclk0_pins_a>;
				pinctrl-1 = <&csi_mclk0_pins_b>;
				sensor0_mname = "ov5640";
				sensor0_twi_cci_id = <0>;
				sensor0_twi_addr = <0x78>;
				sensor0_mclk_id = <2>;
				sensor0_pos = "rear";
				sensor0_isp_used = <0>;
				sensor0_fmt = <0>;
				sensor0_stby_mode = <0>;
				sensor0_vflip = <0>;
				sensor0_hflip = <0>;
				sensor0_iovdd-supply = <>;
				sensor0_iovdd_vol = <1800000>;
				sensor0_avdd-supply = <>;
				sensor0_avdd_vol = <2800000>;
				sensor0_dvdd-supply = <>;
				sensor0_dvdd_vol = <1200000>;
				sensor0_power_en = <>;
				sensor0_reset = <&pio PI 3 1 0 1 0>;
				sensor0_pwdn = <&pio PI 4 1 0 1 0>;
				flash_handle = <&flash0>;
				act_handle = <&actuator0>;
				device_id = <0>;
				status	= "okay";
			};
			sensor1:sensor@1 {
				device_type = "sensor1";
				compatible = "allwinner,sunxi-sensor";
				clocks = <&clk_csi_master1>, <&clk_hosc>, <&clk_pll_csi>;
				pinctrl-names = "mclk1-default","mclk1-sleep";
				pinctrl-0 = <&csi_mclk1_pins_a>;
				pinctrl-1 = <&csi_mclk1_pins_b>;
				sensor1_mname = "ov5647";
				sensor1_twi_cci_id = <1>;
				sensor1_twi_addr = <0x6c>;
				sensor1_mclk_id = <3>;
				sensor1_pos = "front";
				sensor1_isp_used = <0>;
				sensor1_fmt = <0>;
				sensor1_stby_mode = <0>;
				sensor1_vflip = <0>;
				sensor1_hflip = <0>;
				sensor1_iovdd-supply = <>;
				sensor1_iovdd_vol = <2800000>;
				sensor1_avdd-supply = <>;
				sensor1_avdd_vol = <2800000>;
				sensor1_dvdd-supply = <>;
				sensor1_dvdd_vol = <1500000>;
				sensor1_power_en = <>;
				sensor1_reset = <&pio PI 3 1 0 1 0>;
				sensor1_pwdn = <&pio PI 4 1 0 1 0>;
				flash_handle = <>;
				act_handle = <>;
				device_id = <1>;
				status	= "okay";
			};
			vinc0:vinc@0 {
				device_type = "vinc0";
				compatible = "allwinner,sunxi-vin-core";
				reg = <0x0 0x06609000 0x0 0x200>;
				interrupts = <GIC_SPI 74 4>;
				vinc0_csi_sel = <1>;
				vinc0_mipi_sel = <0xff>;
				vinc0_isp_sel = <1>;
				vinc0_rear_sensor_sel = <0>;
				vinc0_front_sensor_sel = <0>;
				vinc0_sensor_list = <0>;
				device_id = <0>;
				iommus = <&mmu_aw 4 1>;
				status = "okay";
			};
			vinc1:vinc@1 {
				device_type = "vinc1";
				compatible = "allwinner,sunxi-vin-core";
				reg = <0x0 0x06609200 0x0 0x200>;
				interrupts = <GIC_SPI 75 4>;
				vinc1_csi_sel = <1>;
				vinc1_mipi_sel = <0xff>;
				vinc1_isp_sel = <1>;
				vinc1_rear_sensor_sel = <0>;
				vinc1_front_sensor_sel = <0>;
				vinc1_sensor_list = <0>;
				device_id = <1>;
				iommus = <&mmu_aw 4 1>;
				status = "disabled";
			};
			vinc2:vinc@2 {
				device_type = "vinc2";
				compatible = "allwinner,sunxi-vin-core";
				reg = <0x0 0x06609400 0x0 0x200>;
				interrupts = <GIC_SPI 76 4>;
				vinc2_csi_sel = <3>;
				vinc2_mipi_sel = <0xff>;
				vinc2_isp_sel = <1>;
				vinc2_rear_sensor_sel = <0>;
				vinc2_front_sensor_sel = <1>;
				vinc2_sensor_list = <0>;
				device_id = <2>;
				iommus = <&mmu_aw 4 1>;
				status = "disabled";
			};
			vinc3:vinc@3 {
				device_type = "vinc3";
				compatible = "allwinner,sunxi-vin-core";
				reg = <0x0 0x06609600 0x0 0x200>;
				interrupts = <GIC_SPI 77 4>;
				vinc3_csi_sel = <3>;
				vinc3_mipi_sel = <0xff>;
				vinc3_isp_sel = <1>;
				vinc3_rear_sensor_sel = <0>;
				vinc3_front_sensor_sel = <1>;
				vinc3_sensor_list = <0>;
				device_id = <3>;
				iommus = <&mmu_aw 4 1>;
				status = "disabled";
			};
		};

		Vdevice: vdevice@0 {
			compatible = "allwinner,sun8i-vdevice";
			device_type = "Vdevice";
			interrupt-parent = <&pio>;
			interrupts = < PD 3 IRQ_TYPE_LEVEL_HIGH>;	/* bank offset type */
			pinctrl-names = "default";
			pinctrl-0 = <&vdevice_pins_a>;
			test-gpios = <&pio PC 3 1 2 2 1>;
			status = "disabled";
		};

		cryptoengine: ce@1904000 {
			compatible = "allwinner,sunxi-ce";
			device_name = "ce";
			reg = <0x0 0x01904000 0x0 0xa0>,
					<0x0 0x01904800 0x0 0xa0>; /* Unused */
			interrupts = <GIC_SPI 35 IRQ_TYPE_EDGE_RISING>,
					<GIC_SPI 36 IRQ_TYPE_EDGE_RISING>; /* Unused */
			clock-frequency = <300000000>; /* 300MHz */
			clocks = <&clk_ce>, <&clk_pll_periph0x2>;
		};

		nmi:nmi@0x01f00c00{
			#address-cells = <1>;
			#size-cells = <0>;
			compatible = "allwinner,sunxi-nmi";
			reg = <0x0 0x01f00c00 0x0 0x50>;
			nmi_irq_ctrl = <0x0c>;
			nmi_irq_en = <0x40>;
			nmi_irq_status = <0x10>;
			nmi_irq_mask = <0x50>;
			status = "okay";
		};
/*
		nand0:nand0@04011000 {
			compatible = "allwinner,sun8iw16-nand";
			device_type = "nand0";
			reg = <0x0 0x04011000 0x0 0x1000>;
			interrupts = <GIC_SPI 29 0x04>;
			clocks = <&clk_pll_periph1x2>,<&clk_nand0>,<&clk_nand1>;
			pinctrl-names = "default", "sleep";
			pinctrl-0 = <&nand0_pins_a &nand0_pins_b>;
			pinctrl-1 = <&nand0_pins_c>;
			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>;
			status = "okay";
		};
*/
		sunxi_thermal_sensor:thermal_sensor{
			compatible = "allwinner,thermal_sensor";
			reg = <0x0 0x05070400 0x0 0x400>;
			interrupts = <GIC_SPI 1 IRQ_TYPE_NONE>;
			clocks = <&clk_hosc>,<&clk_ths>;
			/*
			 * sensor 0 in CPU, sensor1 in VE,
			 * sensor 2 in ISP, sensor 3 in DDR
			 */
			sensor_num = <4>;
			combine_num = <4>;
			shut_temp= <115000>;/*millicelsius*/
			status = "okay";

			ths_combine0:ths_combine0{
				compatible = "allwinner,ths_combine";
				#thermal-sensor-cells = <1>;
				combine_sensor_num = <1>;
				combine_sensor_type = "CPU";
				combine_sensor_temp_type = "max";
				combine_sensor_id = <0>;
			};

			ths_combine1:ths_combine1{
				compatible = "allwinner,ths_combine";
				#thermal-sensor-cells = <1>;
				combine_sensor_num = <1>;
				combine_sensor_type = "VE";
				combine_sensor_temp_type = "max";
				combine_sensor_id = <1>;
			};

			ths_combine2:ths_combine2{
				compatible = "allwinner,ths_combine";
				#thermal-sensor-cells = <1>;
				combine_sensor_num = <1>;
				combine_sensor_type = "ISP";
				combine_sensor_temp_type = "max";
				combine_sensor_id = <2>;
			};

			ths_combine3:ths_combine3{
				compatible = "allwinner,ths_combine";
				#thermal-sensor-cells = <1>;
				combine_sensor_num = <1>;
				combine_sensor_type = "DDR";
				combine_sensor_temp_type = "max";
				combine_sensor_id = <3>;
			};
		};

		cpu_budget_cooling:cpu_budget_cool{
			compatible = "allwinner,budget_cooling";
			device_type = "cpu_budget_cooling";
			#cooling-cells = <2>;
			status = "okay";
			state_cnt = <2>;
			cluster_num = <1>;
			state0 = <1104000 1>;
			state1 = <600000 1>;
		};

		thermal-zones{
			cpu_thermal_zone{

				polling-delay-passive = <1000>;
				polling-delay = <1000>;
				thermal-sensors = <&ths_combine0 0>;

				trips{
					cpu_trip0:t0{
						temperature = <80000>;/*millicelsius */
						type = "passive";
						hysteresis = <0>;
					};
					crt_trip:t2{
						temperature = <115000>;
						type = "critical";
						hysteresis = <0>;
					};
				};

				cooling-maps{
					bind0{
						contribution = <0>;
						trip = <&cpu_trip0>;
						cooling-device
						= <&cpu_budget_cooling 1 1>;
					};
				};
			};

			ve_thermal_zone{

				polling-delay-passive = <1000>;
				polling-delay = <10000>;
				thermal-sensors = <&ths_combine1 1>;

				trips{
					ve_crt_trip0:t0{
						temperature = <115000>;/*millicelsius */
						type = "critical";
						hysteresis = <0>;
					};
				};
			};
			isp_thermal_zone{

				polling-delay-passive = <1000>;
				polling-delay = <10000>;
				thermal-sensors = <&ths_combine2 2>;

				trips{
					isp_crt_trip0:t0{
						temperature = <115000>;/*millicelsius */
						type = "critical";
						hysteresis = <0>;
					};
				};
			};
			ddr_thermal_zone{

				polling-delay-passive = <1000>;
				polling-delay = <10000>;
				thermal-sensors = <&ths_combine3 3>;

				trips{
					ddr_crt_trip0:t0{
						temperature = <115000>;/*millicelsius */
						type = "critical";
						hysteresis = <0>;
					};
				};
			};
		};

		gpadc:gpadc{
			compatible = "allwinner,sunxi-gpadc";
			reg = <0x0 0x05070000 0x0 0x400>;
			interrupts = <GIC_SPI 0 IRQ_TYPE_NONE>;
			clocks = <&clk_gpadc>;
			status = "disable";
		};

		gmac0: eth@05020000 {
			compatible = "allwinner,sunxi-gmac";
			reg = <0x0 0x05020000 0x0 0xFFFF>,
			      <0x0 0x03000030 0x0 0x4>;
			interrupts = <GIC_SPI 27 IRQ_TYPE_LEVEL_HIGH>;
			interrupt-names = "gmacirq";
			clocks = <&clk_gmac>, <&clk_ephy_25m>;
			clock-names = "gmac", "ephy";
			pinctrl-names = "default", "sleep";
			pinctrl-0 = <&gmac_pins_a>;
			pinctrl-1 = <&gmac_pins_b>;
			phy-mode = "rmii";
			use_ephy25m = <1>;
			tx-delay = <7>;
			rx-delay = <31>;
			phy-rst = <&pio PD 19 1 1 1 0>;
			gmac-power0;
			gmac-power1;
			gmac-power2;
			status = "okay";
		};

	};
};

#10 Re: 全志 SOC » 全志V831芯片移植ac108驱动 » 2022-11-10 16:57:54

启动日志如下:

[32]HELLO! BOOT0 is starting!
[35]BOOT0 commit : e3b2a9e
[38]board init start
[40]set pll start
[42]set pll end
[44][pmu]: bus read error
[46][pmu]: bus read error
[49]board init ok
[51]chip id check OK
[53]DRAM BOOT DRIVE INFO: V0.41
[56]DRAM CLK = 528 MHz
[58]DRAM Type = 2 (2:DDR2,3:DDR3)
[61]DRAMC read ODT  off.
[64]DRAM ODT off.
[66]DRAM SIZE =64 M
[72]DRAM simple test OK.
[74]rtc standby flag is 0x0, super standby flag is 0x0
[79]dram size =64
[82]card no is 0
[84]sdcard 0 line count 4
[86][mmc]: mmc driver ver 2020-01-08 17:05
[90][mmc]: sdc0 spd mode error, 2
[93][mmc]: set f_max to 50M, set f_max_ddr to 25M
[98][mmc]: mmc 0 bias 0
[106][mmc]: Wrong media type 0x0
[109][mmc]: ***Try SD card 0***
[120][mmc]: HSSDR52/SDR25 4 bit
[123][mmc]: 50000000 Hz
[125][mmc]: 7680 MB
[127][mmc]: ***SD/MMC 0 init OK!!!***
[190]Loading boot-pkg Succeed(index=0).
[194]Entry_name        = optee
[197]Entry_name        = u-boot
[203]Entry_name        = dtb
[206]Jump to second Boot.
MESSAGE: [0x0] TEE-CORE: OP-TEE version: sun8iw19p1_v0.6.0-14-gf6954e7 #1 2019年 11月 21日 星期四 01:34:42 UTC arm
ERROR:   [0x0] TEE-CORE:platform_standby_fdt_parse:126: no pmu node
ERROR:   [0x0] TEE-CORE:sunxi_twi_parse_from_dt:84: no pmu node


U-Boot 2018.05-00008-g384031a (Jan 16 2020 - 14:12:41 +0800) Allwinner Technology

[00.278]CPU:   Allwinner Family
[00.281]Model: sun8iw19
I2C:   ready
[00.285]DRAM:  64 MiB
[00.288]Relocation Offset is: f9f46000
[00.309]secure enable bit: 0
[00.312]pmu_axp152_probe pmic_bus_read fail
[00.316]pmu_axp2101_probe pmic_bus_read fail
[00.320]bmu_axp152_probe pmic_bus_read fail
[00.324]bmu_axp2101_probe pmic_bus_read fail
[00.328]CPU=1008 MHz,PLL6=600 Mhz,AHB=200 Mhz, APB1=100Mhz  MBus=132Mhz
[00.334]gic: sec monitor mode
[00.337]flash init start
[00.339]workmode = 0,storage type = 1
[00.342]MMC:     0
[00.344]get mem for descripter OK !

card_caps:0x3000000a
host_caps:0x3000003f
[00.374]sunxi flash init ok
[00.377]Loading Environment from SUNXI_FLASH... OK
[00.400]update dts
root_partition is rootfs
set root to /dev/mmcblk0p3
[00.429]update part info
[00.455]update bootcmd
[00.457]No ethernet found.
Hit any key to stop autoboot:  0
## Booting kernel from Legacy Image at 45000000 ...
   Image Name:   ARM OpenWrt Linux-4.9.118
   Image Type:   ARM Linux Kernel Image (uncompressed)
   Data Size:    2932432 Bytes = 2.8 MiB
   Load Address: 40008000
   Entry Point:  40008000
[01.830]Starting kernel ...

[01.832]mmc 2 not find, so not exit
[    0.000000] Booting Linux on physical CPU 0x0
[    0.000000] Linux version 4.9.118 (tina@ubuntu) (gcc version 6.4.1 (OpenWrt/Linaro GCC 6.4-2017.11 2017-11) ) #20 PREEMPT Thu Nov 10 07:04:28 UTC 2022
[    0.000000] CPU: ARMv7 Processor [410fc075] revision 5 (ARMv7), cr=50c5387d
[    0.000000] CPU: div instructions available: patching division code
[    0.000000] CPU: PIPT / VIPT nonaliasing data cache, VIPT aliasing instruction cache
[    0.000000] OF: fdt:Machine model: sun8iw19
[    0.000000] ion_mem_reserve: err format for ion reserve list!
[    0.000000] cma: Reserved 4 MiB at 0x43c00000
[    0.000000] Memory policy: Data cache writeback
[    0.000000] On node 0 totalpages: 16384
[    0.000000] free_area_init_node: node 0, pgdat c04bc018, node_mem_map c3b77000
[    0.000000]   Normal zone: 128 pages used for memmap
[    0.000000]   Normal zone: 0 pages reserved
[    0.000000]   Normal zone: 16384 pages, LIFO batch:3
[    0.000000] psci: probing for conduit method from DT.
[    0.000000] psci: PSCIv1.0 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.0
[    0.000000] CPU: All CPU(s) started in SVC mode.
[    0.000000] pcpu-alloc: s0 r0 d32768 u32768 alloc=1*32768
[    0.000000] pcpu-alloc: [0] 0
[    0.000000] Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 16256
[    0.000000] Kernel command line: earlyprintk=sunxi-uart,0x05000000 initcall_debug=0 console=ttyS0,115200 loglevel=8 root=/dev/mmcblk0p3 rootwait init=/pseudo_init rdinit=/rdinit partitions=env@mmcblk0p1:boot@mmcblk0p2:rootfs@mmcblk0p3:swap@mmcblk0p4:UDISK@mmcblk0p5 cma=4M mac_addr= wifi_mac= bt_mac= selinux= specialstr= coherent_pool=16K ion_carveout_list= androidboot.mode=normal androidboot.hardware=sun8iw19p1 boot_type=1 androidboot.boot_type=1 gpt=1 uboot_message=2018.05-00008-g384031a(01/16/2020-14:12:41) mbr_offset=1032192 bootreason=unknow
[    0.000000] PID hash table entries: 256 (order: -2, 1024 bytes)
[    0.000000] Dentry cache hash table entries: 8192 (order: 3, 32768 bytes)
[    0.000000] Inode-cache hash table entries: 4096 (order: 2, 16384 bytes)
[    0.000000] Memory: 55480K/65536K available (3095K kernel code, 235K rwdata, 1192K rodata, 136K init, 129K bss, 5960K reserved, 4096K cma-reserved)
[    0.000000] Virtual kernel memory layout:
[    0.000000]     vector  : 0xffff0000 - 0xffff1000   (   4 kB)
[    0.000000]     fixmap  : 0xffc00000 - 0xfff00000   (3072 kB)
[    0.000000]     vmalloc : 0xc4800000 - 0xff800000   ( 944 MB)
[    0.000000]     lowmem  : 0xc0000000 - 0xc4000000   (  64 MB)
[    0.000000]     modules : 0xbf800000 - 0xc0000000   (   8 MB)
[    0.000000]       .text : 0xc0008000 - 0xc030e088   (3097 kB)
[    0.000000]       .init : 0xc0460000 - 0xc0482000   ( 136 kB)
[    0.000000]       .data : 0xc0482000 - 0xc04bcc18   ( 236 kB)
[    0.000000]        .bss : 0xc04bcc18 - 0xc04dd204   ( 130 kB)
[    0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=1, Nodes=1
[    0.000000] Preemptible hierarchical RCU implementation.
[    0.000000]  Build-time adjustment of leaf fanout to 32.
[    0.000000] NR_IRQS:16 nr_irqs:16 16
[    0.000000] clocksource: timer: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 79635851949 ns
[    0.000000] arm_arch_timer: Architected cp15 timer(s) running at 24.00MHz (phys).
[    0.000000] clocksource: arch_sys_counter: mask: 0xffffffffffffff max_cycles: 0x588fe9dc0, max_idle_ns: 440795202592 ns
[    0.000006] sched_clock: 56 bits at 24MHz, resolution 41ns, wraps every 4398046511097ns
[    0.000018] Switching to timer-based delay loop, resolution 41ns
[    0.000137] Console: colour dummy device 80x30
[    0.000159] Calibrating delay loop (skipped), value calculated using timer frequency.. 48.00 BogoMIPS (lpj=240000)
[    0.000171] pid_max: default: 32768 minimum: 301
[    0.000322] Mount-cache hash table entries: 1024 (order: 0, 4096 bytes)
[    0.000333] Mountpoint-cache hash table entries: 1024 (order: 0, 4096 bytes)
[    0.000840] CPU: Testing write buffer coherency: ok
[    0.001087] Setting up static identity map for 0x400081c0 - 0x4000820c
[    0.002330] devtmpfs: initialized
[    0.025166] VFP support v0.3: implementor 41 architecture 2 part 30 variant 7 rev 5
[    0.025491] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 19112604462750000 ns
[    0.025516] futex hash table entries: 256 (order: -1, 3072 bytes)
[    0.025808] atomic64_test: passed
[    0.025820] pinctrl core: initialized pinctrl subsystem
[    0.026598] NET: Registered protocol family 16
[    0.027727] DMA: preallocated 16 KiB pool for atomic coherent allocations
[    0.028955] dump_class_init,857, success
[    0.031717] sunxi iommu: irq = 23
[    0.035530] sun8iw19p1-r-pinctrl r_pio: initialized sunXi PIO driver
[    0.048606] use hosc , set rate 1000000
[    0.048632] sun8iw19p1-pinctrl pio: initialized sunXi PIO driver
[    0.050962] iommu: Adding device 1c0e000.ve to group 0
[    0.051819] iommu: Adding device 2300000.eise to group 0
[    0.058348] iommu: Adding device 1000000.disp to group 0
[    0.059557] iommu: Adding device 1480000.g2d to group 0
[    0.060888] iommu: Adding device 2400000.nna to group 0
[    0.063715] iommu: Adding device csi0 to group 0
[    0.064204] iommu: Adding device csi1 to group 0
[    0.065738] iommu: Adding device 2100000.isp to group 0
[    0.066720] iommu: Adding device 2104000.scaler to group 0
[    0.067039] iommu: Adding device 2104400.scaler to group 0
[    0.067350] iommu: Adding device 2104800.scaler to group 0
[    0.067796] iommu: Adding device 2104c00.scaler to group 0
[    0.068483] iommu: Adding device vinc0 to group 0
[    0.069066] iommu: Adding device vinc1 to group 0
[    0.111494] pwm module init!
[    0.114772] SCSI subsystem initialized
[    0.115114] usbcore: registered new interface driver usbfs
[    0.115193] usbcore: registered new interface driver hub
[    0.117467] usbcore: registered new device driver usb
[    0.117725] sunxi_i2c_adap_init()2551 - init
[    0.118251] sunxi_i2c_probe()2288 - [i2c1] twi_drv_used = 1
[    0.118265] sunxi_i2c_probe()2292 - [i2c1] twi_pkt_interval = 0
[    0.118282] twi1 supply twi not found, using dummy regulator
[    0.118381] twi_request_gpio()455 - [i2c1] init name: twi1
[    0.118663] sunxi_i2c_dma_request()1125 - [i2c1] using dma0chan0 (tx) and dma0chan1 (rx)for DMA transfers
[    0.119054] sunxi_i2c_probe()2288 - [i2c2] twi_drv_used = 1
[    0.119067] sunxi_i2c_probe()2292 - [i2c2] twi_pkt_interval = 0
[    0.119084] twi2 supply twi not found, using dummy regulator
[    0.119147] twi_request_gpio()455 - [i2c2] init name: twi2
[    0.119787] sunxi_i2c_dma_request()1125 - [i2c2] using dma0chan2 (tx) and dma0chan3 (rx)for DMA transfers
[    0.120459] media: Linux media interface: v0.10
[    0.120595] Linux video capture interface: v2.00
[    0.121723] ion_parse_dt_heap_common: id 0 type 0 name sys_user align 1000
[    0.121973] ion_parse_dt_heap_common: id 1 type 1 name sys_contig align 1000
[    0.122148] ion_parse_dt_heap_common: id 4 type 4 name cma align 1000
[    0.123320] Advanced Linux Sound Architecture Driver Initialized.
[    0.126415] G2D: rcq version initialized.major:251
[    0.127212] clocksource: Switched to clocksource arch_sys_counter
[    0.146430] udc_init,0
[    0.146587] NET: Registered protocol family 2
[    0.147767] TCP established hash table entries: 16 (order: -6, 64 bytes)
[    0.147782] TCP bind hash table entries: 16 (order: -6, 64 bytes)
[    0.147791] TCP: Hash tables configured (established 16 bind 16)
[    0.147851] UDP hash table entries: 256 (order: 0, 4096 bytes)
[    0.147872] UDP-Lite hash table entries: 256 (order: 0, 4096 bytes)
[    0.148021] NET: Registered protocol family 1
[    0.150588] workingset: timestamp_bits=30 max_order=14 bucket_order=0
[    0.164411] squashfs: version 4.0 (2009/01/31) Phillip Lougher
[    0.164809] jffs2: version 2.2. (NAND) © 2001-2006 Red Hat, Inc.
[    0.167718] NET: Registered protocol family 38
[    0.167766] io scheduler noop registered
[    0.167774] io scheduler deadline registered
[    0.168030] io scheduler cfq registered (default)
[    0.168807] [DISP]disp_module_init
[    0.195631] [DISP] Fb_copy_boot_fb,line:1503:
[    0.195644] no boot_fb0
[    0.196081] rotation hw function is configed to zero degree
[    0.198833] [DISP] disp_sys_pwm_config,line:618:
[    0.198845] disp_sys_pwm_Config, handle is NULL!
[    0.198854] [DISP] disp_sys_pwm_set_polarity,line:636:
[    0.198859] disp_sys_pwm_Set_Polarity, handle is NULL!
[    0.200064] [DISP]disp_module_init finish
[    0.201917] uart uart0: get regulator failed
[    0.201944] uart0 supply uart not found, using dummy regulator
[    0.202120] uart uart0: uart0 error to get fifo size property
[    0.202174] uart0: ttyS0 at MMIO 0x5000000 (irq = 294, base_baud = 1500000) is a SUNXI
[    0.202200] sw_console_setup()1830 - console setup baud 115200 parity n bits 8, flow n
[    0.328484] [ST7789V LCD INFO] LINE:0208-->LCD_panel_init:
[    0.328492] [ST7789V LCD INFO] LINE:0225-->lcd_panel_st7789v_init:
[    0.854127] [DISP] disp_lcd_pwm_enable,line:959:
[    0.854128] pwm device hdl is NULL
[    0.854139] [DISP] disp_device_attached_and_enable,line:221:
[    0.854140] attached ok, mgr0<-->dev0
[    0.854149] [DISP] disp_device_attached_and_enable,line:224:
[    0.854150] type:1,mode:0,fmt:rgb,bits:8bits,eotf:4,cs:0 dvi_hdmi:2, range:2 scan:0 ratio:8
[    1.158414] console [ttyS0] enabled
[    1.163030] uart uart1: get regulator failed
[    1.168034] uart1 supply uart not found, using dummy regulator
[    1.174817] uart uart1: uart1 error to get fifo size property
[    1.181390] uart1: ttyS1 at MMIO 0x5000400 (irq = 295, base_baud = 1500000) is a SUNXI
[    1.191337] misc dump reg init
[    1.196935] libphy: Fixed MDIO Bus: probed
[    1.202547] sun8iw19p1-pinctrl pio: expect_func as:gmac0, but muxsel(5) is func:ephy
[    1.211624] sun8iw19p1-pinctrl pio: pin PD1 already requested by soc@03000000:lcd0@01c0c000; cannot claim for 5020000.eth
[    1.224163] sun8iw19p1-pinctrl pio: pin-97 (5020000.eth) status -22
[    1.231275] sun8iw19p1-pinctrl pio: could not request pin 97 (PD1) from group PD1  on device pio
[    1.241215] sunxi-gmac 5020000.eth: Error applying setting, reverse things back
[    1.249492] sunxi-gmac: probe of 5020000.eth failed with error -22
[    1.256684] ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
[    1.264421] get drv_vbus is fail, 84
[    1.268503] get ehci0-controller, regulator_io is no nocare
[    1.274802] get ehci0-controller wakeup-source is fail.
[    1.280870] sunxi ehci0-controller don't init wakeup source
[    1.287168] [sunxi-ehci0]: probe, pdev->name: 5101000.ehci0-controller, sunxi_ehci: 0xc04d7658, 0x:c48dd000, irq_no:12c
[    1.299437] sunxi-ehci 5101000.ehci0-controller: SW USB2.0 'Enhanced' Host Controller (EHCI) Driver
[    1.309697] sunxi-ehci 5101000.ehci0-controller: new USB bus registered, assigned bus number 1
[    1.319650] sunxi-ehci 5101000.ehci0-controller: irq 300, io mem 0xc3661800
[    1.357235] sunxi-ehci 5101000.ehci0-controller: USB 0.0 started, EHCI 1.00
[    1.366005] hub 1-0:1.0: USB hub found
[    1.370470] hub 1-0:1.0: 1 port detected
[    1.375179] [ehci0-controller]: sunxi_usb_disable_ehci
[    1.381046] [sunxi-ehci0]: remove, pdev->name: 5101000.ehci0-controller, sunxi_ehci: 0xc04d7658
[    1.390888] sunxi-ehci 5101000.ehci0-controller: remove, state 1
[    1.397732] usb usb1: USB disconnect, device number 1
[    1.404596] sunxi-ehci 5101000.ehci0-controller: USB bus 1 deregistered
[    1.412758] ohci_hcd: USB 1.1 'Open' Host Controller (OHCI) Driver
[    1.420170] get drv_vbus is fail, 84
[    1.424194] get ohci0-controller, regulator_io is no nocare
[    1.430564] get ohci0-controller wakeup-source is fail.
[    1.436601] sunxi ohci0-controller don't init wakeup source
[    1.443070] [sunxi-ohci0]: probe, pdev->name: 5101000.ohci0-controller, sunxi_ohci: 0xc04d6e08
[    1.452875] sunxi-ohci 5101000.ohci0-controller: SW USB2.0 'Open' Host Controller (OHCI) Driver
[    1.462739] sunxi-ohci 5101000.ohci0-controller: new USB bus registered, assigned bus number 1
[    1.472518] sunxi-ohci 5101000.ohci0-controller: irq 301, io mem 0xc3661c00
[    1.552145] hub 1-0:1.0: USB hub found
[    1.556586] hub 1-0:1.0: 1 port detected
[    1.561341] [ohci0-controller]: sunxi_usb_disable_ohci
[    1.567123] [sunxi-ohci0]: remove, pdev->name: 5101000.ohci0-controller, sunxi_ohci: 0xc04d6e08
[    1.576985] sunxi-ohci 5101000.ohci0-controller: remove, state 1
[    1.583825] usb usb1: USB disconnect, device number 1
[    1.590219] sunxi-ohci 5101000.ohci0-controller: USB bus 1 deregistered
[    1.598509] usbcore: registered new interface driver uas
[    1.604830] usbcore: registered new interface driver usb-storage
[    1.611818] usbcore: registered new interface driver ums-alauda
[    1.618785] usbcore: registered new interface driver ums-cypress
[    1.625773] usbcore: registered new interface driver ums-datafab
[    1.632716] usbcore: registered new interface driver ums_eneub6250
[    1.639881] usbcore: registered new interface driver ums-freecom
[    1.646873] usbcore: registered new interface driver ums-isd200
[    1.653756] usbcore: registered new interface driver ums-jumpshot
[    1.660903] usbcore: registered new interface driver ums-karma
[    1.667754] usbcore: registered new interface driver ums-onetouch
[    1.674856] usbcore: registered new interface driver ums-realtek
[    1.681805] usbcore: registered new interface driver ums-sddr09
[    1.688720] usbcore: registered new interface driver ums-sddr55
[    1.695598] usbcore: registered new interface driver ums-usbat
[    1.702350] usb_serial_number:20080411
[    1.706907] sunxi_gpadc_init,1831, success
[    1.712230] sunxi_gpadc_setup: get channel scan data failed
[    1.718920] input: sunxi-gpadc0 as /devices/virtual/input/input0
[    1.726961] sunxi-rtc rtc: rtc core: registered sunxi-rtc as rtc0
[    1.734124] sunxi-rtc rtc: RTC enabled
[    1.738867] i2c /dev entries driver
[    1.743456] sunxi cedar version 0.1
[    1.747735] VE: install start!!!
[    1.747735]
[    1.753203] cedar_ve: cedar-ve the get irq is 291
[    1.758696] VE: line 1811 set the sram data
[    1.758696]
[    1.765516] VE: ve_debug_proc_info:c04d98d0, data:c368c000, lock:c04d9958
[    1.765516]
[    1.775090] VE: install end!!!
[    1.775090]
[    1.780603] google_vp9: sunxi google vp9 version 0.1
[    1.787308] sunxi-wdt 30090a0.watchdog: Watchdog enabled (timeout=16 sec, nowayout=0)
[    1.798117] sunxi-mmc sdc0: SD/MMC/SDIO Host Controller Driver(v3.37 2019-12-4 9:48)
[    1.806959] sunxi-mmc sdc0: ***ctl-spec-caps*** 8
[    1.812625] sunxi-mmc sdc0: No vmmc regulator found
[    1.818204] sunxi-mmc sdc0: No vqmmc regulator found
[    1.823797] sunxi-mmc sdc0: No vdmmc regulator found
[    1.829408] sunxi-mmc sdc0: No vd33sw regulator found
[    1.835099] sunxi-mmc sdc0: No vd18sw regulator found
[    1.840845] sunxi-mmc sdc0: No vq33sw regulator found
[    1.846540] sunxi-mmc sdc0: No vq18sw regulator found
[    1.852261] sunxi-mmc sdc0: Cann't get uart0 pinstate,check if needed
[    1.859546] sunxi-mmc sdc0: Cann't get sleep pinstate,check if needed
[    1.867322] sunxi-mmc sdc0: set host busy
[    1.871921] mmc:failed to get gpios
[    1.875860] sunxi-mmc sdc0: min-frequency:100000
[    1.881347] sunxi-mmc sdc0: sdc set ios:clk 0Hz bm PP pm UP vdd 21 width 1 timing LEGACY(SDR12) dt B
[    1.891817] sunxi-mmc sdc0: no vqmmc,Check if there is regulator
[    1.927235] sunxi-mmc sdc0: sdc set ios:clk 400000Hz bm PP pm ON vdd 21 width 1 timing LEGACY(SDR12) dt B
[    1.967238] sunxi-mmc sdc0: detmode:alway in(non removable)
[    1.967261] sunxi-mmc sdc0: sdc set ios:clk 400000Hz bm PP pm ON vdd 21 width 1 timing LEGACY(SDR12) dt B
[    1.975632] sunxi-mmc sdc0: sdc set ios:clk 400000Hz bm PP pm ON vdd 21 width 1 timing LEGACY(SDR12) dt B
[    1.998638] sunxi-mmc sdc0: sdc set ios:clk 400000Hz bm PP pm ON vdd 21 width 1 timing LEGACY(SDR12) dt B
[    2.009658] sunxi-mmc sdc1: SD/MMC/SDIO Host Controller Driver(v3.37 2019-12-4 9:48)
[    2.009791] sunxi-mmc sdc1: No vmmc regulator found
[    2.009797] sunxi-mmc sdc1: No vqmmc regulator found
[    2.009801] sunxi-mmc sdc1: No vdmmc regulator found
[    2.009805] sunxi-mmc sdc1: No vd33sw regulator found
[    2.009809] sunxi-mmc sdc1: No vd18sw regulator found
[    2.009813] sunxi-mmc sdc1: No vq33sw regulator found
[    2.009818] sunxi-mmc sdc1: No vq18sw regulator found
[    2.009833] sunxi-mmc sdc1: Cann't get uart0 pinstate,check if needed
[    2.010288] sunxi-mmc sdc1: set host busy
[    2.010345] mmc:failed to get gpios
[    2.010602] sunxi-mmc sdc1: sdc set ios:clk 0Hz bm PP pm UP vdd 21 width 1 timing LEGACY(SDR12) dt B
[    2.010633] sunxi-mmc sdc1: no vqmmc,Check if there is regulator
[    2.041981] sunxi-mmc sdc1: sdc set ios:clk 400000Hz bm PP pm ON vdd 21 width 1 timing LEGACY(SDR12) dt B
[    2.070988] sunxi-mmc sdc1: detmode:manually by software
[    2.115968] sunxi-mmc sdc0: sdc set ios:clk 400000Hz bm PP pm ON vdd 21 width 1 timing LEGACY(SDR12) dt B
[    2.129782] sunxi-mmc sdc1: smc 1 p1 err, cmd 52, RTO !!
[    2.136604] sunxi-mmc sdc1: smc 1 p1 err, cmd 52, RTO !!
[    2.142706] sunxi-mmc sdc1: sdc set ios:clk 400000Hz bm PP pm ON vdd 21 width 1 timing LEGACY(SDR12) dt B
[    2.154080] usbcore: registered new interface driver usbhid
[    2.154083] usbhid: USB HID core driver
[    2.154445] mostcore: init()
[    2.155741] sunxi_i2c_drv_core_process()1009 - [i2c2] Timeout when sending 9th SCL clk
[    2.155976] i2c_sunxi_drv_complete()1183 - [i2c2] incomplete xfer(status: 0x1, dev addr: 0x3b)
[    2.156049] sunxi_i2c_drv_core_process()1009 - [i2c2] Timeout when sending 9th SCL clk
[    2.156115] i2c_sunxi_drv_complete()1183 - [i2c2] incomplete xfer(status: 0x1, dev addr: 0x3b)
[    2.156183] sunxi_i2c_drv_core_process()1009 - [i2c2] Timeout when sending 9th SCL clk
[    2.156197] i2c_sunxi_drv_complete()1183 - [i2c2] incomplete xfer(status: 0x1, dev addr: 0x3b)
[    2.156260] sunxi_i2c_drv_core_process()1009 - [i2c2] Timeout when sending 9th SCL clk
[    2.156281] i2c_sunxi_drv_complete()1183 - [i2c2] incomplete xfer(status: 0x1, dev addr: 0x3b)
[    2.156347] sunxi_i2c_drv_core_process()1009 - [i2c2] Timeout when sending 9th SCL clk
[    2.156359] i2c_sunxi_drv_complete()1183 - [i2c2] incomplete xfer(status: 0x1, dev addr: 0x3b)
[    2.156421] sunxi_i2c_drv_core_process()1009 - [i2c2] Timeout when sending 9th SCL clk
[    2.156434] i2c_sunxi_drv_complete()1183 - [i2c2] incomplete xfer(status: 0x1, dev addr: 0x3b)
[    2.162767] sunxi_i2c_drv_core_process()1009 - [i2c2] Timeout when sending 9th SCL clk
[    2.162856] i2c_sunxi_drv_complete()1183 - [i2c2] incomplete xfer(status: 0x1, dev addr: 0x3b)
[    2.162881] sunxi_i2c_drv_core_process()1009 - [i2c2] Timeout when sending 9th SCL clk
[    2.162889] i2c_sunxi_drv_complete()1183 - [i2c2] incomplete xfer(status: 0x1, dev addr: 0x3b)
[    2.162911] sunxi_i2c_drv_core_process()1009 - [i2c2] Timeout when sending 9th SCL clk
[    2.162918] i2c_sunxi_drv_complete()1183 - [i2c2] incomplete xfer(status: 0x1, dev addr: 0x3b)
[    2.162937] sunxi_i2c_drv_core_process()1009 - [i2c2] Timeout when sending 9th SCL clk
[    2.162944] i2c_sunxi_drv_complete()1183 - [i2c2] incomplete xfer(status: 0x1, dev addr: 0x3b)
[    2.162963] sunxi_i2c_drv_core_process()1009 - [i2c2] Timeout when sending 9th SCL clk
[    2.162969] i2c_sunxi_drv_complete()1183 - [i2c2] incomplete xfer(status: 0x1, dev addr: 0x3b)
[    2.162989] sunxi_i2c_drv_core_process()1009 - [i2c2] Timeout when sending 9th SCL clk
[    2.162995] i2c_sunxi_drv_complete()1183 - [i2c2] incomplete xfer(status: 0x1, dev addr: 0x3b)
[    2.163013] sunxi_i2c_drv_core_process()1009 - [i2c2] Timeout when sending 9th SCL clk
[    2.163020] i2c_sunxi_drv_complete()1183 - [i2c2] incomplete xfer(status: 0x1, dev addr: 0x3b)
[    2.163040] sunxi_i2c_drv_core_process()1009 - [i2c2] Timeout when sending 9th SCL clk
[    2.163047] i2c_sunxi_drv_complete()1183 - [i2c2] incomplete xfer(status: 0x1, dev addr: 0x3b)
[    2.163065] sunxi_i2c_drv_core_process()1009 - [i2c2] Timeout when sending 9th SCL clk
[    2.163072] i2c_sunxi_drv_complete()1183 - [i2c2] incomplete xfer(status: 0x1, dev addr: 0x3b)
[    2.163092] sunxi_i2c_drv_core_process()1009 - [i2c2] Timeout when sending 9th SCL clk
[    2.163098] i2c_sunxi_drv_complete()1183 - [i2c2] incomplete xfer(status: 0x1, dev addr: 0x3b)
[    2.163116] sunxi_i2c_drv_core_process()1009 - [i2c2] Timeout when sending 9th SCL clk
[    2.163124] i2c_sunxi_drv_complete()1183 - [i2c2] incomplete xfer(status: 0x1, dev addr: 0x3b)
[    2.163142] sunxi_i2c_drv_core_process()1009 - [i2c2] Timeout when sending 9th SCL clk
[    2.163149] i2c_sunxi_drv_complete()1183 - [i2c2] incomplete xfer(status: 0x1, dev addr: 0x3b)
[    2.163167] sunxi_i2c_drv_core_process()1009 - [i2c2] Timeout when sending 9th SCL clk
[    2.163174] i2c_sunxi_drv_complete()1183 - [i2c2] incomplete xfer(status: 0x1, dev addr: 0x3b)
[    2.163192] sunxi_i2c_drv_core_process()1009 - [i2c2] Timeout when sending 9th SCL clk
[    2.163199] i2c_sunxi_drv_complete()1183 - [i2c2] incomplete xfer(status: 0x1, dev addr: 0x3b)
[    2.163217] sunxi_i2c_drv_core_process()1009 - [i2c2] Timeout when sending 9th SCL clk
[    2.163224] i2c_sunxi_drv_complete()1183 - [i2c2] incomplete xfer(status: 0x1, dev addr: 0x3b)
[    2.163243] sunxi_i2c_drv_core_process()1009 - [i2c2] Timeout when sending 9th SCL clk
[    2.163250] i2c_sunxi_drv_complete()1183 - [i2c2] incomplete xfer(status: 0x1, dev addr: 0x3b)
[    2.163268] sunxi_i2c_drv_core_process()1009 - [i2c2] Timeout when sending 9th SCL clk
[    2.163275] i2c_sunxi_drv_complete()1183 - [i2c2] incomplete xfer(status: 0x1, dev addr: 0x3b)
[    2.163293] sunxi_i2c_drv_core_process()1009 - [i2c2] Timeout when sending 9th SCL clk
[    2.163300] i2c_sunxi_drv_complete()1183 - [i2c2] incomplete xfer(status: 0x1, dev addr: 0x3b)
[    2.163318] sunxi_i2c_drv_core_process()1009 - [i2c2] Timeout when sending 9th SCL clk
[    2.163325] i2c_sunxi_drv_complete()1183 - [i2c2] incomplete xfer(status: 0x1, dev addr: 0x3b)
[    2.163339] ac108 2-003b: ref_cfg.ref_channel:0x3, set ref_pga_gain:16
[    2.163356] sunxi_i2c_drv_core_process()1009 - [i2c2] Timeout when sending 9th SCL clk
[    2.163364] i2c_sunxi_drv_complete()1183 - [i2c2] incomplete xfer(status: 0x1, dev addr: 0x3b)
[    2.163382] sunxi_i2c_drv_core_process()1009 - [i2c2] Timeout when sending 9th SCL clk
[    2.163389] i2c_sunxi_drv_complete()1183 - [i2c2] incomplete xfer(status: 0x1, dev addr: 0x3b)
[    2.163408] sunxi_i2c_drv_core_process()1009 - [i2c2] Timeout when sending 9th SCL clk
[    2.163415] i2c_sunxi_drv_complete()1183 - [i2c2] incomplete xfer(status: 0x1, dev addr: 0x3b)
[    2.163433] sunxi_i2c_drv_core_process()1009 - [i2c2] Timeout when sending 9th SCL clk
[    2.163440] i2c_sunxi_drv_complete()1183 - [i2c2] incomplete xfer(status: 0x1, dev addr: 0x3b)
[    2.163458] sunxi_i2c_drv_core_process()1009 - [i2c2] Timeout when sending 9th SCL clk
[    2.163465] i2c_sunxi_drv_complete()1183 - [i2c2] incomplete xfer(status: 0x1, dev addr: 0x3b)
[    2.163483] sunxi_i2c_drv_core_process()1009 - [i2c2] Timeout when sending 9th SCL clk
[    2.163490] i2c_sunxi_drv_complete()1183 - [i2c2] incomplete xfer(status: 0x1, dev addr: 0x3b)
[    2.163508] sunxi_i2c_drv_core_process()1009 - [i2c2] Timeout when sending 9th SCL clk
[    2.163515] i2c_sunxi_drv_complete()1183 - [i2c2] incomplete xfer(status: 0x1, dev addr: 0x3b)
[    2.163533] sunxi_i2c_drv_core_process()1009 - [i2c2] Timeout when sending 9th SCL clk
[    2.163540] i2c_sunxi_drv_complete()1183 - [i2c2] incomplete xfer(status: 0x1, dev addr: 0x3b)
[    2.227481] sunxi_i2c_drv_core_process()1009 - [i2c2] Timeout when sending 9th SCL clk
[    2.227490] i2c_sunxi_drv_complete()1183 - [i2c2] incomplete xfer(status: 0x1, dev addr: 0x3b)
[    2.227513] sunxi_i2c_drv_core_process()1009 - [i2c2] Timeout when sending 9th SCL clk
[    2.227520] i2c_sunxi_drv_complete()1183 - [i2c2] incomplete xfer(status: 0x1, dev addr: 0x3b)
[    2.227561] ac108 2-003b: i2c probe succeed.
[    2.228150] --->sunxi_daudio_dev_probe<--- strat.
[    2.228277] sunxi-daudio daudio0: regulator missing or invalid
[    2.228396] --->sunxi_daudio_dev_probe<--- end.
[    2.228941] digital_vol:0, lineout_vol:31, main_gain:23, pa_msleep:160, pa_level:1
[    2.228950] adcdrc_cfg:0, adchpf_cfg:1, dacdrc_cfg:1, dachpf:0
[    2.229008] sunxi-internal-codec codec: [sunxi_internal_codec_probe] codec probe finished.
[    2.229494] [sunxi_card_init] card init finished.
[    2.229889] sunxi-codec-machine sndcodec: sun8iw19codec <-> codec mapping ok
[    2.241204] mmc0: host does not support reading read-only switch, assuming write-enable
[    2.243295] sunxi-mmc sdc0: sdc set ios:clk 400000Hz bm PP pm ON vdd 21 width 1 timing SD-HS(SDR25) dt B
[    2.243409] sunxi-mmc sdc0: sdc set ios:clk 50000000Hz bm PP pm ON vdd 21 width 1 timing SD-HS(SDR25) dt B
[    2.243545] sunxi-mmc sdc0: sdc set ios:clk 50000000Hz bm PP pm ON vdd 21 width 4 timing SD-HS(SDR25) dt B
[    2.243598] mmc0: new high speed SDHC card at address 0001
[    2.247542] mmcblk0: mmc0:0001 ASTC 7.50 GiB
[    2.251277]  mmcblk0: p1 p2 p3 p4 p5
[    2.394786] random: fast init done
[    2.395679] sunxi-codec-machine sndcodec: [sunxi_card_dev_probe] register card finished.
[    2.397297] NET: Registered protocol family 10
[    2.399021] NET: Registered protocol family 17
[    2.399069] NET: Registered protocol family 15
[    2.399727] Registering SWP/SWPB emulation handler
[    3.075479] get det_vbus is fail, 84
[    3.080599] sunxi-mmc sdc1: sdc set ios:clk 400000Hz bm PP pm ON vdd 21 width 1 timing LEGACY(SDR12) dt B
[    3.092472] sunxi-mmc sdc1: smc 1 p1 err, cmd 8, RTO !!
[    3.098417] sunxi-mmc sdc1: smc 1 p1 err, cmd 5, RTO !!
[    3.104319] sunxi-mmc sdc1: smc 1 p1 err, cmd 5, RTO !!
[    3.110228] sunxi-mmc sdc1: smc 1 p1 err, cmd 5, RTO !!
[    3.116131] sunxi-mmc sdc1: smc 1 p1 err, cmd 5, RTO !!
[    3.122034] sunxi-mmc sdc1: smc 1 p1 err, cmd 55, RTO !!
[    3.128039] sunxi-mmc sdc1: smc 1 p1 err, cmd 55, RTO !!
[    3.134041] sunxi-mmc sdc1: smc 1 p1 err, cmd 55, RTO !!
[    3.140042] sunxi-mmc sdc1: smc 1 p1 err, cmd 55, RTO !!
[    3.140061] sunxi-mmc sdc1: sdc set ios:clk 400000Hz bm OD pm ON vdd 21 width 1 timing LEGACY(SDR12) dt B
[    3.146109] sunxi-mmc sdc1: smc 1 p1 err, cmd 1, RTO !!
[    3.146140] sunxi-mmc sdc1: sdc set ios:clk 0Hz bm PP pm OFF vdd 0 width 1 timing LEGACY(SDR12) dt B
[    3.174166] get id is fail, 84
[    3.178422] sunxi-rtc rtc: setting system clock to 1970-01-01 00:26:26 UTC (1586)
[    3.188160] ALSA device list:
[    3.191504]   #0: sun8iw19-codec
[    3.197162] EXT4-fs (mmcblk0p3): couldn't mount as ext3 due to feature incompatibilities
[    3.208004] EXT4-fs (mmcblk0p3): couldn't mount as ext2 due to feature incompatibilities
[    3.222144] EXT4-fs (mmcblk0p3): INFO: recovery required on readonly filesystem
[    3.230465] EXT4-fs (mmcblk0p3): write access will be enabled during recovery
[    3.253459] EXT4-fs warning (device mmcblk0p3): ext4_clear_journal_err:4767: Filesystem error recorded from previous mount: IO failure
[    3.267132] EXT4-fs warning (device mmcblk0p3): ext4_clear_journal_err:4768: Marking fs in need of filesystem check.
[    3.295223] EXT4-fs (mmcblk0p3): recovery complete
[    3.304969] EXT4-fs (mmcblk0p3): mounted filesystem with ordered data mode. Opts: (null)
[    3.314224] VFS: Mounted root (ext4 filesystem) readonly on device 179:3.
[    3.322179] Freeing unused kernel memory: 136K
[    3.327175] This architecture does not have kernel memory protection.
[    3.507629] EXT4-fs (mmcblk0p3): warning: mounting fs with errors, running e2fsck is recommended
[    3.522393] EXT4-fs error (device mmcblk0p3): ext4_has_uninit_itable:3049: comm mount: Inode table for bg 0 marked as needing zeroing
[    3.540173] Aborting journal on device mmcblk0p3-8.
[    3.549859] EXT4-fs (mmcblk0p3): Remounting filesystem read-only
[    3.556641] EXT4-fs (mmcblk0p3): re-mounted. Opts: data=ordered
[    3.568989] EXT4-fs error (device mmcblk0p3): ext4_journal_check_start:56: Detected aborted journal
[    3.579247] EXT4-fs (mmcblk0p3): Remounting filesystem read-only
can't run '/bin/mkdir': Read-only file system
mount: mounting devpts on /dev/pts failed: No such file or directory
------run rc.preboot file-----
[    3.841625] EXT4-fs (mmcblk0p5): mounted filesystem with ordered data mode. Opts: (null)
[    3.860330] Adding 81916k swap on /dev/mmcblk0p4.  Priority:-1 extents:1 across:81916k SS
------run rc.modules file-----
------run rc.final file-----
Load mpp modules
[    4.038267] [sensor_power_err]fetch sensor0_phase from device_tree failed
[    4.097663] [VIN_ERR]registering sp2305_mipi, No such device!
read-only file system detected...done
Starting network...
[    4.396332] get wifi_sdc_id failed
[    4.526445] get wifi_sdc_id failed
insmod: can't insert '/lib/modules/4.9.118/8189fs.ko': Operation not permitted
i

#11 全志 SOC » 全志V831芯片移植ac108驱动 » 2022-11-10 16:56:47

rtqq
回复: 1

使用V831芯片 移植AC108驱动时,启动时daudio probe失败,内核驱动已经勾选上,芯片的I2C_probe成功,报错,求各位大佬帮忙看看

[    2.227781] ac108 2-003b: i2c probe succeed.
[    2.228361] --->sunxi_daudio_dev_probe<--- strat.
[    2.228488] sunxi-daudio daudio0: regulator missing or invalid
[    2.228605] --->sunxi_daudio_dev_probe<--- end.

内核是4.9,board.dts如下

/*
 * Allwinner Technology CO., Ltd. sun8iw19p1 soc board.
 *
 * soc board support.
 */

/dts-v1/;

#include "sun8iw19p1.dtsi"

/{
	dram: dram {
		dram_clk = <0x000001e0>;
		dram_type = <0x00000003>;
		dram_zq = <0x00003bfb>;
		dram_odt_en = <0x00000001>;
		dram_para1 = <0x004310f2>;
		dram_para2 = <0x02000000>;
		dram_mr0 = <0x00001c70>;
		dram_mr1 = <0x00000000>;
		dram_mr2 = <0x00000018>;
		dram_mr3 = <0x00000000>;
		dram_tpr0 = <0x0046190d>;
		dram_tpr1 = <0x0121210a>;
		dram_tpr2 = <0x0005403b>;
		dram_tpr3 = <0x00002006>;
		dram_tpr4 = <0x05040405>;
		dram_tpr5 = <0x05050302>;
		dram_tpr6 = <0x90006644>;
		dram_tpr7 = <0x42c21590>;
		dram_tpr8 = <0xd05612c0>;
		dram_tpr9 = <0x00083def>;
		dram_tpr10 = <0x00000000>;
		dram_tpr11 = <0x00210000>;
		dram_tpr12 = <0x00000055>;
		dram_tpr13 = <0x00006003>;
	};

	opp_dvfs_table:opp_dvfs_table {
		cluster_num = <1>;
		opp_table_count = <1>;

		cpu_opp_l_table0: opp_l_table0 {
			compatible = "allwinner,opp_l_table0";
			opp_count = <2>;
			opp-shared;

			opp00 {
				opp-hz = /bits/ 64 <600000000>;
				opp-microvolt = <900000>;
				axi-bus-divide-ratio = <3>;
				clock-latency-ns = <2000000>;
			};

			opp01 {
				opp-hz = /bits/ 64 <816000000>;
				opp-microvolt = <900000>;
				axi-bus-divide-ratio = <3>;
				clock-latency-ns = <2000000>;
			};
		};
	};
	soc@03000000 {
		pinctrl@0300b000 {

			twi0_pins_a: twi0@0 {
				allwinner,pins = "PI3", "PI4";
				allwinner,pname = "twi0_scl", "twi0_sda";
				allwinner,function = "twi0";
				allwinner,muxsel = <5>;
				allwinner,drive = <1>;
				allwinner,pull = <0>;
			};

			twi0_pins_b: twi0@1 {
				allwinner,pins = "PI3", "PI4";
				allwinner,function = "io_disabled";
				allwinner,muxsel = <7>;
				allwinner,drive = <1>;
				allwinner,pull = <0>;
			};

			twi1_pins_a: twi1@0 {
				allwinner,pins = "PI1", "PI2";
				allwinner,pname = "twi1_scl", "twi1_sda";
				allwinner,function = "twi1";
				allwinner,muxsel = <5>;
				allwinner,drive = <1>;
				allwinner,pull = <0>;
			};

			twi1_pins_b: twi1@1 {
				allwinner,pins = "PI1", "PI2";
				allwinner,function = "io_disabled";
				allwinner,muxsel = <7>;
				allwinner,drive = <1>;
				allwinner,pull = <0>;
			};

			twi2_pins_a: twi2@0 {
				allwinner,pins = "PH11", "PH12";
				allwinner,pname = "twi2_scl", "twi2_sda";
				allwinner,function = "twi2";
				allwinner,muxsel = <5>;
				allwinner,drive = <1>;
				allwinner,pull = <0>;
			};

			twi2_pins_b: twi2@1 {
				allwinner,pins = "PH11", "PH12";
				allwinner,function = "io_disabled";
				allwinner,muxsel = <7>;
				allwinner,drive = <1>;
				allwinner,pull = <0>;
			};

			spi0_pins_a: spi0@0 {
				allwinner,pins = "PC0", "PC2", "PC3",
						"PC5", "PC4";
				allwinner,pname = "spi0_sclk", "spi0_mosi",
						  "spi0_miso", "spi0_hold", "spi0_wp";
				allwinner,function = "spi0";
				allwinner,muxsel = <4>;
				allwinner,drive = <1>;
				allwinner,pull = <0>;
			};

			spi0_pins_b: spi0@1 {
				allwinner,pins = "PC1", "PC6";
				allwinner,pname = "spi0_cs0", "spi0_cs1";
				allwinner,function = "spi0";
				allwinner,muxsel = <4>;
				allwinner,drive = <1>;
				allwinner,pull = <1>; 	// only CS should be pulled up
			};

			spi0_pins_c: spi0@2 {
				allwinner,pins = "PC0", "PC1", "PC2", "PC3",
						"PC4", "PC5", "PC6";
				allwinner,function = "io_disabled";
				allwinner,muxsel = <7>;
				allwinner,drive = <1>;
				allwinner,pull = <0>;
			};

			spi1_pins_a: spi1@0 {
				allwinner,pins = "PH0", "PH1", "PH2";
				allwinner,pname = "spi1_sclk", "spi1_mosi",
						  "spi1_miso";
				allwinner,function = "io_disabled";
				allwinner,muxsel = <4>;
				allwinner,drive = <1>;
				allwinner,pull = <0>;
			};

			spi1_pins_b: spi1@1 {
				allwinner,pins = "PH3";
				allwinner,pname = "spi1_cs0";
				allwinner,function = "io_disabled";
				allwinner,muxsel = <4>;
				allwinner,drive = <1>;
				allwinner,pull = <1>; // only CS should be pulled up
			};

			spi1_pins_c: spi1@2 {
				allwinner,pins = "PH0", "PH1", "PH2", "PH3";
				allwinner,function = "io_disabled";
				allwinner,muxsel = <7>;
				allwinner,drive = <1>;
				allwinner,pull = <0>;
			};

			sdc0_pins_a: sdc0@0 {
				allwinner,pins = "PF0", "PF1", "PF2", "PF3",
						"PF4", "PF5";
				allwinner,function = "sdc0";
				allwinner,muxsel = <2>;
				allwinner,drive = <3>;
				allwinner,pull = <1>;
			};

			sdc0_pins_b: sdc0@1 {
				allwinner,pins = "PF0", "PF1", "PF2", "PF3",
						"PF4", "PF5";
				allwinner,function = "io_disabled";
				allwinner,muxsel = <7>;
				allwinner,drive = <1>;
				allwinner,pull = <0>;
			};

			sdc1_pins_a: sdc1@0 {
				allwinner,pins = "PG0", "PG1", "PG2", "PG3",
						"PG4", "PG5";
				allwinner,function = "sdc1";
				allwinner,muxsel = <2>;
				allwinner,drive = <3>;
				allwinner,pull = <1>;
			};

			owc0_pins_a: owc0@0 {
				allwinner,pins = "PH4";
				allwinner,pname = "owc0";
				allwinner,function = "owc0";
				allwinner,muxsel = <5>;
				allwinner,drive = <1>;
				allwinner,pull = <0>;
			};

			owc0_pins_b: owc0_sleep@0 {
				allwinner,pins = "PH4";
				allwinner,function = "io_disabled";
				allwinner,muxsel = <7>;
				allwinner,drive = <1>;
				allwinner,pull = <0>;
			};
			pwm0_pins_a: pwm0@0 {
				allwinner,pins = "PH0";
				allwinner,pname = "pwm0_positive";
				allwinner,function = "pwm0";
				allwinner,muxsel = <2>;
				allwinner,drive = <1>;
				allwinner,pull = <0>;
			};

			pwm0_pins_b: pwm0@1 {
				allwinner,pins = "PH0";
				allwinner,function = "io_disabled";
				allwinner,muxsel = <7>;
				allwinner,drive = <1>;
				allwinner,pull = <0>;
			};

			pwm1_pins_a: pwm1@0 {
				allwinner,pins = "PH1";
				allwinner,pname = "pwm1_positive";
				allwinner,function = "pwm1";
				allwinner,muxsel = <2>;
				allwinner,drive = <1>;
				allwinner,pull = <0>;
			};

			pwm1_pins_b: pwm1@1 {
				allwinner,pins = "PH1";
				allwinner,function = "io_disabled";
				allwinner,muxsel = <7>;
				allwinner,drive = <1>;
				allwinner,pull = <0>;
			};

			pwm2_pins_a: pwm2@0 {
				allwinner,pins = "PH2";
				allwinner,pname = "pwm2_positive";
				allwinner,function = "pwm2";
				allwinner,muxsel = <2>;
				allwinner,drive = <1>;
				allwinner,pull = <0>;
			};

			pwm2_pins_b: pwm2@1 {
				allwinner,pins = "PH2";
				allwinner,function = "io_disabled";
				allwinner,muxsel = <7>;
				allwinner,drive = <1>;
				allwinner,pull = <0>;
			};

			pwm3_pins_a: pwm3@0 {
				allwinner,pins = "PH3";
				allwinner,pname = "pwm3_positive";
				allwinner,function = "pwm3";
				allwinner,muxsel = <2>;
				allwinner,drive = <1>;
				allwinner,pull = <0>;
			};

			pwm3_pins_b: pwm3@1 {
				allwinner,pins = "PH3";
				allwinner,function = "io_disabled";
				allwinner,muxsel = <7>;
				allwinner,drive = <1>;
				allwinner,pull = <0>;
			};

			pwm4_pins_a: pwm4@0 {
				allwinner,pins = "PH4";
				allwinner,pname = "pwm4_positive";
				allwinner,function = "pwm4";
				allwinner,muxsel = <2>;
				allwinner,drive = <1>;
				allwinner,pull = <0>;
			};

			pwm4_pins_b: pwm4@1 {
				allwinner,pins = "PH4";
				allwinner,function = "io_disabled";
				allwinner,muxsel = <7>;
				allwinner,drive = <1>;
				allwinner,pull = <0>;
			};

			// pwm5_pins_a: pwm5@0 {
			// 	allwinner,pins = "PH5";
			// 	allwinner,pname = "pwm5_positive";
			// 	allwinner,function = "pwm5";
			// 	allwinner,muxsel = <2>;
			// 	allwinner,drive = <1>;
			// 	allwinner,pull = <0>;
			// };

			// pwm5_pins_b: pwm5@1 {
			// 	allwinner,pins = "PH5";
			// 	allwinner,function = "io_disabled";
			// 	allwinner,muxsel = <7>;
			// 	allwinner,drive = <1>;
			// 	allwinner,pull = <0>;
			// };

			pwm6_pins_a: pwm6@0 {
				allwinner,pins = "PH6";
				allwinner,pname = "pwm6_positive";
				allwinner,function = "pwm6";
				allwinner,muxsel = <2>;
				allwinner,drive = <1>;
				allwinner,pull = <0>;
			};

			pwm6_pins_b: pwm6@1 {
				allwinner,pins = "PH6";
				allwinner,function = "io_disabled";
				allwinner,muxsel = <7>;
				allwinner,drive = <1>;
				allwinner,pull = <0>;
			};

			pwm7_pins_a: pwm7@0 {
				allwinner,pins = "PH7";
				allwinner,pname = "pwm7_positive";
				allwinner,function = "pwm7";
				allwinner,muxsel = <2>;
				allwinner,drive = <1>;
				allwinner,pull = <0>;
			};

			pwm7_pins_b: pwm7@1 {
				allwinner,pins = "PH7";
				allwinner,function = "io_disabled";
				allwinner,muxsel = <7>;
				allwinner,drive = <1>;
				allwinner,pull = <0>;
			};

			pwm8_pins_a: pwm8@0 {
				allwinner,pins = "PH8";
				allwinner,pname = "pwm8_positive";
				allwinner,function = "pwm8";
				allwinner,muxsel = <2>;
				allwinner,drive = <1>;
				allwinner,pull = <0>;
			};

			pwm8_pins_b: pwm8@1 {
				allwinner,pins = "PH8";
				allwinner,function = "io_disabled";
				allwinner,muxsel = <7>;
				allwinner,drive = <1>;
				allwinner,pull = <0>;
			};
			
			pwm9_pins_a: pwm9@0 {
				allwinner,pins = "PH9";
				allwinner,pname = "pwm9_positive";
				allwinner,function = "pwm9";
				allwinner,muxsel = <2>;
				allwinner,drive = <1>;
				allwinner,pull = <0>;
			};

			pwm9_pins_b: pwm9@1 {
				allwinner,pins = "PH9";
				allwinner,function = "io_disabled";
				allwinner,muxsel = <7>;
				allwinner,drive = <1>;
				allwinner,pull = <0>;
			};

			rgb8_pins_a: rgb8@0 {
				allwinner,pins = "PD1", "PD2", "PD3", "PD4", "PD5", "PD6",
						"PD7", "PD8", "PD18", "PD19", "PD20";
				allwinner,pname = "lcdd3", "lcdd4", "lcdd5", "lcdd6", "lcdd7",
						"lcdd10", "lcdd11", "lcdd12", "lcdclk", "lcdde",
							"lcdhsync";
				allwinner,function = "lcd0";
				allwinner,muxsel = <2>;
				allwinner,drive = <1>;
				allwinner,pull = <0>;
			};

			rgb8_pins_b: rgb8@1 {
				allwinner,pins = "PD1", "PD2","PD3","PD4","PD5","PD6",
						"PD7","PD8","PD18","PD19","PD20";
				allwinner,function = "io_disabled";
				allwinner,muxsel = <7>;
				allwinner,drive = <1>;
				allwinner,pull = <0>;
			};
		};

		gpadc:gpadc{
			channel_num = <1>;
			channel_select = <0x01>;
			channel_data_select = <0>;
			channel_compare_select = <0x01>;
			channel_cld_select = <0x01>;
			channel_chd_select = <0x01>;
			channel0_compare_lowdata = <1700000>;
			channel0_compare_higdata = <1200000>;
			key_cnt =  <2>;
			key0_vol = <0>;
			key0_val = <2>; /* KEY_1 */
			key1_vol = <160>;
			key1_val = <3>; /* KEY_2 */
			status = "okay";
		};

		uart1: uart@05000400 {
			compatible = "allwinner,sun8i-uart";
			device_type = "uart1";
			reg = <0x0 0x05000400 0x0 0x400>;
			interrupts = <GIC_SPI 50 IRQ_TYPE_LEVEL_HIGH>;
			clocks = <&clk_uart1>;
			pinctrl-names = "default", "sleep";
			pinctrl-0 = <&uart1_pins_a>;
			pinctrl-1 = <&uart1_pins_b>;
			uart1_port = <1>;
			uart1_type = <4>;
			status = "okay";
		};

		// uart3: uart@05000c00 {
		// 	compatible = "allwinner,sun8i-uart";
		// 	device_type = "uart3";
		// 	reg = <0x0 0x05000c00 0x0 0x400>;
		// 	interrupts = <GIC_SPI 52 IRQ_TYPE_LEVEL_HIGH>;
		// 	clocks = <&clk_uart3>;
		// 	pinctrl-names = "default", "sleep";
		// 	pinctrl-0 = <&uart3_pins_a>;
		// 	pinctrl-1 = <&uart3_pins_b>;
		// 	uart3_port = <3>;
		// 	uart3_type = <4>;
		// 	status = "okay";
		// };

		twi0: twi@0x05002000{
			pinctrl-0 = <&twi0_pins_a>;
			pinctrl-1 = <&twi0_pins_b>;
			twi_drv_used = <1>;
			status = "disable";
		};

		twi1: twi@0x05002400{
			pinctrl-0 = <&twi1_pins_a>;
			pinctrl-1 = <&twi1_pins_b>;
			clock-frequency = <400000>;
			status = "okay";
		};

		twi2: twi@0x05002800{
			pinctrl-0 = <&twi2_pins_a>;
			pinctrl-1 = <&twi2_pins_b>;
			clock-frequency = <400000>;
			status = "okay";
			ac108: ac108@3b{
				#sound-dai-cells = <0>;
				compatible = "Allwinner,MicArray_0";
				reg = <0x3b>;
				regulator_used = <0x0>;
				power_voltage = <3300000>;
				regulator_name = "vcc-3v3";
				power_gpio_used = <0x0>;
				reset_gpio_used = <0x0>;
				twi_bus = <0x1>;
				pga_gain = <0x1F>;
				slot_width = <0x20>;
				lrck_period = <0x80>;
				ref_pga_used = <0x1>;
				ref_pga_gain = <0x10>;
				ref_channel = <0x3>;
				debug_mode = <0x0>;
				status = "okay";
				
			};

		//	ac108: ac108@35{
		//		compatible = "Allwinner,MicArray_1";
		//		reg = <0x35>;
		//		regulator_used = <0x0>;
		//		power_voltage = <3300000>;
		//		regulator_name = "vcc-3v3";
		//		power_gpio_used = <0x0>;
		//		reset_gpio_used = <0x0>;
		//		twi_bus = <0x1>;
		//		pga_gain = <0x1F>;
		//		slot_width = <0x20>;
		//		lrck_period = <0x80>;
		//		ref_pga_used = <0x1>;
		//		ref_pga_gain = <0x10>;
		//		ref_channel = <0x3>;
		//		debug_mode = <0x0>;
		//		status = "okay";
		//	};
		};

		spi@05010000 {
			pinctrl-0 = <&spi0_pins_a &spi0_pins_b>;
			pinctrl-1 = <&spi0_pins_c>;
			status = "disable";
			spi_board0 {
				device_type = "spi_board0";
				compatible = "m25p80";
				spi-max-frequency = <0x5f5e100>;
				reg = <0x0>;
				spi-rx-bus-width = <0x1>;
				spi-tx-bus-width = <0x1>;
			};
		};

	//	spi@05011000 {
	//		#address-cells = <1>;
	//		#size-cells = <0>;
	//		reg = <0x0 0x05011000 0x0 0x1000>;
	//		interrupts = <GIC_SPI 55 IRQ_TYPE_LEVEL_HIGH>;
	//		clocks = <&clk_pll_periph0>, <&clk_spi1>;
	//		clock-frequency = <200000000>;
	//		pinctrl-names = "default", "sleep";
	//		pinctrl-0 = <&spi1_pins_b>;
	//		pinctrl-1 = <&spi1_pins_c>;
	//		spi1_cs_number = <2>;
	//		spi1_cs_bitmap = <3>;
	//		status = "okay";
	//		spi_board1 {
	//			device_type = "spi_board1";
	//			compatible = "spidev";
	//			spi-max-frequency = <0x5f5e100>;
	//			reg = <0x0>;
	//			spi-rx-bus-width = <0x1>;
	//			spi-tx-bus-width = <0x1>;
	//		};
	//	};

		vind0:vind@0 {
			vind0_clk = <270000000>;
			vind0_isp = <200000000>;
			status = "okay";

			actuator0:actuator@0 {
				device_type = "actuator0";
				actuator0_name = "ad5820_act";
				actuator0_slave = <0x18>;
				actuator0_af_pwdn = <>;
				actuator0_afvdd = "afvcc-csi";
				actuator0_afvdd_vol = <2800000>;
				status = "disabled";
			};
			flash0:flash@0 {
				device_type = "flash0";
				flash0_type = <2>;
				flash0_en = <>;
				flash0_mode = <>;
				flash0_flvdd = "";
				flash0_flvdd_vol = <>;
				device_id = <0>;
				status = "disabled";
			};
			sensor0:sensor@0 {
				device_type = "sensor0";
				// sensor0_mname = "ov9732_mipi";
				sensor0_mname = "sp2305_mipi";
				sensor0_twi_cci_id = <1>;
				// sensor0_twi_addr = <0x6c>;
				sensor0_twi_addr = <0x78>;
				sensor0_mclk_id = <0>;
				sensor0_pos = "rear";
				sensor0_isp_used = <1>;
				sensor0_fmt = <1>;
				sensor0_stby_mode = <0>;
				sensor0_vflip = <0>;
				sensor0_hflip = <0>;
				sensor0_iovdd-supply = <>;
				sensor0_iovdd_vol = <1800000>;
				sensor0_avdd-supply = <>;
				sensor0_avdd_vol = <2800000>;
				sensor0_dvdd-supply = <>;
				sensor0_dvdd_vol = <1200000>;
				sensor0_power_en = <>;
				/* board error, we can not use the right config. */
				sensor0_reset = <&pio PE 16 1 0 1 0>;
				sensor0_pwdn = <&pio PE 17 1 0 1 0>;
				status	= "okay";
			};
			sensor1:sensor@1 {
				device_type = "sensor1";
				sensor1_mname = "ov5647";
				sensor1_twi_cci_id = <0>;
				sensor1_twi_addr = <0x6c>;
				sensor1_mclk_id = <1>;
				sensor1_pos = "front";
				sensor1_isp_used = <0>;
				sensor1_fmt = <0>;
				sensor1_stby_mode = <0>;
				sensor1_vflip = <0>;
				sensor1_hflip = <0>;
				sensor1_iovdd-supply = <>;
				sensor1_iovdd_vol = <2800000>;
				sensor1_avdd-supply = <>;
				sensor1_avdd_vol = <2800000>;
				sensor1_dvdd-supply = <>;
				sensor1_dvdd_vol = <1500000>;
				sensor1_power_en = <>;
				sensor1_reset = <&pio PI 3 1 0 1 0>;
				sensor1_pwdn = <&pio PI 4 1 0 1 0>;
				status	= "disabled";
			};
			vinc0:vinc@0 {
				vinc0_csi_sel = <0>;
				vinc0_mipi_sel = <0>;
				vinc0_isp_sel = <0>;
				vinc0_isp_tx_ch = <0>;
				vinc0_rear_sensor_sel = <0>;
				vinc0_front_sensor_sel = <0>;
				vinc0_sensor_list = <0>;
				status = "okay";
			};
			vinc1:vinc@1 {
				vinc1_csi_sel = <0>;
				vinc1_mipi_sel = <0>;
				vinc1_isp_sel = <0>;
				vinc1_isp_tx_ch = <0>;
				vinc1_rear_sensor_sel = <0>;
				vinc1_front_sensor_sel = <0>;
				vinc1_sensor_list = <0>;
				status = "okay";
			};
			vinc2:vinc@2 {
				vinc2_csi_sel = <0>;
				vinc2_mipi_sel = <0>;
				vinc2_isp_sel = <0>;
				vinc2_isp_tx_ch = <0>;
				vinc2_rear_sensor_sel = <0>;
				vinc2_front_sensor_sel = <0>;
				vinc2_sensor_list = <0>;
				status = "disabled";
			};
			vinc3:vinc@3 {
				vinc3_csi_sel = <1>;
				vinc3_mipi_sel = <0xff>;
				vinc3_isp_sel = <1>;
				vinc3_isp_tx_ch = <0>;
				vinc3_rear_sensor_sel = <1>;
				vinc3_front_sensor_sel = <1>;
				vinc3_sensor_list = <0>;
				status = "disabled";
			};
		};
		s_owc0: s_owc@07040400 {
			pinctrl-0 = <&owc0_pins_a>;
			pinctrl-1 = <&owc0_pins_b>;
			status = "okay";
		};

		sdc0: sdmmc@04020000 {
			pinctrl-0 = <&sdc0_pins_a>;
			bus-width = <4>;
			// cd-gpios = <&pio PF 6 0 1 3 0xffffffff>;
			non-removable;
			card-pwr-gpios;// = <&pio PC 4 1 1 2 0xffffffff>;
			sunxi-power-save-mode;
			sunxi-signal-vol-sw-without-pmu;
			sd-uhs-sdr50;
			sd-uhs-ddr50;
			sd-uhs-sdr104;
			/*sunxi-dis-signal-vol-sw;*/
			max-frequency = <150000000>;
			min-frequency = <100000>;
			cd-used-24M;
			no-sdio;
			/*broken-cd;*/
			ctl-spec-caps = <0x8>;
			status = "okay";
		};

		card0_boot_para {
			device_type = "card0_boot_para";
			card_ctrl = <0x0>;
			card_high_speed = <0x1>;
			card_line = <0x4>;
			time_pwroff_ms = <200>;
			pinctrl-1 = <&sdc0_pins_b>;
			card-pwr-gpios;// = <&pio PC 4 1 1 2 0xffffffff>;
			status = "okay";
		};

		sdc1: sdmmc@04021000 {
			pinctrl-0 = <&sdc1_pins_a>;
			bus-width = <4>;
			/*sunxi-power-save-mode;*/
			/*sd-uhs-sdr12*/
			/*sd-uhs-sdr25*/
			/*sd-uhs-sdr50*/
			/*sd-uhs-sdr104*/
			/*sunxi-dis-signal-vol-sw;*/
			cap-sdio-irq;
			keep-power-in-suspend;
			ignore-pm-notify;
			max-frequency = <50000000>;
			status = "okay";
		};

		usbc0:usbc0@0{
			usb_port_type = <0>;
			usb_detect_type = <0>;
			usb_detect_mode = <0>;
			usb_id_gpio;
			usb_det_vbus_gpio;
			usb_drv_vbus_gpio;
			usb_host_init_state = <0>;
			status = "okay";
		};

		disp: disp@01000000 {
			disp_init_enable		= <1>;
			disp_mode				= <0>;

			screen0_output_type		= <1>;
			screen0_output_mode		= <4>;

			disp_rotation_used 		= <1>;
			degree0					= <0>;
			fb0_format				= <8>;
			fb0_width				= <240>;
			fb0_height				= <240>;
			// fb0_height				= <320>;

			lcd0_backlight			= <50>;
			lcd0_bright				= <50>;
			lcd0_contrast			= <50>;
			lcd0_saturation			= <57>;
			lcd0_hue				= <50>;
		};

		lcd0: lcd0@01c0c000 {
			lcd_used            = <1>;

			lcd_size			= "1.3";
			lcd_model_name		= "inv";
			lcd_driver_name     = "st7789v_cpu";

			lcd_x               = <240>;
			lcd_y               = <240>;
			lcd_width           = <108>;
			lcd_height          = <64>;
			lcd_dclk_freq       = <10>;

			lcd_backlight       = <50>;

			lcd_pwm_used        = <0>;
			lcd_pwm_ch          = <1>;
			lcd_pwm_freq        = <50000>;
			lcd_pwm_pol         = <1>;
			lcd_pwm_max_limit   = <255>;

			lcd_hbp             = <60>;
			lcd_ht              = <298>;
			lcd_hspw            = <30>;
			lcd_vbp             = <250>;
			lcd_vt              = <265>;
			lcd_vspw            = <2>;

			lcd_if              = <1>;
			lcd_frm             = <2>;
			lcd_cpu_mode        = <1>;
			lcd_cpu_te          = <0>;
			lcd_cpu_if	        = <14>;

			lcd_io_phase        = <0x0000>;
			lcdgamma4iep        = <22>;
			lcd_gamma_en        = <0>;
			lcd_cmap_en         = <0>;
			lcd_bright_curve_en = <0>;
			lcd_rb_swap			= <0>;

			lcd_gpio_0 = <&pio PH 5 1 0 3 0>; /* rst */
			lcd_gpio_1 = <&pio PD 21 1 0 3 0>; /* cs */

			pinctrl-0 = <&rgb8_pins_a>;
			pinctrl-1 = <&rgb8_pins_b>;
		};

		daudio0:daudio@0x05090000 {
			mclk_div = <0x0>;
			frametype = <0x00>;
			tdm_config = <0x01>;
			sign_extend = <0x00>;
			tx_data_mode = <0x00>;
			rx_data_mode = <0x00>;
			msb_lsb_first = <0x00>;
			pcm_lrck_period = <0x80>;
			slot_width_select = <0x20>;
			asrc_function_en = <0x00>;
			daudio_master =  <0x04>;
			signal_inversion =  <0x01>;
			audio_format =  <0x01>;
			status = "okay";
			

		};

		daudio1:daudio@0x05091000 {
			mclk_div = <0x01>;
			frametype = <0x00>;
			tdm_config = <0x01>;
			sign_extend = <0x00>;
			tx_data_mode = <0x00>;
			rx_data_mode = <0x00>;
			msb_lsb_first = <0x00>;
			pcm_lrck_period = <0x80>;
			slot_width_select = <0x20>;
			status = "disabled";
		};

		codec:codec@0x05096000 {
			pa_level = <0x1>;
			main_gain = <0x17>;
			adcdrc_cfg = <0x00>;
			adchpf_cfg = <0x01>;
			dacdrc_cfg = <0x01>;
			dachpf_cfg = <0x00>;
			digital_vol = <0x00>;
			lineout_vol = <0x1f>;
			pa_msleep_time = <0xa0>;
			/* gpio-spk = <&pio PH 14 1 1 1 1>; */
			status = "okay";
		};

		sndcodec:sound@0 {
			status = "okay";
		};

		snddaudio0:sound@1 {
			sunxi,snddaudio-codec = "ac108.2-0035";
			sunxi,snddaudio-codec-dai = "ac108-pcm1";
			status = "okay";

			snddaudio-codec,cpu{
				sound-dai = <&daudio0>;
			};
			daudio2_master:simple-audio-card.codec{
				sound-dai = <&ac108>;
			};
		};

		snddaudio1:sound@2 {
			audio_format = <0x01>;
			daudio_master = <0x04>;
			signal_inversion = <0x01>;
			status = "disabled";
		};
	};

	//wlan:wlan {
	//	compatible = "allwinner,sunxi-wlan";
	//	clocks = <&clk_losc_out>;
	//	wlan_busnum = <1>;
	//	wlan_usbnum = <3>;
	//	wakeup_source = <0>;
//
//		/* wlan_power-supply = <&reg_dcdc1>; */
//		/* io_regulator-supply = <&reg_dcdc5>; */
//
//		/* wlan_power_vol = <3300000>; */
//		/* io_regulator_vol = <3300000>; */
//
//		/* wlan_en; */
//		wlan_regon = <&pio PH 4 1 0 1 0>;
//		/* wlan_hostwake = <&pio PG 7 0 0 1 0>; */
//		wlan_hostwake;
//		status = "okay";
//	};
};

页脚

工信部备案:粤ICP备20025096号 Powered by FluxBB

感谢为中文互联网持续输出优质内容的各位老铁们。 QQ: 516333132, 微信(wechat): whycan_cn (哇酷网/挖坑网/填坑网) service@whycan.cn