Merge branch 'main' of 192.168.1.238:vision/sl100_sdk into main

This commit is contained in:
lijunliang
2024-06-14 16:53:18 +08:00
74 changed files with 18995 additions and 2 deletions

View File

@@ -0,0 +1,16 @@
LICHEE_CHIP:=sun8iw21p1
LICHEE_PRODUCT:=
LICHEE_BOARD:=
LICHEE_FLASH:=
LICHEE_ARCH:=arm
LICHEE_BRANDY_VER:=2.0
LICHEE_BRANDY_DEFCONF:=sun8iw21p1_fastboot_defconfig
LICHEE_BRANDY_SPL:=spl
LICHEE_KERN_VER:=4.9
LICHEE_KERN_DEFCONF:=sun8iw21p1smp_defconfig
LICHEE_BUILDING_SYSTEM:=
LICHEE_BR_VER:=
LICHEE_BR_DEFCONF:=
LICHEE_COMPILER_TAR:=gcc-linaro-5.3.1-2016.05-x86_64_arm-linux-gnueabi.tar.xz
LICHEE_ROOTFS:=target-arm-fast-linaro-5.3.tar.bz2
LICHEE_COMPRESS:=gzip

View File

@@ -0,0 +1,17 @@
LICHEE_CHIP:=sun8iw21p1
LICHEE_PRODUCT:=
LICHEE_BOARD:=
LICHEE_ARCH:=arm
LICHEE_FLASH:=nor
LICHEE_BRANDY_VER:=2.0
LICHEE_BRANDY_DEFCONF:=sun8iw21p1_fastboot_defconfig
LICHEE_BRANDY_SPL:=spl
LICHEE_KERN_VER:=4.9
LICHEE_KERN_DEFCONF:=config-4.9
LICHEE_BUILDING_SYSTEM:=
LICHEE_BR_VER:=
LICHEE_BR_DEFCONF:=
LICHEE_COMPILER_TAR:=gcc-linaro-5.3.1-2016.05-x86_64_arm-linux-gnueabi.tar.xz
LICHEE_ROOTFS:=target-arm-fast-linaro-5.3.tar.bz2
LICHEE_COMPRESS:=gzip
LICHEE_REDUNDANT_ENV_SIZE:=0x1000

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,9 @@
[package]
;item=Item_TOC_name, Item_filename,
;item=scp, scp.fex
;item=optee, optee.fex
;item=u-boot, u-boot.fex
item=dtb, sunxi.fex
;item=logo, bootlogo.bmp.lzma
;item=shutdowncharge, bempty.bmp.lzma
;item=androidcharge, battery_charge.bmp.lzma

View File

@@ -0,0 +1,10 @@
[package]
;item=Item_TOC_name, Item_filename,
;item=scp, scp.fex
;item=optee, optee.fex
;item=u-boot, u-boot-spinor.fex
item=dtb, sunxi.fex
item=melis-elf, riscv.fex
;item=logo, bootlogo.bmp.lzma
;item=shutdowncharge, bempty.bmp.lzma
;item=androidcharge, battery_charge.bmp.lzma

Binary file not shown.

After

Width:  |  Height:  |  Size: 300 KiB

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,3 @@
root_partition=rootfs
boot_partition=boot
extend_partition=extend

View File

