Skip to content

1980490718/u-boot-2016

Repository files navigation

U-Boot 2016 说明

项目简介

高通IPQ系列定制U-Boot,源自开源的QSDK 12.5。支持以下功能:

  • 集成U-Boot的webfailsafe模式
  • 集成DHCP服务
  • 集成Web页面修改环境变量
  • 支持U-Boot更新、固件更新、CDT更新、MIBIB更新、GPT更新、ART更新、initramfs启动进行调试和恢复
  • 支持在环境变量中自定义reset_key=<GPIO_NUM>,(覆盖模式)以方便在没有添加支持的设备上启用按压reset按键进入uboot的webfailsafe模式进行相应的升级操作
    • 设置方法:①ttl下输入
    • 'setenv reset_key x && saveenv'
    • 设置方法:②或者环境变量页面变量名框中输入'reset_key',变量值框中输入'x',然后点'修改变量'重启后永久生效
    • 注:'x'为你已知的gpio值。
  • 支持在环境变量中自定义config_name=config@xxx,(覆盖模式)以方便夸机型,夸型号,夸固件进行测试
    • 设置方法:①ttl下输入‘setenv config_name config@x && saveenv’
    • 设置方法:②或者环境变量页面变量名框中输入'config_name',在变量值框中输入'config@xxx',然后点‘修改变量’重启后永久生效
    • 取消覆盖的变量名以及值reset_key/config_name,在ttl下输入'setenv reset_key''saveenv' / 'setenv config_name''saveenv'重启即调用dtb中的默认条目

系统要求

  • Ubuntu 20.04 LTS 或更高版本
  • 现代浏览器(用于访问Webfailsafe界面)
    • 为优化web页面占用大小以及降低对设备资源的使用,HTTP页面采用zopfli的极限压缩gz格式
    • 推荐浏览器:Chrome 60+、Firefox 55+、Safari 11+、Edge 15+
    • 部分旧版浏览器可能无法正确处理并显示压缩的页面内容,不兼容IE浏览器,请使用支持gzip自解压缩的最新版本的现代浏览器

依赖要求

首次构建前,请安装以下依赖(Python3/2.7 自适应,默认推荐安装Python3)

sudo apt-get update
sudo apt-get install -y build-essential libncurses5-dev gawk git gettext libssl-dev python3 wget cpio flex bison bc rsync nodejs npm gzip zopfli device-tree-compiler

makefsdatac脚本处理Web界面文件,需要用的Node.js工具,以及该工具的以下组件:

npm install -g html-minifier-terser clean-css terser

快速开始

git clone https://github.com/1980490718/u-boot-2016.git
git clone https://github.com/1980490718/toolchain-arm_cortex-a7_gcc-5.2.0.git staging_dir
cd u-boot-2016
./build.sh clean

编译命令

./build.sh [platform]     # 编译平台所有板子
./build.sh [board]        # 构建单个板子
./build.sh clean          # 深度清理
./build.sh clean_all      # 仅清理输出文件

支持的平台以及设备型号

