Support Orange Pi 4 Pro

This commit is contained in:
baiywt 2025-05-01 21:40:33 +08:00
parent ff7af3be0c
commit b90483bdd2
47 changed files with 27655 additions and 6 deletions

1
.gitignore vendored
View File

@ -46,6 +46,7 @@ external/cache/sources/rk3588_packages*
external/cache/sources/rk356x_packages
external/cache/sources/rk35xx_packages
external/cache/sources/t527_packages
external/cache/sources/sun60iw2_packages
external/cache/sources/rk-rootfs-build*
external/cache/sources/orangepi-firmware*
external/cache/sources/wiringOP

Binary file not shown.

View File

@ -62,7 +62,7 @@ function main(){
[[ "$LINUXFAMILY" == "rockchip-rk3588" ]] && OVERLAYDIR="/boot/dtb/rockchip/overlay";
[[ "$LINUXFAMILY" == "sun50iw9" && "$BRANCH" == "current" ]] && OVERLAYDIR="/boot/dtb/sunxi/overlay";
[[ "$LINUXFAMILY" == "sun50iw9" && "$BRANCH" == "next" ]] && OVERLAYDIR="/boot/dtb/allwinner/overlay";
[[ "$LINUXFAMILY" == "sun55iw3" ]] && OVERLAYDIR="/boot/dtb/allwinner/overlay";
[[ "$LINUXFAMILY" =~ "sun55iw3"|"sun60iw2" ]] && OVERLAYDIR="/boot/dtb/allwinner/overlay";
[[ "$LINUXFAMILY" == "rockchip-rk356x" ]] && OVERLAYDIR="/boot/dtb/rockchip/overlay";
[[ "$LINUXFAMILY" == "ky" ]] && OVERLAYDIR="/boot/dtb/ky/overlay";
# detect desktop

10
external/config/boards/orangepi4pro.conf vendored Executable file
View File

@ -0,0 +1,10 @@
# Allwinner T736 quad core 2GB/4GB RAM
BOARD_NAME="Orange Pi 4 Pro"
BOARDFAMILY="sun60iw2"
BOOTCONFIG="sun60iw2p1_t736_defconfig"
BOOT_FDT_FILE="allwinner/sun60i-a733-orangepi-4-pro.dtb"
MODULES="aic8800_fdrv aic8800_btlpm"
KERNEL_TARGET="current"
DISTRIB_TYPE_CURRENT="bookworm jammy bullseye"
SKIP_BOOTSPLASH="yes" # Skip boot splash patch, conflicts with CONFIG_VT=yes
REVISION="1.0.0"

15
external/config/boards/orangepizero3plus.conf vendored Executable file
View File

@ -0,0 +1,15 @@
# Allwinner H618 quad core 1GB/1.5GB/2GB/4GB RAM
BOARD_NAME="OPI Zero3 Plus"
BOARDFAMILY="sun50iw9"
BOOTCONFIG="orangepi_zero3_defconfig"
KERNEL_TARGET="current,next"
MODULES_LEGACY="uwe5622_bsp_sdio sprdwl_ng sprdbt_tty"
MODULES_CURRENT="aic8800_fdrv aic8800_btlpm"
MODULES_NEXT="uwe5622_bsp_sdio sprdwl_ng sprdbt_tty"
MODULES_BLACKLIST_LEGACY="bcmdhd"
MODULES_BLACKLIST_CURRENT="bcmdhd"
DISTRIB_TYPE_LEGACY="buster"
DISTRIB_TYPE_CURRENT="bullseye focal jammy"
DISTRIB_TYPE_NEXT="bullseye bookworm jammy noble raspi"
BOOT_LOGO="desktop"
REVISION="1.0.0"

2
external/config/bootenv/sun60iw2.txt vendored Normal file
View File

@ -0,0 +1,2 @@
verbosity=1
bootlogo=true

View File

@ -0,0 +1,60 @@
# DO NOT EDIT THIS FILE
#
# Please edit /boot/orangepiEnv.txt to set supported parameters
#
setenv load_addr "0x43100000"
setenv overlay_error "false"
# default values
setenv verbosity "1"
setenv console "both"
setenv bootlogo "false"
setenv rootfstype "ext4"
setenv docker_optimizations "on"
setenv earlycon "on"
echo "Boot script loaded from ${devtype} ${devnum}"
if test -e ${devtype} ${devnum} ${prefix}orangepiEnv.txt; then
load ${devtype} ${devnum} ${load_addr} ${prefix}orangepiEnv.txt
env import -t ${load_addr} ${filesize}
fi
if test "${logo}" = "disabled"; then setenv logo "logo.nologo"; fi
if test "${console}" = "display" || test "${console}" = "both"; then setenv consoleargs "console=tty1"; fi
if test "${console}" = "serial" || test "${console}" = "both"; then setenv consoleargs "console=ttyS0,115200 ${consoleargs}"; fi
if test "${earlycon}" = "on"; then setenv consoleargs "earlyprintk=sunxi-uart,0x02500000 initcall_debug=0 ${consoleargs}"; fi
if test "${bootlogo}" = "true"; then
setenv consoleargs "splash plymouth.ignore-serial-consoles ${consoleargs}";
else
setenv consoleargs "splash=verbose ${consoleargs}"
fi
setenv bootargs "root=${rootdev} rootwait rootfstype=${rootfstype} ${consoleargs} consoleblank=0 loglevel=${verbosity} clk_ignore_unused swiotlb=65536 usb-storage.quirks=${usbstoragequirks} ${extraargs} ${extraboardargs}"
if test "${docker_optimizations}" = "on"; then setenv bootargs "${bootargs} cgroup_enable=cpuset cgroup_memory=1 cgroup_enable=memory swapaccount=1"; fi
load ${devtype} ${devnum} ${ramdisk_addr_r} ${prefix}uInitrd
load ${devtype} ${devnum} ${kernel_addr_r} ${prefix}uImage
load ${devtype} ${devnum} ${fdt_addr_r} ${prefix}dtb/${fdtfile}
fdt addr ${fdt_addr_r}
fdt resize 65536
for overlay_file in ${overlays}; do
if load ${devtype} ${devnum} ${load_addr} ${prefix}dtb/allwinner/overlay/${overlay_prefix}-${overlay_file}.dtbo; then
echo "Applying kernel provided DT overlay ${overlay_prefix}-${overlay_file}.dtbo"
fdt apply ${load_addr} || setenv overlay_error "true"
fi
done
for overlay_file in ${user_overlays}; do
if load ${devtype} ${devnum} ${load_addr} ${prefix}overlay-user/${overlay_file}.dtbo; then
echo "Applying user provided DT overlay ${overlay_file}.dtbo"
fdt apply ${load_addr} || setenv overlay_error "true"
fi
done
bootm ${kernel_addr_r} ${ramdisk_addr_r} ${fdt_addr_r}
# Recompile with:
# mkimage -C none -A arm -T script -d /boot/boot.cmd /boot/boot.scr

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,154 @@
source "${BASH_SOURCE%/*}/include/sunxi64_common.inc"
LINUXFAMILY=sun60iw2
[[ -z $CPUMIN ]] && CPUMIN=416000
[[ -z $CPUMAX ]] && CPUMAX=2002000
GOVERNOR=ondemand
OFFSET=32
case $BRANCH in
current)
if [[ $GITEE_SERVER == yes ]]; then
KERNELSOURCE="https://gitee.com/orangepi-xunlong/orange-pi-5.15-sun60iw2.git"
fi
OVERLAY_PREFIX='sun60i-t736'
[[ "${BOARD}" == "orangepi4pro" ]] && OVERLAY_PREFIX='sun60i-a733'
KERNELBRANCH="branch:orange-pi-5.15-sun60iw2"
LINUXCONFIG="linux-sun60iw2-current"
[[ "${BOARD}" == "orangepi4pro" ]] && LINUXCONFIG="linux-sun60iw2-current-opi4pro"
BOOTBRANCH='branch:v2018.05-sun60iw2'
KERNELPATCHDIR=${BOARDFAMILY}-${BRANCH}
UBOOT_TARGET_MAP=";;dts/${BOARD}-u-boot.dts boot0_sdcard.fex boot0_spinor_a733.fex boot_package.fex boot_package_a733_nvme.fex"
UBOOT_COMPILER="arm-linux-gnueabi-"
UBOOT_USE_GCC='> 6.0'
BOOTENV_FILE='sun60iw2.txt'
BOOTSCRIPT='boot-sun60iw2.cmd:boot.cmd'
KERNEL_USE_GCC='> 10.0'
OFFSET=32
ATFSOURCE=""
ATF_COMPILE="no"
INITRD_ARCH=arm
;;
esac
family_tweaks_s()
{
if [[ ${DESKTOP_ENVIRONMENT} == gnome ]]; then
run_on_sdcard "DEBIAN_FRONTEND=noninteractive apt-get install -y gnome-screenshot tightvncserver gnome-bluetooth"
cp $EXTER/packages/blobs/desktop/desktop-wallpapers/orangepi-default.png ${SDCARD}/usr/share/backgrounds/warty-final-ubuntu.png
fi
if [[ $RELEASE == bookworm && ${DESKTOP_ENVIRONMENT} == gnome ]]; then
sed -i "s/user-session.*/user-session=gnome-wayland/" ${SDCARD}/etc/lightdm/lightdm.conf.d/22-orangepi-autologin.conf
run_on_sdcard "systemctl mask sleep.target suspend.target hibernate.target hybrid-sleep.target" > /dev/null 2>&1
fi
[[ $RELEASE == jammy && ${DESKTOP_ENVIRONMENT} == xfce ]] && chroot $SDCARD /bin/bash -c "apt-get -y -qq install ocl-icd-libopencl1" >/dev/null 2>&1
#if [[ "${BOARD}x" == orangepi4ax ]]; then
# nvram=$EXTER/cache/sources/orangepi-firmware-git
# [[ -f ${nvram}/nvram_ap6256.txt-$BOARD ]] && cp ${nvram}/nvram_ap6256.txt-${BOARD} ${SDCARD}/lib/firmware/nvram_ap6256.txt
#fi
rsync -a --chown=root:root "${EXTER}"/packages/bsp/overlays_arm64/* ${SDCARD}/
chroot $SDCARD /bin/bash -c "apt-get -y -qq install mtd-utils rfkill bluetooth bluez bluez-tools ir-keytable tree lirc v4l-utils dnsmasq" >/dev/null 2>&1
if [[ $BUILD_DESKTOP == yes ]]; then
sed -i "s/auto-profiles = yes/auto-profiles = no/" ${SDCARD}/usr/share/pulseaudio/alsa-mixer/profile-sets/default.conf
echo "load-module module-alsa-sink device=hw:0,0 sink_name=HDMI-Playback sink_properties=\"device.description='HDMI Audio'\"" >> ${SDCARD}/etc/pulse/default.pa
echo "load-module module-alsa-sink device=hw:1,0 sink_name=AudioCodec-Playback sink_properties=\"device.description='Audio Codec'\"" >> ${SDCARD}/etc/pulse/default.pa
chroot $SDCARD /bin/bash -c "apt-get -y -qq install vlc mpv" >/dev/null 2>&1
fi
if [[ ${BRANCH} == current ]]; then
SERIALCON="ttyS0"
fi
rsync -a --chown=root:root "${EXTER}"/packages/bsp/sun60iw2/* ${SDCARD}/
rsync -a --chown=root:root $EXTER/cache/sources/sun60iw2_packages/npu/* ${SDCARD}/
if [[ $RELEASE =~ bullseye && ${SELECTED_CONFIGURATION} == desktop ]]; then
local packages_to_install=("xserver" "glmark2" "libcedarc" "gst-omx")
chroot $SDCARD /bin/bash -c "apt-get -y -qq install gstreamer1.0-x gstreamer1.0-plugins-bad" >> "${DEST}"/${LOG_SUBPATH}/install.log 2>&1
for package in ${packages_to_install[@]}; do
rsync -a --chown=root:root $EXTER/cache/sources/sun60iw2_packages/$RELEASE/$package/* ${SDCARD}/
done
#if [[ $RELEASE == jammy ]]; then
# chroot $SDCARD /bin/bash -c "apt-get -y -qq install glmark2 glmark2-wayland" >> "${DEST}"/${LOG_SUBPATH}/install.log 2>&1
#elif [[ $RELEASE == bookworm ]]; then
# chroot $SDCARD /bin/bash -c "apt-get -y -qq install glmark2-x11 glmark2-wayland" >> "${DEST}"/${LOG_SUBPATH}/install.log 2>&1
#fi
fi
install_wiringop
}
family_tweaks_bsp()
{
install -m 755 $EXTER/packages/blobs/bt/brcm_patchram_plus/brcm_patchram_plus_${ARCH} $destination/usr/bin/brcm_patchram_plus
install -m 755 $EXTER/packages/blobs/bt/hciattach/hciattach_opi_${ARCH} $destination/usr/bin/hciattach_opi
}
uboot_custom_postprocess()
{
if [[ ${BRANCH} =~ legacy|current && $(dpkg --print-architecture) == amd64 ]]; then
rm dts/*.dts sys_config ${BOARD}-u-boot-${BRANCH}.dtb -r
export PATH=${EXTER}/packages/pack-uboot/tools/:$PATH
cp ${EXTER}/packages/pack-uboot/${BOARDFAMILY}/bin/* . -r
[[ "${BOARD}" == "orangepi4pro" ]] && cp ${EXTER}/packages/pack-uboot/${BOARDFAMILY}/bin/boot0_sdcard_a733.fex ./boot0_sdcard.fex
#[[ "${BOARD}" == "orangepi4pro" ]] && cp ${EXTER}/packages/pack-uboot/${BOARDFAMILY}/bin/boot0_sdcard.fex-orangepi4pro-4G ./boot0_sdcard.fex
cp sys_config/sys_config.fex sys_config.fex
cp u-boot.bin u-boot.fex
cp dts/u-boot-${BRANCH}.dts dts/${BOARD}-u-boot.dts
# make u-boot dtb
$EXTER/packages/pack-uboot/tools/dtc -p 2048 -W no-unit_address_vs_reg -@ -O dtb -o ${BOARD}-u-boot.dtb -b 0 dts/u-boot-${BRANCH}.dts
[[ ! -f ${BOARD}-u-boot.dtb ]] && exit_with_error "dts compilation failed"
busybox unix2dos sys_config.fex
$EXTER/packages/pack-uboot/tools/script sys_config.fex
cp ${BOARD}-u-boot.dtb sunxi.fex
$EXTER/packages/pack-uboot/tools/update_dtb sunxi.fex 4096
$EXTER/packages/pack-uboot/tools/update_uboot -no_merge u-boot.fex sys_config.bin
update_uboot -no_merge u-boot.bin sys_config.bin
#pack boot package
busybox unix2dos boot_package.cfg
$EXTER/packages/pack-uboot/tools/dragonsecboot -pack boot_package.cfg
if [[ ${MERGE_UBOOT} == yes ]]; then
display_alert "Merge u-boot" "u-boot-${BOARD}-merged.bin" "info"
dd if=/dev/zero of=u-boot-${BOARD}-merged.bin bs=1M count=20
dd if=boot0_sdcard.fex of=u-boot-${BOARD}-merged.bin bs=8k seek=1 conv=fsync
dd if=boot_package.fex of=u-boot-${BOARD}-merged.bin bs=8k seek=2050 conv=fsync
mv u-boot-${BOARD}-merged.bin ${DEB_STORAGE}/u-boot/
fi
fi
}
write_uboot_platform_mtd()
{
if [[ -b /dev/mtdblock0 ]]; then
flash_erase /dev/mtd0 0 10
size=$(stat --format="%s" $1/boot0_spinor_a733.fex)
mtd_debug write /dev/mtd0 0 $size $1/boot0_spinor_a733.fex
size=$(stat --format="%s" $1/boot_package.fex)
mtd_debug write /dev/mtd0 262144 $size $1/boot_package_a733_nvme.fex
sync
fi
}

View File

@ -241,7 +241,7 @@ prepare_board() {
/usr/bin/pwm-fan.sh &
;;
orangepizero2|orangepizero2-lts|orangepizero2-b|orangepizero3|orangepir1b|orangepizero2w)
orangepizero2|orangepizero2-lts|orangepizero2-b|orangepizero3|orangepizero3plus|orangepir1b|orangepizero2w)
kv=$(uname -r)
#if [[ $BRANCH == current ]]; then
@ -302,8 +302,13 @@ prepare_board() {
aplay /usr/share/sounds/alsa/audio.wav -D hw:2,0 > /dev/null 2>&1
fi
rfkill unblock all
/usr/bin/hciattach_opi -n -s 1500000 /dev/ttyBT0 sprd &
if [[ $BOARD == orangepizero3plus ]]; then
(while [[ ! -e /proc/bluetooth/sleep/btwrite ]]; do sleep 1; done; echo 1 > /proc/bluetooth/sleep/btwrite; \
/usr/bin/hciattach_opi -n -s 1500000 /dev/ttyAS1 aic) &
else
rfkill unblock all
/usr/bin/hciattach_opi -n -s 1500000 /dev/ttyBT0 sprd &
fi
;;
orangepi400)
rfkill unblock all
@ -428,6 +433,33 @@ prepare_board() {
echo 4096 > /sys/class/net/enP1p1s0/queues/rx-0/rps_flow_cnt
;;
aipcliteb)
echo usb_host > /sys/devices/platform/soc@3000000/10.usbc0/otg_role
(
echo 1 > /sys/bus/pci/rescan
if lspci | grep -q BCM43752; then
rfkill unblock all
sleep 5
brcm_patchram_plus --enable_hci \
--no2bytes --use_baudrate_for_download --tosleep 200000 --baudrate 1500000 \
--patchram /lib/firmware/ap6275p/BCM4362A2.hcd /dev/ttyAS1
fi
) &
;;
orangepi4pro)
/sbin/insmod /opt/pvrsrvkm.ko
echo 40 > /sys/class/gpio/export
echo out > /sys/class/gpio/gpio40/direction
echo 1 > /sys/class/gpio/gpio40/value
echo usb_host > /sys/devices/platform/soc@3000000/10.usbc0/otg_role
(while [[ ! -e /proc/bluetooth/sleep/btwrite ]]; do sleep 1; done; echo 1 > /proc/bluetooth/sleep/btwrite; \
/usr/bin/hciattach_opi -n -s 1500000 /dev/ttyS1 aic) &
#/sbin/rmmod sunxi_stmmac && /sbin/modprobe sunxi_stmmac
amixer -c 1 cset name='ADCL PGA Volume' 10 >/dev/null 2>&1
amixer -c 1 cset name='ADCR PGA Volume' 10 >/dev/null 2>&1
;;
esac

View File

@ -0,0 +1,95 @@
#!/bin/bash
disable_udc="/etc/.disable_udc"
udc_config=/sys/kernel/config/usb_gadget/g1/UDC
function enable_udc(){
while [ 1 ];do
udc=`ls /sys/class/udc 2>/dev/null`
isudc=`cat $udc_config 2>/dev/null`
if [ "x$isudc" = "x" ] && [ -f $udc_config ]; then
echo $udc > $udc_config
fi
sleep 1
if [ -f $disable_udc ];then
rm $disable_udc
break
fi
done
}
function start_adb(){
serialnumber=$1
if [ "x$serialnumber" = "x" ];then
serialnumber="0402101560"
fi
printf "Starting adb "
# for adbd compatibilities
mkdir -p /system/
mkdir -p /system/bin
if [ ! -f /system/bin/sh ];then
ln -s /bin/sh /system/bin/sh
fi
# config ptmx
mkdir -p /dev/pts
mount -t devpts none /dev/pts
# config adb function
mount -t configfs none /sys/kernel/config > /dev/null 2>&1
mkdir -p /sys/kernel/config/usb_gadget/g1
echo "0x18d1" > /sys/kernel/config/usb_gadget/g1/idVendor
echo "0x0002" > /sys/kernel/config/usb_gadget/g1/idProduct
mkdir -p /sys/kernel/config/usb_gadget/g1/strings/0x409
echo "$serialnumber" > /sys/kernel/config/usb_gadget/g1/strings/0x409/serialnumber
echo "Google.Inc" > /sys/kernel/config/usb_gadget/g1/strings/0x409/manufacturer
echo "Configfs ffs gadget" > /sys/kernel/config/usb_gadget/g1/strings/0x409/product
mkdir -p /sys/kernel/config/usb_gadget/g1/functions/ffs.adb
mkdir -p /sys/kernel/config/usb_gadget/g1/configs/c.1
mkdir -p /sys/kernel/config/usb_gadget/g1/configs/c.1/strings/0x409
echo 0xc0 > /sys/kernel/config/usb_gadget/g1/configs/c.1/bmAttributes
echo 500 > /sys/kernel/config/usb_gadget/g1/configs/c.1/MaxPower
ln -s /sys/kernel/config/usb_gadget/g1/functions/ffs.adb/ /sys/kernel/config/usb_gadget/g1/configs/c.1/ffs.adb > /dev/null 2>&1
mkdir -p /dev/usb-ffs
mkdir -p /dev/usb-ffs/adb
if [ "x`ls -A /dev/usb-ffs/adb`" = "x" ];then
mount -o uid=2000,gid=2000 -t functionfs adb /dev/usb-ffs/adb/
fi
# start adbd daemon
adbd &
sleep 1
# enable udc
cat /sys/bus/platform/drivers/otg\ manager/10.usbc0/usb_device
enable_udc &
}
case "$1" in
start|"")
otg_role_file="/sys/bus/platform/drivers/otg manager/10.usbc0/otg_role"
[ -f "$otg_role_file" ] && otg_role=`cat "$otg_role_file"`
if /sbin/ifconfig > /dev/null 2>&1 && [ "x$otg_role" != "xusb_host" ];then
autotest=/etc/.autotest
[ -f $autotest ] && serialnumber=`cat $autotest`
start_adb $serialnumber
fi
;;
stop)
printf "Stopping adbd "
touch $disable_udc
sleep 2
killall adbd &
[ $? -eq 0 ] && echo "OK" || "FAIL"
;;
restart|reload)
"$0" stop
"$0" start
;;
*)
echo "Usage: $0 {start|stop|restart}"
exit 1
;;
esac

View File

@ -0,0 +1,2 @@
#!/bin/sh
. /etc/profile

View File

@ -0,0 +1,5 @@
KERNEL=="system", SUBSYSTEM=="dma_heap", GROUP="video", MODE="0660"
KERNEL=="reserved", SUBSYSTEM=="dma_heap", GROUP="video", MODE="0660"
KERNEL=="sunxi_soc_info", MODE="0666"
KERNEL=="renderD128", SUBSYSTEM=="drm", MODE="0666"
KERNEL=="cedar_dev", MODE="0666"

View File

@ -0,0 +1,9 @@
#!/bin/sh
export ENV='/etc/adb_profile'
if [ $1 = '-' ];then
/bin/sh
elif [ $1 = '-c' ];then
/bin/sh -c "$2"
else
/bin/sh
fi

BIN
external/packages/bsp/sun60iw2/usr/bin/adbd vendored Executable file

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,845 @@
;sunxi platform application
;---------------------------------------------------------------------------------------------------------
; 说明: 脚本中的字符串区分大小写,用户可以修改"="后面的数值,但是不要修改前面的字符串
; 描述gpio的形式Port:端口+组内序号<功能分配><内部电阻状态><驱动能力><输出电平状态>
;---------------------------------------------------------------------------------------------------------
[product]
version = "100"
machine = "orangepizero3"
[platform]
eraseflag = 1
debug_mode = 3
;----------------------------------------------------------------------------------
;[target] system bootup configuration
;boot_clock = CPU boot frequency, Unit: MHz
;storage_type = boot medium, 0-nand, 1-card0, 2-card2, -1(defualt)auto scan
;advert_enable = 0-close advert logo 1-open advert logo (只有多核启动下有效)
;----------------------------------------------------------------------------------
[target]
boot_clock = 1008
storage_type = -1
advert_enable = 0
burn_key = 1
dragonboard_test= 0
;----------------------------------------------------------------------------------
; system configuration
; ?
;dcdc2_vol ---set dcdc2 voltage,mV,500-1200,10mV/step
; 1220-1540,20mV/step
;aldo1_vol ---set aldo1 voltage,mV,500-3500,100mV/step
;dldo1_vol ---set dldo1 voltage,mV,500-3500,100mV/step
;----------------------------------------------------------------------------------
[power_sply]
dcdc2_vol = 1001000
aldo1_vol = 1001800
dldo1_vol = 1003300
cldo1_vol = 1001800
[axp1530_power_sply]
dcdc2_vol = 1001000
aldo1_vol = 1001800
dldo1_vol = 1003300
cldo1_vol = 1001800
[axp806_power_sply]
dcdce_vol = 1003300
;dcdcd_vol = 1001110
aldo1_vol = 1003300
bldo1_vol = 1001800
bldo2_vol = 1001800
cldo1_vol = 1001800
[card_boot]
logical_start = 40960
sprite_gpio0 =
;----------------------------------------------------------------------------------
; ir_boot_recovery_used : 1: used this function 0: not used
; ir_work_mode : 模式选择
; 0: 刷机,
; 1: 一键恢复(uboot阶段),
; 2: 安卓recovery,
; 3: 安卓恢复出厂设置.
; 如果不设置默认为安卓recovery .
; ir_press_times : ir遥控器连续按几次才生效,如果不设置默认为按1次生效
; ir_detect_time : ir遥控检测时间,单位:ms,如果不设置默认为3000ms
; ir_key_no_duplicate : ir遥控按键是否可重复0可重复(默认)1不可重复
; 不可重复表示一个按键无论被按下几次都只算ir_press_times的一次
; 不可重复的应用场景为组合按键功能,如:交替按下'菜单键'和'音量-键'进入安卓recovery.
; ir_recovery_key_code0 : ir check key code
; ir_addr_code0 : ir key addr
; you can increase ir support num, like:
; ir_recovery_key_code1, or 2, 3, but limit to 16
;----------------------------------------------------------------------------------
[ir_boot_recovery]
ir_boot_recovery_used = 1
ir_work_mode = 1
ir_press_times = 2
ir_detect_time = 1
ir_key_no_duplicate = 0
ir_recovery_key_code0 = 0x11
ir_addr_code0 = 0xfe01
ir_recovery_key_code1 = 0x19
ir_addr_code1 = 0xfe01
ir_recovery_key_code2 = 0x4c
ir_addr_code2 = 0xfe01
ir_recovery_key_code3 = 0x00
ir_addr_code3 = 0xfe01
;----------------------------------------------------------------------------------
; recovery_key_used : 模块使能端, 1开启0关闭
; press_mode_enable : 长短按模式使能1开启0关闭
; a)如果开启了该模式则key_work_mode失效short_press_mode和long_press_mode生>效,
; recovery按键可以通过长按和短按来触发两种不同的模式;
; b)如果关闭了该模式则key_work_mode生效recovery按键只能触发一种模式.
; key_work_mode : 模式选择
; 0: 刷机,
; 1: 一键恢复(uboot阶段),
; 2: 安卓recovery,
; 3: 安卓恢复出厂设置.
; 如果不设置模式为安卓recovery.
; short_press_mode : 长按触发的模式,选项同上.
; long_press_mode : 短按触发的模式,选项同上.
; key_press_time : 定义长按的时间,单位:毫秒.
; recovery_key : 按键配置.
;----------------------------------------------------------------------------------
[key_boot_recovery]
recovery_key_used = 1
press_mode_enable = 0
key_work_mode = 0
short_press_mode = 0
long_press_mode = 1
key_press_time = 2000
recovery_key =
;---------------------------------------------------------------------------------------------------------
; if 1 == standby_mode, then support super standby;
; else, support normal standby.
;---------------------------------------------------------------------------------------------------------
[pm_para]
standby_mode = 1
[card0_boot_para]
card_ctrl = 0
card_high_speed = 1
card_line = 4
sdc_d1 = port:PF0<2><1><3><default>
sdc_d0 = port:PF1<2><1><3><default>
sdc_clk = port:PF2<2><1><3><default>
sdc_cmd = port:PF3<2><1><3><default>
sdc_d3 = port:PF4<2><1><3><default>
sdc_d2 = port:PF5<2><1><3><default>
;sdc_type = "tm1"
[card2_boot_para]
card_ctrl = 2
card_high_speed = 1
card_line = 8
sdc_clk = port:PC5<3><1><3><default>
sdc_cmd = port:PC6<3><1><3><default>
sdc_d0 = port:PC10<3><1><3><default>
sdc_d1 = port:PC13<3><1><3><default>
sdc_d2 = port:PC15<3><1><3><default>
sdc_d3 = port:PC8<3><1><3><default>
sdc_d4 = port:PC9<3><1><3><default>
sdc_d5 = port:PC11<3><1><3><default>
sdc_d6 = port:PC14<3><1><3><default>
sdc_d7 = port:PC16<3><1><3><default>
sdc_emmc_rst = port:PC1<3><1><3><default>
sdc_ds = port:PC0<3><2><3><default>
sdc_ex_dly_used = 2
sdc_io_1v8 = 1
;sdc_dis_host_caps = 0x100
;sdc_type = "tm4"
[gpio_bias]
pc_bias = 1800
[twi_para]
twi_port = 0
twi_scl = port:PH14<2><default><default><default>
twi_sda = port:PH15<2><default><default><default>
[auto_print]
auto_print_used = 1
[uart_para]
uart_debug_port = 0
uart_debug_tx = port:PH00<2><1><default><default>
uart_debug_rx = port:PH01<2><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>
[clock]
pll4 = 300
pll6 = 600
pll8 = 360
pll9 = 297
pll10 = 264
;*****************************************************************************
;
;dram select configuration
;
;select_mode : dram模式选择, 0:不进行自动识别
; 1:gpio识别模式(dram_para, dram_para1-15, 共16组有效)
; 2:gpadc识别模式(dram_para, dram_para1-7, 共8组有效)
; 3:1个IO+gpadc识别模式(dram_para, dram_para1-15, 共16组有效)。其中IO配置优先级按select_gpio0>select_gpio1>select_gpio2>select_gpio3
;gpadc_channel : 选择gpadc通道 有效值(0-3)
;select_gpio1-4 : 选择gpio pin
;*****************************************************************************
[dram_select_para]
select_mode = 0
gpadc_channel = 1
select_gpio0 =
select_gpio1 =
select_gpio2 =
select_gpio3 =
;*****************************************************************************
;sdram configuration
;
;*****************************************************************************
[dram_para]
dram_clk = 792
dram_type = 8
dram_dx_odt = 0x07070707
dram_dx_dri = 0x0e0e0e0e
dram_ca_dri = 0x0e0e
dram_odt_en = 0xaaaaeeee
dram_para1 = 0x30fa
dram_para2 = 0x0000
dram_mr0 = 0x0
dram_mr1 = 0x34
dram_mr2 = 0x1b
dram_mr3 = 0x33
dram_mr4 = 0x3
dram_mr5 = 0x0
dram_mr6 = 0x0
dram_mr11 = 0x4
dram_mr12 = 0x72
dram_mr13 = 0x0
dram_mr14 = 0x9
dram_mr16 = 0x0
dram_mr17 = 0x0
dram_mr22 = 0x24
dram_tpr0 = 0x0
dram_tpr1 = 0x0
dram_tpr2 = 0x0
dram_tpr3 = 0x0
dram_tpr6 = 0x35808080
dram_tpr10 = 0x402f6663
dram_tpr11 = 0x36363535
dram_tpr12 = 0x10101110
dram_tpr13 = 0x2080C60
[dram_para1]
dram_clk = 720
dram_type = 3
dram_dx_odt = 0x08080808
dram_dx_dri = 0x0e0e0e0e
dram_ca_dri = 0x0e0e
dram_odt_en = 1
dram_para1 = 0x30FA
dram_para2 = 0x1000
dram_mr0 = 0x840
dram_mr1 = 0x4
dram_mr2 = 0x8
dram_mr3 = 0x0
dram_mr4 = 0x0
dram_mr5 = 0x0
dram_mr6 = 0x0
dram_mr11 = 0x0
dram_mr12 = 0x0
dram_mr13 = 0x0
dram_mr14 = 0x0
dram_mr16 = 0x0
dram_mr17 = 0x0
dram_mr22 = 0x0
dram_tpr0 = 0x0
dram_tpr1 = 0x0
dram_tpr2 = 0x0
dram_tpr3 = 0x0
dram_tpr6 = 0x33808080
dram_tpr10 = 0x00f83438
dram_tpr11 = 0x0
dram_tpr12 = 0x0
dram_tpr13 = 0x40
[dram_para2]
dram_clk = 720
dram_type = 3
dram_dx_odt = 0x08080808
dram_dx_dri = 0x0e0e0e0e
dram_ca_dri = 0x0e0e
dram_odt_en = 1
dram_para1 = 0x30FA
dram_para2 = 0x1000
dram_mr0 = 0x840
dram_mr1 = 0x4
dram_mr2 = 0x8
dram_mr3 = 0x0
dram_mr4 = 0x0
dram_mr5 = 0x0
dram_mr6 = 0x0
dram_mr11 = 0x0
dram_mr12 = 0x0
dram_mr13 = 0x0
dram_mr14 = 0x0
dram_mr16 = 0x0
dram_mr17 = 0x0
dram_mr22 = 0x0
dram_tpr0 = 0x0
dram_tpr1 = 0x0
dram_tpr2 = 0x0
dram_tpr3 = 0x0
dram_tpr6 = 0x33808080
dram_tpr10 = 0x00f83438
dram_tpr11 = 0x0
dram_tpr12 = 0x0
dram_tpr13 = 0x40
[dram_para3]
dram_clk = 720
dram_type = 3
dram_dx_odt = 0x08080808
dram_dx_dri = 0x0e0e0e0e
dram_ca_dri = 0x0e0e
dram_odt_en = 1
dram_para1 = 0x30FA
dram_para2 = 0x1000
dram_mr0 = 0x840
dram_mr1 = 0x4
dram_mr2 = 0x8
dram_mr3 = 0x0
dram_mr4 = 0x0
dram_mr5 = 0x0
dram_mr6 = 0x0
dram_mr11 = 0x0
dram_mr12 = 0x0
dram_mr13 = 0x0
dram_mr14 = 0x0
dram_mr16 = 0x0
dram_mr17 = 0x0
dram_mr22 = 0x0
dram_tpr0 = 0x0
dram_tpr1 = 0x0
dram_tpr2 = 0x0
dram_tpr3 = 0x0
dram_tpr6 = 0x33808080
dram_tpr10 = 0x00f83438
dram_tpr11 = 0x0
dram_tpr12 = 0x0
dram_tpr13 = 0x40
[dram_para4]
dram_clk = 720
dram_type = 3
dram_dx_odt = 0x08080808
dram_dx_dri = 0x0e0e0e0e
dram_ca_dri = 0x0e0e
dram_odt_en = 1
dram_para1 = 0x30FA
dram_para2 = 0x1000
dram_mr0 = 0x840
dram_mr1 = 0x4
dram_mr2 = 0x8
dram_mr3 = 0x0
dram_mr4 = 0x0
dram_mr5 = 0x0
dram_mr6 = 0x0
dram_mr11 = 0x0
dram_mr12 = 0x0
dram_mr13 = 0x0
dram_mr14 = 0x0
dram_mr16 = 0x0
dram_mr17 = 0x0
dram_mr22 = 0x0
dram_tpr0 = 0x0
dram_tpr1 = 0x0
dram_tpr2 = 0x0
dram_tpr3 = 0x0
dram_tpr6 = 0x33808080
dram_tpr10 = 0x00f83438
dram_tpr11 = 0x0
dram_tpr12 = 0x0
dram_tpr13 = 0x40
[dram_para5]
dram_clk = 720
dram_type = 3
dram_dx_odt = 0x08080808
dram_dx_dri = 0x0e0e0e0e
dram_ca_dri = 0x0e0e
dram_odt_en = 1
dram_para1 = 0x30FA
dram_para2 = 0x1000
dram_mr0 = 0x840
dram_mr1 = 0x4
dram_mr2 = 0x8
dram_mr3 = 0x0
dram_mr4 = 0x0
dram_mr5 = 0x0
dram_mr6 = 0x0
dram_mr11 = 0x0
dram_mr12 = 0x0
dram_mr13 = 0x0
dram_mr14 = 0x0
dram_mr16 = 0x0
dram_mr17 = 0x0
dram_mr22 = 0x0
dram_tpr0 = 0x0
dram_tpr1 = 0x0
dram_tpr2 = 0x0
dram_tpr3 = 0x0
dram_tpr6 = 0x33808080
dram_tpr10 = 0x00f83438
dram_tpr11 = 0x0
dram_tpr12 = 0x0
dram_tpr13 = 0x40
[dram_para6]
dram_clk = 720
dram_type = 3
dram_dx_odt = 0x08080808
dram_dx_dri = 0x0e0e0e0e
dram_ca_dri = 0x0e0e
dram_odt_en = 1
dram_para1 = 0x30FA
dram_para2 = 0x1000
dram_mr0 = 0x840
dram_mr1 = 0x4
dram_mr2 = 0x8
dram_mr3 = 0x0
dram_mr4 = 0x0
dram_mr5 = 0x0
dram_mr6 = 0x0
dram_mr11 = 0x0
dram_mr12 = 0x0
dram_mr13 = 0x0
dram_mr14 = 0x0
dram_mr16 = 0x0
dram_mr17 = 0x0
dram_mr22 = 0x0
dram_tpr0 = 0x0
dram_tpr1 = 0x0
dram_tpr2 = 0x0
dram_tpr3 = 0x0
dram_tpr6 = 0x33808080
dram_tpr10 = 0x00f83438
dram_tpr11 = 0x0
dram_tpr12 = 0x0
dram_tpr13 = 0x40
[dram_para7]
dram_clk = 720
dram_type = 3
dram_dx_odt = 0x08080808
dram_dx_dri = 0x0e0e0e0e
dram_ca_dri = 0x0e0e
dram_odt_en = 1
dram_para1 = 0x30FA
dram_para2 = 0x1000
dram_mr0 = 0x840
dram_mr1 = 0x4
dram_mr2 = 0x8
dram_mr3 = 0x0
dram_mr4 = 0x0
dram_mr5 = 0x0
dram_mr6 = 0x0
dram_mr11 = 0x0
dram_mr12 = 0x0
dram_mr13 = 0x0
dram_mr14 = 0x0
dram_mr16 = 0x0
dram_mr17 = 0x0
dram_mr22 = 0x0
dram_tpr0 = 0x0
dram_tpr1 = 0x0
dram_tpr2 = 0x0
dram_tpr3 = 0x0
dram_tpr6 = 0x33808080
dram_tpr10 = 0x00f83438
dram_tpr11 = 0x0
dram_tpr12 = 0x0
dram_tpr13 = 0x40
[dram_para8]
dram_clk = 720
dram_type = 3
dram_dx_odt = 0x08080808
dram_dx_dri = 0x0e0e0e0e
dram_ca_dri = 0x0e0e
dram_odt_en = 1
dram_para1 = 0x30FA
dram_para2 = 0x1000
dram_mr0 = 0x840
dram_mr1 = 0x4
dram_mr2 = 0x8
dram_mr3 = 0x0
dram_mr4 = 0x0
dram_mr5 = 0x0
dram_mr6 = 0x0
dram_mr11 = 0x0
dram_mr12 = 0x0
dram_mr13 = 0x0
dram_mr14 = 0x0
dram_mr16 = 0x0
dram_mr17 = 0x0
dram_mr22 = 0x0
dram_tpr0 = 0x0
dram_tpr1 = 0x0
dram_tpr2 = 0x0
dram_tpr3 = 0x0
dram_tpr6 = 0x33808080
dram_tpr10 = 0x00f83438
dram_tpr11 = 0x0
dram_tpr12 = 0x0
dram_tpr13 = 0x40
[dram_para9]
dram_clk = 720
dram_type = 3
dram_dx_odt = 0x08080808
dram_dx_dri = 0x0e0e0e0e
dram_ca_dri = 0x0e0e
dram_odt_en = 1
dram_para1 = 0x30FA
dram_para2 = 0x1000
dram_mr0 = 0x840
dram_mr1 = 0x4
dram_mr2 = 0x8
dram_mr3 = 0x0
dram_mr4 = 0x0
dram_mr5 = 0x0
dram_mr6 = 0x0
dram_mr11 = 0x0
dram_mr12 = 0x0
dram_mr13 = 0x0
dram_mr14 = 0x0
dram_mr16 = 0x0
dram_mr17 = 0x0
dram_mr22 = 0x0
dram_tpr0 = 0x0
dram_tpr1 = 0x0
dram_tpr2 = 0x0
dram_tpr3 = 0x0
dram_tpr6 = 0x33808080
dram_tpr10 = 0x00f83438
dram_tpr11 = 0x0
dram_tpr12 = 0x0
dram_tpr13 = 0x40
[dram_para10]
dram_clk = 720
dram_type = 3
dram_dx_odt = 0x08080808
dram_dx_dri = 0x0e0e0e0e
dram_ca_dri = 0x0e0e
dram_odt_en = 1
dram_para1 = 0x30FA
dram_para2 = 0x1000
dram_mr0 = 0x840
dram_mr1 = 0x4
dram_mr2 = 0x8
dram_mr3 = 0x0
dram_mr4 = 0x0
dram_mr5 = 0x0
dram_mr6 = 0x0
dram_mr11 = 0x0
dram_mr12 = 0x0
dram_mr13 = 0x0
dram_mr14 = 0x0
dram_mr16 = 0x0
dram_mr17 = 0x0
dram_mr22 = 0x0
dram_tpr0 = 0x0
dram_tpr1 = 0x0
dram_tpr2 = 0x0
dram_tpr3 = 0x0
dram_tpr6 = 0x33808080
dram_tpr10 = 0x00f83438
dram_tpr11 = 0x0
dram_tpr12 = 0x0
dram_tpr13 = 0x40
[dram_para11]
dram_clk = 720
dram_type = 3
dram_dx_odt = 0x08080808
dram_dx_dri = 0x0e0e0e0e
dram_ca_dri = 0x0e0e
dram_odt_en = 1
dram_para1 = 0x30FA
dram_para2 = 0x1000
dram_mr0 = 0x840
dram_mr1 = 0x4
dram_mr2 = 0x8
dram_mr3 = 0x0
dram_mr4 = 0x0
dram_mr5 = 0x0
dram_mr6 = 0x0
dram_mr11 = 0x0
dram_mr12 = 0x0
dram_mr13 = 0x0
dram_mr14 = 0x0
dram_mr16 = 0x0
dram_mr17 = 0x0
dram_mr22 = 0x0
dram_tpr0 = 0x0
dram_tpr1 = 0x0
dram_tpr2 = 0x0
dram_tpr3 = 0x0
dram_tpr6 = 0x33808080
dram_tpr10 = 0x00f83438
dram_tpr11 = 0x0
dram_tpr12 = 0x0
dram_tpr13 = 0x40
[dram_para12]
dram_clk = 720
dram_type = 3
dram_dx_odt = 0x08080808
dram_dx_dri = 0x0e0e0e0e
dram_ca_dri = 0x0e0e
dram_odt_en = 1
dram_para1 = 0x30FA
dram_para2 = 0x1000
dram_mr0 = 0x840
dram_mr1 = 0x4
dram_mr2 = 0x8
dram_mr3 = 0x0
dram_mr4 = 0x0
dram_mr5 = 0x0
dram_mr6 = 0x0
dram_mr11 = 0x0
dram_mr12 = 0x0
dram_mr13 = 0x0
dram_mr14 = 0x0
dram_mr16 = 0x0
dram_mr17 = 0x0
dram_mr22 = 0x0
dram_tpr0 = 0x0
dram_tpr1 = 0x0
dram_tpr2 = 0x0
dram_tpr3 = 0x0
dram_tpr6 = 0x33808080
dram_tpr10 = 0x00f83438
dram_tpr11 = 0x0
dram_tpr12 = 0x0
dram_tpr13 = 0x40
[dram_para13]
dram_clk = 720
dram_type = 3
dram_dx_odt = 0x08080808
dram_dx_dri = 0x0e0e0e0e
dram_ca_dri = 0x0e0e
dram_odt_en = 1
dram_para1 = 0x30FA
dram_para2 = 0x1000
dram_mr0 = 0x840
dram_mr1 = 0x4
dram_mr2 = 0x8
dram_mr3 = 0x0
dram_mr4 = 0x0
dram_mr5 = 0x0
dram_mr6 = 0x0
dram_mr11 = 0x0
dram_mr12 = 0x0
dram_mr13 = 0x0
dram_mr14 = 0x0
dram_mr16 = 0x0
dram_mr17 = 0x0
dram_mr22 = 0x0
dram_tpr0 = 0x0
dram_tpr1 = 0x0
dram_tpr2 = 0x0
dram_tpr3 = 0x0
dram_tpr6 = 0x33808080
dram_tpr10 = 0x00f83438
dram_tpr11 = 0x0
dram_tpr12 = 0x0
dram_tpr13 = 0x40
[dram_para14]
dram_clk = 720
dram_type = 3
dram_dx_odt = 0x08080808
dram_dx_dri = 0x0e0e0e0e
dram_ca_dri = 0x0e0e
dram_odt_en = 1
dram_para1 = 0x30FA
dram_para2 = 0x1000
dram_mr0 = 0x840
dram_mr1 = 0x4
dram_mr2 = 0x8
dram_mr3 = 0x0
dram_mr4 = 0x0
dram_mr5 = 0x0
dram_mr6 = 0x0
dram_mr11 = 0x0
dram_mr12 = 0x0
dram_mr13 = 0x0
dram_mr14 = 0x0
dram_mr16 = 0x0
dram_mr17 = 0x0
dram_mr22 = 0x0
dram_tpr0 = 0x0
dram_tpr1 = 0x0
dram_tpr2 = 0x0
dram_tpr3 = 0x0
dram_tpr6 = 0x33808080
dram_tpr10 = 0x00f83438
dram_tpr11 = 0x0
dram_tpr12 = 0x0
dram_tpr13 = 0x40
[dram_para15]
dram_clk = 720
dram_type = 3
dram_dx_odt = 0x08080808
dram_dx_dri = 0x0e0e0e0e
dram_ca_dri = 0x0e0e
dram_odt_en = 1
dram_para1 = 0x30FA
dram_para2 = 0x1000
dram_mr0 = 0x840
dram_mr1 = 0x4
dram_mr2 = 0x8
dram_mr3 = 0x0
dram_mr4 = 0x0
dram_mr5 = 0x0
dram_mr6 = 0x0
dram_mr11 = 0x0
dram_mr12 = 0x0
dram_mr13 = 0x0
dram_mr14 = 0x0
dram_mr16 = 0x0
dram_mr17 = 0x0
dram_mr22 = 0x0
dram_tpr0 = 0x0
dram_tpr1 = 0x0
dram_tpr2 = 0x0
dram_tpr3 = 0x0
dram_tpr6 = 0x33808080
dram_tpr10 = 0x00f83438
dram_tpr11 = 0x0
dram_tpr12 = 0x0
dram_tpr13 = 0x40
[dram_para16]
dram_clk = 792
dram_type = 8
dram_dx_odt = 0x07070707
dram_dx_dri = 0x0e0e0e0e
dram_ca_dri = 0x0e0e
dram_odt_en = 0xaaaaeeee
dram_para1 = 0x30fa
dram_para2 = 0x0000
dram_mr0 = 0x0
dram_mr1 = 0x34
dram_mr2 = 0x1b
dram_mr3 = 0x33
dram_mr4 = 0x3
dram_mr5 = 0x0
dram_mr6 = 0x0
dram_mr11 = 0x4
dram_mr12 = 0x72
dram_mr13 = 0x0
dram_mr14 = 0x9
dram_mr16 = 0x0
dram_mr17 = 0x0
dram_mr22 = 0x24
dram_tpr0 = 0x0
dram_tpr1 = 0x0
dram_tpr2 = 0x0
dram_tpr3 = 0x0
dram_tpr6 = 0x35808080
dram_tpr10 = 0x402f6663
dram_tpr11 = 0x36363535
dram_tpr12 = 0x10101110
dram_tpr13 = 0x2080C60
;----------------------------------------------------------------------------------
;os life cycle para configuration
;----------------------------------------------------------------------------------
;----------------------------------------------------------------------------------
;uart configuration
;uart_type --- 2 (2 wire), 4 (4 wire), 8 (8 wire, full function)
;----------------------------------------------------------------------------------
[uart0]
uart0_used = 1
uart0_port = 0
uart0_type = 2
uart0_tx = port:PH00<2><1><default><default>
uart0_rx = port:PH01<2><1><default><default>
[nand0_para]
nand0_support_2ch = 0
nand0_used = 0
nand0_we = port:PC00<2><0><1><default>
nand0_ale = port:PC01<2><0><1><default>
nand0_cle = port:PC02<2><0><1><default>
nand0_ce0 = port:PC03<2><1><1><default>
nand0_nre = port:PC04<2><0><1><default>
nand0_rb0 = port:PC05<2><1><1><default>
nand0_d0 = port:PC06<2><0><1><default>
nand0_d1 = port:PC07<2><0><1><default>
nand0_d2 = port:PC08<2><0><1><default>
nand0_d3 = port:PC09<2><0><1><default>
nand0_d4 = port:PC10<2><0><1><default>
nand0_d5 = port:PC11<2><0><1><default>
nand0_d6 = port:PC12<2><0><1><default>
nand0_d7 = port:PC13<2><0><1><default>
nand0_ndqs = port:PC14<2><0><1><default>
nand0_ce1 = port:PC15<2><1><1><default>
nand0_rb1 = port:PC16<2><1><1><default>
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
[secure]
dram_region_mbytes = 80
drm_region_mbytes = 0
drm_region_start_mbytes = 0

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@ -0,0 +1,6 @@
[package]
;item=Item_TOC_name, Item_filename,
item=u-boot, u-boot.fex
item=monitor, monitor.fex
item=scp, scp.fex
;item=optee, optee.fex

File diff suppressed because it is too large Load Diff

Binary file not shown.

Binary file not shown.

View File

@ -0,0 +1,155 @@
;sunxi platform application
;---------------------------------------------------------------------------------------------------------
; 说明: 脚本中的字符串区分大小写,用户可以修改"="后面的数值,但是不要修改前面的字符串
; 描述gpio的形式Port:端口+组内序号<功能分配><内部电阻状态><驱动能力><输出电平状态>
;---------------------------------------------------------------------------------------------------------
[platform]
debug_mode = 1
;----------------------------------------------------------------------------------
;[target] system bootup configuration
;power_mode | xxxxx | xxx | (8 bit)
; vol_val axp_id
; vol_val: 0 : use default sys_vol(900mV)
; 1~31 : default_vol + (vol_val - 1) * 10
; axp_id: 0 : no axp, dummy
; 1 : use axp2202
; e.g.:使用axp2202的情况下,配置sys电压为:
; default vol: power_mode = 1
; 900mV: power_mode = 9
; 910mV: power_mode = 17
; 920mV: power_mode = 25
; 930mV: power_mode = 33
; 940mV: power_mode = 41
; 950mV: power_mode = 49
; 960mV: power_mode = 57
; 970mV: power_mode = 65
; 980mV: power_mode = 73
; 900mV: power_mode = 81
; 1000mV: power_mode = 89
; 1010mV: power_mode = 97
; 1020mV: power_mode = 105
; 1030mV: power_mode = 113
; 1040mV: power_mode = 121
; 1050mV: power_mode = 129
; 1060mV: power_mode = 137
; 1070mV: power_mode = 145
; 1080mV: power_mode = 153
; 1090mV: power_mode = 161
; 1100mV: power_mode = 169
; 1110mV: power_mode = 177
; 1120mV: power_mode = 185
; 1130mV: power_mode = 193
; 1140mV: power_mode = 201
; 1150mV: power_mode = 209
;----------------------------------------------------------------------------------
[target]
power_mode = 1
[card0_boot_para]
card_ctrl = 0
card_high_speed = 1
card_line = 4
sdc_d1 = port:PF0<2><1><0><default>
sdc_d0 = port:PF1<2><1><0><default>
sdc_clk = port:PF2<2><1><2><default>
sdc_cmd = port:PF3<2><1><0><default>
sdc_d3 = port:PF4<2><1><0><default>
sdc_d2 = port:PF5<2><1><0><default>
;sdc_type = "tm1"
[card2_boot_para]
card_ctrl = 2
card_high_speed = 1
card_line = 8
sdc_clk = port:PC5<3><1><3><default>
sdc_cmd = port:PC6<3><1><1><default>
sdc_d0 = port:PC10<3><1><1><default>
sdc_d1 = port:PC13<3><1><1><default>
sdc_d2 = port:PC15<3><1><1><default>
sdc_d3 = port:PC8<3><1><1><default>
sdc_d4 = port:PC9<3><1><1><default>
sdc_d5 = port:PC11<3><1><1><default>
sdc_d6 = port:PC14<3><1><1><default>
sdc_d7 = port:PC16<3><1><1><default>
sdc_emmc_rst = port:PC1<3><1><3><default>
sdc_ds = port:PC0<3><2><3><default>
[uart_para]
uart_debug_port = 0
uart_debug_tx = port:PB09<2><1><default><default>
uart_debug_rx = port:PB10<2><1><default><default>
[jtag_para]
jtag_enable = 1
jtag_ms = port:PB0<7><default><default><default>
jtag_ck = port:PB1<7><default><default><default>
jtag_do = port:PB2<7><default><default><default>
jtag_di = port:PB3<7><default><default><default>
[twi_para]
twi_used = 1
twi_port = 6
twi_scl = port:PL0<2><1><default><default>
twi_sda = port:PL1<2><1><default><default>
;*****************************************************************************
;
;dram select configuration
;
;select_mode : dram模式选择, 0:不进行自动识别
; 1:gpio识别模式(dram_para, dram_para1-15, 共16组有效)
; 2:gpadc识别模式(dram_para, dram_para1-7, 共8组有效)
; 3:2个IO+gpadc识别模式(dram_para, dram_para1-32, 共33组有效)。其中IO配置优先级按select_gpio0>select_gpio1>select_gpio2>select_gpio3
;gpadc_channel : 选择gpadc通道 有效值(0-3)
;select_gpio1-4 : 选择gpio pin
;*****************************************************************************
[dram_select_para]
select_mode = 3
gpadc_channel = 1
select_gpio0 = port:PH16<0><1><default><default>
;*****************************************************************************
;sdram configuration
;
;*****************************************************************************
[dram_para]
dram_clk = 1200
dram_type = 8
dram_dx_odt = 0x08080808
dram_dx_dri = 0x0e0e0e0e
dram_ca_dri = 0x88030e0e
dram_para0 = 0
dram_para1 = 0x311a
dram_para2 = 0x0001
dram_mr0 = 0x0
dram_mr1 = 0x8c
dram_mr2 = 0
dram_mr3 = 0x33
dram_mr4 = 0x3
dram_mr5 = 0
dram_mr6 = 0
dram_mr11 = 0x4
dram_mr12 = 0x72
dram_mr13 = 0
dram_mr14 = 0x9
dram_mr16 = 0
dram_mr17 = 0
dram_mr22 = 0x24
dram_tpr0 = 0
dram_tpr1 = 0
dram_tpr2 = 0
dram_tpr3 = 0x110000
dram_tpr6 = 0x402a
dram_tpr10 = 0x121f0000
dram_tpr11 = 0
dram_tpr12 = 0
dram_tpr13 = 0x61
dram_tpr14 = 0
[secure]
dram_region_mbytes = 120
drm_region_mbytes = 0
drm_region_start_mbytes = 0

View File

@ -1893,6 +1893,15 @@ show_checklist_variables ()
done
}
get_orangepi_url()
{
if [[ ${GITEE_SERVER} == yes ]]; then
echo "https://gitee.com/orangepi-xunlong"
else
echo "https://github.com/orangepi-xunlong"
fi
}
install_wiringop()
{
install_deb_chroot "$EXTER/cache/debs/${ARCH}/wiringpi-2.58-1.deb"
@ -1900,8 +1909,9 @@ install_wiringop()
if [[ ${IGNORE_UPDATES} != yes ]]; then
fetch_from_repo "https://github.com/orangepi-xunlong/wiringOP.git" "${EXTER}/cache/sources/wiringOP" "branch:next" "yes"
fetch_from_repo "https://github.com/orangepi-xunlong/wiringOP-Python.git" "${EXTER}/cache/sources/wiringOP-Python" "branch:next" "yes"
local url=$(get_orangepi_url)
fetch_from_repo "${url}/wiringOP.git" "${EXTER}/cache/sources/wiringOP" "branch:next" "yes"
fetch_from_repo "${url}/wiringOP-Python.git" "${EXTER}/cache/sources/wiringOP-Python" "branch:next" "yes"
fi

View File

@ -188,11 +188,14 @@ if [[ -z $BOARD ]]; then
#options+=("orangepizero2-lts" "Allwinner H616 quad core 1.5GB RAM WiFi/BT GBE SPI")
options+=("orangepizero3" "Allwinner H618 quad core 1GB/1.5GB/2GB/4GB RAM WiFi/BT GBE SPI")
options+=("orangepizero2w" "Allwinner H618 quad core 1GB/1.5GB/2GB/4GB RAM WiFi/BT SPI")
#options+=("orangepizero3plus" "Allwinner H618 quad core 1GB/1.5GB/2GB/4GB RAM WiFi/BT GBE eMMC")
#options+=("orangepir1b" "Allwinner H618 quad core 1.5GB/2GB/4GB RAM WiFi/BT GBE SPI")
#options+=("orangepi400" "Allwinner H616 quad core 4GB RAM WiFi/BT GBE eMMC VGA")
options+=("orangepi4" "Rockchip RK3399 hexa core 4GB RAM GBE eMMC USB3 USB-C WiFi/BT")
options+=("orangepi4a" "Allwinner T527 octa core 2-4GB RAM GBE WiFi/BT NVMe eMMC")
options+=("orangepi4-lts" "Rockchip RK3399 hexa core 4GB RAM GBE eMMC USB3 USB-C WiFi/BT")
#options+=("aipcliteb" "Allwinner T736 octa core 2-4GB RAM GBE WiFi/BT NVMe")
options+=("orangepi4pro" "Allwinner A733 octa core 4-16GB RAM GBE USB3 WiFi/BT NVMe eMMC")
options+=("orangepi800" "Rockchip RK3399 hexa core 4GB RAM GBE eMMC USB3 USB-C WiFi/BT VGA")
options+=("orangepi5" "Rockchip RK3588S octa core 4-16GB RAM GBE USB3 USB-C NVMe")
options+=("orangepicm5" "Rockchip RK3588S octa core 4-16GB RAM GBE USB3 USB-C")
@ -511,6 +514,14 @@ if [[ ${IGNORE_UPDATES} != yes ]]; then
fi
if [[ ${BOARDFAMILY} == "sun60iw2" && $RELEASE =~ bullseye ]]; then
if [[ ${GITEE_SERVER} == yes ]]; then
[[ ${BUILD_OPT} == image ]] && fetch_from_repo "https://gitee.com/orangepi-xunlong/sun60iw2_packages.git" "${EXTER}/cache/sources/sun60iw2_packages" "branch:sun60iw2_packages"
else
[[ ${BUILD_OPT} == image ]] && fetch_from_repo "https://github.com/orangepi-xunlong/rk-rootfs-build.git" "${EXTER}/cache/sources/sun60iw2_packages" "branch:sun60iw2_packages"
fi
fi
if [[ ${BOARD} =~ orangepi3|orangepi3-lts && $RELEASE =~ bullseye && $BRANCH == current ]]; then
[[ ${BUILD_OPT} == image ]] && fetch_from_repo "https://github.com/orangepi-xunlong/rk-rootfs-build.git" "${EXTER}/cache/sources/ffmpeg_kodi_${RELEASE}" "branch:ffmpeg_kodi_${RELEASE}"