@@ -0,0 +1,97 @@
;/**************************************************************************/
;2010-06-09
;Sam
;image
;/**************************************************************************/
[MAIN_TYPE]
ITEM_COMMON = "COMMON "
ITEM_INFO = "INFO "
ITEM_BOOTROM = "BOOTROM "
ITEM_FES = "FES "
ITEM_FET = "FET "
ITEM_FED = "FED "
ITEM_FEX = "FEX "
ITEM_BOOT = "BOOT "
ITEM_ROOTFSFAT12 = "RFSFAT12"
ITEM_ROOTFSFAT16 = "RFSFAT16"
ITEM_ROOTFSFAT32 = "FFSFAT32"
ITEM_USERFSFAT12 = "UFSFAT12"
ITEM_USERFSFAT16 = "UFSFAT16"
ITEM_USERFSFAT32 = "UFSFAT32"
ITEM_PHOENIX_SCRIPT = "PXSCRIPT"
ITEM_PHOENIX_TOOLS = "PXTOOLS "
ITEM_AUDIO_DSP = "AUDIODSP"
ITEM_VIDEO_DSP = "VIDEODSP"
ITEM_FONT = "FONT "
ITEM_FLASH_DRV = "FLASHDRV"
ITEM_OS_CORE = "OS_CORE "
ITEM_DRIVER = "DRIVER "
ITEM_PIC = "PICTURE "
ITEM_AUDIO = "AUDIO "
ITEM_VIDEO = "VIDEO "
ITEM_APPLICATION = "APP "
[SUB_TYPE]
SUBTYPEdemo1 = "071228HWSXXXX100"
;-->071228 2007-12-28
;-->HWS hardware scan
;-->100 version 1.00
[DIR_DEF]
INPUT_DIR = "..\\"
[FILELIST]
;-->constant
{filename = "sys_config.fex", maintype = ITEM_COMMON, subtype = "SYS_CONFIG100000",},
{filename = "config.fex", maintype = ITEM_COMMON, subtype = "SYS_CONFIG_BIN00",},
{filename = "split_xxxx.fex", maintype = ITEM_COMMON, subtype = "SPLIT_0000000000",},
{filename = "sys_partition.fex",maintype = ITEM_COMMON, subtype = "SYS_CONFIG000000",},
{filename = "sunxi.fex", maintype = ITEM_COMMON, subtype = "DTB_CONFIG000000",},
;-->boot files
{filename = "boot0_sdcard.fex", maintype = "12345678", subtype = "1234567890BOOT_0",},
{filename = "boot0_spinor.fex", maintype = "12345678", subtype = "1234567890BNOR_0",},
{filename = "u-boot.fex", maintype = "12345678", subtype = "UBOOT_0000000000",},
{filename = "u-boot-crash.fex", maintype = "12345678", subtype = "UBOOT_CRASH_0000",},
{filename = "toc1.fex", maintype = "12345678", subtype = "TOC1_00000000000",},
{filename = "toc0.fex", maintype = "12345678", subtype = "TOC0_00000000000",},
{filename = "fes1.fex", maintype = ITEM_FES, subtype = "FES_1-0000000000",},
{filename = "boot_package.fex", maintype = "12345678", subtype = "BOOTPKG-00000000",},
{filename = "boot_package_nor.fex", maintype = "12345678", subtype = "BOOTPKG-NOR00000",},
{filename = "fastbootpkg_cardproduct.fex", maintype = "12345678",subtype = "BOOTPKG-CARDPROD",},
;-------------------------------usb download part-------------------------------------;
;-->usb tools
{filename = "usbtool.fex", maintype = "PXTOOLSB", subtype = "xxxxxxxxxxxxxxxx",},
{filename = "usbtool_crash.fex",maintype = "PXTOOLCH", subtype = "xxxxxxxxxxxxxxxx",},
{filename = "aultools.fex", maintype = "UPFLYTLS", subtype = "xxxxxxxxxxxxxxxx",},
{filename = "aultls32.fex", maintype = "UPFLTL32", subtype = "xxxxxxxxxxxxxxxx",},
;-------------------------------card download part----------------------------------------;
;-->card tools
{filename = "cardtool.fex", maintype = "12345678", subtype = "1234567890cardtl",},
{filename = "cardscript.fex", maintype = "12345678", subtype = "1234567890script",},
;-->other
{filename = "sunxi_gpt.fex", maintype = "12345678", subtype = "1234567890___GPT",},
{filename = "sunxi_mbr_nor.fex", maintype = "12345678", subtype = "1234567890___MBR",},
{filename = "dlinfo.fex", maintype = "12345678", subtype = "1234567890DLINFO",},
{filename = "arisc.fex", maintype = "12345678", subtype = "1234567890ARISC" ,},
[IMAGE_CFG]
version = 0x100234
pid = 0x00001234
vid = 0x00008743
hardwareid = 0x100
firmwareid = 0x100
bootromconfig = "bootrom_071203_00001234.cfg"
rootfsconfig = "rootfs.cfg"
;;imagename = "ePDKv100_nand.img"
filelist = FILELIST
imagename = ..\sun4i_test_evb.img
encrypt = 0

View File

@@ -0,0 +1,83 @@
;---------------------------------------------------------------------------------------------------------
; 说明: 脚本中的字符串区分大小写,用户可以修改"="后面的数值,但是不要修改前面的字符串
;---------------------------------------------------------------------------------------------------------
;--------------------------------------------------------------------------------------------------
; 固件下载参数配置
;--------------------------------------------------------------------------------------------------
;****************************************************
; mbr的大小, 以Kbyte为单位
;****************************************************
[mbr]
size = 4096
;********************************************************************************************************
; 分区配置
;
;
; partition 定义范例:
; [partition] ; //表示是一个分区
; name = USERFS2 ; //分区名称
; size = 16384 ; //分区大小 单位: 扇区.分区表示个数最多2^31 * 512 = 2T
; downloadfile = "123.fex" ; //下载文件的路径和名称可以使用相对路径相对是指相对于image.cfg文件所在分区。也可以使用绝对路径
; keydata = 1 ; //私有数据分区,重新量产数据将不丢失
; encrypt = 1 ; //采用加密方式烧录,将提供数据加密,但损失烧录速度
; user_type = ? ; //私有用法
; verify = 1 ; //要求量产完成后校验是否正确
;
; 注1、name唯一, 不允许同名
; 2、name最大12个字符
; 3、size = 0, 将创建一个无大小的空分区
; 4、为了安全和效率考虑分区大小最好保证为16M字节的整数倍
;********************************************************************************************************
[partition_start]
[partition]
name = boot-res
size = 1024
downloadfile = "boot-resource.fex"
user_type = 0x8000
[partition]
name = env
size = 512
downloadfile = "env.fex"
user_type = 0x8000
[partition]
name = boot
;size = 4096
size = 12288
downloadfile = "boot.fex"
user_type = 0x8000
[partition]
name = rootfs
size = 18432
downloadfile = "rootfs.fex"
user_type = 0x8000
[partition]
name = rootfs_data
size = 102400
user_type = 0x8000
;[partition]
; name = recovery
; size = 12288
; user_type = 0x8000
;
;[partition]
; name = misc
; size = 512
; user_type = 0x8000
;
;[partition]
; name = private
; size = 512
; user_type = 0x8000
[partition]
name = UDISK
user_type = 0x8100

View File

@@ -0,0 +1,130 @@
;---------------------------------------------------------------------------------------------------------
; 说明: 脚本中的字符串区分大小写,用户可以修改"="后面的数值,但是不要修改前面的字符串
;---------------------------------------------------------------------------------------------------------
;--------------------------------------------------------------------------------------------------
; 固件下载参数配置
;--------------------------------------------------------------------------------------------------
;****************************************************
; mbr的大小, 以Kbyte为单位
;****************************************************
[mbr]
size = 16
;********************************************************************************************************
; 分区配置
;
;
; partition 定义范例:
; [partition] ; //表示是一个分区
; name = USERFS2 ; //分区名称
; size = 16384 ; //分区大小 单位: 扇区.分区表示个数最多2^31 * 512 = 2T
; downloadfile = "123.fex" ; //下载文件的路径和名称可以使用相对路径相对是指相对于image.cfg文件所在分区。也可以使用绝对路径
; keydata = 1 ; //私有数据分区,重新量产数据将不丢失
; encrypt = 1 ; //采用加密方式烧录,将提供数据加密,但损失烧录速度
; user_type = ? ; //私有用法
; verify = 1 ; //要求量产完成后校验是否正确
;
; 注1、name唯一, 不允许同名
; 2、name最大12个字符
; 3、size = 0, 将创建一个无大小的空分区
; 4、为了安全和效率考虑分区大小最好保证为16M字节的整数倍
;********************************************************************************************************
[partition_start]
[partition]
name = env
size = 128
downloadfile = "env.fex"
user_type = 0x8000
[partition]
name = env-redund
size = 128
downloadfile = "env.fex"
user_type = 0x8000
[partition]
name = boot
size = 6016
downloadfile = "boot.fex"
user_type = 0x8000
[partition]
name = rootfs
size = 4608
downloadfile = "rootfs.fex"
user_type = 0x8000
[partition]
name = extend
size = 11520
downloadfile = "usr.fex"
user_type = 0x8000
;[partition]
; name = recovery
; size = 6400
; downloadfile = "recovery.fex"
; user_type = 0x8000
[partition]
name = rootfs_data
size = 1024
user_type = 0x8000
;[partition]
; name = env
; size = 128
; downloadfile = "env.fex"
; user_type = 0x8000
;
;[partition]
; name = boot
; size = 5760
; downloadfile = "boot.fex"
; user_type = 0x8000
;
;[partition]
; name = boot_backup
; size = 5760
; downloadfile = "boot.fex"
; user_type = 0x8000
;
;[partition]
; name = rootfs
; size = 5120
; downloadfile = "rootfs.fex"
; user_type = 0x8000
;
;[partition]
; name = rootfs_backup
; size = 5120
; downloadfile = "rootfs.fex"
; user_type = 0x8000
;
;[partition]
; name = extend
; size = 13056
; downloadfile = "usr.fex"
; user_type = 0x8000
;
;[partition]
; name = extend_backup
; size = 13056
; downloadfile = "usr.fex"
; user_type = 0x8000
;
;;[partition]
;; name = recovery
;; size = 6400
;; downloadfile = "recovery.fex"
;; user_type = 0x8000
;
;[partition]
; name = rootfs_data
; size = 1024
; user_type = 0x8000

View File

@@ -0,0 +1,142 @@
;---------------------------------------------------------------------------------------------------------
; 说明: 脚本中的字符串区分大小写,用户可以修改"="后面的数值,但是不要修改前面的字符串
; 描述gpio的形式Port:端口+组内序号<功能分配><内部电阻状态><驱动能力><输出电平状态>
;---------------------------------------------------------------------------------------------------------
[product]
version = "100"
machine = "evb"
;----------------------------------------------------------------------------------
; system configuration
; ?
;dcdc1_vol ---set dcdc1 voltage,mV,1600-3400,100mV/step
;dcdc2_vol ---set dcdc2 voltage,mV,600-1540,20mV/step
;dcdc3_vol ---set dcdc3 voltage,mV,600-1860,20mV/step
;dcdc4_vol ---set dcdc4 voltage,mV,600-1540,20mV/step
;dcdc5_vol ---set dcdc5 voltage,mV,1000-2550,50mV/step
;aldo2_vol ---set aldo2 voltage,mV,700-3300,100mV/step
;aldo3_vol ---set aldo3 voltage,mV,700-3300,100mV/step
;----------------------------------------------------------------------------------
[power_sply]
dcdc1_vol = 3000
dcdc2_vol = 1200
dcdc3_vol = 1200
dcdc4_vol = 1200
dcdc5_vol = 1500
aldo2_vol = 1800
aldo3_vol = 3000
;----------------------------------------------------------------------------------
; 7-6 bit 5-0 bit
;power_mode = grain_size|vol 设置系统电压,=0则不设置范围900~1200mV
;grain_size = 电压粒度 0:10mV 1:20mV 2:50mV 3:100mV
;vol = 电压系数 =0则不设置
;grain_size=0电压公式sys_vol = 500mV + vol * 10mV
;grain_size=1电压公式sys_vol = 500mV + vol * 20mV
;grain_size=2电压公式sys_vol = 500mV + vol * 50mV
;grain_size=3电压公式sys_vol = 500mV + vol * 100mV
;----------------------------------------------------------------------------------
[target]
storage_type = 3
nand_use_ubi = 1
power_mode = 0
[platform]
debug_mode = 0
[card_boot]
logical_start = 40960
sprite_gpio0 =
[card0_boot_para]
card_ctrl = 0
card_high_speed = 1
card_line = 4
sdc_d1 = port:PF0<2><1><default><default>
sdc_d0 = port:PF1<2><1><default><default>
sdc_clk = port:PF2<2><1><default><default>
sdc_cmd = port:PF3<2><1><default><default>
sdc_d3 = port:PF4<2><1><default><default>
sdc_d2 = port:PF5<2><1><default><default>
[card2_boot_para]
card_ctrl = 2
card_high_speed = 1
card_line = 8
sdc_clk = port:PC0<3><1><3><default>
sdc_cmd = port:PC1<3><1><3><default>
sdc_d0 = port:PC2<3><1><3><default>
sdc_d1 = port:PC3<3><1><3><default>
sdc_d2 = port:PC4<3><1><3><default>
sdc_d3 = port:PC5<3><1><3><default>
sdc_d4 = port:PC6<3><1><3><default>
sdc_d5 = port:PC7<3><1><3><default>
sdc_d6 = port:PC8<3><1><3><default>
sdc_d7 = port:PC9<3><1><3><default>
sdc_emmc_rst = port:PC11<3><1><3><default>
sdc_ds = port:PC10<3><2><3><default>
[spinor_para]
;read_mode =4
;flash_size =16
;delay_cycle =1
;frequency =100000000
spi_sclk = port:PC00<4><0><2><default>
spi_cs = port:PC01<4><1><2><default>
spi0_mosi = port:PC02<4><0><2><default>
spi0_miso = port:PC03<4><0><2><default>
spi0_wp = port:PC04<4><0><2><default>
spi0_hold = port:PC05<4><0><2><default>
[twi_para]
twi_used = 1
twi_port = 4
twi_scl = port:PI01<6><1><default><default>
twi_sda = port:PI02<6><1><default><default>
[uart_para]
uart_debug_port = 0
uart_debug_tx = port:PH09<5><1><default><default>
uart_debug_rx = port:PH10<5><1><default><default>
[jtag_para]
jtag_enable = 0
jtag_ms = port:PH9<3><default><default><default>
jtag_ck = port:PH10<3><default><default><default>
jtag_do = port:PH11<3><default><default><default>
jtag_di = port:PH12<3><default><default><default>
;*****************************************************************************
;sdram configuration
;
;*****************************************************************************
[dram_para]
dram_clk = 533
dram_type = 2
dram_zq = 0x7b7bf9
dram_odt_en = 0x0
dram_para1 = 0x00d2
dram_para2 = 0x0
dram_mr0 = 0xe73
dram_mr1 = 0x02
dram_mr2 = 0x0
dram_mr3 = 0x0
dram_tpr0 = 0x00471992
dram_tpr1 = 0x0131a10c
dram_tpr2 = 0x00057041
dram_tpr3 = 0xb4787896
dram_tpr4 = 0x0
dram_tpr5 = 0x48484848
dram_tpr6 = 0x48
dram_tpr7 = 0x1621121e
dram_tpr8 = 0x0
dram_tpr9 = 0x0
dram_tpr10 = 0x00000000
dram_tpr11 = 0x00000022
dram_tpr12 = 0x00000077
dram_tpr13 = 0x34000100

View File

@@ -0,0 +1,717 @@
/*
* Allwinner Technology CO., Ltd. sun8iw19p1 soc board.
*
* soc board support.
*/
/{
model = "sun8iw21";
compatible = "allwinner,v851", "arm,sun8iw21p1";
reg_usb0_vbus: usb0-vbus {
compatible = "regulator-fixed";
gpio = <&pio PH 2 1 2 0 1>;
regulator-name = "usb0-vbus";
regulator-min-microvolt = <5000000>;
regulator-max-microvolt = <5000000>;
enable-active-high;
};
firmware {
optee {
shm_base = <0x418E0000>;
shm_size = <0x00020000>;
ta_ram_base = <0x41a00000>;
ta_ram_size = <0x00100000>;
};
};
box_start_os0 {
compatible = "allwinner,box_start_os";
start_type = <0x1>;
irkey_used = <0x0>;
pmukey_used = <0x0>;
pmukey_num = <0x0>;
led_power = <0x0>;
led_state = <0x0>;
pinctrl-0 = <&standby_blue>;
pinctrl-1 = <&standby_red>;
};
gpu: gpu@1800000 {
gpu_idle = <1>;
dvfs_status = <1>;
operating-points = <
/* KHz uV */
600000 950000
576000 950000
540000 950000
504000 950000
456000 950000
420000 950000
384000 950000
360000 950000
336000 950000
306000 950000
>;
};
};
&power_sply {
dcdc1_vol = <1003300>;
dcdc2_vol = <1000900>;
dcdc5_vol = <1200>;
aldo1_vol = <1001800>;
aldo2_vol = <1001800>;
aldo3_vol = <1003300>;
aldo4_vol = <1003300>;
bldo1_vol = <1001800>;
bldo2_vol = <1002800>;
dldo1_vol = <1003300>;
dldo2_vol = <1001200>;
};
&charger0 {
pmu_safe_vol = <3500>;
};
&gpio_bias { /* Avoid dtc compiling warnings. @TODO: Developer should modify this to the actual value */
device_type = "gpio_bias";
pc_bias = <1800>;
pi_bias = <1800>;
};
&aliases {
disp = &disp;
lcd0=&lcd0;
spi0 = &spi0;
spif = &spif;
twi4=&twi4;
pwm = &pwm;
pwm0 = &pwm0;
pwm1 = &pwm1;
pwm2 = &pwm2;
pwm3 = &pwm3;
pwm4 = &pwm4;
pwm5 = &pwm5;
pwm6 = &pwm6;
pwm7 = &pwm7;
pwm8 = &pwm8;
pwm9 = &pwm9;
pwm10 = &pwm10;
pwm11 = &pwm11;
};
&platform {
eraseflag = <1>;
debug_mode = <4>;
};
&target {
boot_clock = <900>; /*CPU boot frequency, Unit: MHz*/
burn_key = <0>;
};
&r_pio{
s_twi0_pins_a: s_twi0@0 {
allwinner,pins = "PL0", "PL1";
allwinner,pname = "s_twi0_scl", "s_twi0_sda";
allwinner,function = "s_twi0";
allwinner,muxsel = <3>;
allwinner,drive = <1>;
allwinner,pull = <1>;
};
s_twi0_pins_b: s_twi0@1 {
allwinner,pins = "PL0", "PL1";
allwinner,function = "io_disabled";
allwinner,muxsel = <7>;
allwinner,drive = <1>;
allwinner,pull = <0>;
};
};
&pio{
spi0_pins_a: spi0@0 {
allwinner,pins = "PC0", "PC2", "PC3";
allwinner,pname = "spi0_sclk", "spi0_mosi", "spi0_miso";
allwinner,function = "spi0";
allwinner,muxsel = <4>;
allwinner,drive = <1>;
allwinner,pull = <0>;
};
spi0_pins_b: spi0@1 {
allwinner,pins = "PC1", "PC5", "PC4";
allwinner,pname = "spi0_cs0", "spi0_hold", "spi0_wp";
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";
allwinner,function = "io_disabled";
allwinner,muxsel = <7>;
allwinner,drive = <1>;
allwinner,pull = <0>;
};
spi1_pins_a: spi1@0 {
allwinner,pins = "PH6", "PH7", "PH8";
allwinner,pname = "spi1_sclk", "spi1_mosi", "spi1_miso";
allwinner,function = "spi1";
};
spi1_pins_b: spi1@1 {
allwinner,pins = "PH5", "PH9";
allwinner,pname = "spi1_cs0", "spi1_cs1";
allwinner,function = "spi1";
};
spi1_pins_c: spi1@2 {
allwinner,pins = "PH5", "PH6", "PH7", "PH8", "PH9";
allwinner,function = "io_disabled";
};
spif_pins_a: spif@0 {
allwinner,pins = "PC0", "PC2", "PC3",
"PC6", "PC7", "PC8",
"PC9", "PC10";
allwinner,pname = "spif_clk", "spif_mosi", "spif_miso",
"spif_io4", "spif_io5", "spif_io6",
"spif_io7", "spif_io8";
allwinner,function = "spif";
allwinner,muxsel = <2>;
allwinner,drive = <1>;
allwinner,pull = <0>;
};
spif_pins_b: spif@1 {
allwinner,pins = "PC1", "PC4", "PC5";
allwinner,pname = "spif_cs0", "spif_wp", "spif_hold";
allwinner,function = "spif";
allwinner,muxsel = <2>;
allwinner,drive = <1>;
allwinner,pull = <1>; // only CS should be pulled up
};
spif_pins_c: spif@2 {
allwinner,pins = "PC0", "PC1", "PC2", "PC3", "PC4",
"PC5", "PC6", "PC7", "PC8", "PC9", "PC10";
allwinner,function = "gpio_in";
allwinner,muxsel = <0xf>;
allwinner,drive = <1>;
allwinner,pull = <0>;
};
twi0_pins_a: twi0@0 {
allwinner,pins = "PA0", "PA1";
allwinner,pname = "twi0_scl", "twi0_sda";
allwinner,function = "twi0";
allwinner,muxsel = <4>;
allwinner,drive = <1>;
allwinner,pull = <0>;
};
twi0_pins_b: twi0@1 {
allwinner,pins = "PA0", "PA1";
allwinner,function = "io_disabled";
allwinner,muxsel = <7>;
allwinner,drive = <1>;
allwinner,pull = <0>;
};
twi1_pins_a: twi1@0 {
allwinner,pins = "PA2", "PA3";
allwinner,pname = "twi1_scl", "twi1_sda";
allwinner,function = "twi1";
allwinner,muxsel = <4>;
allwinner,drive = <1>;
allwinner,pull = <0>;
};
twi1_pins_b: twi1@1 {
allwinner,pins = "PA2", "PA3";
allwinner,function = "io_disabled";
allwinner,muxsel = <7>;
allwinner,drive = <1>;
allwinner,pull = <0>;
};
twi2_pins_a: twi2@0 {
allwinner,pins = "PE20", "PE21";
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 = "PE20", "PE21";
allwinner,function = "io_disabled";
allwinner,muxsel = <7>;
allwinner,drive = <1>;
allwinner,pull = <0>;
};
twi3_pins_a: twi3@0 {
allwinner,pins = "PA10", "PA11";
allwinner,pname = "twi3_scl", "twi3_sda";
allwinner,function = "twi3";
allwinner,muxsel = <2>;
allwinner,drive = <1>;
allwinner,pull = <1>;
};
twi3_pins_b: twi3@1 {
allwinner,pins = "PA10", "PA11";
allwinner,function = "io_disabled";
allwinner,muxsel = <7>;
allwinner,drive = <1>;
allwinner,pull = <0>;
};
twi4_pins_a: twi4@0 {
allwinner,pins = "PI01", "PI02";
allwinner,pname = "twi4_scl", "twi4_sda";
allwinner,function = "twi4";
allwinner,muxsel = <6>;
allwinner,drive = <1>;
allwinner,pull = <1>;
};
twi4_pins_b: twi4@1 {
allwinner,pins = "PI01", "PI02";
allwinner,function = "io_disabled";
allwinner,muxsel = <0>;
allwinner,drive = <1>;
allwinner,pull = <1>;
};
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>;
};
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>;
};
sdc2_pins_a: sdc2@0 {
allwinner,pins = "PC0", "PC1", "PC2",
"PC3", "PC4", "PC5", "PC6",
"PC7", "PC8", "PC9", "PC11";
allwinner,function = "sdc2";
allwinner,muxsel = <3>;
allwinner,drive = <2>;
allwinner,pull = <1>;
};
sdc2_pins_b: sdc2@1 {
allwinner,pins = "PC0", "PC1", "PC2",
"PC3", "PC4", "PC5", "PC6",
"PC7", "PC8", "PC9", "PC10", "PC11";
allwinner,function = "io_disabled";
allwinner,muxsel = <7>;
allwinner,drive = <1>;
allwinner,pull = <1>;
};
sdc2_pins_c: sdc2@2 {
allwinner,pins = "PC10";
allwinner,function = "sdc2";
allwinner,muxsel = <3>;
allwinner,drive = <2>;
allwinner,pull = <2>;
};
pwm6_pin_a: pwm6@0 {
pins = "PD7";
function = "pwm6";
muxsel = <3>;
drive-strength = <10>;
bias-pull-up;
};
pwm6_pin_b: pwm6@1 {
pins = "PD7";
function = "gpio_in";
muxsel = <0>;
};
pwm8_pin_a: pwm8@0 {
pins = "PH8";
function = "pwm8";
muxsel = <2>;
drive-strength = <10>;
bias-pull-up;
};
pwm8_pin_b: pwm8@1 {
pins = "PH8";
function = "gpio_in";
muxsel = <0>;
};
pwm9_pin_a: pwm9@0 {
pins = "PD22";
function = "pwm9";
muxsel = <2>;
drive-strength = <10>;
bias-pull-up;
};
pwm9_pin_b: pwm9@1 {
pins = "PD22";
function = "gpio_in";
muxsel = <0>;
};
standby_red: standby@0 {
allwinner,pins = "PH6";
allwinner,function = "gpio_out";
allwinner,muxsel = <1>;
allwinner,data = <1>;
allwinner,drive = <0>;
allwinner,pull = <0>;
};
standby_blue: standby@1 {
allwinner,pins = "PH7";
allwinner,function = "gpio_out";
allwinner,muxsel = <1>;
allwinner,data = <0>;
allwinner,drive = <2>;
allwinner,pull = <2>;
};
};
&twi4 {
clock-frequency = <200000>;
pinctrl-0 = <&twi4_pins_a>;
pinctrl-1 = <&twi4_pins_b>;
no_suspend = <1>;
twi_drv_used = <1>;
status = "okay";
pmu0: pmu@34 {
compatible = "x-powers,axp2101";
status = "okay";
/* interrupts = <0 IRQ_TYPE_LEVEL_LOW>;
* interrupt-parent = <&gic>; */
x-powers,drive-vbus-en;
wakeup-source;
regulator0: regulators@0 {
reg_dcdc1: dcdc1 {
regulator-name = "axp2101-dcdc1";
};
reg_dcdc2: dcdc2 {
regulator-name = "axp2101-dcdc2";
};
reg_dcdc3: dcdc3 {
regulator-name = "axp2101-dcdc3";
};
reg_dcdc4: dcdc4 {
regulator-name = "axp2101-dcdc4";
};
reg_dcdc5: dcdc5 {
regulator-name = "axp2101-dcdc5";
};
reg_dc4ldo2:dc4ldo2 {
regulator-name = "axp2101-dc4ldo2";
};
reg_dldo1: dldo1 {
regulator-name = "axp2101-dldo1";
};
reg_dldo2: dldo2 {
regulator-name = "axp2101-dldo2";
};
reg_aldo1: aldo1 {
regulator-name = "axp2101-aldo1";
};
reg_aldo2: aldo2 {
regulator-name = "axp2101-aldo2";
};
reg_aldo3: aldo3 {
regulator-name = "axp2101-aldo3";
};
reg_aldo4: aldo4 {
regulator-name = "axp2101-aldo4";
};
reg_bldo1: bldo1 {
regulator-name = "axp2101-bldo1";
};
reg_bldo2: bldo2 {
regulator-name = "axp2101-bldo2";
};
};
};
};
&pwm6 {
pinctrl-names = "active", "sleep";
pinctrl-0 = <&pwm6_pin_a>;
pinctrl-1 = <&pwm6_pin_b>;
status = "okay";
};
&pwm8 {
pinctrl-names = "active", "sleep";
pinctrl-0 = <&pwm8_pin_a>;
pinctrl-1 = <&pwm8_pin_b>;
status = "disabled";
};
&pwm9 {
pinctrl-names = "active", "sleep";
pinctrl-0 = <&pwm9_pin_a>;
pinctrl-1 = <&pwm9_pin_b>;
status = "disabled";
};
&spi0 {
clock-frequency = <100000000>;
pinctrl-0 = <&spi0_pins_a &spi0_pins_b>;
pinctrl-1 = <&spi0_pins_c>;
pinctrl-names = "default", "sleep";
spi_slave_mode = <0>;
spi_dbi_enable = <0>;
spi0_cs_number = <1>;
status = "disabled";
spi_board0 {
device_type = "spi_board0";
compatible = "spi-nor";
spi-max-frequency = <100000000>;
m25p,fast-read = <1>;
/*individual_lock;*/
reg = <0x0>;
spi-rx-bus-width=<0x04>;
spi-tx-bus-width=<0x04>;
status="disabled";
};
spi-nand@0 {
compatible = "spi-nand";
spi-max-frequency=<0x05F5E100>;
reg = <0x0>;
spi-rx-bus-width=<0x01>;
spi-tx-bus-width=<0x01>;
status="disabled";
};
};
&spif {
clock-frequency = <100000000>;
pinctrl-0 = <&spif_pins_a &spif_pins_b>;
pinctrl-1 = <&spif_pins_c>;
pinctrl-names = "default", "sleep";
/*spi-supply = <&reg_dcdc1>;*/
status = "disabled";
spif-nor {
device_type = "spi_board0";
compatible = "spi-nor";
spif-max-frequency = <100000000>;
m25p,fast-read = <1>;
/*individual_lock;*/
reg = <0x0>;
spif-rx-bus-width=<0x04>;
spif-tx-bus-width=<0x04>;
status="disabled";
};
};
&card_boot {
sprite_gpio0 = <0x54 0x7 0x6 0x1 0xffffffff 0xffffffff 0x1>;
};
&card0_boot_para { /* Avoid dtc compiling warnings. @TODO: Developer should modify this to the actual value */
/* reg = <0x0 0x2 0x0 0x0>; [> Avoid dtc compiling warnings. @TODO: Developer should modify this to the actual value <] */
device_type = "card0_boot_para";
card_ctrl = <0x0>;
card_high_speed = <0x1>;
card_line = <0x4>;
pinctrl-0 = <&sdc0_pins_a>;
};
&card2_boot_para { /* Avoid dtc compiling warnings. @TODO: Developer should modify this to the actual value */
/* reg = <0x0 0x3 0x0 0x0>; [> Avoid dtc compiling warnings. @TODO: Developer should modify this to the actual value <] */
device_type = "card2_boot_para";
card_ctrl = <0x2>;
card_high_speed = <0x1>;
card_line = <0x8>;
pinctrl-0 = <&sdc2_pins_a &sdc2_pins_c>;
sdc_ex_dly_used = <0x2>;
sdc_io_1v8 = <0x1>;
};
&nand0 {
compatible = "allwinner,sun50iw9-nand";
device_type = "nand0";
//reg = <0x0 0x04011000 0x0 0x1000>;/* nand0 */
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>;
chip_code = "sun50iw9";
status = "disabled";
};
&dsi4lane_pins_a {
allwinner,pins = "PD1", "PD2", "PD3", "PD4", "PD5", "PD6";
allwinner,pname = "PD1", "PD2", "PD3", "PD4", "PD5", "PD6";
};
&dsi4lane_pins_b {
allwinner,pins = "PD1", "PD2", "PD3", "PD4", "PD5", "PD6";
allwinner,pname = "PD1", "PD2", "PD3", "PD4", "PD5", "PD6";
};
&lcd0{
base_config_start = <1>;
lcd_used = <1>;
lcd_driver_name = "t050k589";
lcd_bl_0_percent = <0>;
lcd_bl_40_percent = <23>;
lcd_bl_100_percent = <100>;
lcd_backlight = <150>;
lcd_if = <4>;
lcd_x = <720>;
lcd_y = <1280>;
lcd_width = <62>;
lcd_height = <110>;
lcd_dclk_freq = <60>;
lcd_pwm_used = <1>;
lcd_pwm_ch = <6>;
lcd_pwm_freq = <50000>;
lcd_pwm_pol = <1>;
lcd_pwm_max_limit = <255>;
lcd_hbp = <32>;
lcd_ht = <780>;
lcd_hspw = <8>;
lcd_vbp = <12>;
lcd_vt = <1304>;
lcd_vspw = <4>;
lcd_dsi_if = <0>;
lcd_dsi_lane = <2>;
lcd_dsi_format = <0>;
lcd_dsi_te = <0>;
lcd_dsi_eotp = <0>;
lcd_frm = <0>;
lcd_io_phase = <0x0000>;
lcd_hv_clk_phase = <0>;
lcd_hv_sync_polarity= <0>;
lcd_gamma_en = <0>;
lcd_bright_curve_en = <0>;
lcd_cmap_en = <0>;
lcdgamma4iep = <22>;
lcd_gpio_0 = <&pio PD 19 1 0 3 1>;
lcd_gpio_1 = <&pio PE 1 1 0 3 1>;
pinctrl-0 = <&dsi4lane_pins_a>;
pinctrl-1 = <&dsi4lane_pins_b>;
base_config_end = <1>;
status = "okay";
};
&pio{
rgb24_pins_a: rgb24@0 {
allwinner,pins = "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", \
"PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD16", "PD17", "PD18", "PD19", \
"PD20", "PD21", "PD22", "PD23", "PD24", "PD25", "PD26", "PD27";
allwinner,pname = "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", \
"PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD16", "PD17", "PD18", "PD19", \
"PD20", "PD21", "PD22", "PD23", "PD24", "PD25", "PD26", "PD27";
allwinner,function = "rgb24";
allwinner,muxsel = <2>;
allwinner,drive = <3>;
allwinner,pull = <0>;
};
rgb24_pins_b: rgb24@1 {
allwinner,pins = "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", \
"PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD16", "PD17", "PD18", "PD19", \
"PD20", "PD21", "PD22", "PD23", "PD24", "PD25", "PD26", "PD27";
allwinner,pname = "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", \
"PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD16", "PD17", "PD18", "PD19", \
"PD20", "PD21", "PD22", "PD23", "PD24", "PD25", "PD26", "PD27";
allwinner,function = "rgb24_suspend";
allwinner,muxsel = <7>;
allwinner,drive = <3>;
allwinner,pull = <0>;
};
};
&disp {
disp_init_enable = <1>;
disp_mode = <0>;
screen0_output_type = <1>;
screen0_output_mode = <4>;
screen1_output_type = <3>;
screen1_output_mode = <10>;
screen1_output_format = <0>;
screen1_output_bits = <0>;
screen1_output_eotf = <4>;
screen1_output_cs = <257>;
screen1_output_range = <2>;
screen1_output_scan = <0>;
screen1_output_aspect_ratio = <8>;
dev0_output_type = <1>;
dev0_output_mode = <4>;
dev0_screen_id = <0>;
dev0_do_hpd = <0>;
dev1_output_type = <4>;
dev1_output_mode = <10>;
dev1_screen_id = <1>;
dev1_do_hpd = <1>;
def_output_dev = <0>;
fb0_format = <0>;
fb0_width = <0>;
fb0_height = <0>;
fb1_format = <0>;
fb1_width = <0>;
fb1_height = <0>;
chn_cfg_mode = <1>;
disp_para_zone = <1>;
status = "okay";
};