平台 配置_defconfig 设备型号(配置) machid 是否测试 编译命令
IPQ40xx ipq40xx_aliyun_ap4220 阿里云 AP4220 0x9000010 ./build.sh ipq40xx_aliyun_ap4220
IPQ40xx ipq40xx_standard 公版标准 --- ./build.sh ipq40xx_standard
IPQ40xx ipq40xx_p2w_r619ac P2W R619AC 0x8010006 ./build.sh ipq40xx_p2w_r619ac
IPQ40xx ipq40xx_thinkplus_fogpod800 ThinkPlus FogPod800 0x8010100 ./build.sh ipq40xx_thinkplus_fogpod800
IPQ40xx ipq40xx 公版基础 --- ./build.sh ipq40xx
IPQ5018 ipq5018_cmcc_rax3000q CMCC RAX3000Q 0x8040000 × ./build.sh ipq5018_cmcc_rax3000q
IPQ5018 ipq5018_cucc_vs010 中国联通 CUCC VS010 0x8040000 × ./build.sh ipq5018_cucc_vs010
IPQ5018 ipq5018_gl_b3000 GLINET GL-B3000 0x8040004 × ./build.sh ipq5018_gl_b3000
IPQ5018 ipq5018_mr3000d_04 CMCC MR3000D-04 0x8040702 × ./build.sh ipq5018_mr3000d_04
IPQ5018 ipq5018_mr3000d_ci CMCC MR3000D-CI 0x8040802 ./build.sh ipq5018_mr3000d_ci
IPQ5018 ipq5018_pz_l8 CMCC PZ-L8 0x8040000 × ./build.sh ipq5018_pz_l8
IPQ5018 ipq5018_ruijie_ma3063 锐捷 RG-MA3063 0x8040000
0x8040004
× ./build.sh ipq5018_ruijie_ma3063
IPQ5018 ipq5018_skspruce_ap8330c 西加云杉 SKSPRUCE AP8330C 0x8040202 × ./build.sh ipq5018_skspruce_ap8330c
IPQ5018 ipq5018_tiny 公版简 --- ./build.sh ipq5018_tiny
IPQ5018 ipq5018_tiny_debug 公版调试简 --- ./build.sh ipq5018_tiny_debug
IPQ5018 ipq5018 公版基础 --- ./build.sh ipq5018
IPQ5332 ipq5332_h3c_ne36pro H3C NE36PRO 0x8060007 ./build.sh ipq5332_h3c_ne36pro
IPQ5332 ipq5332_xiaomi_be306 小米 BE306 0x8060007 × ./build.sh ipq5332_xiaomi_be306
IPQ5332 ipq5332_tiny 公版简 --- ./build.sh ipq5332_tiny
IPQ5332 ipq5332_tiny_nor NOR闪存简 --- ./build.sh ipq5332_tiny_nor
IPQ5332 ipq5332_tiny_debug 公版调试简 --- ./build.sh ipq5332_tiny_debug
IPQ5332 ipq5332_tiny2 公版简2 --- ./build.sh ipq5332_tiny2
IPQ5332 ipq5332 公版基础 --- ./build.sh ipq5332
IPQ6018 ipq6018_360v6 奇虎360v6 0x8030200 ./build.sh ipq6018_360v6
IPQ6018 ipq6018_ax1800pro 京东云 AX1800Pro 0x8030200 ./build.sh ipq6018_ax1800pro
IPQ6018 ipq6018_ax5_jdcloud 京东云 AX5 0x8030200 ./build.sh ipq6018_ax5_jdcloud
IPQ6018 ipq6018_dptech_ap3000_2c 迪普 DPtech AP3000-2C 0x8030200 ./build.sh ipq6018_dptech_ap3000_2c
IPQ6018 ipq6018_glinet_axt1800 GLINET
GL-AXT1800
GL-AX1800
0x8030200 ./build.sh ipq6018_glinet_axt1800
IPQ6018 ipq6018_philips_ly1800 飞利浦 LY1800
双渔 Y6010
0x8030000 ./build.sh ipq6018_philips_ly1800
IPQ6018 ipq6018_jdcloud_ax6600 京东云 AX6600 0x8030201 ./build.sh ipq6018_jdcloud_ax6600
IPQ6018 ipq6018_jdcloud_er1 京东云 ER1 0x8030203 ./build.sh ipq6018_jdcloud_er1
IPQ6018 ipq6018_m2 兆能 M2
CMIOT AX18
0x8030200 ./build.sh ipq6018_m2
IPQ6018 ipq6018_nn6000 Link NN6000 0x8030202 ./build.sh ipq6018_nn6000
IPQ6018 ipq6018_xiaomi_ax1800 小米 AX1800 0x8030200 ./build.sh ipq6018_xiaomi_ax1800
IPQ6018 ipq6018_tiny 公版简 --- ./build.sh ipq6018_tiny
IPQ6018 ipq6018 公版基础 --- ./build.sh ipq6018
IPQ806x ipq806x_standard 公版标准 --- ? ./build.sh ipq806x_standard
IPQ806x ipq806x 公版基础 --- ? ./build.sh ipq806x
IPQ807x ipq807x_aliyun_ap8220 阿里云 AP8220 0x0801000A ./build.sh ipq807x_aliyun_ap8220
IPQ807x ipq807x_redmi_ax6 小米 AX3600
红米 AX6
0x08010010 ./build.sh ipq807x_redmi_ax6
IPQ807x ipq807x_tiny 公版简 --- ./build.sh ipq807x_tiny
IPQ807x ipq807x_xglink_5gcpe XGlink 5GCPE 0x08010008 ./build.sh ipq807x_xglink_5gcpe
IPQ807x ipq807x 公版基础 --- ./build.sh ipq807x
IPQ9574 ipq9574 公版基础 --- ? ./build.sh ipq9574

编译说明:所有配置的编译命令格式均为 ./build.sh <配置_defconfig>,其中 <配置_defconfig> 为表格第二列中对应的配置名称。

示例

./build.sh ipq807x              # 构建IPQ807x全系
./build.sh ipq807x_tiny         # 构建单个板子
./build.sh ipq6018_xiaomi_ax1800 # 小米AX1800

输出文件

  • ipq40xx/ipq806x: bin/*.elf
  • 其他平台: bin/*.mbn

环境变量

脚本自动设置:

ARCH=arm
CROSS_COMPILE=arm-openwrt-linux-
STAGING_DIR=../staging_dir/

报错处理

  • httpd/fs.c:54:20: fatal error: fsdata.c": No such fil or directory 请检查是否安装了NodeJS,以及Node的子模块:html-minifier-terser clean-css terser

许可证

  • 本项目使用 GPLv2 开源。
  • 详细条款请查看项目根目录下的 LICENSE 文件
  • 复制、分发、展示本代码
  • 修改本代码并分发修改后的版本
  • 将本代码用于商业用途,包括销售、出租等
  • 任何借鉴、复刻、二次开发本代码的行为、必须注明出处并同样以 GPLv2 开源以及保留原始版权声明和许可证声明

免责声明

  • 本项目未经充分测试,使用风险自负。
  • 作者及本项目源码不承担任何因直接间接使用本代码而产生的损失或损害责任,包括但不限于硬件损坏、数据丢失、设备故障等。
  • 本项目仅供学习和研究使用,禁止用于任何侵犯他人利益的用途。

About

Stripped from AU_LINUX_QSDK_NHSS.QSDK.12.5_TARGET_ALL.12.5.2783.2994

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors