├── .github └── workflows │ ├── build-istoreos-nowifi.yml │ ├── build-istoreos-x86.yml │ ├── build-istoreos.yml │ └── sync-files.yml ├── .nojekyll ├── README.md ├── configfiles ├── 02_network ├── WirelessDriver │ └── mt7916_eeprom.bin ├── adc-keys.txt ├── config_data.txt ├── coremark │ ├── coremark │ └── coremark.sh ├── etc │ ├── config │ │ └── nginx │ └── nginx │ │ └── uci.conf.template ├── firmware │ ├── jp-tvbox-firmware │ │ └── Makefile │ └── panther-x2-firmware │ │ └── Makefile ├── httpubus ├── init.sh ├── nowifi.txt ├── opwifi ├── rk3566-jp-tvbox.dts ├── rk3566-panther-x2.dts ├── rk3568-bdy-g18-pro.dts ├── rk3568-dg-nas-lite-core.dtsi ├── rk3568-dg-nas-lite.dts ├── rk3568-mrkaio-m68s-core.dtsi ├── rk3568-mrkaio-m68s-plus.dts ├── rk3568-mrkaio-m68s.dts ├── rk3568-nsy-g16-plus.dts ├── rk3568-nsy-g68-plus.dts ├── swconfig_install ├── ubus-examine.sh └── ubus_Makefile ├── depends └── ubuntu-22.04 ├── diy-part1.sh ├── diy-part2-x86.sh ├── diy-part2.sh ├── diy-part3.sh ├── rk35xx ├── .config ├── .config_backup └── feeds.conf └── x86 ├── .config └── feeds.conf /.github/workflows/build-istoreos-nowifi.yml: -------------------------------------------------------------------------------- 1 | name: Build iStore OS NOWIFI 2 | 3 | on: 4 | repository_dispatch: 5 | workflow_dispatch: 6 | # inputs: 7 | # ssh: 8 | # description: 'SSH connection to Actions' 9 | # required: false 10 | # default: 'false' 11 | schedule: 12 | - cron: 0 16 * * * 13 | 14 | env: 15 | REPO_URL: https://github.com/istoreos/istoreos 16 | # REPO_BRANCH: main 17 | FEEDS_CONF: feeds.conf 18 | CONFIG_FILE: .config 19 | DIY_P1_SH: diy-part1.sh 20 | DIY_P2_SH: diy-part3.sh 21 | UPLOAD_BIN_DIR: true 22 | UPLOAD_FIRMWARE: true 23 | UPLOAD_RELEASE: true 24 | TZ: Asia/Shanghai 25 | GITHUB_TOKEN: ${{ secrets.ACCESS_TOKEN }} 26 | 27 | jobs: 28 | build: 29 | runs-on: ${{ matrix.os }} 30 | strategy: 31 | matrix: 32 | REPO_BRANCH: 33 | # - main 34 | - istoreos-22.03 35 | # - istoreos-23.05 36 | ARCHITECTURE: 37 | - rk35xx 38 | os: 39 | - ubuntu-22.04 40 | 41 | fail-fast: false 42 | 43 | steps: 44 | - name: 准备完成 45 | uses: actions/checkout@main 46 | 47 | - name: 检查服务器配置 48 | run: | 49 | echo "若分配的服务器性能不足,务必及时取消,重新运行!" 50 | echo -e "------------------------------- CPU信息 -------------------------------\n" 51 | echo "CPU物理数量:$(cat /proc/cpuinfo| grep "physical id"| sort| uniq| wc -l)" 52 | echo -e "CPU核心及版本信息: $(cat /proc/cpuinfo | grep name | cut -f2 -d: | uniq -c) \n" 53 | echo -e "------------------------------- 内存信息 -------------------------------\n" 54 | echo "已安装内存详细信息: " 55 | sudo lshw -short -C memory | grep GiB 56 | echo -e "\n" 57 | echo -e "------------------------------- 磁盘信息 -------------------------------\n" 58 | echo -e "磁盘数量: $(ls /dev/sd* | grep -v [1-9] | wc -l) \n" 59 | echo "------------------------------- 磁盘详情 -------------------------------\n" 60 | df -Th 61 | 62 | - name: 初始化编译环境 63 | env: 64 | DEBIAN_FRONTEND: noninteractive 65 | run: | 66 | echo "------------------------------- 更新并安装依赖 -------------------------------" 67 | sudo rm -rf /etc/apt/sources.list.d/* /usr/share/dotnet /etc/mysql /etc/php /usr/local/lib/android /opt/ghc 68 | sudo -E apt-get -qq update 69 | sudo -E apt-get -qq install $(cat $GITHUB_WORKSPACE/depends/${{ matrix.os }}) 70 | wget https://bootstrap.pypa.io/pip/3.6/get-pip.py 71 | sudo python3 get-pip.py 72 | sudo rm -rf get-pip.py 73 | sudo pip install pyelftools 74 | echo "------------------------------- 清理Docker镜像和软件 -------------------------------" 75 | docker rmi `docker images -q` 76 | docker image prune -a -f 77 | sudo -E apt-get -y purge azure-cli ghc* zulu* hhvm llvm* firefox google* dotnet* powershell openjdk* adoptopenjdk* mysql* php* mongodb* dotnet* moby* snapd* android* || true 78 | sudo -E apt-get -qq autoremove --purge 79 | sudo -E apt-get -qq clean 80 | echo "------------------------------- 设置工作目录及时区 -------------------------------" 81 | sudo timedatectl set-timezone "$TZ" 82 | sudo mkdir -p /mnt/workdir 83 | sudo chown $USER:$GROUPS /mnt/workdir 84 | 85 | - name: 克隆源码 86 | working-directory: /mnt/workdir 87 | run: | 88 | df -hT $PWD 89 | git clone $REPO_URL -b ${{ matrix.REPO_BRANCH }} openwrt 90 | ln -sf /mnt/workdir/openwrt $GITHUB_WORKSPACE/openwrt 91 | 92 | - name: 缓存构建动作 93 | uses: klever1988/cachewrtbuild@main 94 | with: 95 | ccache: 'true' 96 | mixkey: ${{ matrix.os }}-${{ matrix.ARCHITECTURE }}-${{ matrix.REPO_BRANCH }} 97 | prefix: ${{ github.workspace }}/openwrt 98 | 99 | - name: 加载自定义 feeds 100 | env: 101 | FEEDS_CONF_PATH: ${{ matrix.ARCHITECTURE }}/${{ env.FEEDS_CONF }} 102 | run: | 103 | [ -e $FEEDS_CONF_PATH ] && mv $FEEDS_CONF_PATH openwrt/$FEEDS_CONF 104 | chmod +x $DIY_P1_SH 105 | cd openwrt 106 | $GITHUB_WORKSPACE/$DIY_P1_SH 107 | 108 | - name: 更新 feeds 109 | run: cd openwrt && ./scripts/feeds update -a 110 | 111 | - name: 安装 feeds 112 | run: cd openwrt && ./scripts/feeds install -a 113 | 114 | - name: 加载自定义配置 115 | env: 116 | CONFIG_FILE_PATH: ${{ matrix.ARCHITECTURE }}/${{ env.CONFIG_FILE }} 117 | run: | 118 | [ -e files ] && mv files openwrt/files 119 | [ -e $CONFIG_FILE_PATH ] && mv $CONFIG_FILE_PATH openwrt/$CONFIG_FILE 120 | chmod +x $DIY_P2_SH 121 | cd openwrt 122 | $GITHUB_WORKSPACE/$DIY_P2_SH 123 | 124 | # - name: SSH 连接到 Actions 125 | # uses: P3TERX/ssh2actions@main 126 | # if: (github.event.inputs.ssh == 'true' && github.event.inputs.ssh != 'false') || contains(github.event.action, 'ssh') 127 | # env: 128 | # TELEGRAM_CHAT_ID: ${{ secrets.TELEGRAM_CHAT_ID }} 129 | # TELEGRAM_BOT_TOKEN: ${{ secrets.TELEGRAM_BOT_TOKEN }} 130 | 131 | - name: 下载软件包 132 | id: package 133 | run: | 134 | cd openwrt 135 | make defconfig 136 | make download -j8 137 | find dl -size -1024c -exec ls -l {} \; 138 | find dl -size -1024c -exec rm -f {} \; 139 | 140 | - name: 编译固件 141 | id: compile 142 | run: | 143 | cd openwrt 144 | echo -e "$(nproc) thread compile" 145 | make -j$(nproc) || make -j1 || make -j1 V=s 146 | echo "FILE_DATE=_$(date +"%Y%m%d%H%M")" >> $GITHUB_ENV 147 | echo "status=success" >> ${GITHUB_OUTPUT} 148 | 149 | - name: 检查磁盘空间 150 | if: (!cancelled()) 151 | run: df -hT 152 | 153 | - name: 上传 bin 文件夹 154 | uses: actions/upload-artifact@main 155 | if: steps.compile.outputs.status == 'success' && env.UPLOAD_BIN_DIR == 'true' 156 | with: 157 | name: OpenWrt_bin${{ env.FILE_DATE }} 158 | path: openwrt/bin 159 | 160 | - name: 整理固件文件 161 | id: organize 162 | if: env.UPLOAD_FIRMWARE == 'true' && !cancelled() 163 | run: | 164 | cd openwrt/bin/targets/*/* 165 | rm -rf packages 166 | echo "FIRMWARE=$PWD" >> $GITHUB_ENV 167 | echo "status=success" >> ${GITHUB_OUTPUT} 168 | 169 | - name: 上传固件目录 170 | uses: actions/upload-artifact@main 171 | if: steps.organize.outputs.status == 'success' && !cancelled() 172 | with: 173 | name: OpenWrt_firmware${{ env.FILE_DATE }} 174 | path: ${{ env.FIRMWARE }} 175 | 176 | - name: 生成发布标签 177 | id: tag 178 | if: steps.compile.outputs.status == 'success' && env.UPLOAD_RELEASE == 'true' && !cancelled() 179 | run: | 180 | echo "release_tag=$(date +"%Y.%m.%d-%H.%M")-nowifi" >> ${GITHUB_OUTPUT} 181 | touch release.txt 182 | echo " 183 | 💻 架构: ${{ matrix.ARCHITECTURE }} 184 | 185 | 📂 源码: ${{ env.REPO_URL }} 186 | 187 | 🌳 分支: ${{ matrix.REPO_BRANCH }} 188 | 189 | ⏱️ 编译时间: $(date +"%Y年%m月%d日%H时%M分") 190 | 191 | 🌐 管理地址: 192.168.200.1 192 | 193 | 👤 用户名: root 194 | 195 | 🔒 密码: password 196 | 197 | 📒 说明: 单网口设备默认网口为LAN,旁路由模式,需要接入主路由器后进后台查找对应IP地址访问,反之双网口设备默认网口为WAN+LAN,主路由模式,下面的镜像文件都是不集成WiFi驱动的(无WiFi版本) " >> release.txt 198 | echo "status=success" >> ${GITHUB_OUTPUT} 199 | 200 | - name: 自动发布固件到 Releases 201 | uses: softprops/action-gh-release@v2 202 | if: steps.tag.outputs.status == 'success' && !cancelled() 203 | with: 204 | tag_name: ${{ steps.tag.outputs.release_tag }} 205 | body_path: release.txt 206 | files: ${{ env.FIRMWARE }}/* 207 | 208 | - name: 删除运行记录 209 | uses: xiaomeng9597/delete-workflow-runs@main 210 | with: 211 | retain_days: 1 212 | keep_minimum_runs: 1 213 | token: ${{ env.GITHUB_TOKEN }} 214 | 215 | - name: 删除自动发布的旧固件 216 | uses: dev-drprasad/delete-older-releases@v0.3.3 217 | if: env.UPLOAD_RELEASE == 'true' && !cancelled() 218 | with: 219 | keep_latest: 15 220 | delete_tags: true 221 | -------------------------------------------------------------------------------- /.github/workflows/build-istoreos-x86.yml: -------------------------------------------------------------------------------- 1 | name: Build iStore OS X86 2 | 3 | on: 4 | repository_dispatch: 5 | workflow_dispatch: 6 | # inputs: 7 | # ssh: 8 | # description: 'SSH connection to Actions' 9 | # required: false 10 | # default: 'false' 11 | schedule: 12 | - cron: 0 16 * * * 13 | 14 | env: 15 | REPO_URL: https://github.com/istoreos/istoreos 16 | # REPO_BRANCH: main 17 | FEEDS_CONF: feeds.conf 18 | CONFIG_FILE: .config 19 | DIY_P1_SH: diy-part1.sh 20 | DIY_P2_SH: diy-part2-x86.sh 21 | UPLOAD_BIN_DIR: true 22 | UPLOAD_FIRMWARE: true 23 | UPLOAD_RELEASE: true 24 | TZ: Asia/Shanghai 25 | GITHUB_TOKEN: ${{ secrets.ACCESS_TOKEN }} 26 | 27 | jobs: 28 | build: 29 | runs-on: ${{ matrix.os }} 30 | strategy: 31 | matrix: 32 | REPO_BRANCH: 33 | # - main 34 | - istoreos-22.03 35 | # - istoreos-23.05 36 | ARCHITECTURE: 37 | - x86 38 | os: 39 | - ubuntu-22.04 40 | 41 | fail-fast: false 42 | 43 | steps: 44 | - name: 准备完成 45 | uses: actions/checkout@main 46 | 47 | - name: 检查服务器配置 48 | run: | 49 | echo "若分配的服务器性能不足,务必及时取消,重新运行!" 50 | echo -e "------------------------------- CPU信息 -------------------------------\n" 51 | echo "CPU物理数量:$(cat /proc/cpuinfo| grep "physical id"| sort| uniq| wc -l)" 52 | echo -e "CPU核心及版本信息: $(cat /proc/cpuinfo | grep name | cut -f2 -d: | uniq -c) \n" 53 | echo -e "------------------------------- 内存信息 -------------------------------\n" 54 | echo "已安装内存详细信息: " 55 | sudo lshw -short -C memory | grep GiB 56 | echo -e "\n" 57 | echo -e "------------------------------- 磁盘信息 -------------------------------\n" 58 | echo -e "磁盘数量: $(ls /dev/sd* | grep -v [1-9] | wc -l) \n" 59 | echo "------------------------------- 磁盘详情 -------------------------------\n" 60 | df -Th 61 | 62 | - name: 初始化编译环境 63 | env: 64 | DEBIAN_FRONTEND: noninteractive 65 | run: | 66 | echo "------------------------------- 更新并安装依赖 -------------------------------" 67 | sudo rm -rf /etc/apt/sources.list.d/* /usr/share/dotnet /etc/mysql /etc/php /usr/local/lib/android /opt/ghc 68 | sudo -E apt-get -qq update 69 | sudo -E apt-get -qq install $(cat $GITHUB_WORKSPACE/depends/${{ matrix.os }}) 70 | wget https://bootstrap.pypa.io/pip/3.6/get-pip.py 71 | sudo python3 get-pip.py 72 | sudo rm -rf get-pip.py 73 | sudo pip install pyelftools 74 | echo "------------------------------- 清理Docker镜像和软件 -------------------------------" 75 | docker rmi `docker images -q` 76 | docker image prune -a -f 77 | sudo -E apt-get -y purge azure-cli ghc* zulu* hhvm llvm* firefox google* dotnet* powershell openjdk* adoptopenjdk* mysql* php* mongodb* dotnet* moby* snapd* android* || true 78 | sudo -E apt-get -qq autoremove --purge 79 | sudo -E apt-get -qq clean 80 | echo "------------------------------- 设置工作目录及时区 -------------------------------" 81 | sudo timedatectl set-timezone "$TZ" 82 | sudo mkdir -p /mnt/workdir 83 | sudo chown $USER:$GROUPS /mnt/workdir 84 | 85 | - name: 克隆源码 86 | working-directory: /mnt/workdir 87 | run: | 88 | df -hT $PWD 89 | git clone $REPO_URL -b ${{ matrix.REPO_BRANCH }} openwrt 90 | ln -sf /mnt/workdir/openwrt $GITHUB_WORKSPACE/openwrt 91 | 92 | - name: 缓存构建动作 93 | uses: klever1988/cachewrtbuild@main 94 | with: 95 | ccache: 'true' 96 | mixkey: ${{ matrix.os }}-${{ matrix.ARCHITECTURE }}-${{ matrix.REPO_BRANCH }} 97 | prefix: ${{ github.workspace }}/openwrt 98 | 99 | - name: 加载自定义 feeds 100 | env: 101 | FEEDS_CONF_PATH: ${{ matrix.ARCHITECTURE }}/${{ env.FEEDS_CONF }} 102 | run: | 103 | [ -e $FEEDS_CONF_PATH ] && mv $FEEDS_CONF_PATH openwrt/$FEEDS_CONF 104 | chmod +x $DIY_P1_SH 105 | cd openwrt 106 | $GITHUB_WORKSPACE/$DIY_P1_SH 107 | 108 | - name: 更新 feeds 109 | run: cd openwrt && ./scripts/feeds update -a 110 | 111 | - name: 安装 feeds 112 | run: cd openwrt && ./scripts/feeds install -a 113 | 114 | - name: 加载自定义配置 115 | env: 116 | CONFIG_FILE_PATH: ${{ matrix.ARCHITECTURE }}/${{ env.CONFIG_FILE }} 117 | run: | 118 | [ -e files ] && mv files openwrt/files 119 | [ -e $CONFIG_FILE_PATH ] && mv $CONFIG_FILE_PATH openwrt/$CONFIG_FILE 120 | chmod +x $DIY_P2_SH 121 | cd openwrt 122 | $GITHUB_WORKSPACE/$DIY_P2_SH 123 | 124 | # - name: SSH 连接到 Actions 125 | # uses: P3TERX/ssh2actions@main 126 | # if: (github.event.inputs.ssh == 'true' && github.event.inputs.ssh != 'false') || contains(github.event.action, 'ssh') 127 | # env: 128 | # TELEGRAM_CHAT_ID: ${{ secrets.TELEGRAM_CHAT_ID }} 129 | # TELEGRAM_BOT_TOKEN: ${{ secrets.TELEGRAM_BOT_TOKEN }} 130 | 131 | - name: 下载软件包 132 | id: package 133 | run: | 134 | cd openwrt 135 | make defconfig 136 | make download -j8 137 | find dl -size -1024c -exec ls -l {} \; 138 | find dl -size -1024c -exec rm -f {} \; 139 | 140 | - name: 编译固件 141 | id: compile 142 | run: | 143 | cd openwrt 144 | echo -e "$(nproc) thread compile" 145 | make -j$(nproc) || make -j1 || make -j1 V=s 146 | echo "FILE_DATE=_$(date +"%Y%m%d%H%M")" >> $GITHUB_ENV 147 | echo "status=success" >> ${GITHUB_OUTPUT} 148 | 149 | - name: 检查磁盘空间 150 | if: (!cancelled()) 151 | run: df -hT 152 | 153 | - name: 上传 bin 文件夹 154 | uses: actions/upload-artifact@main 155 | if: steps.compile.outputs.status == 'success' && env.UPLOAD_BIN_DIR == 'true' 156 | with: 157 | name: OpenWrt_bin${{ env.FILE_DATE }} 158 | path: openwrt/bin 159 | 160 | - name: 整理固件文件 161 | id: organize 162 | if: env.UPLOAD_FIRMWARE == 'true' && !cancelled() 163 | run: | 164 | cd openwrt/bin/targets/*/* 165 | rm -rf packages 166 | echo "FIRMWARE=$PWD" >> $GITHUB_ENV 167 | echo "status=success" >> ${GITHUB_OUTPUT} 168 | 169 | - name: 上传固件目录 170 | uses: actions/upload-artifact@main 171 | if: steps.organize.outputs.status == 'success' && !cancelled() 172 | with: 173 | name: OpenWrt_firmware${{ env.FILE_DATE }} 174 | path: ${{ env.FIRMWARE }} 175 | 176 | - name: 生成发布标签 177 | id: tag 178 | if: steps.compile.outputs.status == 'success' && env.UPLOAD_RELEASE == 'true' && !cancelled() 179 | run: | 180 | echo "release_tag=$(date +"%Y.%m.%d-%H.%M")" >> ${GITHUB_OUTPUT} 181 | touch release.txt 182 | echo " 183 | 💻 架构: ${{ matrix.ARCHITECTURE }} 184 | 185 | 📂 源码: ${{ env.REPO_URL }} 186 | 187 | 🌳 分支: ${{ matrix.REPO_BRANCH }} 188 | 189 | ⏱️ 编译时间: $(date +"%Y年%m月%d日%H时%M分") 190 | 191 | 🌐 管理地址: 192.168.200.1 192 | 193 | 👤 用户名: root 194 | 195 | 🔒 密码: password 196 | 197 | 📒 说明: 单网口设备默认网口为LAN,旁路由模式,需要接入主路由器后进后台查找对应IP地址访问,反之双网口设备默认网口为WAN+LAN,主路由模式。 " >> release.txt 198 | echo "status=success" >> ${GITHUB_OUTPUT} 199 | 200 | - name: 自动发布固件到 Releases 201 | uses: softprops/action-gh-release@v2 202 | if: steps.tag.outputs.status == 'success' && !cancelled() 203 | with: 204 | tag_name: ${{ steps.tag.outputs.release_tag }} 205 | body_path: release.txt 206 | files: ${{ env.FIRMWARE }}/* 207 | 208 | - name: 删除运行记录 209 | uses: xiaomeng9597/delete-workflow-runs@main 210 | with: 211 | retain_days: 1 212 | keep_minimum_runs: 1 213 | token: ${{ env.GITHUB_TOKEN }} 214 | 215 | - name: 删除自动发布的旧固件 216 | uses: dev-drprasad/delete-older-releases@v0.3.3 217 | if: env.UPLOAD_RELEASE == 'true' && !cancelled() 218 | with: 219 | keep_latest: 15 220 | delete_tags: true 221 | -------------------------------------------------------------------------------- /.github/workflows/build-istoreos.yml: -------------------------------------------------------------------------------- 1 | name: Build iStore OS 2 | 3 | on: 4 | repository_dispatch: 5 | workflow_dispatch: 6 | # inputs: 7 | # ssh: 8 | # description: 'SSH connection to Actions' 9 | # required: false 10 | # default: 'false' 11 | schedule: 12 | - cron: 0 16 * * * 13 | 14 | env: 15 | REPO_URL: https://github.com/istoreos/istoreos 16 | # REPO_BRANCH: main 17 | FEEDS_CONF: feeds.conf 18 | CONFIG_FILE: .config 19 | DIY_P1_SH: diy-part1.sh 20 | DIY_P2_SH: diy-part2.sh 21 | UPLOAD_BIN_DIR: true 22 | UPLOAD_FIRMWARE: true 23 | UPLOAD_RELEASE: true 24 | TZ: Asia/Shanghai 25 | GITHUB_TOKEN: ${{ secrets.ACCESS_TOKEN }} 26 | 27 | jobs: 28 | build: 29 | runs-on: ${{ matrix.os }} 30 | strategy: 31 | matrix: 32 | REPO_BRANCH: 33 | # - main 34 | - istoreos-22.03 35 | # - istoreos-23.05 36 | ARCHITECTURE: 37 | - rk35xx 38 | os: 39 | - ubuntu-22.04 40 | 41 | fail-fast: false 42 | 43 | steps: 44 | - name: 准备完成 45 | uses: actions/checkout@main 46 | 47 | - name: 检查服务器配置 48 | run: | 49 | echo "若分配的服务器性能不足,务必及时取消,重新运行!" 50 | echo -e "------------------------------- CPU信息 -------------------------------\n" 51 | echo "CPU物理数量:$(cat /proc/cpuinfo| grep "physical id"| sort| uniq| wc -l)" 52 | echo -e "CPU核心及版本信息: $(cat /proc/cpuinfo | grep name | cut -f2 -d: | uniq -c) \n" 53 | echo -e "------------------------------- 内存信息 -------------------------------\n" 54 | echo "已安装内存详细信息: " 55 | sudo lshw -short -C memory | grep GiB 56 | echo -e "\n" 57 | echo -e "------------------------------- 磁盘信息 -------------------------------\n" 58 | echo -e "磁盘数量: $(ls /dev/sd* | grep -v [1-9] | wc -l) \n" 59 | echo "------------------------------- 磁盘详情 -------------------------------\n" 60 | df -Th 61 | 62 | - name: 初始化编译环境 63 | env: 64 | DEBIAN_FRONTEND: noninteractive 65 | run: | 66 | echo "------------------------------- 更新并安装依赖 -------------------------------" 67 | sudo rm -rf /etc/apt/sources.list.d/* /usr/share/dotnet /etc/mysql /etc/php /usr/local/lib/android /opt/ghc 68 | sudo -E apt-get -qq update 69 | sudo -E apt-get -qq install $(cat $GITHUB_WORKSPACE/depends/${{ matrix.os }}) 70 | wget https://bootstrap.pypa.io/pip/3.6/get-pip.py 71 | sudo python3 get-pip.py 72 | sudo rm -rf get-pip.py 73 | sudo pip install pyelftools 74 | echo "------------------------------- 清理Docker镜像和软件 -------------------------------" 75 | docker rmi `docker images -q` 76 | docker image prune -a -f 77 | sudo -E apt-get -y purge azure-cli ghc* zulu* hhvm llvm* firefox google* dotnet* powershell openjdk* adoptopenjdk* mysql* php* mongodb* dotnet* moby* snapd* android* || true 78 | sudo -E apt-get -qq autoremove --purge 79 | sudo -E apt-get -qq clean 80 | echo "------------------------------- 设置工作目录及时区 -------------------------------" 81 | sudo timedatectl set-timezone "$TZ" 82 | sudo mkdir -p /mnt/workdir 83 | sudo chown $USER:$GROUPS /mnt/workdir 84 | 85 | - name: 克隆源码 86 | working-directory: /mnt/workdir 87 | run: | 88 | df -hT $PWD 89 | git clone $REPO_URL -b ${{ matrix.REPO_BRANCH }} openwrt 90 | ln -sf /mnt/workdir/openwrt $GITHUB_WORKSPACE/openwrt 91 | 92 | - name: 缓存构建动作 93 | uses: klever1988/cachewrtbuild@main 94 | with: 95 | ccache: 'true' 96 | mixkey: ${{ matrix.os }}-${{ matrix.ARCHITECTURE }}-${{ matrix.REPO_BRANCH }} 97 | prefix: ${{ github.workspace }}/openwrt 98 | 99 | - name: 加载自定义 feeds 100 | env: 101 | FEEDS_CONF_PATH: ${{ matrix.ARCHITECTURE }}/${{ env.FEEDS_CONF }} 102 | run: | 103 | [ -e $FEEDS_CONF_PATH ] && mv $FEEDS_CONF_PATH openwrt/$FEEDS_CONF 104 | chmod +x $DIY_P1_SH 105 | cd openwrt 106 | $GITHUB_WORKSPACE/$DIY_P1_SH 107 | 108 | - name: 更新 feeds 109 | run: cd openwrt && ./scripts/feeds update -a 110 | 111 | - name: 安装 feeds 112 | run: cd openwrt && ./scripts/feeds install -a 113 | 114 | - name: 加载自定义配置 115 | env: 116 | CONFIG_FILE_PATH: ${{ matrix.ARCHITECTURE }}/${{ env.CONFIG_FILE }} 117 | run: | 118 | [ -e files ] && mv files openwrt/files 119 | [ -e $CONFIG_FILE_PATH ] && mv $CONFIG_FILE_PATH openwrt/$CONFIG_FILE 120 | chmod +x $DIY_P2_SH 121 | cd openwrt 122 | $GITHUB_WORKSPACE/$DIY_P2_SH 123 | 124 | # - name: SSH 连接到 Actions 125 | # uses: P3TERX/ssh2actions@main 126 | # if: (github.event.inputs.ssh == 'true' && github.event.inputs.ssh != 'false') || contains(github.event.action, 'ssh') 127 | # env: 128 | # TELEGRAM_CHAT_ID: ${{ secrets.TELEGRAM_CHAT_ID }} 129 | # TELEGRAM_BOT_TOKEN: ${{ secrets.TELEGRAM_BOT_TOKEN }} 130 | 131 | - name: 下载软件包 132 | id: package 133 | run: | 134 | cd openwrt 135 | make defconfig 136 | make download -j8 137 | find dl -size -1024c -exec ls -l {} \; 138 | find dl -size -1024c -exec rm -f {} \; 139 | 140 | - name: 编译固件 141 | id: compile 142 | run: | 143 | cd openwrt 144 | echo -e "$(nproc) thread compile" 145 | make -j$(nproc) || make -j1 || make -j1 V=s 146 | echo "FILE_DATE=_$(date +"%Y%m%d%H%M")" >> $GITHUB_ENV 147 | echo "status=success" >> ${GITHUB_OUTPUT} 148 | 149 | - name: 检查磁盘空间 150 | if: (!cancelled()) 151 | run: df -hT 152 | 153 | - name: 上传 bin 文件夹 154 | uses: actions/upload-artifact@main 155 | if: steps.compile.outputs.status == 'success' && env.UPLOAD_BIN_DIR == 'true' 156 | with: 157 | name: OpenWrt_bin${{ env.FILE_DATE }} 158 | path: openwrt/bin 159 | 160 | - name: 整理固件文件 161 | id: organize 162 | if: env.UPLOAD_FIRMWARE == 'true' && !cancelled() 163 | run: | 164 | cd openwrt/bin/targets/*/* 165 | rm -rf packages 166 | echo "FIRMWARE=$PWD" >> $GITHUB_ENV 167 | echo "status=success" >> ${GITHUB_OUTPUT} 168 | 169 | - name: 上传固件目录 170 | uses: actions/upload-artifact@main 171 | if: steps.organize.outputs.status == 'success' && !cancelled() 172 | with: 173 | name: OpenWrt_firmware${{ env.FILE_DATE }} 174 | path: ${{ env.FIRMWARE }} 175 | 176 | - name: 生成发布标签 177 | id: tag 178 | if: steps.compile.outputs.status == 'success' && env.UPLOAD_RELEASE == 'true' && !cancelled() 179 | run: | 180 | echo "release_tag=$(date +"%Y.%m.%d-%H.%M")" >> ${GITHUB_OUTPUT} 181 | touch release.txt 182 | echo " 183 | 💻 架构: ${{ matrix.ARCHITECTURE }} 184 | 185 | 📂 源码: ${{ env.REPO_URL }} 186 | 187 | 🌳 分支: ${{ matrix.REPO_BRANCH }} 188 | 189 | ⏱️ 编译时间: $(date +"%Y年%m月%d日%H时%M分") 190 | 191 | 🌐 管理地址: 192.168.200.1 192 | 193 | 👤 用户名: root 194 | 195 | 🔒 密码: password 196 | 197 | 📒 说明: 单网口设备默认网口为LAN,旁路由模式,需要接入主路由器后进后台查找对应IP地址访问,反之双网口设备默认网口为WAN+LAN,主路由模式。 " >> release.txt 198 | echo "status=success" >> ${GITHUB_OUTPUT} 199 | 200 | - name: 自动发布固件到 Releases 201 | uses: softprops/action-gh-release@v2 202 | if: steps.tag.outputs.status == 'success' && !cancelled() 203 | with: 204 | tag_name: ${{ steps.tag.outputs.release_tag }} 205 | body_path: release.txt 206 | files: ${{ env.FIRMWARE }}/* 207 | 208 | - name: 删除运行记录 209 | uses: xiaomeng9597/delete-workflow-runs@main 210 | with: 211 | retain_days: 1 212 | keep_minimum_runs: 1 213 | token: ${{ env.GITHUB_TOKEN }} 214 | 215 | - name: 删除自动发布的旧固件 216 | uses: dev-drprasad/delete-older-releases@v0.3.3 217 | if: env.UPLOAD_RELEASE == 'true' && !cancelled() 218 | with: 219 | keep_latest: 15 220 | delete_tags: true 221 | -------------------------------------------------------------------------------- /.github/workflows/sync-files.yml: -------------------------------------------------------------------------------- 1 | name: Sync Files 2 | 3 | on: 4 | repository_dispatch: 5 | workflow_dispatch: 6 | schedule: 7 | - cron: 55 15 * * * 8 | 9 | jobs: 10 | sync: 11 | runs-on: ubuntu-latest 12 | steps: 13 | - name: 准备完成 14 | uses: actions/checkout@main 15 | 16 | - name: 下载架构编译配置文件 17 | run: | 18 | mkdir -p ./rk35xx 19 | rm -f ./rk35xx/.config 20 | wget -O ./rk35xx/feeds.conf https://fw0.koolcenter.com/iStoreOS-22.03/station-p2/feeds.conf --no-check-certificate 21 | wget -O ./rk35xx/.config https://fw0.koolcenter.com/iStoreOS-22.03/station-p2/config.buildinfo --no-check-certificate 22 | 23 | FILE_PATH="./rk35xx/.config" 24 | if [ -f "$FILE_PATH" ] && [ -s "$FILE_PATH" ]; then 25 | content=$(cat ${GITHUB_WORKSPACE}/configfiles/config_data.txt) 26 | configdata=$(echo "$content" | sed 's/^[[:space:]]*//; s/[[:space:]]*$//') 27 | sed -i "/CONFIG_TARGET_DEVICE_rockchip_.*=.*/d" ./rk35xx/.config 28 | sed -i "/CONFIG_PACKAGE_dtc.*=.*/d" ./rk35xx/.config 29 | sed -i "/CONFIG_PACKAGE_luci-app-istorex.*=.*/d" ./rk35xx/.config 30 | sed -i "/#\s*CONFIG_TARGET_DEVICE_rockchip_rk35xx_DEVICE_jp_tvbox\s*is\s*not\s*set/d" ./rk35xx/.config 31 | sed -i "/#\s*CONFIG_TARGET_DEVICE_rockchip_rk35xx_DEVICE_panther_x2\s*is\s*not\s*set/d" ./rk35xx/.config 32 | sed -i "/#\s*CONFIG_TARGET_DEVICE_rockchip_rk35xx_DEVICE_dg_nas\s*is\s*not\s*set/d" ./rk35xx/.config 33 | # sed -i "s/CONFIG_PACKAGE_rtl8821ce-firmware=y/CONFIG_PACKAGE_rtl8821ce-firmware=n/" ./rk35xx/.config 34 | sed -i "s/^\(CONFIG_PACKAGE_rtl[0-9a-z-]*firmware\)=y$/\1=n/" ./rk35xx/.config 35 | sed -i "s/CONFIG_PACKAGE_kmod-rtw88-oot=y/CONFIG_PACKAGE_kmod-rtw88-oot=n/" ./rk35xx/.config 36 | sed -i "s/CONFIG_PACKAGE_kmod-rtw89-oot=y/CONFIG_PACKAGE_kmod-rtw89-oot=n/" ./rk35xx/.config 37 | sed -i "s/CONFIG_PACKAGE_swconfig=m/CONFIG_PACKAGE_swconfig=y/" ./rk35xx/.config 38 | sed -i "s/CONFIG_PACKAGE_kmod-swconfig=m/CONFIG_PACKAGE_kmod-swconfig=y/" ./rk35xx/.config 39 | sed -i "s/CONFIG_PACKAGE_kmod-switch-rtl8366-smi=m/CONFIG_PACKAGE_kmod-switch-rtl8366-smi=y/" ./rk35xx/.config 40 | sed -i "s/CONFIG_PACKAGE_kmod-switch-rtl8367b=m/CONFIG_PACKAGE_kmod-switch-rtl8367b=y/" ./rk35xx/.config 41 | echo -e "\\n$configdata" >> ./rk35xx/.config 42 | # 清除.config配置文件里面重复的配置项 43 | configdata2=$(cat ./rk35xx/.config) 44 | echo "$configdata2" | awk '!seen[$0]++' > ./rk35xx/.config 45 | else 46 | echo "不处理数据。" 47 | fi 48 | 49 | mkdir -p ./x86 50 | wget -O ./x86/feeds.conf https://fw0.koolcenter.com/iStoreOS-22.03/x86_64_efi/feeds.conf --no-check-certificate 51 | wget -O ./x86/.config https://fw0.koolcenter.com/iStoreOS-22.03/x86_64_efi/config.buildinfo --no-check-certificate 52 | 53 | - name: 同步配置 54 | uses: peaceiris/actions-gh-pages@v3 55 | with: 56 | personal_token: ${{ secrets.ACCESS_TOKEN }} 57 | publish_branch: main 58 | publish_dir: ./ 59 | user_name: 'GitHub Action' 60 | user_email: 'github-actions[bot]@github.com' 61 | exclude_assets: '' 62 | keep_files: true 63 | commit_message: "Sync files" 64 | 65 | - name: 删除运行记录 66 | uses: xiaomeng9597/delete-workflow-runs@main 67 | with: 68 | retain_days: 1 69 | keep_minimum_runs: 1 70 | token: ${{ secrets.ACCESS_TOKEN }} 71 | -------------------------------------------------------------------------------- /.nojekyll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thxg123/Actions-iStoreOS-RK35XX/fcb8048283a52cabb6cd19bbf2b348148379ff78/.nojekyll -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # iStore OS 固件 | 定制的麻烦自行 fork 修改 2 | 3 | [![iStore使用文档](https://img.shields.io/badge/使用文档-iStore%20OS-brightgreen?style=flat-square)](https://doc.linkease.com/zh/guide/istoreos) [![最新固件下载](https://img.shields.io/github/v/release/xiaomeng9597/Actions-iStoreOS-RK35XX?style=flat-square&label=最新固件下载)](../../releases/latest) 4 | 5 | ![支持设备](https://img.shields.io/badge/支持设备:-blueviolet.svg?style=flat-square) ![H88K](https://img.shields.io/badge/H88K-blue.svg?style=flat-square) ![H66K](https://img.shields.io/badge/H66K-blue.svg?style=flat-square) ![H68K](https://img.shields.io/badge/H68K-blue.svg?style=flat-square) ![H69K](https://img.shields.io/badge/H69K-blue.svg?style=flat-square) ![R5S](https://img.shields.io/badge/R5S-blue.svg?style=flat-square) ![R6S](https://img.shields.io/badge/R6S-blue.svg?style=flat-square) ![R66S](https://img.shields.io/badge/R66S-blue.svg?style=flat-square) ![R68S](https://img.shields.io/badge/R68S-blue.svg?style=flat-square) ![STATION P2](https://img.shields.io/badge/STATION%20P2-blue.svg?style=flat-square) ![T68M](https://img.shields.io/badge/T68M-blue.svg?style=flat-square) ![JIANPIAN TVBOX](https://img.shields.io/badge/JIANPIAN%20TVBOX-blue.svg?style=flat-square) ![PANTHER X2](https://img.shields.io/badge/PANTHER%20X2-blue.svg?style=flat-square) ![DG NAS LITE](https://img.shields.io/badge/DG%20NAS%20LITE-blue.svg?style=flat-square) ![IDO3568 CM4](https://img.shields.io/badge/IDO3568%20CM4-blue.svg?style=flat-square) ![EZPRO Mrkaio M68S](https://img.shields.io/badge/EZPRO%20Mrkaio%20M68S-blue.svg?style=flat-square) ![EZPRO Mrkaio M68S PLUS](https://img.shields.io/badge/EZPRO%20Mrkaio%20M68S%20PLUS-blue.svg?style=flat-square) ![DG TN3568](https://img.shields.io/badge/DG%20TN3568-blue.svg?style=flat-square) ![YIJIAHE JM10](https://img.shields.io/badge/YIJIAHE%20JM10-blue.svg?style=flat-square) 6 | 7 | ## 默认配置 8 | 9 | - IP: `http://192.168.100.1` or `http://iStoreOS.lan/` 10 | - 用户名: `root` 11 | - 密码: `password` 12 | - 如果设备只有一个网口,则此网口就是 `LAN` , 如果大于一个网口, 默认第一个网口是 `WAN` 口, 其它都是 `LAN` 13 | - 如果要修改 `LAN` 口 `IP` , 首页有个内网设置,或者用命令 `quickstart` 修改 14 | - 北京时间每天 `0:00` 定时编译, `Release` 中只保留不同架构的最新版本 15 | - 历史版本在 `Actions` 中选择一个已经运行完成且成功的 `workflow` 在页面底部可以看到 `Artifacts`, `Artifacts` 需要登录 Github 才能下载 16 | - 请把要加入的插件配置项填写在仓库 “configfiles/config_data.txt” 文件里面,假如你直接填写到 “rk35xx/.config” 文件里面绝对会丢你新加的配置项,因为每天会定时执行同步文件工作流会自动更新.config为istoreos官方最新的配置文件。 17 | - 自行定制时需要注意这几点:假如你禁用了 “Sync Files” 工作流的话,那插件配置项就要填写到 “rk35xx/.config” 文件里面才行,反之你没禁用 “Sync Files” 工作流的话,那插件配置项就要填写到 “configfiles/config_data.txt” 文件里面才行。 18 | - 使用此仓库必须设置机密token,Actions云编译固件时需要用到,其他人无法看到的(通常在仓库设置里面,严禁在仓库可视代码中填写,否则后果自负),机密键名为 `ACCESS_TOKEN` 19 | 20 | ## 支持架构 21 | 22 | ### RK33xx 架构 23 | 24 | | 设备 | 包名称 | 25 | | ---------- | ------------------------------------------------------------------------- | 26 | | R2S | istoreos-rockchip-armv8-friendlyarm_nanopi-r2s-squashfs-sysupgrade.img.gz | 27 | | R4S | istoreos-rockchip-armv8-friendlyarm_nanopi-r4s-squashfs-sysupgrade.img.gz | 28 | | R4SE | istoreos-rockchip-armv8-friendlyarm_nanopi-r4se-squashfs-sysupgrade.img.gz | 29 | | ROCK-PI-4A | istoreos-rockchip-armv8-radxa_rock-pi-squashfs-sysupgrade.img.gz | 30 | | ROCKPRO64 | istoreos-rockchip-armv8-pine64_rockpro64-squashfs-sysupgrade.img.gz | 31 | 32 | ### RK35xx 架构 33 | 34 | | 设备 | 包名称 | 35 | | -------------- | ------------------------------------------------------------------------ | 36 | | H66K/H68K/H69K | istoreos-rockchip-rk35xx-hinlink_opc-h6xk-squashfs-combined.img.gz | 37 | | H88K | istoreos-rockchip-rk35xx-hinlink_h88k-squashfs-combined.img.gz | 38 | | NANOPI-R5S | istoreos-rockchip-rk35xx-friendlyarm_nanopi-r5s-squashfs-combined.img.gz | 39 | | NANOPI-R6S | istoreos-rockchip-rk35xx-friendlyarm_nanopi-r6s-squashfs-combined.img.gz | 40 | | R66S/R68S | istoreos-rockchip-rk35xx-fastrhino_r6xs-squashfs-combined.img.gz | 41 | | STATION-P2 | istoreos-rockchip-rk35xx-firefly_station-p2-squashfs-combined.img.gz | 42 | | T68M | istoreos-rockchip-rk35xx-lyt_t68m-squashfs-combined.img.gz | 43 | | JIANPIAN-TVBOX | istoreos-rockchip-rk35xx-jp_tvbox-squashfs-sysupgrade.img.gz | 44 | | PANTHER-X2 | istoreos-rockchip-rk35xx-panther_x2-squashfs-sysupgrade.img.gz | 45 | | DG-NAS-LITE/IDO3568-CM4 | istoreos-rockchip-rk35xx-dg_nas-lite-squashfs-sysupgrade.img.gz | 46 | | EZPRO-Mrkaio-M68S | istoreos-rockchip-rk35xx-ezpro_mrkaio-m68s-squashfs-sysupgrade.img.gz | 47 | | EZPRO-Mrkaio-M68S-PLUS | istoreos-rockchip-rk35xx-ezpro_mrkaio-m68s-plus-squashfs-sysupgrade.img.gz | 48 | | DG-TN3568 | istoreos-rockchip-rk35xx-dg_tn3568-squashfs-sysupgrade.img.gz | 49 | | YIJIAHE-JM10 | istoreos-rockchip-rk35xx-yijiahe_jm10-squashfs-sysupgrade.img.gz | 50 | 51 | ### x86 架构 52 | 53 | | 启动 | 包名称 | 54 | | ---------- | --------------------------------------------------- | 55 | | X86-64 | istoreos-x86-64-generic-squashfs-combined.img.gz | 56 | | X86-64-EFI | storeos-x86-64-generic-squashfs-combined-efi.img.gz | 57 | 58 | ## 鸣谢 59 | 60 | - [istoreos](https://github.com/istoreos/istoreos) 61 | - [P3TERX/Actions-OpenWrt](https://github.com/P3TERX/Actions-OpenWrt) 62 | - [Microsoft Azure](https://azure.microsoft.com) 63 | - [GitHub Actions](https://github.com/features/actions) 64 | - [OpenWrt](https://github.com/openwrt/openwrt) 65 | - [Lean's OpenWrt](https://github.com/coolsnowwolf/lede) 66 | - [tmate](https://github.com/tmate-io/tmate) 67 | - [mxschmitt/action-tmate](https://github.com/mxschmitt/action-tmate) 68 | - [csexton/debugger-action](https://github.com/csexton/debugger-action) 69 | - [Cowtransfer](https://cowtransfer.com) 70 | - [WeTransfer](https://wetransfer.com/) 71 | - [Mikubill/transfer](https://github.com/Mikubill/transfer) 72 | - [softprops/action-gh-release](https://github.com/softprops/action-gh-release) 73 | - [ActionsRML/delete-workflow-runs](https://github.com/ActionsRML/delete-workflow-runs) 74 | - [dev-drprasad/delete-older-releases](https://github.com/dev-drprasad/delete-older-releases) 75 | - [peter-evans/repository-dispatch](https://github.com/peter-evans/repository-dispatch) 76 | - [draco-china/istoreos-actions](https://github.com/draco-china/istoreos-actions) 77 | 78 | ## 捐赠 79 | - 如果你觉得此系统好用的话,请我喝一杯82年的凉白开吧,感谢! 80 | 81 | -支付宝- 82 | # 支付宝收款码 83 | 84 | -微信- 85 | # 微信收款码 86 | -------------------------------------------------------------------------------- /configfiles/02_network: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | # 3 | # Copyright (C) 2013-2015 OpenWrt.org 4 | # 5 | 6 | . /lib/functions/uci-defaults.sh 7 | . /lib/functions/system.sh 8 | 9 | rockchip_setup_interfaces() 10 | { 11 | local board="$1" 12 | 13 | case "$board" in 14 | armsom,sige1-v1|\ 15 | armsom,sige7-v1|\ 16 | easepi,ars4|\ 17 | friendlyelec,nanopi-r3s|\ 18 | friendlyelec,nanopi-r5c|\ 19 | friendlyelec,nanopi-r6c|\ 20 | fastrhino,r66s|\ 21 | hinlink,h88k-v2|\ 22 | hinlink,h88k|\ 23 | hinlink,opc-h66k|\ 24 | hinlink,hnas|\ 25 | jsy,h1|\ 26 | nlnet,xgp|\ 27 | radxa,e52c|\ 28 | firefly,rk3568-roc-pc) 29 | ucidef_set_interfaces_lan_wan 'eth1' 'eth0' 30 | ;; 31 | hinlink,h88k-v3|\ 32 | hinlink,opc-h69k|\ 33 | friendlyelec,nanopi-r5s|friendlyelec,nanopi-r5s-c1) 34 | ucidef_set_interfaces_lan_wan "eth1 eth2" "eth0" 35 | ;; 36 | easepi,r1|easepi,r1-lite|\ 37 | roceos,k40pro|\ 38 | lyt,t68m|\ 39 | lyt,t88m|\ 40 | fastrhino,r68s|\ 41 | hinlink,opc-h68k) 42 | ucidef_set_interfaces_lan_wan 'eth1 eth2 eth3' 'eth0' 43 | ;; 44 | roceos,k50s) 45 | ucidef_set_interfaces_lan_wan 'eth1 eth2 eth3 eth4' 'eth0' 46 | ;; 47 | friendlyelec,nanopi-r6s) 48 | ucidef_set_interfaces_lan_wan 'eth2 eth0' 'eth1' 49 | ;; 50 | yijiahe,jm10) 51 | ucidef_set_interfaces_lan_wan 'eth0 eth2 eth3 eth4 eth5 eth6 eth7 eth8' 'eth1' 52 | ;; 53 | ezpro,mrkaio-m68s|\ 54 | ezpro,mrkaio-m68s-plus|\ 55 | radxa,e20c|\ 56 | mangopi,m28k|\ 57 | hlink,h28k) 58 | ucidef_set_interfaces_lan_wan 'eth0' 'eth1' 59 | ;; 60 | inspur,ihec301) 61 | ucidef_set_interface_wan "eth0" 62 | ucidef_add_switch "switch0" \ 63 | "0:lan" "1:lan" "2:lan" "3:lan" "7t@eth1" 64 | ;; 65 | nsy,g68-plus|\ 66 | bdy,g18-pro) 67 | ucidef_add_switch "switch0" \ 68 | "0:lan:3" "1:lan:2" "2:lan:1" "3:lan:0" "4:wan" "7t@eth0" 69 | ;; 70 | nsy,g16-plus) 71 | ucidef_add_switch "switch0" \ 72 | "1:lan:2" "2:lan:1" "3:lan:0" "0:wan" "7t@eth0" 73 | ;; 74 | cyber,cyber3588-aib) 75 | ucidef_set_interfaces_lan_wan "eth0" "eth1" 76 | ;; 77 | linkfog,ala2) 78 | ucidef_add_switch "switch0" \ 79 | "0:wan" "1:lan" "2:lan" "3:lan" "4:lan" "7t@eth0" 80 | ;; 81 | radxa,e54c) 82 | ucidef_add_switch "switch0" \ 83 | "3:wan" "2:lan" "1:lan" "0:lan" "6t@eth0" 84 | ;; 85 | *) 86 | ucidef_set_interface_lan 'eth0' 'dhcp' 87 | ;; 88 | esac 89 | } 90 | 91 | generate_mac_from_mmc() 92 | { 93 | local sd_hash 94 | local bootdisk=$( 95 | . /lib/upgrade/common.sh 96 | export_bootdevice && export_partdevice bootdisk 0 && echo $bootdisk 97 | ) 98 | if echo "$bootdisk" | grep -q '^mmcblk' && [ -f "/sys/class/block/$bootdisk/device/cid" ]; then 99 | sd_hash=$(sha256sum /sys/class/block/$bootdisk/device/cid | head -n 1) 100 | else 101 | sd_hash=$(sha256sum /sys/class/block/mmcblk*/device/cid | head -n 1) 102 | fi 103 | local mac_base=$(macaddr_canonicalize "$(echo "${sd_hash}" | dd bs=1 count=12 2>/dev/null)") 104 | echo "$(macaddr_unsetbit_mc "$(macaddr_setbit_la "${mac_base}")")" 105 | } 106 | 107 | rockchip_setup_macs() 108 | { 109 | local board="$1" 110 | local lan_mac="" 111 | local wan_mac="" 112 | 113 | case "$board" in 114 | armsom,sige7-v1|\ 115 | easepi,ars4|\ 116 | easepi,r1|easepi,r1-lite|\ 117 | ezpro,mrkaio-m68s|\ 118 | ezpro,mrkaio-m68s-plus|\ 119 | nsy,g68-plus|\ 120 | nsy,g16-plus|\ 121 | bdy,g18-pro|\ 122 | firefly,rk3568-roc-pc|\ 123 | friendlyelec,nanopi-r3s|\ 124 | friendlyelec,nanopi-r5s|\ 125 | friendlyelec,nanopi-r5s-c1|\ 126 | friendlyelec,nanopi-r5c|\ 127 | friendlyelec,nanopi-r6s|\ 128 | friendlyelec,nanopi-r6c|\ 129 | hlink,h28k|\ 130 | hinlink,h88k-*|\ 131 | hinlink,h88k|\ 132 | hinlink,opc-h69k|\ 133 | hinlink,opc-h68k|\ 134 | hinlink,opc-h66k|\ 135 | hinlink,hnas|\ 136 | inspur,ihec301|\ 137 | jsy,h1|\ 138 | yyy,h1|\ 139 | idiskk,h1|\ 140 | jp,tvbox|\ 141 | panther,x2|\ 142 | dg,nas-lite|\ 143 | dg,tn3568|\ 144 | linkfog,ala2|\ 145 | lyt,t68m|\ 146 | lyt,t88m|\ 147 | yijiahe,jm10|\ 148 | mangopi,m28k|\ 149 | nlnet,xgp|\ 150 | radxa,e20c|\ 151 | radxa,e52c|\ 152 | radxa,e54c|\ 153 | roceos,k40pro|\ 154 | roceos,k50s|\ 155 | fastrhino,r66s|\ 156 | fastrhino,r68s) 157 | wan_mac=$(generate_mac_from_mmc) 158 | lan_mac=$(macaddr_add "$wan_mac" 1) 159 | ;; 160 | *) 161 | lan_mac=$(generate_mac_from_mmc) 162 | ;; 163 | esac 164 | 165 | [ -n "$wan_mac" ] && ucidef_set_interface_macaddr "wan" $wan_mac 166 | [ -n "$lan_mac" ] && ucidef_set_interface_macaddr "lan" $lan_mac 167 | } 168 | 169 | generate_wwan_uci() 170 | { 171 | local device="$1" 172 | ucidef_set_interface "wwan" device "$device" protocol "modemmanager" metric "100" 173 | [ -f /rom/note -o -f /etc/config/network ] || uci get firewall.@zone[1].network | grep -qFw wwan || uci add_list firewall.@zone[1].network='wwan' 174 | } 175 | 176 | rockchip_setup_wwan() 177 | { 178 | local board="$1" 179 | 180 | case "$board" in 181 | hinlink,opc-h69k) 182 | generate_wwan_uci "/sys/devices/platform/usbhost/fd000000.dwc3/xhci-hcd.0.auto/usb4/4-1" 183 | ;; 184 | hinlink,h88k-*|\ 185 | hinlink,h88k) 186 | generate_wwan_uci "/sys/devices/platform/usbdrd3_1/fc400000.usb/xhci-hcd.4.auto/usb6/6-1/6-1.1" 187 | ;; 188 | esac 189 | } 190 | 191 | board_config_update 192 | board=$(board_name) 193 | rockchip_setup_interfaces $board 194 | rockchip_setup_macs $board 195 | rockchip_setup_wwan $board 196 | board_config_flush 197 | 198 | exit 0 199 | -------------------------------------------------------------------------------- /configfiles/WirelessDriver/mt7916_eeprom.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thxg123/Actions-iStoreOS-RK35XX/fcb8048283a52cabb6cd19bbf2b348148379ff78/configfiles/WirelessDriver/mt7916_eeprom.bin -------------------------------------------------------------------------------- /configfiles/adc-keys.txt: -------------------------------------------------------------------------------- 1 | adc-keys { 2 | compatible = "adc-keys"; 3 | io-channels = <&saradc 0>; 4 | io-channel-names = "buttons"; 5 | keyup-threshold-microvolt = <1800000>; 6 | u-boot,dm-spl; 7 | status = "okay"; 8 | 9 | volumeup-key { 10 | u-boot,dm-spl; 11 | linux,code = ; 12 | label = "volume up"; 13 | press-threshold-microvolt = <9>; 14 | }; 15 | }; 16 | -------------------------------------------------------------------------------- /configfiles/config_data.txt: -------------------------------------------------------------------------------- 1 | # CONFIG_TARGET_DEVICE_rockchip_rk35xx_DEVICE_mangopi_m28k is not set 2 | # CONFIG_TARGET_DEVICE_rockchip_rk35xx_DEVICE_nlnet_xgp is not set 3 | # CONFIG_TARGET_DEVICE_rockchip_rk35xx_DEVICE_armsom_sige1 is not set 4 | 5 | CONFIG_TARGET_DEVICE_rockchip_rk35xx_DEVICE_easepi_ars4=y 6 | CONFIG_TARGET_DEVICE_rockchip_rk35xx_DEVICE_fastrhino_r6xs=y 7 | CONFIG_TARGET_DEVICE_rockchip_rk35xx_DEVICE_firefly_station-p2=y 8 | CONFIG_TARGET_DEVICE_rockchip_rk35xx_DEVICE_friendlyarm_nanopi-r5s=y 9 | CONFIG_TARGET_DEVICE_rockchip_rk35xx_DEVICE_friendlyarm_nanopi-r6s=y 10 | CONFIG_TARGET_DEVICE_rockchip_rk35xx_DEVICE_hinlink_h88k=y 11 | CONFIG_TARGET_DEVICE_rockchip_rk35xx_DEVICE_hinlink_opc-h6xk=y 12 | CONFIG_TARGET_DEVICE_rockchip_rk35xx_DEVICE_hlink_h28k=y 13 | CONFIG_TARGET_DEVICE_rockchip_rk35xx_DEVICE_idiskk_h1=y 14 | CONFIG_TARGET_DEVICE_rockchip_rk35xx_DEVICE_lyt_t68m=y 15 | CONFIG_TARGET_DEVICE_rockchip_rk35xx_DEVICE_yyy_h1=y 16 | CONFIG_TARGET_DEVICE_rockchip_rk35xx_DEVICE_jp_tvbox=y 17 | CONFIG_TARGET_DEVICE_rockchip_rk35xx_DEVICE_panther_x2=y 18 | CONFIG_TARGET_DEVICE_rockchip_rk35xx_DEVICE_dg_nas-lite=y 19 | CONFIG_TARGET_DEVICE_rockchip_rk35xx_DEVICE_ezpro_mrkaio-m68s=y 20 | CONFIG_TARGET_DEVICE_rockchip_rk35xx_DEVICE_ezpro_mrkaio-m68s-plus=y 21 | CONFIG_TARGET_DEVICE_rockchip_rk35xx_DEVICE_dg_tn3568=y 22 | CONFIG_TARGET_DEVICE_rockchip_rk35xx_DEVICE_yijiahe_jm10=y 23 | CONFIG_TARGET_DEVICE_rockchip_rk35xx_DEVICE_cyber3588_aib=y 24 | CONFIG_TARGET_DEVICE_rockchip_rk35xx_DEVICE_nsy_g68-plus=y 25 | CONFIG_TARGET_DEVICE_rockchip_rk35xx_DEVICE_nsy_g16-plus=y 26 | CONFIG_TARGET_DEVICE_rockchip_rk35xx_DEVICE_bdy_g18-pro=y 27 | 28 | CONFIG_PACKAGE_brcmfmac-firmware-panther-x2=y 29 | CONFIG_PACKAGE_brcmfmac-firmware-jp-tvbox=y 30 | CONFIG_PACKAGE_kmod-nft-tproxy=y 31 | 32 | CONFIG_PACKAGE_kmod-usb-printer=y 33 | CONFIG_PACKAGE_luci-app-usb-printer=y 34 | CONFIG_PACKAGE_luci-i18n-usb-printer-zh-cn=y 35 | 36 | CONFIG_PACKAGE_hd-idle=y 37 | CONFIG_PACKAGE_luci-app-hd-idle=y 38 | CONFIG_PACKAGE_luci-i18n-hd-idle-zh-cn=y 39 | 40 | CONFIG_PACKAGE_luci-app-filebrowser=y 41 | CONFIG_PACKAGE_luci-i18n-filebrowser-zh-cn=y 42 | 43 | CONFIG_PACKAGE_sendat=y 44 | CONFIG_PACKAGE_sms-tool=y 45 | CONFIG_PACKAGE_meig-cm=y 46 | CONFIG_PACKAGE_quectel-CM-5G=y 47 | CONFIG_PACKAGE_kmod-pcie_mhi=y 48 | CONFIG_PACKAGE_kmod-gobinet=y 49 | CONFIG_PACKAGE_kmod-qmi_wwan_q=y 50 | CONFIG_PACKAGE_kmod-qmi_wwan_m=y 51 | CONFIG_PACKAGE_luci-app-modem=y 52 | CONFIG_PACKAGE_luci-i18n-modem-zh-cn=y 53 | CONFIG_PACKAGE_luci-app-sms-tool=y 54 | 55 | CONFIG_PACKAGE_nginx=y 56 | CONFIG_PACKAGE_nginx-ssl=y 57 | CONFIG_PACKAGE_nginx-ssl-util=y 58 | CONFIG_PACKAGE_nginx-util=y 59 | CONFIG_PACKAGE_nginx-mod-luci=y 60 | CONFIG_PACKAGE_luci-nginx=y 61 | 62 | CONFIG_PACKAGE_jq=y 63 | CONFIG_PACKAGE_ntpdate=y 64 | CONFIG_PACKAGE_hdparm=y 65 | CONFIG_PACKAGE_stress=y 66 | CONFIG_PACKAGE_coreutils=y 67 | CONFIG_PACKAGE_coreutils-base64=y 68 | CONFIG_PACKAGE_coreutils-stat=y 69 | CONFIG_PACKAGE_coreutils-stty=y 70 | CONFIG_PACKAGE_coreutils-nohup=y 71 | CONFIG_PACKAGE_luci-app-store=y 72 | CONFIG_PACKAGE_quickstart=y 73 | CONFIG_PACKAGE_luci-app-quickstart=y 74 | CONFIG_PACKAGE_luci-i18n-quickstart-zh-cn=y 75 | CONFIG_PACKAGE_swconfig=y 76 | CONFIG_PACKAGE_luci-app-eqosplus=y 77 | CONFIG_PACKAGE_luci-i18n-eqosplus-zh-cn=y 78 | -------------------------------------------------------------------------------- /configfiles/coremark/coremark: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thxg123/Actions-iStoreOS-RK35XX/fcb8048283a52cabb6cd19bbf2b348148379ff78/configfiles/coremark/coremark -------------------------------------------------------------------------------- /configfiles/coremark/coremark.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | LOG=/etc/bench.log 4 | echo "
" > $LOG 5 | 6 | GOV="/sys/devices/system/cpu/cpufreq/policy0/scaling_governor" 7 | if [ -f "$GOV" ];then 8 | CURRENT_GOVERNOR=$(cat $GOV) 9 | GOV_FLAG=1 10 | else 11 | GOV_FLAG=0 12 | fi 13 | 14 | trap "echo killed;test $GOV_FLAG -eq 1 && echo ${CURRENT_GOVERNOR} > ${GOV} 2>/dev/null;echo '
' >> $LOG;rm -f /tmp/*.score;exit" 1 2 3 9 15 15 | 16 | GOV_HOME='/sys/devices/system/cpu/cpufreq/' 17 | govs=() 18 | if [ $GOV_FLAG -eq 1 ];then 19 | POLICIES=$(cd $GOV_HOME && ls -d policy*) 20 | i=1 21 | for POLICY in $POLICIES;do 22 | CUR_GOV="${GOV_HOME}/${POLICY}/scaling_governor" 23 | govs[$i]=$(cat $CUR_GOV) 24 | echo "performance" > ${CUR_GOV} 2>/dev/null 25 | i=$((i+1)) 26 | done 27 | fi 28 | 29 | echo "testing coremark ... " 30 | sleep 1 31 | COREMARK=$(/bin/coremark | tail -n 1 | awk '{print $4}') 32 | # 分数取整 33 | # COREMARK=${COREMARK%.*} 34 | echo "CPU CoreMark : $COREMARK" 35 | echo "CPU CoreMark$COREMARK" >> $LOG 36 | 37 | if [ -x /usr/bin/openssl ];then 38 | CORES=$(grep processor /proc/cpuinfo | wc -l) 39 | 40 | PROJS="aes-128-gcm aes-256-gcm chacha20-poly1305" 41 | for P in $PROJS;do 42 | echo "testing $P ..." 43 | sleep 1 44 | /usr/bin/openssl speed -multi $CORES -evp $P 1>/tmp/${P}.score 2>/dev/null || echo "NA" >/tmp/${P}.score 45 | S=$(tail -n 1 /tmp/${P}.score | awk '{print $5}') 46 | echo "${P}(1K) : ${S}" 47 | echo "${P}(1K)$S" >> $LOG 48 | rm -f /tmp/${P}.score 49 | done 50 | 51 | fi 52 | 53 | echo "" >> $LOG 54 | 55 | if [ $GOV_FLAG -eq 1 ];then 56 | i=1 57 | for POLICY in $POLICIES;do 58 | CUR_GOV="${GOV_HOME}/${POLICY}/scaling_governor" 59 | echo "${govs[$i]}" > ${CUR_GOV} 2>/dev/null 60 | i=$((i+1)) 61 | done 62 | fi 63 | 64 | if [ -f "$LOG" ]; then 65 | sed -i '/coremark/d' /etc/crontabs/root 66 | crontab /etc/crontabs/root 67 | fi 68 | -------------------------------------------------------------------------------- /configfiles/etc/config/nginx: -------------------------------------------------------------------------------- 1 | config main global 2 | option uci_enable 'true' 3 | 4 | config server '_lan' 5 | list listen '443 ssl default_server' 6 | list listen '[::]:443 ssl default_server' 7 | option server_name '_lan' 8 | list include 'restrict_locally' 9 | list include 'conf.d/*.locations' 10 | option uci_manage_ssl 'self-signed' 11 | option ssl_certificate '/etc/nginx/conf.d/_lan.crt' 12 | option ssl_certificate_key '/etc/nginx/conf.d/_lan.key' 13 | option ssl_session_cache 'shared:SSL:32k' 14 | option ssl_session_timeout '64m' 15 | option access_log 'off; # logd openwrt' 16 | 17 | config server '_lan80' 18 | list listen '80' 19 | list listen '[::]:80' 20 | option server_name '_lan80' 21 | list include 'restrict_locally' 22 | list include 'conf.d/*.locations' 23 | option access_log 'off; # logd openwrt' 24 | -------------------------------------------------------------------------------- /configfiles/etc/nginx/uci.conf.template: -------------------------------------------------------------------------------- 1 | # Consider using UCI or creating files in /etc/nginx/conf.d/ for configuration. 2 | # Parsing UCI configuration is skipped if uci set nginx.global.uci_enable=false 3 | # For details see: https://openwrt.org/docs/guide-user/services/webserver/nginx 4 | 5 | worker_processes auto; 6 | 7 | user root; 8 | 9 | events {} 10 | 11 | http { 12 | access_log off; 13 | log_format openwrt 14 | '$request_method $scheme://$host$request_uri => $status' 15 | ' (${body_bytes_sent}B in ${request_time}s) <- $http_referer'; 16 | 17 | include mime.types; 18 | default_type application/octet-stream; 19 | sendfile on; 20 | 21 | proxy_request_buffering off; 22 | proxy_http_version 1.1; 23 | client_max_body_size 0; 24 | large_client_header_buffers 4 32k; 25 | 26 | gzip on; 27 | gzip_vary on; 28 | gzip_proxied any; 29 | 30 | root /www; 31 | 32 | #UCI_HTTP_CONFIG 33 | include conf.d/*.conf; 34 | } 35 | -------------------------------------------------------------------------------- /configfiles/firmware/jp-tvbox-firmware/Makefile: -------------------------------------------------------------------------------- 1 | include $(TOPDIR)/rules.mk 2 | 3 | PKG_NAME:=brcmfmac-firmware-jp-tvbox 4 | 5 | PKG_SOURCE_URL:=https://github.com/xiaomeng9597/brcmfmac_sdio-firmware.git 6 | PKG_SOURCE_PROTO:=git 7 | PKG_SOURCE_VERSION:=72b01a367f7e718250de12e7c0d5d335ab9866a8 8 | PKG_MIRROR_HASH:=skip 9 | 10 | include $(INCLUDE_DIR)/package.mk 11 | 12 | define Package/brcmfmac-firmware-jp-tvbox 13 | SECTION:=firmware 14 | CATEGORY:=Firmware 15 | URL:=https://github.com/xiaomeng9597/brcmfmac_sdio-firmware.git 16 | TITLE:=JP TVBOX BCM4339 Firmware 17 | endef 18 | 19 | define Build/Compile 20 | true 21 | endef 22 | 23 | define Package/brcmfmac-firmware-jp-tvbox/install 24 | $(INSTALL_DIR) $(1)/lib/firmware/brcm 25 | $(INSTALL_DATA) \ 26 | $(PKG_BUILD_DIR)/BCM4339A0.hcd \ 27 | $(1)/lib/firmware/brcm/BCM4339A0.hcd 28 | $(INSTALL_DATA) \ 29 | $(PKG_BUILD_DIR)/brcmfmac4339-sdio.bin \ 30 | $(1)/lib/firmware/brcm/brcmfmac4339-sdio.bin 31 | $(INSTALL_DATA) \ 32 | $(PKG_BUILD_DIR)/brcmfmac4339-sdio.txt \ 33 | $(1)/lib/firmware/brcm/brcmfmac4339-sdio.txt 34 | $(INSTALL_DATA) \ 35 | $(PKG_BUILD_DIR)/brcmfmac4339-sdio.bin \ 36 | $(1)/lib/firmware/brcm/brcmfmac4339-sdio.jp,tvbox.bin 37 | $(INSTALL_DATA) \ 38 | $(PKG_BUILD_DIR)/brcmfmac4339-sdio.txt \ 39 | $(1)/lib/firmware/brcm/brcmfmac4339-sdio.jp,tvbox.txt 40 | endef 41 | 42 | $(eval $(call BuildPackage,brcmfmac-firmware-jp-tvbox)) 43 | -------------------------------------------------------------------------------- /configfiles/firmware/panther-x2-firmware/Makefile: -------------------------------------------------------------------------------- 1 | include $(TOPDIR)/rules.mk 2 | 3 | PKG_NAME:=brcmfmac-firmware-panther-x2 4 | 5 | PKG_SOURCE_URL:=https://github.com/xiaomeng9597/brcmfmac_sdio-firmware.git 6 | PKG_SOURCE_PROTO:=git 7 | PKG_SOURCE_VERSION:=72b01a367f7e718250de12e7c0d5d335ab9866a8 8 | PKG_MIRROR_HASH:=skip 9 | 10 | include $(INCLUDE_DIR)/package.mk 11 | 12 | define Package/brcmfmac-firmware-panther-x2 13 | SECTION:=firmware 14 | CATEGORY:=Firmware 15 | URL:=https://github.com/xiaomeng9597/brcmfmac_sdio-firmware.git 16 | TITLE:=Panther X2 BCM43430 Firmware 17 | endef 18 | 19 | define Build/Compile 20 | true 21 | endef 22 | 23 | define Package/brcmfmac-firmware-panther-x2/install 24 | $(INSTALL_DIR) $(1)/lib/firmware/brcm 25 | $(INSTALL_DATA) \ 26 | $(PKG_BUILD_DIR)/BCM43430B0.hcd \ 27 | $(1)/lib/firmware/brcm/BCM43430B0.hcd 28 | $(INSTALL_DATA) \ 29 | $(PKG_BUILD_DIR)/brcmfmac43430-sdio.bin \ 30 | $(1)/lib/firmware/brcm/brcmfmac43430-sdio.bin 31 | $(INSTALL_DATA) \ 32 | $(PKG_BUILD_DIR)/brcmfmac43430-sdio.txt \ 33 | $(1)/lib/firmware/brcm/brcmfmac43430-sdio.txt 34 | $(INSTALL_DATA) \ 35 | $(PKG_BUILD_DIR)/brcmfmac43430-sdio.clm_blob \ 36 | $(1)/lib/firmware/brcm/brcmfmac43430-sdio.clm_blob 37 | $(INSTALL_DATA) \ 38 | $(PKG_BUILD_DIR)/brcmfmac43430-sdio.bin \ 39 | $(1)/lib/firmware/brcm/brcmfmac43430-sdio.panther,x2.bin 40 | $(INSTALL_DATA) \ 41 | $(PKG_BUILD_DIR)/brcmfmac43430-sdio.txt \ 42 | $(1)/lib/firmware/brcm/brcmfmac43430-sdio.panther,x2.txt 43 | $(INSTALL_DATA) \ 44 | $(PKG_BUILD_DIR)/brcmfmac43430-sdio.clm_blob \ 45 | $(1)/lib/firmware/brcm/brcmfmac43430-sdio.panther,x2.clm_blob 46 | endef 47 | 48 | $(eval $(call BuildPackage,brcmfmac-firmware-panther-x2)) 49 | -------------------------------------------------------------------------------- /configfiles/httpubus: -------------------------------------------------------------------------------- 1 | #!/bin/sh /etc/rc.common 2 | 3 | START=99 4 | STOP=11 5 | 6 | board_name() { 7 | [ -e /tmp/sysinfo/board_name ] && cat /tmp/sysinfo/board_name || echo "generic" 8 | } 9 | 10 | check_model() { 11 | local board=$(board_name) 12 | case "$board" in 13 | jp,tvbox|\ 14 | panther,x2) 15 | /bin/ubus-examine.sh > /dev/null 2>&1 & 16 | ;; 17 | *) 18 | return 1 19 | ;; 20 | esac 21 | } 22 | 23 | start() { 24 | check_model 25 | } 26 | 27 | stop() { 28 | local board=$(board_name) 29 | case "$board" in 30 | jp,tvbox|\ 31 | panther,x2) 32 | local pidcount=$(pgrep "ubus-examine" | wc -l) 33 | if [ "$pidcount" -eq 0 ]; then 34 | pidcount=$(pgrep "ubus-examine.sh" | wc -l) 35 | fi 36 | if [ "$pidcount" -gt 0 ]; then 37 | killall -9 ubus-examine ubus-examine.sh 2>/dev/null 38 | fi 39 | ;; 40 | *) 41 | return 1 42 | ;; 43 | esac 44 | } 45 | 46 | restart() { 47 | stop 48 | sleep 1 49 | start 50 | } 51 | -------------------------------------------------------------------------------- /configfiles/init.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | # based on https://github.com/6ang996/istoreos-rk356x/blob/rk356x/target/linux/rk356x/armv8/base-files/etc/init.d/rename_iface 3 | 4 | . /lib/functions.sh 5 | 6 | NPROCS="$(grep -c "^processor.*:" /proc/cpuinfo)" 7 | PROC_MASK="$(( (1 << $NPROCS) - 1 ))" 8 | PROC_MASK="$(printf %x "$PROC_MASK")" 9 | 10 | rename_iface() { 11 | ip link set $1 down && ip link set $1 name $2 12 | } 13 | 14 | get_iface_device() { 15 | basename $(readlink /sys/class/net/$1/device) 16 | } 17 | 18 | set_iface_cpumask() { 19 | local core_mask="$1" 20 | local interface="$2" 21 | local device="$3" 22 | local irq 23 | local seconds 24 | local mq 25 | local q 26 | local queue_mask=$(( 0x${PROC_MASK} ^ 0x${core_mask} )) 27 | queue_mask="$(printf %x "$queue_mask")" 28 | local mq_mask="$4" 29 | 30 | [[ -d "/sys/class/net/${interface}" ]] || return 1 31 | 32 | [[ -n "${device}" && "${device}" = "${interface}-*" ]] && mq=1 33 | 34 | [[ -z "${mq}" || "${device}" = "${interface}-0" ]] && ip link set dev "${interface}" up 35 | 36 | [[ -z "${device}" ]] && device="$interface" 37 | 38 | for seconds in $(seq 0 1); do 39 | [[ ${seconds} = 0 ]] || sleep 1 40 | irq=$(grep -m1 " ${device}\$" /proc/interrupts | sed -n -e 's/^ *\([^ :]\+\):.*$/\1/p') 41 | if [[ -n "${irq}" ]]; then 42 | echo "${core_mask}" > /proc/irq/${irq}/smp_affinity 43 | if [[ -z "${mq}" ]]; then 44 | echo "${queue_mask}" > /sys/class/net/$interface/queues/rx-0/rps_cpus 45 | echo "${queue_mask}" > /sys/class/net/$interface/queues/tx-0/xps_cpus 46 | elif [[ "${device}" = "${interface}-0" ]]; then 47 | [[ -n "$mq_mask" ]] || mq_mask="${queue_mask}" 48 | for q in /sys/class/net/$interface/queues/rx-*; do 49 | echo "$mq_mask" > "$q/rps_cpus" 50 | done 51 | # for q in /sys/class/net/$interface/queues/tx-*; do 52 | # echo "$mq_mask" > "$q/xps_cpus" 53 | # done 54 | fi 55 | return 0 56 | elif [[ -n "${mq}" && "${device}" != "${interface}-0" ]]; then 57 | break 58 | fi 59 | done 60 | return 1 61 | } 62 | 63 | board_fixup_iface_name() { 64 | local device 65 | case $(board_name) in 66 | friendlyelec,nanopi-r5c|\ 67 | fastrhino,r66s) 68 | device="$(get_iface_device eth0)" 69 | if [[ "$device" = "0001:11:00.0" ]]; then 70 | rename_iface eth0 lan1 71 | rename_iface eth1 eth0 72 | rename_iface lan1 eth1 73 | fi 74 | ;; 75 | easepi,ars4|\ 76 | jsy,h1|\ 77 | hinlink,hnas|\ 78 | hinlink,opc-h66k) 79 | device="$(get_iface_device eth1)" 80 | if [[ "$device" = "0001:11:00.0" ]]; then 81 | rename_iface eth0 lan1 82 | rename_iface eth1 eth0 83 | rename_iface lan1 eth1 84 | fi 85 | ;; 86 | lyt,t68m|\ 87 | fastrhino,r68s) 88 | device="$(get_iface_device eth0)" 89 | if [[ "$device" = "fe010000.ethernet" ]]; then 90 | rename_iface eth0 wan 91 | rename_iface eth1 eth0 92 | rename_iface wan eth1 93 | fi 94 | device="$(get_iface_device eth3)" 95 | if [[ "$device" = "0002:21:00.0" ]]; then 96 | rename_iface eth2 lan3 97 | rename_iface eth3 eth2 98 | rename_iface lan3 eth3 99 | fi 100 | ;; 101 | firefly,rk3568-roc-pc) 102 | device="$(get_iface_device eth0)" 103 | if [[ "$device" = "fe010000.ethernet" ]]; then 104 | rename_iface eth0 wan 105 | rename_iface eth1 eth0 106 | rename_iface wan eth1 107 | fi 108 | ;; 109 | friendlyelec,nanopi-r5s|friendlyelec,nanopi-r5s-c1) 110 | device="$(get_iface_device eth2)" 111 | # r5s lan1 is under pcie2x1 112 | if [[ "$device" = "0000:01:00.0" ]]; then 113 | rename_iface eth1 lan2 114 | rename_iface eth2 eth1 115 | rename_iface lan2 eth2 116 | fi 117 | ;; 118 | roceos,k40pro|\ 119 | hinlink,opc-h68k) 120 | device="$(get_iface_device eth1)" 121 | if [[ "$device" = "fe010000.ethernet" ]]; then 122 | rename_iface eth0 wan 123 | rename_iface eth1 eth0 124 | rename_iface wan eth1 125 | fi 126 | device="$(get_iface_device eth3)" 127 | if [[ "$device" = "0001:11:00.0" ]]; then 128 | rename_iface eth2 lan3 129 | rename_iface eth3 eth2 130 | rename_iface lan3 eth3 131 | fi 132 | ;; 133 | hinlink,opc-h69k) 134 | device="$(get_iface_device eth2)" 135 | if [[ "$device" = "0001:11:00.0" ]]; then 136 | rename_iface eth1 lan2 137 | rename_iface eth2 eth1 138 | rename_iface lan2 eth2 139 | fi 140 | ;; 141 | hinlink,h88k-v3|\ 142 | friendlyelec,nanopi-r6s) 143 | device="$(get_iface_device eth1)" 144 | if [[ "$device" = "0004:41:00.0" ]]; then 145 | rename_iface eth1 lan2 146 | rename_iface eth2 eth1 147 | rename_iface lan2 eth2 148 | fi 149 | ;; 150 | cyber,cyber3588-aib) 151 | device="$(get_iface_device eth1)" 152 | if [[ "$device" = "0004:41:00.0" ]]; then 153 | rename_iface eth1 lan2 154 | rename_iface eth2 eth1 155 | rename_iface lan2 eth2 156 | fi 157 | ;; 158 | armsom,sige7-v1) 159 | device="$(get_iface_device eth1)" 160 | if [[ "$device" = "0004:41:00.0" ]]; then 161 | rename_iface eth1 wan 162 | rename_iface eth0 eth1 163 | rename_iface wan eth0 164 | fi 165 | ;; 166 | radxa,e52c) 167 | device="$(get_iface_device eth0)" 168 | if [[ "$device" = "0004:41:00.0" ]]; then 169 | rename_iface eth1 wan 170 | rename_iface eth0 eth1 171 | rename_iface wan eth0 172 | fi 173 | ;; 174 | inspur,ihec301) 175 | device="$(get_iface_device eth1)" 176 | if [[ "$device" = "fe1b0000.ethernet" ]]; then 177 | rename_iface eth0 lan 178 | rename_iface eth1 eth0 179 | rename_iface lan eth1 180 | fi 181 | ;; 182 | esac 183 | } 184 | 185 | board_set_iface_smp_affinity() { 186 | case $(board_name) in 187 | inspur,ihec301|\ 188 | firefly,rk3568-roc-pc) 189 | set_iface_cpumask 2 eth0 190 | set_iface_cpumask 4 eth1 191 | ;; 192 | hinlink,opc-h69k|\ 193 | friendlyelec,nanopi-r5s|friendlyelec,nanopi-r5s-c1) 194 | set_iface_cpumask 2 eth0 195 | if ethtool -i eth1 | grep -Fq 'driver: r8169'; then 196 | set_iface_cpumask 4 "eth1" 197 | set_iface_cpumask 8 "eth2" 198 | else 199 | set_iface_cpumask 4 "eth1" "eth1-0" && \ 200 | set_iface_cpumask 4 "eth1" "eth1-16" && \ 201 | set_iface_cpumask 2 "eth1" "eth1-18" && \ 202 | set_iface_cpumask 8 "eth2" "eth2-0" && \ 203 | set_iface_cpumask 8 "eth2" "eth2-18" && \ 204 | set_iface_cpumask 1 "eth2" "eth2-16" 205 | fi 206 | ;; 207 | roceos,k40pro|\ 208 | lyt,t68m|\ 209 | fastrhino,r68s|\ 210 | hinlink,opc-h68k) 211 | set_iface_cpumask 1 "eth0" 212 | set_iface_cpumask 2 "eth1" 213 | if ethtool -i eth2 | grep -Fq 'driver: r8169'; then 214 | set_iface_cpumask 4 "eth2" 215 | set_iface_cpumask 8 "eth3" 216 | else 217 | set_iface_cpumask 4 "eth2" "eth2-0" && \ 218 | set_iface_cpumask 4 "eth2" "eth2-16" && \ 219 | set_iface_cpumask 2 "eth2" "eth2-18" 220 | set_iface_cpumask 8 "eth3" "eth3-0" && \ 221 | set_iface_cpumask 8 "eth3" "eth3-18" && \ 222 | set_iface_cpumask 1 "eth3" "eth3-16" 223 | fi 224 | ;; 225 | jsy,h1|\ 226 | yyy,h1|\ 227 | armsom,sige1-v1|\ 228 | easepi,ars4|\ 229 | friendlyelec,nanopi-r5c|\ 230 | fastrhino,r66s|\ 231 | hinlink,hnas|\ 232 | hinlink,opc-h66k) 233 | if ethtool -i eth0 | grep -Fq 'driver: r8169'; then 234 | set_iface_cpumask 4 "eth0" 235 | set_iface_cpumask 8 "eth1" 236 | else 237 | set_iface_cpumask 2 "eth0" "eth0-0" && \ 238 | set_iface_cpumask 2 "eth0" "eth0-16" && \ 239 | set_iface_cpumask 8 "eth0" "eth0-18" && \ 240 | set_iface_cpumask 4 "eth1" "eth1-0" && \ 241 | set_iface_cpumask 4 "eth1" "eth1-18" && \ 242 | set_iface_cpumask 1 "eth1" "eth1-16" 243 | fi 244 | ;; 245 | friendlyelec,nanopi-r6s|\ 246 | friendlyelec,nanopi-r6c) 247 | set_iface_cpumask 2 eth0 248 | if ethtool -i eth1 | grep -Fq 'driver: r8169'; then 249 | set_iface_cpumask 4 "eth1" 250 | set_iface_cpumask 8 "eth2" 251 | else 252 | set_iface_cpumask 4 "eth1" "eth1-0" f0 && \ 253 | set_iface_cpumask 4 "eth1" "eth1-16" && \ 254 | set_iface_cpumask 2 "eth1" "eth1-18" && \ 255 | set_iface_cpumask 8 "eth2" "eth2-0" f0 && \ 256 | set_iface_cpumask 8 "eth2" "eth2-18" && \ 257 | set_iface_cpumask 1 "eth2" "eth2-16" 258 | fi 259 | ;; 260 | armsom,sige7-v1) 261 | if ethtool -i eth0 | grep -Fq 'driver: r8169'; then 262 | set_iface_cpumask 4 "eth0" 263 | set_iface_cpumask 8 "eth1" 264 | else 265 | set_iface_cpumask 4 "eth0" "eth0-0" f0 && \ 266 | set_iface_cpumask 4 "eth0" "eth0-16" && \ 267 | set_iface_cpumask 2 "eth0" "eth0-18" && \ 268 | set_iface_cpumask 8 "eth1" "eth1-0" f0 && \ 269 | set_iface_cpumask 8 "eth1" "eth1-18" && \ 270 | set_iface_cpumask 1 "eth1" "eth1-16" 271 | fi 272 | ;; 273 | radxa,e52c) 274 | if ethtool -i eth0 | grep -Fq 'driver: r8169'; then 275 | set_iface_cpumask 4 "eth0" 276 | set_iface_cpumask 8 "eth1" 277 | else 278 | set_iface_cpumask 4 "eth0" "eth0-0" 30 && \ 279 | set_iface_cpumask 4 "eth0" "eth0-16" && \ 280 | set_iface_cpumask 2 "eth0" "eth0-18" && \ 281 | set_iface_cpumask 8 "eth1" "eth1-0" 30 && \ 282 | set_iface_cpumask 8 "eth1" "eth1-18" && \ 283 | set_iface_cpumask 1 "eth1" "eth1-16" 284 | fi 285 | ;; 286 | hinlink,h88k-*|\ 287 | hinlink,h88k) 288 | set_iface_cpumask 2 eth0 289 | if ethtool -i eth1 | grep -Fq 'driver: r8169'; then 290 | set_iface_cpumask 4 "eth1" 291 | set_iface_cpumask 8 "eth2" && \ 292 | set_iface_cpumask 10 "eth3" && \ 293 | set_iface_cpumask 20 "eth4" 294 | else 295 | set_iface_cpumask 4 "eth1" "eth1-0" f0 && \ 296 | set_iface_cpumask 4 "eth1" "eth1-16" && \ 297 | set_iface_cpumask 2 "eth1" "eth1-18" && \ 298 | set_iface_cpumask 8 "eth2" "eth2-0" f0 && \ 299 | set_iface_cpumask 8 "eth2" "eth2-18" && \ 300 | set_iface_cpumask 1 "eth2" "eth2-16" && \ 301 | set_iface_cpumask 10 "eth3" "eth3-0" f0 && \ 302 | set_iface_cpumask 10 "eth3" "eth3-16" && \ 303 | set_iface_cpumask 8 "eth3" "eth3-18" && \ 304 | set_iface_cpumask 20 "eth4" "eth4-0" f0 && \ 305 | set_iface_cpumask 20 "eth4" "eth4-18" && \ 306 | set_iface_cpumask 4 "eth4" "eth4-16" 307 | fi 308 | ;; 309 | radxa,e20c|\ 310 | mangopi,m28k|\ 311 | hlink,h28k) 312 | set_iface_cpumask 5 eth0 313 | # eth1 is rtl8111h, driven by r8169 or r8168 314 | if ethtool -i eth1 | grep -Fq 'driver: r8169'; then 315 | set_iface_cpumask b eth1 316 | else 317 | set_iface_cpumask 5 eth1 eth1-0 a 318 | fi 319 | ;; 320 | ynn,nas|\ 321 | le,hes30|\ 322 | jp,tvbox|\ 323 | panther,x2|\ 324 | dg,nas-lite|\ 325 | nsy,g68-plus|\ 326 | hsa,bh2) 327 | set_iface_cpumask 2 "eth0" 328 | ;; 329 | esac 330 | } 331 | 332 | board_wait_wifi() { 333 | local seconds 334 | [[ -f "/etc/uci-defaults/01-rk35xx-wifi" ]] || return 0 335 | case $(board_name) in 336 | hinlink,h88k-*|\ 337 | hinlink,h88k|\ 338 | hinlink,opc-h68k|\ 339 | hinlink,opc-h69k) 340 | for seconds in $(seq 0 30); do 341 | [[ -s /etc/config/wireless ]] && break 342 | sleep 1 343 | done 344 | sleep 1 345 | ;; 346 | esac 347 | } 348 | 349 | board_fixup_iface_name 350 | 351 | board_set_iface_smp_affinity 352 | 353 | board_wait_wifi 354 | -------------------------------------------------------------------------------- /configfiles/nowifi.txt: -------------------------------------------------------------------------------- 1 | CONFIG_PACKAGE_kmod-mt76-connac=n 2 | CONFIG_PACKAGE_kmod-mt76-core=n 3 | CONFIG_PACKAGE_kmod-mt76-usb=n 4 | CONFIG_PACKAGE_kmod-mt7615-common=n 5 | CONFIG_PACKAGE_kmod-mt7615-firmware=n 6 | CONFIG_PACKAGE_kmod-mt7615e=n 7 | CONFIG_PACKAGE_kmod-mt7663-firmware-ap=n 8 | CONFIG_PACKAGE_kmod-mt7663-usb-sdio=n 9 | CONFIG_PACKAGE_kmod-mt7663u=n 10 | CONFIG_PACKAGE_kmod-mt76x0-common=n 11 | CONFIG_PACKAGE_kmod-mt76x02-common=n 12 | CONFIG_PACKAGE_kmod-mt76x02-usb=n 13 | CONFIG_PACKAGE_kmod-mt76x0u=n 14 | CONFIG_PACKAGE_kmod-mt76x2-common=n 15 | CONFIG_PACKAGE_kmod-mt76x2u=n 16 | CONFIG_PACKAGE_kmod-mt7915e=n 17 | CONFIG_PACKAGE_kmod-mt7916-firmware=n 18 | CONFIG_PACKAGE_kmod-mt7921-common=n 19 | CONFIG_PACKAGE_kmod-mt7921-firmware=n 20 | CONFIG_PACKAGE_kmod-mt7921e=n 21 | CONFIG_PACKAGE_kmod-mt7921u=n 22 | CONFIG_PACKAGE_kmod-mt7922-firmware=n 23 | -------------------------------------------------------------------------------- /configfiles/opwifi: -------------------------------------------------------------------------------- 1 | #!/bin/sh /etc/rc.common 2 | 3 | START=99 4 | STOP=10 5 | 6 | board_name() { 7 | [ -e /tmp/sysinfo/board_name ] && cat /tmp/sysinfo/board_name || echo "generic" 8 | } 9 | 10 | init_wifi() { 11 | local board=$(board_name) 12 | case "$board" in 13 | jp,tvbox|\ 14 | panther,x2) 15 | case "$1" in 16 | 1) 17 | sleep 60 18 | /sbin/wifi up 19 | ;; 20 | 2) 21 | /sbin/wifi down 22 | ;; 23 | 3) 24 | /sbin/wifi down 25 | /sbin/wifi up 26 | ;; 27 | *) 28 | return 1 29 | ;; 30 | esac 31 | ;; 32 | *) 33 | return 1 34 | ;; 35 | esac 36 | } 37 | 38 | start() { 39 | init_wifi 1 40 | } 41 | 42 | stop() { 43 | init_wifi 2 44 | } 45 | 46 | restart() { 47 | init_wifi 3 48 | } 49 | -------------------------------------------------------------------------------- /configfiles/rk3566-jp-tvbox.dts: -------------------------------------------------------------------------------- 1 | // SPDX-License-Identifier: (GPL-2.0+ OR MIT) 2 | /* 3 | * Copyright (c) 2023 tdleiyao 4 | */ 5 | 6 | /dts-v1/; 7 | 8 | #include 9 | #include 10 | #include 11 | #include 12 | #ifdef DTS_NO_LEGACY 13 | #include 14 | #else 15 | #include 16 | #endif 17 | #include "rk3566.dtsi" 18 | 19 | / { 20 | model = "JianPian TV Box"; 21 | compatible = "jp,tvbox", "rockchip,rk3566"; 22 | 23 | aliases { 24 | ethernet0 = &gmac1; 25 | mmc0 = &sdhci; 26 | mmc1 = &sdmmc1; 27 | }; 28 | 29 | chosen: chosen { 30 | bootargs = "earlycon=uart8250,mmio32,0xfe660000 console=ttyFIQ0 root=PARTUUID=614e0000-0000 rw rootwait"; 31 | }; 32 | 33 | fiq_debugger: fiq-debugger { 34 | compatible = "rockchip,fiq-debugger"; 35 | rockchip,serial-id = <2>; 36 | rockchip,wake-irq = <0>; 37 | /* If enable uart uses irq instead of fiq */ 38 | rockchip,irq-mode-enable = <1>; 39 | rockchip,baudrate = <1500000>; /* Only 115200 and 1500000 */ 40 | interrupts = ; 41 | pinctrl-names = "default"; 42 | pinctrl-0 = <&uart2m0_xfer>; 43 | status = "okay"; 44 | }; 45 | 46 | debug: debug@fd904000 { 47 | compatible = "rockchip,debug"; 48 | reg = <0x0 0xfd904000 0x0 0x1000>, 49 | <0x0 0xfd905000 0x0 0x1000>, 50 | <0x0 0xfd906000 0x0 0x1000>, 51 | <0x0 0xfd907000 0x0 0x1000>; 52 | }; 53 | 54 | hdmi_sound: hdmi-sound { 55 | compatible = "simple-audio-card"; 56 | simple-audio-card,format = "i2s"; 57 | simple-audio-card,mclk-fs = <128>; 58 | simple-audio-card,name = "rockchip,hdmi"; 59 | status = "okay"; 60 | 61 | simple-audio-card,cpu { 62 | sound-dai = <&i2s0_8ch>; 63 | }; 64 | 65 | simple-audio-card,codec { 66 | sound-dai = <&hdmi>; 67 | }; 68 | }; 69 | 70 | gmac1_clkin: external-gmac1-clock { 71 | compatible = "fixed-clock"; 72 | clock-frequency = <125000000>; 73 | clock-output-names = "gmac1_clkin"; 74 | #clock-cells = <0>; 75 | }; 76 | 77 | leds { 78 | compatible = "gpio-leds"; 79 | led_status: led-status { 80 | label = "led-status"; 81 | default-state = "on"; 82 | gpios = <&gpio0 RK_PD4 GPIO_ACTIVE_HIGH>; 83 | linux,default-trigger = "heartbeat"; 84 | pinctrl-names = "default"; 85 | pinctrl-0 = <&led_status_enable_h>; 86 | }; 87 | }; 88 | 89 | dc_12v: dc-12v { 90 | compatible = "regulator-fixed"; 91 | regulator-name = "dc_12v"; 92 | regulator-always-on; 93 | regulator-boot-on; 94 | regulator-min-microvolt = <12000000>; 95 | regulator-max-microvolt = <12000000>; 96 | }; 97 | 98 | vcc5v0_sys: vcc5v0-sys { 99 | compatible = "regulator-fixed"; 100 | regulator-name = "vcc5v0_sys"; 101 | regulator-always-on; 102 | regulator-boot-on; 103 | regulator-min-microvolt = <5000000>; 104 | regulator-max-microvolt = <5000000>; 105 | vin-supply = <&dc_12v>; 106 | }; 107 | 108 | vcc3v3_sys: vcc3v3-sys { 109 | compatible = "regulator-fixed"; 110 | regulator-name = "vcc3v3_sys"; 111 | regulator-always-on; 112 | regulator-boot-on; 113 | regulator-min-microvolt = <3300000>; 114 | regulator-max-microvolt = <3300000>; 115 | vin-supply = <&vcc5v0_sys>; 116 | }; 117 | 118 | sdio_pwrseq: sdio-pwrseq { 119 | status = "okay"; 120 | compatible = "mmc-pwrseq-simple"; 121 | clocks = <&rk809 1>; 122 | clock-names = "ext_clock"; 123 | pinctrl-names = "default"; 124 | pinctrl-0 = <&wifi_enable_h>; 125 | reset-gpios = <&gpio2 RK_PB1 GPIO_ACTIVE_LOW>; 126 | post-power-on-delay-ms = <100>; 127 | }; 128 | 129 | wireless_wlan: wireless-wlan { 130 | compatible = "wlan-platdata"; 131 | rockchip,grf = <&grf>; 132 | wifi_chip_type = "ap6398s"; 133 | pinctrl-names = "default"; 134 | pinctrl-0 = <&wifi_host_wake_irq>; 135 | WIFI,host_wake_irq = <&gpio2 RK_PB2 GPIO_ACTIVE_HIGH>; 136 | status = "okay"; 137 | }; 138 | 139 | }; 140 | 141 | &combphy1_usq { 142 | status = "okay"; 143 | }; 144 | 145 | &combphy2_psq { 146 | status = "okay"; 147 | }; 148 | 149 | &cpu0 { 150 | cpu-supply = <&vdd_cpu>; 151 | }; 152 | 153 | &cpu1 { 154 | cpu-supply = <&vdd_cpu>; 155 | }; 156 | 157 | &cpu2 { 158 | cpu-supply = <&vdd_cpu>; 159 | }; 160 | 161 | &cpu3 { 162 | cpu-supply = <&vdd_cpu>; 163 | }; 164 | 165 | &dfi { 166 | status = "okay"; 167 | }; 168 | 169 | &dmc { 170 | center-supply = <&vdd_logic>; 171 | status = "okay"; 172 | }; 173 | 174 | &gpu { 175 | mali-supply = <&vdd_gpu>; 176 | status = "okay"; 177 | }; 178 | 179 | &gmac1 { 180 | snps,reset-gpio = <&gpio3 RK_PA1 GPIO_ACTIVE_LOW>; 181 | snps,reset-active-low; 182 | /* Reset time is 20ms, 100ms for rtl8211f */ 183 | snps,reset-delays-us = <0 20000 100000>; 184 | 185 | phy-mode = "rgmii"; 186 | clock_in_out = "output"; 187 | 188 | assigned-clocks = <&cru SCLK_GMAC1_RX_TX>, <&cru SCLK_GMAC1>; 189 | assigned-clock-parents = <&cru SCLK_GMAC1_RGMII_SPEED>, <&cru CLK_MAC1_2TOP>; 190 | assigned-clock-rates = <0>, <125000000>; 191 | 192 | pinctrl-names = "default"; 193 | pinctrl-0 = <&gmac1m0_miim 194 | &gmac1m0_tx_bus2 195 | &gmac1m0_rx_bus2 196 | &gmac1m0_rgmii_clk 197 | &gmac1m0_rgmii_bus>; 198 | 199 | tx_delay = <0x41>; 200 | rx_delay = <0x2e>; 201 | 202 | phy-handle = <&rgmii_phy1>; 203 | status = "okay"; 204 | }; 205 | 206 | &mdio1 { 207 | rgmii_phy1: ethernet-phy@1 { 208 | compatible = "ethernet-phy-ieee802.3-c22"; 209 | reg = <0x1>; 210 | status = "okay"; 211 | }; 212 | }; 213 | 214 | &hdmi { 215 | avdd-0v9-supply = <&vdda0v9_image>; 216 | avdd-1v8-supply = <&vcca1v8_image>; 217 | status = "okay"; 218 | }; 219 | 220 | &hdmi_in_vp0 { 221 | status = "okay"; 222 | }; 223 | 224 | &hdmi_in_vp1 { 225 | status = "disabled"; 226 | }; 227 | 228 | &hdmi_sound { 229 | status = "okay"; 230 | }; 231 | 232 | &i2c0 { 233 | status = "okay"; 234 | 235 | vdd_cpu: regulator@1c { 236 | compatible = "tcs,tcs4525"; 237 | reg = <0x1c>; 238 | fcs,suspend-voltage-selector = <1>; 239 | regulator-name = "vdd_cpu"; 240 | regulator-min-microvolt = <800000>; 241 | regulator-max-microvolt = <1150000>; 242 | regulator-ramp-delay = <2300>; 243 | regulator-always-on; 244 | regulator-boot-on; 245 | vin-supply = <&vcc5v0_sys>; 246 | 247 | regulator-state-mem { 248 | regulator-off-in-suspend; 249 | }; 250 | }; 251 | 252 | rk809: pmic@20 { 253 | compatible = "rockchip,rk809"; 254 | reg = <0x20>; 255 | interrupt-parent = <&gpio0>; 256 | interrupts = ; 257 | #clock-cells = <1>; 258 | clock-output-names = "rk808-clkout1", "rk808-clkout2"; 259 | pinctrl-names = "default"; 260 | pinctrl-0 = <&pmic_int_l>; 261 | rockchip,system-power-controller; 262 | wakeup-source; 263 | 264 | vcc1-supply = <&vcc3v3_sys>; 265 | vcc2-supply = <&vcc3v3_sys>; 266 | vcc3-supply = <&vcc3v3_sys>; 267 | vcc4-supply = <&vcc3v3_sys>; 268 | vcc5-supply = <&vcc3v3_sys>; 269 | vcc6-supply = <&vcc3v3_sys>; 270 | vcc7-supply = <&vcc3v3_sys>; 271 | vcc8-supply = <&vcc3v3_sys>; 272 | vcc9-supply = <&vcc3v3_sys>; 273 | 274 | regulators { 275 | vdd_logic: DCDC_REG1 { 276 | regulator-name = "vdd_logic"; 277 | regulator-always-on; 278 | regulator-boot-on; 279 | regulator-min-microvolt = <500000>; 280 | regulator-max-microvolt = <1350000>; 281 | regulator-init-microvolt = <900000>; 282 | regulator-ramp-delay = <6001>; 283 | regulator-initial-mode = <0x2>; 284 | regulator-state-mem { 285 | regulator-off-in-suspend; 286 | }; 287 | }; 288 | 289 | vdd_gpu: DCDC_REG2 { 290 | regulator-name = "vdd_gpu"; 291 | regulator-always-on; 292 | regulator-boot-on; 293 | regulator-min-microvolt = <500000>; 294 | regulator-max-microvolt = <1350000>; 295 | regulator-init-microvolt = <900000>; 296 | regulator-ramp-delay = <6001>; 297 | regulator-initial-mode = <0x2>; 298 | regulator-state-mem { 299 | regulator-off-in-suspend; 300 | }; 301 | }; 302 | 303 | vcc_ddr: DCDC_REG3 { 304 | regulator-always-on; 305 | regulator-boot-on; 306 | regulator-initial-mode = <0x2>; 307 | regulator-name = "vcc_ddr"; 308 | regulator-state-mem { 309 | regulator-on-in-suspend; 310 | }; 311 | }; 312 | 313 | vdd_npu: DCDC_REG4 { 314 | regulator-always-on; 315 | regulator-boot-on; 316 | regulator-min-microvolt = <500000>; 317 | regulator-max-microvolt = <1350000>; 318 | regulator-init-microvolt = <900000>; 319 | regulator-ramp-delay = <6001>; 320 | regulator-initial-mode = <0x2>; 321 | regulator-name = "vdd_npu"; 322 | regulator-state-mem { 323 | regulator-off-in-suspend; 324 | }; 325 | }; 326 | 327 | vcc_1v8: DCDC_REG5 { 328 | regulator-name = "vcc_1v8"; 329 | regulator-always-on; 330 | regulator-boot-on; 331 | regulator-min-microvolt = <1800000>; 332 | regulator-max-microvolt = <1800000>; 333 | regulator-state-mem { 334 | regulator-off-in-suspend; 335 | }; 336 | }; 337 | 338 | vdda0v9_image: LDO_REG1 { 339 | regulator-always-on; 340 | regulator-boot-on; 341 | regulator-min-microvolt = <900000>; 342 | regulator-max-microvolt = <900000>; 343 | regulator-name = "vdda0v9_image"; 344 | regulator-state-mem { 345 | regulator-off-in-suspend; 346 | }; 347 | }; 348 | 349 | vdda_0v9: LDO_REG2 { 350 | regulator-always-on; 351 | regulator-boot-on; 352 | regulator-min-microvolt = <900000>; 353 | regulator-max-microvolt = <900000>; 354 | regulator-name = "vdda_0v9"; 355 | regulator-state-mem { 356 | regulator-off-in-suspend; 357 | }; 358 | }; 359 | 360 | vdda0v9_pmu: LDO_REG3 { 361 | regulator-always-on; 362 | regulator-boot-on; 363 | regulator-min-microvolt = <900000>; 364 | regulator-max-microvolt = <900000>; 365 | regulator-name = "vdda0v9_pmu"; 366 | regulator-state-mem { 367 | regulator-on-in-suspend; 368 | regulator-suspend-microvolt = <900000>; 369 | }; 370 | }; 371 | 372 | vccio_acodec: LDO_REG4 { 373 | regulator-always-on; 374 | regulator-boot-on; 375 | regulator-min-microvolt = <3300000>; 376 | regulator-max-microvolt = <3300000>; 377 | regulator-name = "vccio_acodec"; 378 | regulator-state-mem { 379 | regulator-off-in-suspend; 380 | }; 381 | }; 382 | 383 | vccio_sd: LDO_REG5 { 384 | regulator-always-on; 385 | regulator-boot-on; 386 | regulator-min-microvolt = <1800000>; 387 | regulator-max-microvolt = <3300000>; 388 | regulator-name = "vccio_sd"; 389 | regulator-state-mem { 390 | regulator-off-in-suspend; 391 | }; 392 | }; 393 | 394 | vcc3v3_pmu: LDO_REG6 { 395 | regulator-always-on; 396 | regulator-boot-on; 397 | regulator-min-microvolt = <3300000>; 398 | regulator-max-microvolt = <3300000>; 399 | regulator-name = "vcc3v3_pmu"; 400 | regulator-state-mem { 401 | regulator-on-in-suspend; 402 | regulator-suspend-microvolt = <3300000>; 403 | }; 404 | }; 405 | 406 | vcca_1v8: LDO_REG7 { 407 | regulator-always-on; 408 | regulator-boot-on; 409 | regulator-min-microvolt = <1800000>; 410 | regulator-max-microvolt = <1800000>; 411 | regulator-name = "vcca_1v8"; 412 | regulator-state-mem { 413 | regulator-off-in-suspend; 414 | }; 415 | }; 416 | 417 | vcca1v8_pmu: LDO_REG8 { 418 | regulator-always-on; 419 | regulator-boot-on; 420 | regulator-min-microvolt = <1800000>; 421 | regulator-max-microvolt = <1800000>; 422 | regulator-name = "vcca1v8_pmu"; 423 | regulator-state-mem { 424 | regulator-on-in-suspend; 425 | regulator-suspend-microvolt = <1800000>; 426 | }; 427 | }; 428 | 429 | vcca1v8_image: LDO_REG9 { 430 | regulator-always-on; 431 | regulator-boot-on; 432 | regulator-min-microvolt = <1800000>; 433 | regulator-max-microvolt = <1800000>; 434 | regulator-name = "vcca1v8_image"; 435 | regulator-state-mem { 436 | regulator-off-in-suspend; 437 | }; 438 | }; 439 | 440 | vcc_3v3: SWITCH_REG1 { 441 | regulator-always-on; 442 | regulator-boot-on; 443 | regulator-name = "vcc_3v3"; 444 | regulator-state-mem { 445 | regulator-off-in-suspend; 446 | }; 447 | }; 448 | 449 | vcc3v3_sd: SWITCH_REG2 { 450 | regulator-always-on; 451 | regulator-boot-on; 452 | regulator-name = "vcc3v3_sd"; 453 | regulator-state-mem { 454 | regulator-off-in-suspend; 455 | }; 456 | }; 457 | 458 | }; 459 | }; 460 | }; 461 | 462 | &i2s1_8ch { 463 | pinctrl-names = "default"; 464 | pinctrl-0 = <&i2s1m1_sclktx &i2s1m1_sclkrx 465 | &i2s1m1_lrcktx &i2s1m1_lrckrx 466 | &i2s1m1_sdi0 &i2s1m1_sdi1 467 | &i2s1m1_sdi2 &i2s1m1_sdi3 468 | &i2s1m1_sdo0 &i2s1m1_sdo1 469 | &i2s1m1_sdo2 &i2s1m1_sdo3>; 470 | status = "disabled"; 471 | }; 472 | 473 | &pinctrl { 474 | 475 | sdio-pwrseq { 476 | wifi_enable_h: wifi-enable-h { 477 | rockchip,pins = <2 RK_PB1 RK_FUNC_GPIO &pcfg_pull_none>; 478 | }; 479 | }; 480 | 481 | wireless-wlan { 482 | wifi_host_wake_irq: wifi-host-wake-irq { 483 | rockchip,pins = <2 RK_PB2 RK_FUNC_GPIO &pcfg_pull_down>; 484 | }; 485 | }; 486 | 487 | bt { 488 | bt_enable_h: bt-enable-h { 489 | rockchip,pins = <2 RK_PB7 RK_FUNC_GPIO &pcfg_pull_none>; 490 | }; 491 | 492 | bt_host_wake_l: bt-host-wake-l { 493 | rockchip,pins = <2 RK_PC0 RK_FUNC_GPIO &pcfg_pull_none>; 494 | }; 495 | 496 | bt_wake_l: bt-wake-l { 497 | rockchip,pins = <2 RK_PC1 RK_FUNC_GPIO &pcfg_pull_none>; 498 | }; 499 | }; 500 | 501 | leds { 502 | led_status_enable_h: led-status-enable-h { 503 | rockchip,pins = <0 RK_PD4 RK_FUNC_GPIO &pcfg_pull_none>; 504 | }; 505 | }; 506 | 507 | pmic { 508 | pmic_int_l: pmic-int-l { 509 | rockchip,pins = <0 RK_PA3 RK_FUNC_GPIO &pcfg_pull_up>; 510 | }; 511 | }; 512 | 513 | }; 514 | 515 | &pmu_io_domains { 516 | pmuio1-supply = <&vcc3v3_pmu>; 517 | pmuio2-supply = <&vcc3v3_pmu>; 518 | vccio1-supply = <&vccio_acodec>; 519 | vccio3-supply = <&vccio_sd>; 520 | vccio4-supply = <&vcc_1v8>; 521 | vccio5-supply = <&vcc_3v3>; 522 | vccio6-supply = <&vcc_1v8>; 523 | vccio7-supply = <&vcc_3v3>; 524 | status = "okay"; 525 | }; 526 | 527 | &saradc { 528 | vref-supply = <&vcca_1v8>; 529 | status = "okay"; 530 | }; 531 | 532 | &sata2 { 533 | status = "okay"; 534 | }; 535 | 536 | &sdhci { 537 | bus-width = <8>; 538 | max-frequency = <200000000>; 539 | no-sdio; 540 | no-sd; 541 | mmc-hs200-1_8v; 542 | supports-emmc; 543 | non-removable; 544 | vmmc-supply = <&vcc_3v3>; 545 | vqmmc-supply = <&vcc_1v8>; 546 | status = "okay"; 547 | }; 548 | 549 | &sdmmc1 { 550 | #address-cells = <1>; 551 | #size-cells = <0>; 552 | bus-width = <4>; 553 | max-frequency = <200000000>; 554 | cap-sd-highspeed; 555 | sd-uhs-sdr50; 556 | sd-uhs-sdr104; 557 | cap-sdio-irq; 558 | disable-wp; 559 | supports-sdio; 560 | non-removable; 561 | keep-power-in-suspend; 562 | mmc-pwrseq = <&sdio_pwrseq>; 563 | pinctrl-names = "default"; 564 | pinctrl-0 = <&sdmmc1_bus4 &sdmmc1_cmd &sdmmc1_clk>; 565 | status = "okay"; 566 | }; 567 | 568 | &tsadc { 569 | status = "okay"; 570 | }; 571 | 572 | &uart1 { 573 | pinctrl-names = "default"; 574 | pinctrl-0 = <&uart1m0_xfer &uart1m0_ctsn &uart1m0_rtsn>; 575 | status = "disabled"; 576 | 577 | bluetooth { 578 | compatible = "brcm,bcm43438-bt"; 579 | clocks = <&rk809 1>; 580 | clock-names = "lpo"; 581 | device-wakeup-gpios = <&gpio2 RK_PC1 GPIO_ACTIVE_HIGH>; 582 | host-wakeup-gpios = <&gpio2 RK_PC0 GPIO_ACTIVE_HIGH>; 583 | shutdown-gpios = <&gpio2 RK_PB7 GPIO_ACTIVE_HIGH>; 584 | max-speed = <1500000>; 585 | pinctrl-names = "default"; 586 | pinctrl-0 = <&bt_host_wake_l &bt_wake_l &bt_enable_h>; 587 | vbat-supply = <&vcc3v3_sys>; 588 | vddio-supply = <&vcca1v8_pmu>; 589 | }; 590 | }; 591 | 592 | &uart2 { 593 | status = "disabled"; 594 | }; 595 | 596 | &usb_host0_ehci { 597 | status = "okay"; 598 | }; 599 | 600 | &usb_host0_ohci { 601 | status = "okay"; 602 | }; 603 | 604 | &usb2phy0 { 605 | status = "okay"; 606 | }; 607 | 608 | &u2phy0_host { 609 | status = "okay"; 610 | }; 611 | 612 | &u2phy0_otg { 613 | status = "okay"; 614 | }; 615 | 616 | &usbdrd_dwc3 { 617 | dr_mode = "host"; 618 | extcon = <&usb2phy0>; 619 | status = "okay"; 620 | }; 621 | 622 | &usbdrd30 { 623 | status = "okay"; 624 | }; 625 | 626 | &usbhost_dwc3 { 627 | status = "okay"; 628 | }; 629 | 630 | &usbhost30 { 631 | status = "okay"; 632 | }; 633 | 634 | // video output 635 | 636 | &i2s0_8ch { 637 | status = "okay"; 638 | }; 639 | 640 | &rng { 641 | status = "okay"; 642 | }; 643 | 644 | &reserved_memory { 645 | ramoops: ramoops@110000 { 646 | compatible = "ramoops"; 647 | reg = <0x0 0x110000 0x0 0xf0000>; 648 | record-size = <0x20000>; 649 | console-size = <0x80000>; 650 | ftrace-size = <0x00000>; 651 | pmsg-size = <0x50000>; 652 | }; 653 | }; 654 | 655 | &bus_npu { 656 | bus-supply = <&vdd_logic>; 657 | pvtm-supply = <&vdd_cpu>; 658 | status = "okay"; 659 | }; 660 | 661 | &iep { 662 | status = "okay"; 663 | }; 664 | 665 | &iep_mmu { 666 | status = "okay"; 667 | }; 668 | 669 | &jpegd { 670 | status = "okay"; 671 | }; 672 | 673 | &jpegd_mmu { 674 | status = "okay"; 675 | }; 676 | 677 | &mpp_srv { 678 | status = "okay"; 679 | }; 680 | 681 | &rk_rga { 682 | status = "okay"; 683 | }; 684 | 685 | &rkvdec { 686 | status = "okay"; 687 | }; 688 | 689 | &rkvdec_mmu { 690 | status = "okay"; 691 | }; 692 | 693 | &rkvenc { 694 | venc-supply = <&vdd_logic>; 695 | status = "okay"; 696 | }; 697 | 698 | &rkvenc_mmu { 699 | status = "okay"; 700 | }; 701 | 702 | &rknpu { 703 | rknpu-supply = <&vdd_npu>; 704 | mem-supply = <&vdd_npu>; 705 | status = "okay"; 706 | }; 707 | 708 | &rknpu_mmu { 709 | status = "okay"; 710 | }; 711 | 712 | &vdpu { 713 | status = "okay"; 714 | }; 715 | 716 | &vdpu_mmu { 717 | status = "okay"; 718 | }; 719 | 720 | &vepu { 721 | status = "okay"; 722 | }; 723 | 724 | &vepu_mmu { 725 | status = "okay"; 726 | }; 727 | 728 | &vop { 729 | assigned-clocks = <&cru DCLK_VOP0>, <&cru DCLK_VOP1>, <&cru DCLK_VOP2>; 730 | assigned-clock-parents = <&pmucru PLL_HPLL>, <&cru PLL_VPLL>, <&cru PLL_GPLL>; 731 | status = "okay"; 732 | }; 733 | 734 | &vop_mmu { 735 | status = "okay"; 736 | }; 737 | -------------------------------------------------------------------------------- /configfiles/rk3566-panther-x2.dts: -------------------------------------------------------------------------------- 1 | // SPDX-License-Identifier: (GPL-2.0+ OR MIT) 2 | /* 3 | * Copyright (c) 2023 tdleiyao 4 | */ 5 | 6 | /dts-v1/; 7 | 8 | #include 9 | #include 10 | #include 11 | #include 12 | #ifdef DTS_NO_LEGACY 13 | #include 14 | #else 15 | #include 16 | #endif 17 | #include "rk3566.dtsi" 18 | 19 | / { 20 | model = "Panther X2"; 21 | compatible = "panther,x2", "rockchip,rk3566"; 22 | 23 | aliases { 24 | ethernet0 = &gmac1; 25 | mmc0 = &sdhci; 26 | mmc1 = &sdmmc0; 27 | mmc2 = &sdmmc1; 28 | }; 29 | 30 | chosen: chosen { 31 | bootargs = "earlycon=uart8250,mmio32,0xfe660000 console=ttyFIQ0 root=PARTUUID=614e0000-0000 rw rootwait"; 32 | }; 33 | 34 | fiq_debugger: fiq-debugger { 35 | compatible = "rockchip,fiq-debugger"; 36 | rockchip,serial-id = <2>; 37 | rockchip,wake-irq = <0>; 38 | /* If enable uart uses irq instead of fiq */ 39 | rockchip,irq-mode-enable = <1>; 40 | rockchip,baudrate = <1500000>; /* Only 115200 and 1500000 */ 41 | interrupts = ; 42 | pinctrl-names = "default"; 43 | pinctrl-0 = <&uart2m0_xfer>; 44 | status = "okay"; 45 | }; 46 | 47 | debug: debug@fd904000 { 48 | compatible = "rockchip,debug"; 49 | reg = <0x0 0xfd904000 0x0 0x1000>, 50 | <0x0 0xfd905000 0x0 0x1000>, 51 | <0x0 0xfd906000 0x0 0x1000>, 52 | <0x0 0xfd907000 0x0 0x1000>; 53 | }; 54 | 55 | gmac1_clkin: external-gmac1-clock { 56 | compatible = "fixed-clock"; 57 | clock-frequency = <125000000>; 58 | clock-output-names = "gmac1_clkin"; 59 | #clock-cells = <0>; 60 | }; 61 | 62 | leds { 63 | compatible = "gpio-leds"; 64 | led_pwr: led-pwr { 65 | label = "led-pwr"; 66 | default-state = "on"; 67 | gpios = <&gpio0 RK_PD4 GPIO_ACTIVE_HIGH>; 68 | pinctrl-names = "default"; 69 | pinctrl-0 = <&led_pwr_enable_h>; 70 | }; 71 | 72 | led_wifi: led-wifi { 73 | label = "led-wifi"; 74 | default-state = "off"; 75 | gpios = <&gpio0 RK_PD6 GPIO_ACTIVE_HIGH>; 76 | pinctrl-names = "default"; 77 | pinctrl-0 = <&led_wifi_enable_h>; 78 | }; 79 | 80 | led_eth: led-eth { 81 | label = "led-eth"; 82 | default-state = "off"; 83 | gpios = <&gpio0 RK_PD5 GPIO_ACTIVE_HIGH>; 84 | pinctrl-names = "default"; 85 | pinctrl-0 = <&led_eth_enable_h>; 86 | }; 87 | 88 | led_status: led-status { 89 | label = "led-status"; 90 | default-state = "on"; 91 | gpios = <&gpio0 RK_PD3 GPIO_ACTIVE_HIGH>; 92 | linux,default-trigger = "heartbeat"; 93 | pinctrl-names = "default"; 94 | pinctrl-0 = <&led_status_enable_h>; 95 | }; 96 | }; 97 | 98 | dc_12v: dc-12v { 99 | compatible = "regulator-fixed"; 100 | regulator-name = "dc_12v"; 101 | regulator-always-on; 102 | regulator-boot-on; 103 | regulator-min-microvolt = <12000000>; 104 | regulator-max-microvolt = <12000000>; 105 | }; 106 | 107 | vcc5v0_sys: vcc5v0-sys { 108 | compatible = "regulator-fixed"; 109 | regulator-name = "vcc5v0_sys"; 110 | regulator-always-on; 111 | regulator-boot-on; 112 | regulator-min-microvolt = <5000000>; 113 | regulator-max-microvolt = <5000000>; 114 | vin-supply = <&dc_12v>; 115 | }; 116 | 117 | vcc3v3_sys: vcc3v3-sys { 118 | compatible = "regulator-fixed"; 119 | regulator-name = "vcc3v3_sys"; 120 | regulator-always-on; 121 | regulator-boot-on; 122 | regulator-min-microvolt = <3300000>; 123 | regulator-max-microvolt = <3300000>; 124 | vin-supply = <&vcc5v0_sys>; 125 | }; 126 | 127 | sdio_pwrseq: sdio-pwrseq { 128 | status = "okay"; 129 | compatible = "mmc-pwrseq-simple"; 130 | clocks = <&rk809 1>; 131 | clock-names = "ext_clock"; 132 | pinctrl-names = "default"; 133 | pinctrl-0 = <&wifi_enable_h>; 134 | reset-gpios = <&gpio2 RK_PB1 GPIO_ACTIVE_LOW>; 135 | post-power-on-delay-ms = <100>; 136 | }; 137 | 138 | wireless_wlan: wireless-wlan { 139 | compatible = "wlan-platdata"; 140 | rockchip,grf = <&grf>; 141 | wifi_chip_type = "ap6236"; 142 | pinctrl-names = "default"; 143 | pinctrl-0 = <&wifi_host_wake_irq>; 144 | WIFI,host_wake_irq = <&gpio2 RK_PB2 GPIO_ACTIVE_HIGH>; 145 | status = "okay"; 146 | }; 147 | 148 | }; 149 | 150 | &cpu0 { 151 | cpu-supply = <&vdd_cpu>; 152 | }; 153 | 154 | &cpu1 { 155 | cpu-supply = <&vdd_cpu>; 156 | }; 157 | 158 | &cpu2 { 159 | cpu-supply = <&vdd_cpu>; 160 | }; 161 | 162 | &cpu3 { 163 | cpu-supply = <&vdd_cpu>; 164 | }; 165 | 166 | &dfi { 167 | status = "okay"; 168 | }; 169 | 170 | &dmc { 171 | center-supply = <&vdd_logic>; 172 | status = "okay"; 173 | }; 174 | 175 | &gpu { 176 | mali-supply = <&vdd_gpu>; 177 | status = "okay"; 178 | }; 179 | 180 | &gmac1 { 181 | snps,reset-gpio = <&gpio3 RK_PA1 GPIO_ACTIVE_LOW>; 182 | snps,reset-active-low; 183 | /* Reset time is 20ms, 100ms for rtl8211f */ 184 | snps,reset-delays-us = <0 20000 100000>; 185 | 186 | phy-mode = "rgmii"; 187 | clock_in_out = "output"; 188 | 189 | assigned-clocks = <&cru SCLK_GMAC1_RX_TX>, <&cru SCLK_GMAC1>; 190 | assigned-clock-parents = <&cru SCLK_GMAC1_RGMII_SPEED>, <&cru CLK_MAC1_2TOP>; 191 | assigned-clock-rates = <0>, <125000000>; 192 | 193 | pinctrl-names = "default"; 194 | pinctrl-0 = <&gmac1m0_miim 195 | &gmac1m0_tx_bus2 196 | &gmac1m0_rx_bus2 197 | &gmac1m0_rgmii_clk 198 | &gmac1m0_rgmii_bus>; 199 | 200 | tx_delay = <0x41>; 201 | rx_delay = <0x2e>; 202 | 203 | phy-handle = <&rgmii_phy1>; 204 | status = "okay"; 205 | }; 206 | 207 | &mdio1 { 208 | rgmii_phy1: ethernet-phy@1 { 209 | compatible = "ethernet-phy-ieee802.3-c22"; 210 | reg = <0x1>; 211 | status = "okay"; 212 | }; 213 | }; 214 | 215 | &i2c0 { 216 | status = "okay"; 217 | 218 | vdd_cpu: regulator@1c { 219 | compatible = "tcs,tcs4525"; 220 | reg = <0x1c>; 221 | fcs,suspend-voltage-selector = <1>; 222 | regulator-name = "vdd_cpu"; 223 | regulator-min-microvolt = <800000>; 224 | regulator-max-microvolt = <1150000>; 225 | regulator-ramp-delay = <2300>; 226 | regulator-always-on; 227 | regulator-boot-on; 228 | vin-supply = <&vcc5v0_sys>; 229 | 230 | regulator-state-mem { 231 | regulator-off-in-suspend; 232 | }; 233 | }; 234 | 235 | rk809: pmic@20 { 236 | compatible = "rockchip,rk809"; 237 | reg = <0x20>; 238 | interrupt-parent = <&gpio0>; 239 | interrupts = ; 240 | #clock-cells = <1>; 241 | clock-output-names = "rk808-clkout1", "rk808-clkout2"; 242 | pinctrl-names = "default"; 243 | pinctrl-0 = <&pmic_int_l>; 244 | rockchip,system-power-controller; 245 | wakeup-source; 246 | 247 | vcc1-supply = <&vcc3v3_sys>; 248 | vcc2-supply = <&vcc3v3_sys>; 249 | vcc3-supply = <&vcc3v3_sys>; 250 | vcc4-supply = <&vcc3v3_sys>; 251 | vcc5-supply = <&vcc3v3_sys>; 252 | vcc6-supply = <&vcc3v3_sys>; 253 | vcc7-supply = <&vcc3v3_sys>; 254 | vcc8-supply = <&vcc3v3_sys>; 255 | vcc9-supply = <&vcc3v3_sys>; 256 | 257 | regulators { 258 | vdd_logic: DCDC_REG1 { 259 | regulator-name = "vdd_logic"; 260 | regulator-always-on; 261 | regulator-boot-on; 262 | regulator-min-microvolt = <500000>; 263 | regulator-max-microvolt = <1350000>; 264 | regulator-init-microvolt = <900000>; 265 | regulator-ramp-delay = <6001>; 266 | regulator-initial-mode = <0x2>; 267 | regulator-state-mem { 268 | regulator-on-in-suspend; 269 | regulator-suspend-microvolt = <900000>; 270 | }; 271 | }; 272 | 273 | vdd_gpu: DCDC_REG2 { 274 | regulator-name = "vdd_gpu"; 275 | regulator-always-on; 276 | regulator-boot-on; 277 | regulator-min-microvolt = <500000>; 278 | regulator-max-microvolt = <1350000>; 279 | regulator-init-microvolt = <900000>; 280 | regulator-ramp-delay = <6001>; 281 | regulator-initial-mode = <0x2>; 282 | regulator-state-mem { 283 | regulator-off-in-suspend; 284 | }; 285 | }; 286 | 287 | vcc_ddr: DCDC_REG3 { 288 | regulator-always-on; 289 | regulator-boot-on; 290 | regulator-initial-mode = <0x2>; 291 | regulator-name = "vcc_ddr"; 292 | regulator-state-mem { 293 | regulator-on-in-suspend; 294 | }; 295 | }; 296 | 297 | vdd_npu: DCDC_REG4 { 298 | regulator-always-on; 299 | regulator-boot-on; 300 | regulator-min-microvolt = <500000>; 301 | regulator-max-microvolt = <1350000>; 302 | regulator-init-microvolt = <900000>; 303 | regulator-ramp-delay = <6001>; 304 | regulator-initial-mode = <0x2>; 305 | regulator-name = "vdd_npu"; 306 | regulator-state-mem { 307 | regulator-off-in-suspend; 308 | }; 309 | }; 310 | 311 | vcc_1v8: DCDC_REG5 { 312 | regulator-name = "vcc_1v8"; 313 | regulator-always-on; 314 | regulator-boot-on; 315 | regulator-min-microvolt = <1800000>; 316 | regulator-max-microvolt = <1800000>; 317 | regulator-state-mem { 318 | regulator-on-in-suspend; 319 | regulator-suspend-microvolt = <1800000>; 320 | }; 321 | }; 322 | 323 | vdda0v9_image: LDO_REG1 { 324 | regulator-always-on; 325 | regulator-boot-on; 326 | regulator-min-microvolt = <900000>; 327 | regulator-max-microvolt = <900000>; 328 | regulator-name = "vdda0v9_image"; 329 | regulator-state-mem { 330 | regulator-on-in-suspend; 331 | regulator-suspend-microvolt = <900000>; 332 | }; 333 | }; 334 | 335 | vdda_0v9: LDO_REG2 { 336 | regulator-always-on; 337 | regulator-boot-on; 338 | regulator-min-microvolt = <900000>; 339 | regulator-max-microvolt = <900000>; 340 | regulator-name = "vdda_0v9"; 341 | regulator-state-mem { 342 | regulator-off-in-suspend; 343 | }; 344 | }; 345 | 346 | vdda0v9_pmu: LDO_REG3 { 347 | regulator-always-on; 348 | regulator-boot-on; 349 | regulator-min-microvolt = <900000>; 350 | regulator-max-microvolt = <900000>; 351 | regulator-name = "vdda0v9_pmu"; 352 | regulator-state-mem { 353 | regulator-on-in-suspend; 354 | regulator-suspend-microvolt = <900000>; 355 | }; 356 | }; 357 | 358 | vccio_acodec: LDO_REG4 { 359 | regulator-always-on; 360 | regulator-boot-on; 361 | regulator-min-microvolt = <3300000>; 362 | regulator-max-microvolt = <3300000>; 363 | regulator-name = "vccio_acodec"; 364 | regulator-state-mem { 365 | regulator-off-in-suspend; 366 | }; 367 | }; 368 | 369 | vccio_sd: LDO_REG5 { 370 | regulator-always-on; 371 | regulator-boot-on; 372 | regulator-min-microvolt = <1800000>; 373 | regulator-max-microvolt = <3300000>; 374 | regulator-name = "vccio_sd"; 375 | regulator-state-mem { 376 | regulator-off-in-suspend; 377 | }; 378 | }; 379 | 380 | vcc3v3_pmu: LDO_REG6 { 381 | regulator-always-on; 382 | regulator-boot-on; 383 | regulator-min-microvolt = <3300000>; 384 | regulator-max-microvolt = <3300000>; 385 | regulator-name = "vcc3v3_pmu"; 386 | regulator-state-mem { 387 | regulator-on-in-suspend; 388 | regulator-suspend-microvolt = <3300000>; 389 | }; 390 | }; 391 | 392 | vcca_1v8: LDO_REG7 { 393 | regulator-always-on; 394 | regulator-boot-on; 395 | regulator-min-microvolt = <1800000>; 396 | regulator-max-microvolt = <1800000>; 397 | regulator-name = "vcca_1v8"; 398 | regulator-state-mem { 399 | regulator-off-in-suspend; 400 | }; 401 | }; 402 | 403 | vcca1v8_pmu: LDO_REG8 { 404 | regulator-always-on; 405 | regulator-boot-on; 406 | regulator-min-microvolt = <1800000>; 407 | regulator-max-microvolt = <1800000>; 408 | regulator-name = "vcca1v8_pmu"; 409 | regulator-state-mem { 410 | regulator-off-in-suspend; 411 | }; 412 | }; 413 | 414 | vcca1v8_image: LDO_REG9 { 415 | regulator-always-on; 416 | regulator-boot-on; 417 | regulator-min-microvolt = <1800000>; 418 | regulator-max-microvolt = <1800000>; 419 | regulator-name = "vcca1v8_image"; 420 | regulator-state-mem { 421 | regulator-off-in-suspend; 422 | }; 423 | }; 424 | 425 | vcc_3v3: SWITCH_REG1 { 426 | regulator-always-on; 427 | regulator-boot-on; 428 | regulator-name = "vcc_3v3"; 429 | regulator-state-mem { 430 | regulator-off-in-suspend; 431 | }; 432 | }; 433 | 434 | vcc3v3_sd: SWITCH_REG2 { 435 | regulator-always-on; 436 | regulator-boot-on; 437 | regulator-name = "vcc3v3_sd"; 438 | regulator-state-mem { 439 | regulator-off-in-suspend; 440 | }; 441 | }; 442 | 443 | }; 444 | }; 445 | }; 446 | 447 | &i2s1_8ch { 448 | pinctrl-names = "default"; 449 | pinctrl-0 = <&i2s1m1_sclktx &i2s1m1_sclkrx 450 | &i2s1m1_lrcktx &i2s1m1_lrckrx 451 | &i2s1m1_sdi0 &i2s1m1_sdi1 452 | &i2s1m1_sdi2 &i2s1m1_sdi3 453 | &i2s1m1_sdo0 &i2s1m1_sdo1 454 | &i2s1m1_sdo2 &i2s1m1_sdo3>; 455 | status = "disabled"; 456 | }; 457 | 458 | &pinctrl { 459 | 460 | sdio-pwrseq { 461 | wifi_enable_h: wifi-enable-h { 462 | rockchip,pins = <2 RK_PB1 RK_FUNC_GPIO &pcfg_pull_none>; 463 | }; 464 | }; 465 | 466 | wireless-wlan { 467 | wifi_host_wake_irq: wifi-host-wake-irq { 468 | rockchip,pins = <2 RK_PB2 RK_FUNC_GPIO &pcfg_pull_down>; 469 | }; 470 | }; 471 | 472 | bt { 473 | bt_enable_h: bt-enable-h { 474 | rockchip,pins = <2 RK_PB7 RK_FUNC_GPIO &pcfg_pull_none>; 475 | }; 476 | 477 | bt_host_wake_l: bt-host-wake-l { 478 | rockchip,pins = <2 RK_PC0 RK_FUNC_GPIO &pcfg_pull_none>; 479 | }; 480 | 481 | bt_wake_l: bt-wake-l { 482 | rockchip,pins = <2 RK_PC1 RK_FUNC_GPIO &pcfg_pull_none>; 483 | }; 484 | }; 485 | 486 | leds { 487 | led_pwr_enable_h: led-pwr-enable-h { 488 | rockchip,pins = <0 RK_PD4 RK_FUNC_GPIO &pcfg_pull_none>; 489 | }; 490 | 491 | led_wifi_enable_h: led-wifi-enable-h { 492 | rockchip,pins = <0 RK_PD6 RK_FUNC_GPIO &pcfg_pull_none>; 493 | }; 494 | 495 | led_eth_enable_h: led-eth-enable-h { 496 | rockchip,pins = <0 RK_PD5 RK_FUNC_GPIO &pcfg_pull_none>; 497 | }; 498 | 499 | led_status_enable_h: led-status-enable-h { 500 | rockchip,pins = <0 RK_PD3 RK_FUNC_GPIO &pcfg_pull_none>; 501 | }; 502 | }; 503 | 504 | pmic { 505 | pmic_int_l: pmic-int-l { 506 | rockchip,pins = <0 RK_PA3 RK_FUNC_GPIO &pcfg_pull_up>; 507 | }; 508 | }; 509 | }; 510 | 511 | &pmu_io_domains { 512 | pmuio1-supply = <&vcc3v3_pmu>; 513 | pmuio2-supply = <&vcc3v3_pmu>; 514 | vccio1-supply = <&vccio_acodec>; 515 | vccio2-supply = <&vcc_1v8>; 516 | vccio3-supply = <&vccio_sd>; 517 | vccio4-supply = <&vcc_1v8>; 518 | vccio5-supply = <&vcc_3v3>; 519 | vccio6-supply = <&vcc_3v3>; 520 | vccio7-supply = <&vcc_3v3>; 521 | status = "okay"; 522 | }; 523 | 524 | &saradc { 525 | vref-supply = <&vcca_1v8>; 526 | status = "okay"; 527 | }; 528 | 529 | &sdhci { 530 | bus-width = <8>; 531 | max-frequency = <200000000>; 532 | no-sdio; 533 | no-sd; 534 | mmc-hs200-1_8v; 535 | supports-emmc; 536 | non-removable; 537 | status = "okay"; 538 | }; 539 | 540 | &sdmmc0 { 541 | bus-width = <4>; 542 | max-frequency = <150000000>; 543 | cap-mmc-highspeed; 544 | cap-sd-highspeed; 545 | supports-sd; 546 | disable-wp; 547 | pinctrl-names = "default"; 548 | pinctrl-0 = <&sdmmc0_bus4 &sdmmc0_clk &sdmmc0_cmd &sdmmc0_det>; 549 | vmmc-supply = <&vcc3v3_sd>; 550 | vqmmc-supply = <&vccio_sd>; 551 | status = "okay"; 552 | }; 553 | 554 | &sdmmc1 { 555 | #address-cells = <1>; 556 | #size-cells = <0>; 557 | bus-width = <4>; 558 | max-frequency = <150000000>; 559 | cap-sd-highspeed; 560 | sd-uhs-sdr104; 561 | cap-sdio-irq; 562 | disable-wp; 563 | supports-sdio; 564 | non-removable; 565 | keep-power-in-suspend; 566 | mmc-pwrseq = <&sdio_pwrseq>; 567 | pinctrl-names = "default"; 568 | pinctrl-0 = <&sdmmc1_bus4 &sdmmc1_cmd &sdmmc1_clk>; 569 | status = "okay"; 570 | }; 571 | 572 | &tsadc { 573 | status = "okay"; 574 | }; 575 | 576 | &uart1 { 577 | pinctrl-names = "default"; 578 | pinctrl-0 = <&uart1m0_xfer &uart1m0_ctsn &uart1m0_rtsn>; 579 | status = "disabled"; 580 | 581 | bluetooth { 582 | compatible = "brcm,bcm43438-bt"; 583 | clocks = <&rk809 1>; 584 | clock-names = "lpo"; 585 | device-wakeup-gpios = <&gpio2 RK_PC1 GPIO_ACTIVE_HIGH>; 586 | host-wakeup-gpios = <&gpio2 RK_PC0 GPIO_ACTIVE_HIGH>; 587 | shutdown-gpios = <&gpio2 RK_PB7 GPIO_ACTIVE_HIGH>; 588 | max-speed = <1500000>; 589 | pinctrl-names = "default"; 590 | pinctrl-0 = <&bt_host_wake_l &bt_wake_l &bt_enable_h>; 591 | vbat-supply = <&vcc3v3_sys>; 592 | vddio-supply = <&vcca1v8_pmu>; 593 | }; 594 | }; 595 | 596 | &uart2 { 597 | status = "disabled"; 598 | }; 599 | 600 | &usb_host0_ehci { 601 | status = "okay"; 602 | }; 603 | 604 | &usb_host0_ohci { 605 | status = "okay"; 606 | }; 607 | 608 | &usb2phy0 { 609 | status = "okay"; 610 | }; 611 | 612 | &u2phy0_host { 613 | status = "okay"; 614 | }; 615 | 616 | &u2phy0_otg { 617 | status = "okay"; 618 | }; 619 | 620 | &usbdrd_dwc3 { 621 | dr_mode = "host"; 622 | extcon = <&usb2phy0>; 623 | status = "okay"; 624 | }; 625 | 626 | &usbdrd30 { 627 | status = "okay"; 628 | }; 629 | 630 | &usbhost_dwc3 { 631 | status = "okay"; 632 | }; 633 | 634 | &usbhost30 { 635 | status = "okay"; 636 | }; 637 | 638 | &i2c1 { 639 | status = "okay"; 640 | clock-frequency = <100000>; 641 | }; 642 | 643 | &spi3 { 644 | status = "okay"; 645 | //assigned-clock-rates = <200000000>; //默认不用配置,SPI 设备工作时钟 646 | max-freq = <48000000>; /* spi internal clk, don't modify */ 647 | //dma-names = "tx","rx"; //使能DMA模式 648 | //rx-sample-delay-ns = <10>; //默认不用配置,读采样延时 649 | spi_dev@0 { 650 | compatible = "rockchip,spidev"; 651 | reg = <0>; 652 | spi-max-frequency = <12000000>; 653 | spi-lsb-first; 654 | }; 655 | }; 656 | 657 | // video output 658 | 659 | &hdmi { 660 | status = "disabled"; 661 | }; 662 | 663 | &i2s0_8ch { 664 | status = "okay"; 665 | }; 666 | 667 | &rng { 668 | status = "okay"; 669 | }; 670 | 671 | &reserved_memory { 672 | ramoops: ramoops@110000 { 673 | compatible = "ramoops"; 674 | reg = <0x0 0x110000 0x0 0xf0000>; 675 | record-size = <0x20000>; 676 | console-size = <0x80000>; 677 | ftrace-size = <0x00000>; 678 | pmsg-size = <0x50000>; 679 | }; 680 | }; 681 | 682 | &bus_npu { 683 | bus-supply = <&vdd_logic>; 684 | pvtm-supply = <&vdd_cpu>; 685 | status = "okay"; 686 | }; 687 | 688 | &iep { 689 | status = "okay"; 690 | }; 691 | 692 | &iep_mmu { 693 | status = "okay"; 694 | }; 695 | 696 | &jpegd { 697 | status = "okay"; 698 | }; 699 | 700 | &jpegd_mmu { 701 | status = "okay"; 702 | }; 703 | 704 | &mpp_srv { 705 | status = "okay"; 706 | }; 707 | 708 | &rk_rga { 709 | status = "okay"; 710 | }; 711 | 712 | &rkvdec { 713 | status = "okay"; 714 | }; 715 | 716 | &rkvdec_mmu { 717 | status = "okay"; 718 | }; 719 | 720 | &rkvenc { 721 | venc-supply = <&vdd_logic>; 722 | status = "okay"; 723 | }; 724 | 725 | &rkvenc_mmu { 726 | status = "okay"; 727 | }; 728 | 729 | &rknpu { 730 | rknpu-supply = <&vdd_npu>; 731 | mem-supply = <&vdd_npu>; 732 | status = "okay"; 733 | }; 734 | 735 | &rknpu_mmu { 736 | status = "okay"; 737 | }; 738 | 739 | &vdpu { 740 | status = "okay"; 741 | }; 742 | 743 | &vdpu_mmu { 744 | status = "okay"; 745 | }; 746 | 747 | &vepu { 748 | status = "okay"; 749 | }; 750 | 751 | &vepu_mmu { 752 | status = "okay"; 753 | }; 754 | 755 | &vop { 756 | assigned-clocks = <&cru DCLK_VOP0>, <&cru DCLK_VOP1>, <&cru DCLK_VOP2>; 757 | assigned-clock-parents = <&pmucru PLL_HPLL>, <&cru PLL_VPLL>, <&cru PLL_GPLL>; 758 | status = "okay"; 759 | }; 760 | 761 | &vop_mmu { 762 | status = "okay"; 763 | }; 764 | -------------------------------------------------------------------------------- /configfiles/rk3568-dg-nas-lite-core.dtsi: -------------------------------------------------------------------------------- 1 | // SPDX-License-Identifier: (GPL-2.0+ OR MIT) 2 | /* 3 | * Copyright (c) 2020 Rockchip Electronics Co., Ltd. 4 | * 5 | */ 6 | 7 | #include 8 | #include 9 | #include 10 | #include 11 | #include 12 | #include 13 | 14 | / { 15 | adc_keys: adc-keys { 16 | compatible = "adc-keys"; 17 | io-channels = <&saradc 0>; 18 | io-channel-names = "buttons"; 19 | keyup-threshold-microvolt = <1800000>; 20 | poll-interval = <100>; 21 | 22 | vol-up-key { 23 | label = "volume up"; 24 | linux,code = ; 25 | press-threshold-microvolt = <1750>; 26 | }; 27 | 28 | vol-down-key { 29 | label = "volume down"; 30 | linux,code = ; 31 | press-threshold-microvolt = <297500>; 32 | }; 33 | 34 | menu-key { 35 | label = "menu"; 36 | linux,code = ; 37 | press-threshold-microvolt = <980000>; 38 | }; 39 | 40 | back-key { 41 | label = "back"; 42 | linux,code = ; 43 | press-threshold-microvolt = <1305500>; 44 | }; 45 | }; 46 | 47 | audiopwmout_diff: audiopwmout-diff { 48 | status = "disabled"; 49 | compatible = "simple-audio-card"; 50 | simple-audio-card,format = "i2s"; 51 | simple-audio-card,name = "rockchip,audiopwmout-diff"; 52 | simple-audio-card,mclk-fs = <256>; 53 | simple-audio-card,bitclock-master = <&master>; 54 | simple-audio-card,frame-master = <&master>; 55 | simple-audio-card,cpu { 56 | sound-dai = <&i2s3_2ch>; 57 | }; 58 | master: simple-audio-card,codec { 59 | sound-dai = <&dig_acodec>; 60 | }; 61 | }; 62 | 63 | dc_12v: dc-12v { 64 | compatible = "regulator-fixed"; 65 | regulator-name = "dc_12v"; 66 | regulator-always-on; 67 | regulator-boot-on; 68 | regulator-min-microvolt = <12000000>; 69 | regulator-max-microvolt = <12000000>; 70 | }; 71 | 72 | hdmi_sound: hdmi-sound { 73 | status = "disabled"; 74 | compatible = "rockchip,hdmi"; 75 | rockchip,mclk-fs = <128>; 76 | rockchip,card-name = "rockchip,hdmi"; 77 | rockchip,cpu = <&i2s0_8ch>; 78 | rockchip,codec = <&hdmi>; 79 | }; 80 | 81 | vcc12v_sata: vcc12v-sata { 82 | compatible = "regulator-fixed"; 83 | regulator-name = "vcc12v_sata"; 84 | regulator-always-on; 85 | regulator-boot-on; 86 | regulator-min-microvolt = <12000000>; 87 | regulator-max-microvolt = <12000000>; 88 | enable-active-high; 89 | gpio = <&gpio3 RK_PA1 GPIO_ACTIVE_HIGH>; 90 | pinctrl-names = "default"; 91 | pinctrl-0 = <&vcc12V_sata_enable_h>; 92 | vin-supply = <&dc_12v>; 93 | }; 94 | 95 | pdmics: dummy-codec { 96 | status = "disabled"; 97 | compatible = "rockchip,dummy-codec"; 98 | #sound-dai-cells = <0>; 99 | }; 100 | 101 | pdm_mic_array: pdm-mic-array { 102 | status = "disabled"; 103 | compatible = "simple-audio-card"; 104 | simple-audio-card,name = "rockchip,pdm-mic-array"; 105 | simple-audio-card,cpu { 106 | sound-dai = <&pdm>; 107 | }; 108 | simple-audio-card,codec { 109 | sound-dai = <&pdmics>; 110 | }; 111 | }; 112 | 113 | rk809_sound: rk809-sound { 114 | status = "okay"; 115 | compatible = "simple-audio-card"; 116 | simple-audio-card,format = "i2s"; 117 | simple-audio-card,name = "rockchip,rk809-codec"; 118 | simple-audio-card,mclk-fs = <256>; 119 | 120 | simple-audio-card,cpu { 121 | sound-dai = <&i2s1_8ch>; 122 | }; 123 | simple-audio-card,codec { 124 | sound-dai = <&rk809_codec>; 125 | }; 126 | }; 127 | 128 | spdif-sound { 129 | status = "disabled"; 130 | compatible = "simple-audio-card"; 131 | simple-audio-card,name = "ROCKCHIP,SPDIF"; 132 | simple-audio-card,cpu { 133 | sound-dai = <&spdif_8ch>; 134 | }; 135 | simple-audio-card,codec { 136 | sound-dai = <&spdif_out>; 137 | }; 138 | }; 139 | 140 | spdif_out: spdif-out { 141 | status = "disabled"; 142 | compatible = "linux,spdif-dit"; 143 | #sound-dai-cells = <0>; 144 | }; 145 | 146 | vad_sound: vad-sound { 147 | status = "disabled"; 148 | compatible = "rockchip,multicodecs-card"; 149 | rockchip,card-name = "rockchip,rk3568-vad"; 150 | rockchip,cpu = <&i2s1_8ch>; 151 | rockchip,codec = <&rk809_codec>, <&vad>; 152 | }; 153 | 154 | vcc3v3_sys: vcc3v3-sys { 155 | compatible = "regulator-fixed"; 156 | regulator-name = "vcc3v3_sys"; 157 | regulator-always-on; 158 | regulator-boot-on; 159 | regulator-min-microvolt = <3300000>; 160 | regulator-max-microvolt = <3300000>; 161 | vin-supply = <&dc_12v>; 162 | }; 163 | 164 | sata_en: sata_en { 165 | compatible = "regulator-fixed"; 166 | regulator-name = "sata_en"; 167 | regulator-always-on; 168 | regulator-boot-on; 169 | regulator-min-microvolt = <3300000>; 170 | regulator-max-microvolt = <3300000>; 171 | enable-active-high; 172 | gpio = <&gpio3 RK_PA4 GPIO_ACTIVE_HIGH>; 173 | pinctrl-names = "default"; 174 | pinctrl-0 = <&asm1064_rst>; 175 | vin-supply = <&dc_12v>; 176 | }; 177 | 178 | vcc5v0_sys: vcc5v0-sys { 179 | compatible = "regulator-fixed"; 180 | regulator-name = "vcc5v0_sys"; 181 | regulator-always-on; 182 | regulator-boot-on; 183 | regulator-min-microvolt = <5000000>; 184 | regulator-max-microvolt = <5000000>; 185 | vin-supply = <&vcc3v3_sys>; 186 | }; 187 | /* 188 | vcc5v0_usb: vcc5v0-usb { 189 | compatible = "regulator-fixed"; 190 | regulator-name = "vcc5v0_usb"; 191 | regulator-always-on; 192 | regulator-boot-on; 193 | regulator-min-microvolt = <5000000>; 194 | regulator-max-microvolt = <5000000>; 195 | vin-supply = <&dc_12v>; 196 | }; 197 | */ 198 | vcc5v0_host: vcc5v0-host-regulator { 199 | compatible = "regulator-fixed"; 200 | regulator-name = "vcc5v0_host"; 201 | regulator-boot-on; 202 | regulator-always-on; 203 | regulator-min-microvolt = <5000000>; 204 | regulator-max-microvolt = <5000000>; 205 | // enable-active-high; 206 | // gpio = <&gpio0 RK_PD4 GPIO_ACTIVE_HIGH>; 207 | vin-supply = <&vcc5v0_sys>; 208 | // pinctrl-names = "default"; 209 | // pinctrl-0 = <&vcc5v0_host_en>; 210 | }; 211 | 212 | vcc5v0_otg: vcc5v0-otg-regulator { 213 | compatible = "regulator-fixed"; 214 | regulator-name = "vcc5v0_otg"; 215 | regulator-boot-on; 216 | regulator-always-on; 217 | regulator-min-microvolt = <5000000>; 218 | regulator-max-microvolt = <5000000>; 219 | enable-active-high; 220 | gpio = <&gpio0 RK_PA5 GPIO_ACTIVE_HIGH>; 221 | vin-supply = <&vcc5v0_sys>; 222 | pinctrl-names = "default"; 223 | pinctrl-0 = <&vcc5v0_otg_en>; 224 | }; 225 | 226 | test-power { 227 | status = "okay"; 228 | }; 229 | }; 230 | 231 | &bus_npu { 232 | bus-supply = <&vdd_logic>; 233 | pvtm-supply = <&vdd_cpu>; 234 | status = "okay"; 235 | }; 236 | 237 | &can0 { 238 | assigned-clocks = <&cru CLK_CAN0>; 239 | assigned-clock-rates = <150000000>; 240 | pinctrl-names = "default"; 241 | pinctrl-0 = <&can0m1_pins>; 242 | status = "disabled"; 243 | }; 244 | 245 | &can1 { 246 | assigned-clocks = <&cru CLK_CAN1>; 247 | assigned-clock-rates = <150000000>; 248 | pinctrl-names = "default"; 249 | pinctrl-0 = <&can1m1_pins>; 250 | status = "disabled"; 251 | }; 252 | 253 | &can2 { 254 | assigned-clocks = <&cru CLK_CAN2>; 255 | assigned-clock-rates = <150000000>; 256 | pinctrl-names = "default"; 257 | pinctrl-0 = <&can2m1_pins>; 258 | status = "disabled"; 259 | }; 260 | 261 | &cpu0 { 262 | cpu-supply = <&vdd_cpu>; 263 | }; 264 | 265 | &cpu1 { 266 | cpu-supply = <&vdd_cpu>; 267 | }; 268 | 269 | &cpu2 { 270 | cpu-supply = <&vdd_cpu>; 271 | }; 272 | 273 | &cpu3 { 274 | cpu-supply = <&vdd_cpu>; 275 | }; 276 | 277 | &dfi { 278 | status = "okay"; 279 | }; 280 | 281 | &dmc { 282 | center-supply = <&vdd_logic>; 283 | status = "okay"; 284 | 285 | system-status-level = < 286 | /*system status freq level*/ 287 | SYS_STATUS_NORMAL DMC_FREQ_LEVEL_MID_HIGH 288 | >; 289 | 290 | auto-freq-en = <0>; 291 | 292 | }; 293 | 294 | &gpu { 295 | mali-supply = <&vdd_gpu>; 296 | status = "okay"; 297 | }; 298 | 299 | &hdmi { 300 | status = "okay"; 301 | avdd-0v9-supply = <&vdda0v9_image>; 302 | avdd-1v8-supply = <&vcca1v8_image>; 303 | rockchip,phy-table = 304 | <92812500 0x8009 0x0000 0x0270>, 305 | <165000000 0x800b 0x0000 0x026d>, 306 | <185625000 0x800b 0x0000 0x01ed>, 307 | <297000000 0x800b 0x0000 0x01ad>, 308 | <594000000 0x8029 0x0000 0x0088>, 309 | <000000000 0x0000 0x0000 0x0000>; 310 | }; 311 | 312 | &hdmi_in_vp0 { 313 | status = "okay"; 314 | }; 315 | 316 | &hdmi_in_vp1 { 317 | status = "disabled"; 318 | }; 319 | 320 | &hdmi_sound { 321 | status = "okay"; 322 | }; 323 | 324 | &i2c0 { 325 | status = "okay"; 326 | 327 | 328 | vdd_cpu: syr827@40 { 329 | compatible = "silergy,syr827"; 330 | reg = <0x40>; 331 | vin-supply = <&vcc5v0_sys>; 332 | regulator-compatible = "fan53555-reg"; 333 | pinctrl-names = "default"; 334 | //pinctrl-0 = <&vsel1_gpios>; 335 | //vsel-gpios = <&gpio0 RK_PA2 GPIO_ACTIVE_HIGH>; 336 | regulator-name = "vdd_cpu"; 337 | regulator-min-microvolt = <712500>; 338 | regulator-max-microvolt = <1390000>; 339 | regulator-init-microvolt = <900000>; 340 | regulator-ramp-delay = <2300>; 341 | fcs,suspend-voltage-selector = <1>; 342 | regulator-always-on; 343 | regulator-boot-on; 344 | regulator-initial-state = <3>; 345 | regulator-state-mem { 346 | regulator-off-in-suspend; 347 | }; 348 | }; 349 | 350 | 351 | rk809: pmic@20 { 352 | compatible = "rockchip,rk809"; 353 | reg = <0x20>; 354 | interrupt-parent = <&gpio0>; 355 | interrupts = <3 IRQ_TYPE_LEVEL_LOW>; 356 | 357 | pinctrl-names = "default", "pmic-sleep", 358 | "pmic-power-off", "pmic-reset"; 359 | pinctrl-0 = <&pmic_int>; 360 | pinctrl-1 = <&soc_slppin_slp>, <&rk817_slppin_slp>; 361 | pinctrl-2 = <&soc_slppin_gpio>, <&rk817_slppin_pwrdn>; 362 | pinctrl-3 = <&soc_slppin_gpio>, <&rk817_slppin_rst>; 363 | 364 | rockchip,system-power-controller; 365 | wakeup-source; 366 | #clock-cells = <1>; 367 | clock-output-names = "rk808-clkout1", "rk808-clkout2"; 368 | //fb-inner-reg-idxs = <2>; 369 | /* 1: rst regs (default in codes), 0: rst the pmic */ 370 | pmic-reset-func = <0>; 371 | /* not save the PMIC_POWER_EN register in uboot */ 372 | not-save-power-en = <1>; 373 | 374 | vcc1-supply = <&vcc3v3_sys>; 375 | vcc2-supply = <&vcc3v3_sys>; 376 | vcc3-supply = <&vcc3v3_sys>; 377 | vcc4-supply = <&vcc3v3_sys>; 378 | vcc5-supply = <&vcc3v3_sys>; 379 | vcc6-supply = <&vcc3v3_sys>; 380 | vcc7-supply = <&vcc3v3_sys>; 381 | vcc8-supply = <&vcc3v3_sys>; 382 | vcc9-supply = <&vcc3v3_sys>; 383 | 384 | pwrkey { 385 | status = "okay"; 386 | }; 387 | 388 | pinctrl_rk8xx: pinctrl_rk8xx { 389 | gpio-controller; 390 | #gpio-cells = <2>; 391 | 392 | rk817_slppin_null: rk817_slppin_null { 393 | pins = "gpio_slp"; 394 | function = "pin_fun0"; 395 | }; 396 | 397 | rk817_slppin_slp: rk817_slppin_slp { 398 | pins = "gpio_slp"; 399 | function = "pin_fun1"; 400 | }; 401 | 402 | rk817_slppin_pwrdn: rk817_slppin_pwrdn { 403 | pins = "gpio_slp"; 404 | function = "pin_fun2"; 405 | }; 406 | 407 | rk817_slppin_rst: rk817_slppin_rst { 408 | pins = "gpio_slp"; 409 | function = "pin_fun3"; 410 | }; 411 | }; 412 | 413 | regulators { 414 | vdd_logic: DCDC_REG1 { 415 | regulator-always-on; 416 | regulator-boot-on; 417 | regulator-min-microvolt = <500000>; 418 | regulator-max-microvolt = <1350000>; 419 | regulator-init-microvolt = <900000>; 420 | regulator-ramp-delay = <6001>; 421 | regulator-initial-mode = <0x2>; 422 | regulator-name = "vdd_logic"; 423 | regulator-state-mem { 424 | regulator-off-in-suspend; 425 | }; 426 | }; 427 | 428 | vdd_gpu: DCDC_REG2 { 429 | regulator-always-on; 430 | regulator-boot-on; 431 | regulator-min-microvolt = <500000>; 432 | regulator-max-microvolt = <1350000>; 433 | regulator-init-microvolt = <900000>; 434 | regulator-ramp-delay = <6001>; 435 | regulator-initial-mode = <0x2>; 436 | regulator-name = "vdd_gpu"; 437 | regulator-state-mem { 438 | regulator-off-in-suspend; 439 | }; 440 | }; 441 | 442 | vcc_ddr: DCDC_REG3 { 443 | regulator-always-on; 444 | regulator-boot-on; 445 | regulator-initial-mode = <0x2>; 446 | regulator-name = "vcc_ddr"; 447 | regulator-state-mem { 448 | regulator-on-in-suspend; 449 | }; 450 | }; 451 | 452 | vdd_npu: DCDC_REG4 { 453 | regulator-always-on; 454 | regulator-boot-on; 455 | regulator-min-microvolt = <500000>; 456 | regulator-max-microvolt = <1350000>; 457 | regulator-init-microvolt = <900000>; 458 | regulator-ramp-delay = <6001>; 459 | regulator-initial-mode = <0x2>; 460 | regulator-name = "vdd_npu"; 461 | regulator-state-mem { 462 | regulator-off-in-suspend; 463 | }; 464 | }; 465 | 466 | vdda0v9_image: LDO_REG1 { 467 | regulator-boot-on; 468 | regulator-always-on; 469 | regulator-min-microvolt = <900000>; 470 | regulator-max-microvolt = <900000>; 471 | regulator-name = "vdda0v9_image"; 472 | regulator-state-mem { 473 | regulator-off-in-suspend; 474 | }; 475 | }; 476 | 477 | vdda_0v9: LDO_REG2 { 478 | regulator-always-on; 479 | regulator-boot-on; 480 | regulator-min-microvolt = <900000>; 481 | regulator-max-microvolt = <900000>; 482 | regulator-name = "vdda_0v9"; 483 | regulator-state-mem { 484 | regulator-off-in-suspend; 485 | }; 486 | }; 487 | 488 | vdda0v9_pmu: LDO_REG3 { 489 | regulator-always-on; 490 | regulator-boot-on; 491 | regulator-min-microvolt = <900000>; 492 | regulator-max-microvolt = <900000>; 493 | regulator-name = "vdda0v9_pmu"; 494 | regulator-state-mem { 495 | regulator-on-in-suspend; 496 | regulator-suspend-microvolt = <900000>; 497 | }; 498 | }; 499 | 500 | vccio_acodec: LDO_REG4 { 501 | regulator-always-on; 502 | regulator-boot-on; 503 | regulator-min-microvolt = <3300000>; 504 | regulator-max-microvolt = <3300000>; 505 | regulator-name = "vccio_acodec"; 506 | regulator-state-mem { 507 | regulator-off-in-suspend; 508 | }; 509 | }; 510 | 511 | vccio_sd: LDO_REG5 { 512 | regulator-always-on; 513 | regulator-boot-on; 514 | regulator-min-microvolt = <1800000>; 515 | regulator-max-microvolt = <3300000>; 516 | regulator-name = "vccio_sd"; 517 | regulator-state-mem { 518 | regulator-off-in-suspend; 519 | }; 520 | }; 521 | 522 | vcc3v3_pmu: LDO_REG6 { 523 | regulator-always-on; 524 | regulator-boot-on; 525 | regulator-min-microvolt = <3300000>; 526 | regulator-max-microvolt = <3300000>; 527 | regulator-name = "vcc3v3_pmu"; 528 | regulator-state-mem { 529 | regulator-on-in-suspend; 530 | regulator-suspend-microvolt = <3300000>; 531 | }; 532 | }; 533 | 534 | vcca_1v8: LDO_REG7 { 535 | regulator-always-on; 536 | regulator-boot-on; 537 | regulator-min-microvolt = <1800000>; 538 | regulator-max-microvolt = <1800000>; 539 | regulator-name = "vcca_1v8"; 540 | regulator-state-mem { 541 | regulator-off-in-suspend; 542 | }; 543 | }; 544 | 545 | vcca1v8_pmu: LDO_REG8 { 546 | regulator-always-on; 547 | regulator-boot-on; 548 | regulator-min-microvolt = <1800000>; 549 | regulator-max-microvolt = <1800000>; 550 | regulator-name = "vcca1v8_pmu"; 551 | regulator-state-mem { 552 | regulator-on-in-suspend; 553 | regulator-suspend-microvolt = <1800000>; 554 | }; 555 | }; 556 | 557 | vcca1v8_image: LDO_REG9 { 558 | regulator-always-on; 559 | regulator-boot-on; 560 | regulator-min-microvolt = <1800000>; 561 | regulator-max-microvolt = <1800000>; 562 | regulator-name = "vcca1v8_image"; 563 | regulator-state-mem { 564 | regulator-off-in-suspend; 565 | }; 566 | }; 567 | 568 | vcc_1v8: DCDC_REG5 { 569 | regulator-always-on; 570 | regulator-boot-on; 571 | regulator-min-microvolt = <1800000>; 572 | regulator-max-microvolt = <1800000>; 573 | regulator-name = "vcc_1v8"; 574 | regulator-state-mem { 575 | regulator-off-in-suspend; 576 | }; 577 | }; 578 | 579 | vcc_3v3: SWITCH_REG1 { 580 | regulator-always-on; 581 | regulator-boot-on; 582 | regulator-name = "vcc_3v3"; 583 | regulator-state-mem { 584 | regulator-off-in-suspend; 585 | }; 586 | }; 587 | 588 | vcc3v3_sd: SWITCH_REG2 { 589 | regulator-always-on; 590 | regulator-boot-on; 591 | regulator-name = "vcc3v3_sd"; 592 | regulator-state-mem { 593 | regulator-off-in-suspend; 594 | }; 595 | }; 596 | }; 597 | 598 | rk809_codec: codec { 599 | #sound-dai-cells = <0>; 600 | compatible = "rockchip,rk809-codec", "rockchip,rk817-codec"; 601 | clocks = <&cru I2S1_MCLKOUT>; 602 | clock-names = "mclk"; 603 | assigned-clocks = <&cru I2S1_MCLKOUT>, <&cru I2S1_MCLK_TX_IOE>; 604 | assigned-clock-rates = <12288000>; 605 | assigned-clock-parents = <&cru I2S1_MCLKOUT_TX>, <&cru I2S1_MCLKOUT_TX>; 606 | pinctrl-names = "default"; 607 | pinctrl-0 = <&i2s1m0_mclk>; 608 | hp-volume = <20>; 609 | spk-volume = <3>; 610 | mic-in-differential; 611 | status = "okay"; 612 | }; 613 | }; 614 | }; 615 | 616 | &i2s0_8ch { 617 | status = "okay"; 618 | }; 619 | 620 | &i2s1_8ch { 621 | status = "okay"; 622 | rockchip,clk-trcm = <1>; 623 | pinctrl-names = "default"; 624 | pinctrl-0 = <&i2s1m0_sclktx 625 | &i2s1m0_lrcktx 626 | &i2s1m0_sdi0 627 | &i2s1m0_sdo0>; 628 | }; 629 | 630 | &iep { 631 | status = "okay"; 632 | }; 633 | 634 | &iep_mmu { 635 | status = "okay"; 636 | }; 637 | 638 | &jpegd { 639 | status = "okay"; 640 | }; 641 | 642 | &jpegd_mmu { 643 | status = "okay"; 644 | }; 645 | 646 | &mpp_srv { 647 | status = "okay"; 648 | }; 649 | 650 | &nandc0 { 651 | #address-cells = <1>; 652 | #size-cells = <0>; 653 | status = "okay"; 654 | 655 | nand@0 { 656 | reg = <0>; 657 | nand-bus-width = <8>; 658 | nand-ecc-mode = "hw"; 659 | nand-ecc-strength = <16>; 660 | nand-ecc-step-size = <1024>; 661 | }; 662 | }; 663 | 664 | &pinctrl { 665 | pmic { 666 | pmic_int: pmic_int { 667 | rockchip,pins = 668 | <0 RK_PA3 RK_FUNC_GPIO &pcfg_pull_up>; 669 | }; 670 | 671 | soc_slppin_gpio: soc_slppin_gpio { 672 | rockchip,pins = 673 | <0 RK_PA2 RK_FUNC_GPIO &pcfg_output_low_pull_down>; 674 | }; 675 | 676 | soc_slppin_slp: soc_slppin_slp { 677 | rockchip,pins = 678 | <0 RK_PA2 1 &pcfg_pull_up>; 679 | }; 680 | 681 | soc_slppin_rst: soc_slppin_rst { 682 | rockchip,pins = 683 | <0 RK_PA2 2 &pcfg_pull_none>; 684 | }; 685 | }; 686 | 687 | usb { 688 | vcc5v0_otg_en: vcc5v0-otg-en { 689 | rockchip,pins = <0 RK_PA5 RK_FUNC_GPIO &pcfg_pull_none>; 690 | }; 691 | }; 692 | 693 | sata { 694 | vcc12V_sata_enable_h: vcc12V_sata_enable_h { 695 | rockchip,pins = <3 RK_PA1 RK_FUNC_GPIO &pcfg_pull_none>; 696 | }; 697 | asm1064_rst: asm1064_rst { 698 | rockchip,pins = <3 RK_PA4 RK_FUNC_GPIO &pcfg_pull_none>; 699 | }; 700 | }; 701 | 702 | 703 | }; 704 | 705 | /* 706 | * There are 10 independent IO domains in RK3566/RK3568, including PMUIO[0:2] and VCCIO[1:7]. 707 | * 1/ PMUIO0 and PMUIO1 are fixed-level power domains which cannot be configured; 708 | * 2/ PMUIO2 and VCCIO1,VCCIO[3:7] domains require that their hardware power supply voltages 709 | * must be consistent with the software configuration correspondingly 710 | * a/ When the hardware IO level is connected to 1.8V, the software voltage configuration 711 | * should also be configured to 1.8V accordingly; 712 | * b/ When the hardware IO level is connected to 3.3V, the software voltage configuration 713 | * should also be configured to 3.3V accordingly; 714 | * 3/ VCCIO2 voltage control selection (0xFDC20140) 715 | * BIT[0]: 0x0: from GPIO_0A7 (default) 716 | * BIT[0]: 0x1: from GRF 717 | * Default is determined by Pin FLASH_VOL_SEL/GPIO0_A7: 718 | * L:VCCIO2 must supply 3.3V 719 | * H:VCCIO2 must supply 1.8V 720 | */ 721 | /* 722 | &pmu_io_domains { 723 | status = "okay"; 724 | pmuio2-supply = <&vcc3v3_pmu>; 725 | vccio1-supply = <&vccio_acodec>; 726 | vccio3-supply = <&vccio_sd>; 727 | vccio4-supply = <&vcc_1v8>; 728 | vccio5-supply = <&vcc_3v3>; 729 | vccio6-supply = <&vcc_1v8>; 730 | vccio7-supply = <&vcc_3v3>; 731 | }; 732 | */ 733 | 734 | &pmu_io_domains { 735 | pmuio1-supply = <&vcc3v3_pmu>; 736 | pmuio2-supply = <&vcc3v3_pmu>; 737 | vccio1-supply = <&vccio_acodec>; 738 | vccio2-supply = <&vcc_1v8>; 739 | vccio3-supply = <&vccio_sd>; 740 | vccio4-supply = <&vcc_1v8>; 741 | vccio5-supply = <&vcc_3v3>; 742 | vccio6-supply = <&vcc_1v8>; 743 | vccio7-supply = <&vcc_3v3>; 744 | status = "okay"; 745 | }; 746 | 747 | &pwm7 { 748 | status = "okay"; 749 | 750 | compatible = "rockchip,remotectl-pwm"; 751 | remote_pwm_id = <3>; 752 | handle_cpu_id = <1>; 753 | remote_support_psci = <0>; 754 | pinctrl-names = "default"; 755 | pinctrl-0 = <&pwm7_pins>; 756 | 757 | ir_key1 { 758 | rockchip,usercode = <0x4040>; 759 | rockchip,key_table = 760 | <0xf2 KEY_REPLY>, 761 | <0xba KEY_BACK>, 762 | <0xf4 KEY_UP>, 763 | <0xf1 KEY_DOWN>, 764 | <0xef KEY_LEFT>, 765 | <0xee KEY_RIGHT>, 766 | <0xbd KEY_HOME>, 767 | <0xea KEY_VOLUMEUP>, 768 | <0xe3 KEY_VOLUMEDOWN>, 769 | <0xe2 KEY_SEARCH>, 770 | <0xb2 KEY_POWER>, 771 | <0xbc KEY_MUTE>, 772 | <0xec KEY_MENU>, 773 | <0xbf 0x190>, 774 | <0xe0 0x191>, 775 | <0xe1 0x192>, 776 | <0xe9 183>, 777 | <0xe6 248>, 778 | <0xe8 185>, 779 | <0xe7 186>, 780 | <0xf0 388>, 781 | <0xbe 0x175>; 782 | }; 783 | 784 | ir_key2 { 785 | rockchip,usercode = <0xff00>; 786 | rockchip,key_table = 787 | <0xf9 KEY_HOME>, 788 | <0xbf KEY_BACK>, 789 | <0xfb KEY_MENU>, 790 | <0xaa KEY_REPLY>, 791 | <0xb9 KEY_UP>, 792 | <0xe9 KEY_DOWN>, 793 | <0xb8 KEY_LEFT>, 794 | <0xea KEY_RIGHT>, 795 | <0xeb KEY_VOLUMEDOWN>, 796 | <0xef KEY_VOLUMEUP>, 797 | <0xf7 KEY_MUTE>, 798 | <0xe7 KEY_POWER>, 799 | <0xfc KEY_POWER>, 800 | <0xa9 KEY_VOLUMEDOWN>, 801 | <0xa8 KEY_VOLUMEDOWN>, 802 | <0xe0 KEY_VOLUMEDOWN>, 803 | <0xa5 KEY_VOLUMEDOWN>, 804 | <0xab 183>, 805 | <0xb7 388>, 806 | <0xe8 388>, 807 | <0xf8 184>, 808 | <0xaf 185>, 809 | <0xed KEY_VOLUMEDOWN>, 810 | <0xee 186>, 811 | <0xb3 KEY_VOLUMEDOWN>, 812 | <0xf1 KEY_VOLUMEDOWN>, 813 | <0xf2 KEY_VOLUMEDOWN>, 814 | <0xf3 KEY_SEARCH>, 815 | <0xb4 KEY_VOLUMEDOWN>, 816 | <0xbe KEY_SEARCH>; 817 | }; 818 | 819 | ir_key3 { 820 | rockchip,usercode = <0x1dcc>; 821 | rockchip,key_table = 822 | <0xee KEY_REPLY>, 823 | <0xf0 KEY_BACK>, 824 | <0xf8 KEY_UP>, 825 | <0xbb KEY_DOWN>, 826 | <0xef KEY_LEFT>, 827 | <0xed KEY_RIGHT>, 828 | <0xfc KEY_HOME>, 829 | <0xf1 KEY_VOLUMEUP>, 830 | <0xfd KEY_VOLUMEDOWN>, 831 | <0xb7 KEY_SEARCH>, 832 | <0xff KEY_POWER>, 833 | <0xf3 KEY_MUTE>, 834 | <0xbf KEY_MENU>, 835 | <0xf9 0x191>, 836 | <0xf5 0x192>, 837 | <0xb3 388>, 838 | <0xbe KEY_1>, 839 | <0xba KEY_2>, 840 | <0xb2 KEY_3>, 841 | <0xbd KEY_4>, 842 | <0xf9 KEY_5>, 843 | <0xb1 KEY_6>, 844 | <0xfc KEY_7>, 845 | <0xf8 KEY_8>, 846 | <0xb0 KEY_9>, 847 | <0xb6 KEY_0>, 848 | <0xb5 KEY_BACKSPACE>; 849 | }; 850 | }; 851 | 852 | &rk_rga { 853 | status = "okay"; 854 | }; 855 | 856 | &rkvdec { 857 | status = "okay"; 858 | }; 859 | 860 | &rkvdec_mmu { 861 | status = "okay"; 862 | }; 863 | 864 | &rkvenc { 865 | venc-supply = <&vdd_logic>; 866 | status = "okay"; 867 | }; 868 | 869 | &rkvenc_mmu { 870 | status = "okay"; 871 | }; 872 | 873 | &rknpu { 874 | rknpu-supply = <&vdd_npu>; 875 | status = "okay"; 876 | }; 877 | 878 | &rknpu_mmu { 879 | status = "okay"; 880 | }; 881 | 882 | &route_hdmi { 883 | status = "okay"; 884 | connect = <&vp0_out_hdmi>; 885 | }; 886 | 887 | &saradc { 888 | status = "okay"; 889 | vref-supply = <&vcca_1v8>; 890 | }; 891 | 892 | &sdhci { 893 | bus-width = <8>; 894 | supports-emmc; 895 | non-removable; 896 | max-frequency = <200000000>; 897 | status = "okay"; 898 | }; 899 | 900 | &sdmmc0 { 901 | max-frequency = <150000000>; 902 | supports-sd; 903 | bus-width = <4>; 904 | cap-mmc-highspeed; 905 | cap-sd-highspeed; 906 | disable-wp; 907 | sd-uhs-sdr104; 908 | vmmc-supply = <&vcc3v3_sd>; 909 | vqmmc-supply = <&vccio_sd>; 910 | pinctrl-names = "default"; 911 | pinctrl-0 = <&sdmmc0_bus4 &sdmmc0_clk &sdmmc0_cmd &sdmmc0_det>; 912 | status = "okay"; 913 | }; 914 | 915 | &sfc { 916 | status = "okay"; 917 | }; 918 | 919 | &spdif_8ch { 920 | status = "disabled"; 921 | }; 922 | 923 | &tsadc { 924 | status = "okay"; 925 | }; 926 | 927 | &u2phy0_host { 928 | status = "okay"; 929 | }; 930 | 931 | &u2phy0_otg { 932 | status = "okay"; 933 | }; 934 | 935 | &u2phy1_host { 936 | status = "okay"; 937 | }; 938 | 939 | &u2phy1_otg { 940 | status = "okay"; 941 | }; 942 | 943 | &usb2phy0 { 944 | status = "okay"; 945 | }; 946 | 947 | &usb2phy1 { 948 | status = "okay"; 949 | }; 950 | 951 | &usb_host0_ehci { 952 | status = "okay"; 953 | }; 954 | 955 | &usb_host0_ohci { 956 | status = "okay"; 957 | }; 958 | 959 | &usb_host1_ehci { 960 | status = "okay"; 961 | }; 962 | 963 | &usb_host1_ohci { 964 | status = "okay"; 965 | }; 966 | 967 | &usbdrd_dwc3 { 968 | // dr_mode = "host"; 969 | extcon = <&usb2phy0>; 970 | status = "disabled"; 971 | }; 972 | 973 | &usbdrd30 { 974 | status = "okay"; 975 | }; 976 | 977 | &usbhost_dwc3 { 978 | status = "okay"; 979 | }; 980 | 981 | &usbhost30 { 982 | status = "okay"; 983 | }; 984 | 985 | &vad { 986 | rockchip,audio-src = <&i2s1_8ch>; 987 | rockchip,buffer-time-ms = <128>; 988 | rockchip,det-channel = <0>; 989 | rockchip,mode = <0>; 990 | }; 991 | 992 | &vdpu { 993 | status = "okay"; 994 | }; 995 | 996 | &vdpu_mmu { 997 | status = "okay"; 998 | }; 999 | 1000 | &vepu { 1001 | status = "okay"; 1002 | }; 1003 | 1004 | &vepu_mmu { 1005 | status = "okay"; 1006 | }; 1007 | 1008 | &vop { 1009 | status = "okay"; 1010 | assigned-clocks = <&cru DCLK_VOP0>, <&cru DCLK_VOP1>; 1011 | assigned-clock-parents = <&pmucru PLL_HPLL>, <&cru PLL_VPLL>; 1012 | }; 1013 | 1014 | &vop_mmu { 1015 | status = "okay"; 1016 | }; 1017 | -------------------------------------------------------------------------------- /configfiles/rk3568-dg-nas-lite.dts: -------------------------------------------------------------------------------- 1 | // SPDX-License-Identifier: (GPL-2.0+ OR MIT) 2 | /* 3 | * Copyright (c) 2020 Rockchip Electronics Co., Ltd. 4 | * 5 | */ 6 | 7 | /dts-v1/; 8 | 9 | #include 10 | #include "rk3568.dtsi" 11 | #include "rk3568-dg-nas-lite-core.dtsi" 12 | #include "rk3568-linux.dtsi" 13 | 14 | / { 15 | model = "DG NAS LITE"; 16 | compatible = "dg,nas-lite", "rockchip,rk3568"; 17 | 18 | aliases { 19 | ethernet0 = &gmac0; 20 | mmc0 = &sdhci; 21 | mmc1 = &sdmmc0; 22 | }; 23 | 24 | chosen: chosen { 25 | bootargs = "earlycon=uart8250,mmio32,0xfe660000 console=ttyFIQ0 root=PARTUUID=614e0000-0000 rw rootwait"; 26 | }; 27 | 28 | fiq_debugger: fiq-debugger { 29 | compatible = "rockchip,fiq-debugger"; 30 | rockchip,serial-id = <2>; 31 | rockchip,wake-irq = <0>; 32 | /* If enable uart uses irq instead of fiq */ 33 | rockchip,irq-mode-enable = <1>; 34 | rockchip,baudrate = <1500000>; /* Only 115200 and 1500000 */ 35 | interrupts = ; 36 | pinctrl-names = "default"; 37 | pinctrl-0 = <&uart2m0_xfer>; 38 | status = "okay"; 39 | }; 40 | 41 | debug: debug@fd904000 { 42 | compatible = "rockchip,debug"; 43 | reg = <0x0 0xfd904000 0x0 0x1000>, 44 | <0x0 0xfd905000 0x0 0x1000>, 45 | <0x0 0xfd906000 0x0 0x1000>, 46 | <0x0 0xfd907000 0x0 0x1000>; 47 | }; 48 | 49 | vcc_phy: vcc-phy-regulator { 50 | compatible = "regulator-fixed"; 51 | regulator-name = "vcc_phy"; 52 | regulator-always-on; 53 | regulator-boot-on; 54 | }; 55 | 56 | vcc2v8_dvp: vcc2v8-sys { 57 | compatible = "regulator-fixed"; 58 | regulator-name = "vcc2v8_dvp"; 59 | regulator-always-on; 60 | regulator-boot-on; 61 | regulator-min-microvolt = <2800000>; 62 | regulator-max-microvolt = <2800000>; 63 | vin-supply = <&vcc3v3_sys>; 64 | }; 65 | 66 | vcc1v8_dvp: vcc1v8-dvp { 67 | compatible = "regulator-fixed"; 68 | regulator-name = "vcc1v8_dvp"; 69 | regulator-always-on; 70 | regulator-boot-on; 71 | regulator-min-microvolt = <1800000>; 72 | regulator-max-microvolt = <1800000>; 73 | vin-supply = <&vcc3v3_sys>; 74 | }; 75 | /* 76 | vcc1v5_dvp: vcc1v5-dvp { 77 | compatible = "regulator-fixed"; 78 | regulator-name = "vcc1v5_dvp"; 79 | regulator-always-on; 80 | regulator-boot-on; 81 | regulator-min-microvolt = <1500000>; 82 | regulator-max-microvolt = <1500000>; 83 | vin-supply = <&vcc3v3_sys>; 84 | }; 85 | */ 86 | 87 | vcc0v9_dvp: vcc0v9-dvp { 88 | compatible = "regulator-fixed"; 89 | regulator-name = "vcc0v9_dvp"; 90 | regulator-always-on; 91 | regulator-boot-on; 92 | regulator-min-microvolt = <900000>; 93 | regulator-max-microvolt = <900000>; 94 | vin-supply = <&vcc3v3_sys>; 95 | }; 96 | 97 | /* 98 | sdio_pwrseq: sdio-pwrseq { 99 | compatible = "mmc-pwrseq-simple"; 100 | // clocks = <&rk809 1>; 101 | // clock-names = "ext_clock"; 102 | pinctrl-names = "default"; 103 | pinctrl-0 = <&wifi_enable_h>; 104 | 105 | post-power-on-delay-ms = <200>; 106 | reset-gpios = <&gpio3 RK_PD4 GPIO_ACTIVE_LOW>; 107 | status = "disabled"; 108 | }; 109 | 110 | vcc3v3_wifi: vcc3v3-wifi { 111 | compatible = "regulator-fixed"; 112 | regulator-name = "vcc3v3_wifi"; 113 | regulator-always-on; 114 | regulator-boot-on; 115 | regulator-min-microvolt = <3300000>; 116 | regulator-max-microvolt = <3300000>; 117 | enable-active-high; 118 | gpio = <&gpio3 RK_PD4 GPIO_ACTIVE_HIGH>; 119 | pinctrl-names = "default"; 120 | pinctrl-0 = <&wifi_enable_h>; 121 | vin-supply = <&vcc3v3_sys>; 122 | }; 123 | */ 124 | //wifi 125 | wireless_wlan { 126 | compatible = "wlan-platdata"; 127 | wifi_chip_type = "rtl8723du"; 128 | rockchip,grf = <&grf>; 129 | WIFI,poweren_gpio = <&gpio3 RK_PD4 GPIO_ACTIVE_HIGH>; 130 | keep_wifi_power_on; 131 | status = "okay"; 132 | }; 133 | 134 | wireless_bluetooth: wireless-bluetooth { 135 | compatible = "bluetooth-platdata"; 136 | clocks = <&rk809 1>; 137 | clock-names = "ext_clock"; 138 | //wifi-bt-power-toggle; 139 | status = "okay"; 140 | }; 141 | 142 | leds { 143 | compatible = "gpio-leds"; 144 | pinctrl-names = "default"; 145 | pinctrl-0 = <&led_user_1>, <&led_user_2>, <&led_sata_0>; 146 | 147 | led-user1 { 148 | label = "green:user1"; 149 | gpios = <&gpio3 RK_PB5 GPIO_ACTIVE_LOW>; 150 | linux,default-trigger = "heartbeat"; 151 | }; 152 | 153 | led-user2 { 154 | label = "blue:user2"; 155 | gpios = <&gpio3 RK_PB1 GPIO_ACTIVE_LOW>; 156 | }; 157 | 158 | led-sata0 { 159 | label = "green:sata0"; 160 | gpios = <&gpio3 RK_PA2 GPIO_ACTIVE_LOW>; 161 | }; 162 | }; 163 | 164 | fan: pwm-fan { 165 | compatible = "pwm-fan"; 166 | pwms = <&pwm0 0 40000 0>; 167 | fan-supply = <&dc_12v>; 168 | interrupt-parent = <&gpio0>; 169 | interrupts = <20 IRQ_TYPE_EDGE_FALLING>; 170 | pulses-per-revolution = <2>; 171 | }; 172 | 173 | }; 174 | 175 | &pwm0 { 176 | pinctrl-0 = <&pwm0m1_pins>; 177 | //4.19内核需要配置为default 178 | pinctrl-names = "default"; 179 | status = "okay"; 180 | }; 181 | 182 | &pwm4 { 183 | status = "disabled"; 184 | }; 185 | 186 | &pwm5 { 187 | status = "disabled"; 188 | }; 189 | 190 | &pwm15 { 191 | compatible = "rockchip,remotectl-pwm"; 192 | pinctrl-names = "default"; 193 | // pinctrl-names = "active"; 194 | pinctrl-0 = <&pwm15m0_pins>; 195 | remote_pwm_id = <3>; 196 | handle_cpu_id = <1>; 197 | remote_support_psci = <0>; 198 | status = "okay"; 199 | 200 | ir_key1 { 201 | rockchip,usercode = <0x4040>; 202 | rockchip,key_table = 203 | <0xf2 KEY_REPLY>, 204 | <0xba KEY_BACK>, 205 | <0xf4 KEY_UP>, 206 | <0xf1 KEY_DOWN>, 207 | <0xef KEY_LEFT>, 208 | <0xee KEY_RIGHT>, 209 | <0xbd KEY_HOME>, 210 | <0xea KEY_VOLUMEUP>, 211 | <0xe3 KEY_VOLUMEDOWN>, 212 | <0xe2 KEY_SEARCH>, 213 | <0xb2 KEY_POWER>, 214 | <0xbc KEY_MUTE>, 215 | <0xec KEY_MENU>, 216 | <0xbf 0x190>, 217 | <0xe0 0x191>, 218 | <0xe1 0x192>, 219 | <0xe9 183>, 220 | <0xe6 248>, 221 | <0xe8 185>, 222 | <0xe7 186>, 223 | <0xf0 388>, 224 | <0xbe 0x175>; 225 | }; 226 | 227 | ir_key2 { 228 | rockchip,usercode = <0xff00>; 229 | rockchip,key_table = 230 | <0xf9 KEY_HOME>, 231 | <0xbf KEY_BACK>, 232 | <0xfb KEY_MENU>, 233 | <0xaa KEY_REPLY>, 234 | <0xb9 KEY_UP>, 235 | <0xe9 KEY_DOWN>, 236 | <0xb8 KEY_LEFT>, 237 | <0xea KEY_RIGHT>, 238 | <0xeb KEY_VOLUMEDOWN>, 239 | <0xef KEY_VOLUMEUP>, 240 | <0xf7 KEY_MUTE>, 241 | <0xe7 KEY_POWER>, 242 | <0xfc KEY_POWER>, 243 | <0xa9 KEY_VOLUMEDOWN>, 244 | <0xa8 KEY_PLAYPAUSE>, 245 | <0xe0 KEY_VOLUMEDOWN>, 246 | <0xa5 KEY_VOLUMEDOWN>, 247 | <0xab 183>, 248 | <0xb7 388>, 249 | <0xe8 388>, 250 | <0xf8 184>, 251 | <0xaf 185>, 252 | <0xed KEY_VOLUMEDOWN>, 253 | <0xee 186>, 254 | <0xb3 KEY_VOLUMEDOWN>, 255 | <0xf1 KEY_VOLUMEDOWN>, 256 | <0xf2 KEY_VOLUMEDOWN>, 257 | <0xf3 KEY_SEARCH>, 258 | <0xb4 KEY_VOLUMEDOWN>, 259 | <0xa4 KEY_SETUP>, 260 | <0xbe KEY_SEARCH>; 261 | }; 262 | 263 | ir_key3 { 264 | rockchip,usercode = <0x1dcc>; 265 | rockchip,key_table = 266 | <0xee KEY_REPLY>, 267 | <0xf0 KEY_BACK>, 268 | <0xf8 KEY_UP>, 269 | <0xbb KEY_DOWN>, 270 | <0xef KEY_LEFT>, 271 | <0xed KEY_RIGHT>, 272 | <0xfc KEY_HOME>, 273 | <0xf1 KEY_VOLUMEUP>, 274 | <0xfd KEY_VOLUMEDOWN>, 275 | <0xb7 KEY_SEARCH>, 276 | <0xff KEY_POWER>, 277 | <0xf3 KEY_MUTE>, 278 | <0xbf KEY_MENU>, 279 | <0xf9 0x191>, 280 | <0xf5 0x192>, 281 | <0xb3 388>, 282 | <0xbe KEY_1>, 283 | <0xba KEY_2>, 284 | <0xb2 KEY_3>, 285 | <0xbd KEY_4>, 286 | <0xf9 KEY_5>, 287 | <0xb1 KEY_6>, 288 | <0xfc KEY_7>, 289 | <0xf8 KEY_8>, 290 | <0xb0 KEY_9>, 291 | <0xb6 KEY_0>, 292 | <0xb5 KEY_BACKSPACE>; 293 | }; 294 | 295 | ir_key4 { //jp-box 296 | rockchip,usercode = <0xfd01>; 297 | rockchip,key_table = 298 | <0x31 KEY_REPLY>, 299 | <0x2f KEY_BACK>, 300 | <0x35 KEY_UP>, 301 | <0x2d KEY_DOWN>, 302 | <0x66 KEY_LEFT>, 303 | <0x3e KEY_RIGHT>, 304 | <0x6a KEY_HOME>, 305 | <0x5e KEY_VOLUMEUP>, 306 | <0x47 KEY_VOLUMEDOWN>, 307 | <0x23 KEY_POWER>, 308 | <0x3a 388>, 309 | <0x0d KEY_F6>; 310 | }; 311 | 312 | /* 313 | key 102 HOME 314 | key 158 BACK 315 | key 108 DPAD_DOWN 316 | key 103 DPAD_UP 317 | key 105 DPAD_LEFT 318 | key 106 DPAD_RIGHT 319 | key 115 VOLUME_UP 320 | key 114 VOLUME_DOWN 321 | key 116 POWER 322 | key 232 DPAD_CENTER 323 | key 388 PROFILE_SWITCH 324 | key 64 TV_MEDIA_PLAY 325 | */ 326 | }; 327 | 328 | 329 | 330 | &csi2_dphy_hw { 331 | status = "disabled"; 332 | }; 333 | 334 | &csi2_dphy0 { 335 | status = "disabled"; 336 | }; 337 | 338 | &rkisp { 339 | status = "disabled"; 340 | }; 341 | 342 | &rkisp_mmu { 343 | status = "disabled"; 344 | }; 345 | 346 | &rkisp_vir0 { 347 | status = "disabled"; 348 | }; 349 | 350 | 351 | &i2c2 { 352 | status = "disabled"; 353 | }; 354 | 355 | &i2c3 { 356 | status = "okay"; 357 | }; 358 | 359 | &i2c4 { 360 | status = "disabled"; 361 | }; 362 | 363 | &i2c5 { 364 | status = "okay"; 365 | 366 | pcf8563: rtc@51 { 367 | status = "okay"; 368 | compatible = "nxp,pcf8563"; 369 | reg = <0x51>; 370 | #clock-cells = <0>; 371 | }; 372 | 373 | }; 374 | 375 | 376 | /*USB3.0 controller 对应lede usb_host0_xhci */ 377 | &usbdrd_dwc3 { 378 | dr_mode = "host"; 379 | extcon = <&usb2phy0>; 380 | status = "okay"; 381 | }; 382 | 383 | /*USB3.0 OTG PHY*/ 384 | &combphy0_us { 385 | status = "okay"; 386 | }; 387 | 388 | /*USB 3.0 HOST 与 SATA1 复用 对应lede usb_host1_xhci */ 389 | 390 | &usbhost_dwc3 { 391 | status = "okay"; 392 | }; 393 | 394 | 395 | /* 对应lede combphy1 */ 396 | &combphy1_usq { 397 | // rockchip,dis-u3otg1-port; 398 | status = "okay"; 399 | }; 400 | 401 | &sata0 { 402 | status = "okay"; 403 | }; 404 | 405 | &sata1 { 406 | status = "disabled"; 407 | }; 408 | 409 | /* PCIE */ 410 | &combphy2_psq { 411 | status = "okay"; 412 | }; 413 | 414 | &uart0 { 415 | status = "disabled"; 416 | pinctrl-names = "default"; 417 | pinctrl-0 = <&uart0_xfer>; 418 | }; 419 | 420 | &uart1 { 421 | status = "disabled"; 422 | }; 423 | 424 | &uart2 { 425 | status = "disabled"; 426 | }; 427 | 428 | &uart3 { 429 | status = "okay"; 430 | pinctrl-names = "default"; 431 | pinctrl-0 = <&uart3m1_xfer>; 432 | }; 433 | 434 | &uart4 { 435 | status = "disabled"; 436 | pinctrl-names = "default"; 437 | pinctrl-0 = <&uart4m0_xfer>; 438 | }; 439 | 440 | &uart5 { 441 | status = "okay"; 442 | pinctrl-names = "default"; 443 | pinctrl-0 = <&uart5m1_xfer>; 444 | }; 445 | 446 | &uart7 { 447 | status = "disabled"; 448 | // pinctrl-names = "default"; 449 | // pinctrl-0 = <&uart7m1_xfer>; 450 | }; 451 | 452 | &uart8 { 453 | status = "disabled"; 454 | pinctrl-names = "default"; 455 | pinctrl-0 = <&uart8m0_xfer>; 456 | }; 457 | 458 | &mdio0 { 459 | rgmii_phy0: phy@0 { 460 | compatible = "ethernet-phy-ieee802.3-c22"; 461 | reg = <0x0>; 462 | }; 463 | }; 464 | 465 | &mdio1 { 466 | rgmii_phy1: phy@1 { 467 | compatible = "ethernet-phy-ieee802.3-c22"; 468 | reg = <0x1>; 469 | }; 470 | }; 471 | 472 | &gmac0 { 473 | phy-mode = "rgmii"; 474 | //clock_in_out = "output"; 475 | clock_in_out = "input"; 476 | 477 | snps,reset-gpio = <&gpio3 RK_PA7 GPIO_ACTIVE_LOW>; 478 | snps,reset-active-low; 479 | /* Reset time is 20ms, 100ms for rtl8211f */ 480 | snps,reset-delays-us = <0 20000 100000>; 481 | 482 | assigned-clocks = <&cru SCLK_GMAC0_RX_TX>, <&cru SCLK_GMAC0>; 483 | assigned-clock-parents = <&cru SCLK_GMAC0_RGMII_SPEED>, <&cru CLK_MAC0_2TOP>; 484 | assigned-clock-rates = <0>, <125000000>; 485 | 486 | pinctrl-names = "default"; 487 | pinctrl-0 = <&gmac0_miim 488 | &gmac0_tx_bus2 489 | &gmac0_rx_bus2 490 | &gmac0_rgmii_clk 491 | &gmac0_rgmii_bus>; 492 | 493 | tx_delay = <0x2e>; 494 | rx_delay = <0x2a>; 495 | 496 | phy-handle = <&rgmii_phy0>; 497 | phy-supply = <&vcc_phy>; 498 | status = "okay"; 499 | }; 500 | 501 | &gmac1 { 502 | phy-mode = "rgmii"; 503 | //clock_in_out = "output"; 504 | clock_in_out = "input"; 505 | 506 | snps,reset-gpio = <&gpio3 RK_PA6 GPIO_ACTIVE_LOW>; 507 | snps,reset-active-low; 508 | 509 | snps,reset-delays-us = <0 20000 100000>; 510 | 511 | assigned-clocks = <&cru SCLK_GMAC1_RX_TX>, <&cru SCLK_GMAC1>; 512 | assigned-clock-parents = <&cru SCLK_GMAC1_RGMII_SPEED>, <&cru CLK_MAC1_2TOP>; 513 | assigned-clock-rates = <0>, <125000000>; 514 | 515 | pinctrl-names = "default"; 516 | pinctrl-0 = <&gmac1m1_miim 517 | &gmac1m1_tx_bus2 518 | &gmac1m1_rx_bus2 519 | &gmac1m1_rgmii_clk 520 | &gmac1m1_rgmii_bus>; 521 | 522 | tx_delay = <0x3d>; 523 | rx_delay = <0x23>; 524 | 525 | phy-handle = <&rgmii_phy1>; 526 | phy-supply = <&vcc_phy>; 527 | status = "disabled"; 528 | }; 529 | /* 530 | &sdmmc2 { 531 | supports-sdio; 532 | bus-width = <0x4>; 533 | disable-wp; 534 | cap-sd-highspeed; 535 | cap-sdio-irq; 536 | keep-power-in-suspend; 537 | // mmc-pwrseq = <&sdio_pwrseq>; 538 | non-removable; 539 | pinctrl-names = "default"; 540 | pinctrl-0 = <&sdmmc2m0_bus4 &sdmmc2m0_cmd &sdmmc2m0_clk>; 541 | sd-uhs-sdr104; 542 | status = "disabled"; 543 | }; 544 | */ 545 | &can1 { 546 | assigned-clocks = <&cru CLK_CAN1>; 547 | assigned-clock-rates = <150000000>; 548 | pinctrl-names = "default"; 549 | pinctrl-0 = <&can1m1_pins>; 550 | status = "disabled"; 551 | }; 552 | 553 | &can2 { 554 | assigned-clocks = <&cru CLK_CAN2>; 555 | assigned-clock-rates = <150000000>; 556 | pinctrl-names = "default"; 557 | pinctrl-0 = <&can2m1_pins>; 558 | status = "disabled"; 559 | }; 560 | 561 | 562 | &pcie2x1 { 563 | num-lanes = <1>; 564 | num-viewport = <4>; 565 | pinctrl-0 = <&asm1064_rst>; 566 | reset-gpios = <&gpio3 RK_PB6 GPIO_ACTIVE_HIGH>; 567 | vpcie3v3-supply = <&vcc5v0_sys>; 568 | status = "okay"; 569 | }; 570 | 571 | &pcie30phy { 572 | status = "okay"; 573 | }; 574 | 575 | &pcie3x2 { 576 | pinctrl-names = "default"; 577 | pinctrl-0 = <&pcie_reset_h>; 578 | reset-gpios = <&gpio0 RK_PC6 GPIO_ACTIVE_HIGH>; 579 | vpcie3v3-supply = <&vcc3v3_sys>; 580 | status = "okay"; 581 | }; 582 | 583 | &spi3 { 584 | status = "okay"; 585 | pinctrl-names = "default"; 586 | pinctrl-0 = <&spi3m1_cs0 &spi3m1_pins>; 587 | // pinctrl-1 = <&spi3m1_cs0 &spi3m1_pins_hs>; 588 | st7789v@0 { 589 | status = "okay"; 590 | compatible = "sitronix,st7789v"; 591 | reg = <0>; 592 | spi-max-frequency = <12000000>; 593 | bgr; 594 | fps = <30>; 595 | rotate = <90>; 596 | buswidth = <8>; 597 | dc-gpios = <&gpio0 RK_PB5 GPIO_ACTIVE_HIGH>; 598 | reset-gpios = <&gpio0 RK_PC0 GPIO_ACTIVE_LOW>; 599 | led-gpios = <&gpio3 RK_PC4 GPIO_ACTIVE_LOW>; 600 | debug = <0>; //等级0~7 越高信息越多 601 | }; 602 | }; 603 | 604 | &pwm7 { 605 | status = "disabled"; 606 | }; 607 | 608 | 609 | &rk809_codec { 610 | status = "disabled"; 611 | spk-mute-delay-ms = <30>; 612 | }; 613 | 614 | &rk809_sound { 615 | status = "disabled"; 616 | }; 617 | 618 | &spi1 { 619 | status = "okay"; 620 | pinctrl-names = "default"; 621 | pinctrl-0 = <3 RK_PC1 3 &pcfg_pull_none>; 622 | spi_dev@00 { 623 | compatible = "rockchip,spidev"; 624 | reg = <0x0>; 625 | spi-max-frequency = <0xb71b00>; 626 | }; 627 | }; 628 | 629 | 630 | /* 对应lede usb2phy0_host */ 631 | &u2phy0_host { 632 | phy-supply = <&vcc5v0_host>; 633 | status = "okay"; 634 | }; 635 | 636 | /* 对应lede usb2phy0_otg */ 637 | &u2phy0_otg { 638 | // vbus-supply = <&vcc5v0_otg>; 639 | status = "disabled"; 640 | }; 641 | 642 | /* lede usb2phy1_host */ 643 | &u2phy1_host { 644 | phy-supply = <&vcc5v0_host>; 645 | status = "okay"; 646 | }; 647 | 648 | /* lede usb2phy1_otg */ 649 | &u2phy1_otg { 650 | phy-supply = <&vcc5v0_host>; 651 | status = "okay"; 652 | }; 653 | 654 | 655 | &pinctrl { 656 | /* 657 | wifi { 658 | wifi_enable_h: wifi-enable-h { 659 | rockchip,pins = <3 RK_PD4 RK_FUNC_GPIO &pcfg_pull_none>; 660 | }; 661 | }; 662 | */ 663 | leds { 664 | led_user_1: led_user_1 { 665 | rockchip,pins = <3 RK_PB5 RK_FUNC_GPIO &pcfg_pull_none>; 666 | }; 667 | 668 | led_user_2: led_user_2 { 669 | rockchip,pins = <3 RK_PB1 RK_FUNC_GPIO &pcfg_pull_none>; 670 | }; 671 | 672 | led_sata_0: led_sata_0 { 673 | rockchip,pins = <3 RK_PA2 RK_FUNC_GPIO &pcfg_pull_none>; 674 | }; 675 | }; 676 | 677 | spi1 { 678 | /omit-if-no-ref/ 679 | spi1m1_mosi: spi1m1-mosi { 680 | rockchip,pins = 681 | <3 RK_PC1 3 &pcfg_pull_none>; 682 | }; 683 | 684 | }; 685 | 686 | fan-fg { 687 | fg_pin: fg-pin { 688 | rockchip,pins = <0 RK_PC4 RK_FUNC_GPIO &pcfg_pull_up>; 689 | }; 690 | }; 691 | 692 | pcie { 693 | pcie_reset_h: pcie-reset-h { 694 | rockchip,pins = <0 RK_PC6 RK_FUNC_GPIO &pcfg_pull_none>; 695 | }; 696 | }; 697 | 698 | }; 699 | 700 | &its { 701 | status = "okay"; 702 | }; 703 | 704 | &rng { 705 | status = "okay"; 706 | }; 707 | -------------------------------------------------------------------------------- /configfiles/rk3568-mrkaio-m68s-core.dtsi: -------------------------------------------------------------------------------- 1 | // SPDX-License-Identifier: (GPL-2.0+ OR MIT) 2 | 3 | #include 4 | #include 5 | #include 6 | #include 7 | #include 8 | #include 9 | #include 10 | #include "rk3568.dtsi" 11 | 12 | / { 13 | aliases { 14 | mmc1 = &sdmmc0; 15 | mmc0 = &sdhci; 16 | }; 17 | 18 | chosen: chosen { 19 | bootargs = "earlycon=uart8250,mmio32,0xfe660000 console=ttyFIQ0 root=PARTUUID=614e0000-0000 rw rootwait"; 20 | }; 21 | 22 | fiq-debugger { 23 | compatible = "rockchip,fiq-debugger"; 24 | rockchip,serial-id = <2>; 25 | rockchip,wake-irq = <0>; 26 | /* If enable uart uses irq instead of fiq */ 27 | rockchip,irq-mode-enable = <1>; 28 | rockchip,baudrate = <1500000>; /* Only 115200 and 1500000 */ 29 | interrupts = ; 30 | pinctrl-names = "default"; 31 | pinctrl-0 = <&uart2m0_xfer>; 32 | status = "okay"; 33 | }; 34 | 35 | debug: debug@fd904000 { 36 | compatible = "rockchip,debug"; 37 | reg = <0x0 0xfd904000 0x0 0x1000>, 38 | <0x0 0xfd905000 0x0 0x1000>, 39 | <0x0 0xfd906000 0x0 0x1000>, 40 | <0x0 0xfd907000 0x0 0x1000>; 41 | }; 42 | 43 | hdmi_sound: hdmi-sound { 44 | compatible = "simple-audio-card"; 45 | simple-audio-card,format = "i2s"; 46 | simple-audio-card,mclk-fs = <128>; 47 | simple-audio-card,name = "rockchip,hdmi"; 48 | status = "disabled"; 49 | 50 | simple-audio-card,cpu { 51 | sound-dai = <&i2s0_8ch>; 52 | }; 53 | simple-audio-card,codec { 54 | sound-dai = <&hdmi>; 55 | }; 56 | }; 57 | 58 | dc_12v: dc-12v-regulator { 59 | compatible = "regulator-fixed"; 60 | regulator-name = "dc_12v"; 61 | regulator-always-on; 62 | regulator-boot-on; 63 | regulator-min-microvolt = <12000000>; 64 | regulator-max-microvolt = <12000000>; 65 | }; 66 | 67 | vcc3v3_sys: vcc3v3-sys-regulator { 68 | compatible = "regulator-fixed"; 69 | regulator-name = "vcc3v3_sys"; 70 | regulator-always-on; 71 | regulator-boot-on; 72 | regulator-min-microvolt = <3300000>; 73 | regulator-max-microvolt = <3300000>; 74 | vin-supply = <&dc_12v>; 75 | }; 76 | 77 | vcc5v0_sys: vcc5v0-sys-regulator { 78 | compatible = "regulator-fixed"; 79 | regulator-name = "vcc5v0_sys"; 80 | regulator-always-on; 81 | regulator-boot-on; 82 | regulator-min-microvolt = <5000000>; 83 | regulator-max-microvolt = <5000000>; 84 | vin-supply = <&dc_12v>; 85 | }; 86 | 87 | vcc5v0_usb_host: vcc5v0-usb-host-regulator { 88 | compatible = "regulator-fixed"; 89 | regulator-name = "vcc5v0_usb_host"; 90 | enable-active-high; 91 | gpio = <&gpio0 RK_PA5 GPIO_ACTIVE_HIGH>; 92 | pinctrl-names = "default"; 93 | pinctrl-0 = <&vcc5v0_usb_host_en>; 94 | regulator-always-on; 95 | regulator-boot-on; 96 | }; 97 | 98 | vcc5v0_usb_otg: vcc5v0-usb-otg-regulator { 99 | compatible = "regulator-fixed"; 100 | regulator-name = "vcc5v0_usb_otg"; 101 | enable-active-high; 102 | gpio = <&gpio0 RK_PA6 GPIO_ACTIVE_HIGH>; 103 | pinctrl-names = "default"; 104 | pinctrl-0 = <&vcc5v0_usb_otg_en>; 105 | regulator-always-on; 106 | regulator-boot-on; 107 | }; 108 | }; 109 | 110 | &combphy0_us { 111 | status = "okay"; 112 | }; 113 | 114 | &combphy1_usq { 115 | status = "okay"; 116 | }; 117 | 118 | &combphy2_psq { 119 | status = "okay"; 120 | }; 121 | 122 | &cpu0 { 123 | cpu-supply = <&vdd_cpu>; 124 | }; 125 | 126 | &cpu1 { 127 | cpu-supply = <&vdd_cpu>; 128 | }; 129 | 130 | &cpu2 { 131 | cpu-supply = <&vdd_cpu>; 132 | }; 133 | 134 | &cpu3 { 135 | cpu-supply = <&vdd_cpu>; 136 | }; 137 | 138 | &dfi { 139 | status = "okay"; 140 | }; 141 | 142 | &dmc { 143 | center-supply = <&vdd_logic>; 144 | status = "okay"; 145 | }; 146 | 147 | &bus_npu { 148 | bus-supply = <&vdd_logic>; 149 | pvtm-supply = <&vdd_cpu>; 150 | status = "okay"; 151 | }; 152 | 153 | &jpegd { 154 | status = "okay"; 155 | }; 156 | 157 | &jpegd_mmu { 158 | status = "okay"; 159 | }; 160 | 161 | &mpp_srv { 162 | status = "okay"; 163 | }; 164 | 165 | &rk_rga { 166 | status = "okay"; 167 | }; 168 | 169 | &rkvdec { 170 | status = "okay"; 171 | }; 172 | 173 | &rkvdec_mmu { 174 | status = "okay"; 175 | }; 176 | 177 | &rkvenc { 178 | venc-supply = <&vdd_logic>; 179 | status = "okay"; 180 | }; 181 | 182 | &rkvenc_mmu { 183 | status = "okay"; 184 | }; 185 | 186 | &rknpu { 187 | rknpu-supply = <&vdd_npu>; 188 | mem-supply = <&vdd_npu>; 189 | status = "okay"; 190 | }; 191 | 192 | &rknpu_mmu { 193 | status = "okay"; 194 | }; 195 | 196 | &vdpu { 197 | status = "okay"; 198 | }; 199 | 200 | &vdpu_mmu { 201 | status = "okay"; 202 | }; 203 | 204 | &vepu { 205 | status = "okay"; 206 | }; 207 | 208 | &vepu_mmu { 209 | status = "okay"; 210 | }; 211 | 212 | &vop { 213 | assigned-clocks = <&cru DCLK_VOP0>, <&cru DCLK_VOP1>; 214 | assigned-clock-parents = <&pmucru PLL_HPLL>, <&cru PLL_VPLL>; 215 | support-multi-area; 216 | status = "okay"; 217 | }; 218 | 219 | &vop_mmu { 220 | status = "okay"; 221 | }; 222 | 223 | &gpu { 224 | mali-supply = <&vdd_gpu>; 225 | status = "okay"; 226 | }; 227 | 228 | &hdmi { 229 | avdd-0v9-supply = <&vdda0v9_image>; 230 | avdd-1v8-supply = <&vcca1v8_image>; 231 | rockchip,phy-table = 232 | <92812500 0x8009 0x0000 0x0270>, 233 | <165000000 0x800b 0x0000 0x026d>, 234 | <185625000 0x800b 0x0000 0x01ed>, 235 | <297000000 0x800b 0x0000 0x01ad>, 236 | <594000000 0x8029 0x0000 0x0088>, 237 | <000000000 0x0000 0x0000 0x0000>; 238 | status = "okay"; 239 | }; 240 | 241 | &hdmi_in_vp0 { 242 | status = "okay"; 243 | }; 244 | 245 | &hdmi_in_vp1 { 246 | status = "disabled"; 247 | }; 248 | 249 | &hdmi_sound { 250 | status = "okay"; 251 | }; 252 | 253 | &i2s0_8ch { 254 | status = "okay"; 255 | }; 256 | 257 | &i2c0 { 258 | status = "okay"; 259 | 260 | vdd_cpu: regulator@1c { 261 | compatible = "tcs,tcs4525"; 262 | reg = <0x1c>; 263 | fcs,suspend-voltage-selector = <1>; 264 | regulator-always-on; 265 | regulator-boot-on; 266 | regulator-min-microvolt = <712500>; 267 | regulator-max-microvolt = <1390000>; 268 | regulator-init-microvolt = <900000>; 269 | regulator-name = "vdd_cpu"; 270 | regulator-ramp-delay = <2300>; 271 | vin-supply = <&vcc5v0_sys>; 272 | regulator-state-mem { 273 | regulator-off-in-suspend; 274 | }; 275 | }; 276 | 277 | rk809: pmic@20 { 278 | compatible = "rockchip,rk809"; 279 | reg = <0x20>; 280 | interrupt-parent = <&gpio0>; 281 | interrupts = ; 282 | pinctrl-names = "default", "pmic-sleep", "pmic-power-off", "pmic-reset"; 283 | pinctrl-0 = <&pmic_int>; 284 | pinctrl-1 = <&soc_slppin_slp>, <&rk817_slppin_slp>; 285 | pinctrl-2 = <&soc_slppin_gpio>, <&rk817_slppin_pwrdn>; 286 | pinctrl-3 = <&soc_slppin_gpio>, <&rk817_slppin_rst>; 287 | rockchip,system-power-controller; 288 | wakeup-source; 289 | #clock-cells = <1>; 290 | clock-output-names = "rk808-clkout1", "rk808-clkout2"; 291 | //fb-inner-reg-idxs = <2>; 292 | /* 1: rst regs (default in codes), 0: rst the pmic */ 293 | pmic-reset-func = <0>; 294 | /* not save the PMIC_POWER_EN register in uboot */ 295 | not-save-power-en = <1>; 296 | 297 | vcc1-supply = <&vcc3v3_sys>; 298 | vcc2-supply = <&vcc3v3_sys>; 299 | vcc3-supply = <&vcc3v3_sys>; 300 | vcc4-supply = <&vcc3v3_sys>; 301 | vcc5-supply = <&vcc3v3_sys>; 302 | vcc6-supply = <&vcc3v3_sys>; 303 | vcc7-supply = <&vcc3v3_sys>; 304 | vcc8-supply = <&vcc3v3_sys>; 305 | vcc9-supply = <&vcc3v3_sys>; 306 | 307 | pwrkey { 308 | status = "okay"; 309 | }; 310 | 311 | pinctrl_rk8xx: pinctrl_rk8xx { 312 | gpio-controller; 313 | #gpio-cells = <2>; 314 | 315 | rk817_slppin_null: rk817_slppin_null { 316 | pins = "gpio_slp"; 317 | function = "pin_fun0"; 318 | }; 319 | 320 | rk817_slppin_slp: rk817_slppin_slp { 321 | pins = "gpio_slp"; 322 | function = "pin_fun1"; 323 | }; 324 | 325 | rk817_slppin_pwrdn: rk817_slppin_pwrdn { 326 | pins = "gpio_slp"; 327 | function = "pin_fun2"; 328 | }; 329 | 330 | rk817_slppin_rst: rk817_slppin_rst { 331 | pins = "gpio_slp"; 332 | function = "pin_fun3"; 333 | }; 334 | }; 335 | 336 | regulators { 337 | vdd_logic: DCDC_REG1 { 338 | regulator-always-on; 339 | regulator-boot-on; 340 | regulator-min-microvolt = <500000>; 341 | regulator-max-microvolt = <1350000>; 342 | regulator-init-microvolt = <900000>; 343 | regulator-ramp-delay = <6001>; 344 | regulator-initial-mode = <0x2>; 345 | regulator-name = "vdd_logic"; 346 | regulator-state-mem { 347 | regulator-off-in-suspend; 348 | }; 349 | }; 350 | 351 | vdd_gpu: DCDC_REG2 { 352 | regulator-always-on; 353 | regulator-boot-on; 354 | regulator-min-microvolt = <500000>; 355 | regulator-max-microvolt = <1350000>; 356 | regulator-init-microvolt = <900000>; 357 | regulator-ramp-delay = <6001>; 358 | regulator-initial-mode = <0x2>; 359 | regulator-name = "vdd_gpu"; 360 | regulator-state-mem { 361 | regulator-off-in-suspend; 362 | }; 363 | }; 364 | 365 | vcc_ddr: DCDC_REG3 { 366 | regulator-always-on; 367 | regulator-boot-on; 368 | regulator-initial-mode = <0x2>; 369 | regulator-name = "vcc_ddr"; 370 | regulator-state-mem { 371 | regulator-on-in-suspend; 372 | }; 373 | }; 374 | 375 | vdd_npu: DCDC_REG4 { 376 | regulator-always-on; 377 | regulator-boot-on; 378 | regulator-min-microvolt = <500000>; 379 | regulator-max-microvolt = <1350000>; 380 | regulator-init-microvolt = <900000>; 381 | regulator-ramp-delay = <6001>; 382 | regulator-initial-mode = <0x2>; 383 | regulator-name = "vdd_npu"; 384 | regulator-state-mem { 385 | regulator-off-in-suspend; 386 | }; 387 | }; 388 | 389 | vcc_1v8: DCDC_REG5 { 390 | regulator-always-on; 391 | regulator-boot-on; 392 | regulator-min-microvolt = <1800000>; 393 | regulator-max-microvolt = <1800000>; 394 | regulator-name = "vcc_1v8"; 395 | regulator-state-mem { 396 | regulator-off-in-suspend; 397 | }; 398 | }; 399 | 400 | vdda0v9_image: LDO_REG1 { 401 | regulator-always-on; 402 | regulator-boot-on; 403 | regulator-min-microvolt = <900000>; 404 | regulator-max-microvolt = <900000>; 405 | regulator-name = "vdda0v9_image"; 406 | regulator-state-mem { 407 | regulator-off-in-suspend; 408 | }; 409 | }; 410 | 411 | vdda_0v9: LDO_REG2 { 412 | regulator-always-on; 413 | regulator-boot-on; 414 | regulator-min-microvolt = <900000>; 415 | regulator-max-microvolt = <900000>; 416 | regulator-name = "vdda_0v9"; 417 | regulator-state-mem { 418 | regulator-off-in-suspend; 419 | }; 420 | }; 421 | 422 | vdda0v9_pmu: LDO_REG3 { 423 | regulator-always-on; 424 | regulator-boot-on; 425 | regulator-min-microvolt = <900000>; 426 | regulator-max-microvolt = <900000>; 427 | regulator-name = "vdda0v9_pmu"; 428 | regulator-state-mem { 429 | regulator-on-in-suspend; 430 | regulator-suspend-microvolt = <900000>; 431 | }; 432 | }; 433 | 434 | vccio_acodec: LDO_REG4 { 435 | regulator-always-on; 436 | regulator-boot-on; 437 | regulator-min-microvolt = <3300000>; 438 | regulator-max-microvolt = <3300000>; 439 | regulator-name = "vccio_acodec"; 440 | regulator-state-mem { 441 | regulator-off-in-suspend; 442 | }; 443 | }; 444 | 445 | vccio_sd: LDO_REG5 { 446 | regulator-always-on; 447 | regulator-boot-on; 448 | regulator-min-microvolt = <1800000>; 449 | regulator-max-microvolt = <3300000>; 450 | regulator-ramp-delay = <6001>; 451 | regulator-name = "vccio_sd"; 452 | regulator-state-mem { 453 | regulator-off-in-suspend; 454 | }; 455 | }; 456 | 457 | vcc3v3_pmu: LDO_REG6 { 458 | regulator-always-on; 459 | regulator-boot-on; 460 | regulator-min-microvolt = <3300000>; 461 | regulator-max-microvolt = <3300000>; 462 | regulator-name = "vcc3v3_pmu"; 463 | regulator-state-mem { 464 | regulator-on-in-suspend; 465 | regulator-suspend-microvolt = <3300000>; 466 | }; 467 | }; 468 | 469 | vcca_1v8: LDO_REG7 { 470 | regulator-always-on; 471 | regulator-boot-on; 472 | regulator-min-microvolt = <1800000>; 473 | regulator-max-microvolt = <1800000>; 474 | regulator-name = "vcca_1v8"; 475 | regulator-state-mem { 476 | regulator-off-in-suspend; 477 | }; 478 | }; 479 | 480 | vcca1v8_pmu: LDO_REG8 { 481 | regulator-always-on; 482 | regulator-boot-on; 483 | regulator-min-microvolt = <1800000>; 484 | regulator-max-microvolt = <1800000>; 485 | regulator-name = "vcca1v8_pmu"; 486 | regulator-state-mem { 487 | regulator-on-in-suspend; 488 | regulator-suspend-microvolt = <1800000>; 489 | }; 490 | }; 491 | 492 | vcca1v8_image: LDO_REG9 { 493 | regulator-always-on; 494 | regulator-boot-on; 495 | regulator-min-microvolt = <1800000>; 496 | regulator-max-microvolt = <1800000>; 497 | regulator-name = "vcca1v8_image"; 498 | regulator-state-mem { 499 | regulator-off-in-suspend; 500 | }; 501 | }; 502 | 503 | vcc_3v3: SWITCH_REG1 { 504 | regulator-always-on; 505 | regulator-boot-on; 506 | regulator-name = "vcc_3v3"; 507 | regulator-state-mem { 508 | regulator-off-in-suspend; 509 | }; 510 | }; 511 | 512 | vcc3v3_sd: SWITCH_REG2 { 513 | regulator-always-on; 514 | regulator-boot-on; 515 | regulator-name = "vcc3v3_sd"; 516 | regulator-state-mem { 517 | regulator-off-in-suspend; 518 | }; 519 | }; 520 | }; 521 | 522 | rk809_codec: codec { 523 | #sound-dai-cells = <1>; 524 | compatible = "rockchip,rk809-codec", "rockchip,rk817-codec"; 525 | clocks = <&cru I2S1_MCLKOUT>; 526 | clock-names = "mclk"; 527 | assigned-clocks = <&cru I2S1_MCLKOUT>, <&cru I2S1_MCLK_TX_IOE>; 528 | assigned-clock-rates = <12288000>; 529 | assigned-clock-parents = <&cru I2S1_MCLKOUT_TX>, <&cru I2S1_MCLKOUT_TX>; 530 | pinctrl-names = "default"; 531 | pinctrl-0 = <&i2s1m0_mclk>; 532 | hp-volume = <20>; 533 | spk-volume = <3>; 534 | mic-in-differential; 535 | status = "okay"; 536 | }; 537 | }; 538 | }; 539 | 540 | &pinctrl { 541 | pmic { 542 | pmic_int: pmic_int { 543 | rockchip,pins = <0 RK_PA3 RK_FUNC_GPIO &pcfg_pull_up>; 544 | }; 545 | 546 | soc_slppin_gpio: soc_slppin_gpio { 547 | rockchip,pins = <0 RK_PA2 RK_FUNC_GPIO &pcfg_output_low_pull_down>; 548 | }; 549 | 550 | soc_slppin_slp: soc_slppin_slp { 551 | rockchip,pins = <0 RK_PA2 1 &pcfg_pull_up>; 552 | }; 553 | 554 | soc_slppin_rst: soc_slppin_rst { 555 | rockchip,pins = <0 RK_PA2 2 &pcfg_pull_none>; 556 | }; 557 | }; 558 | }; 559 | 560 | &pmu_io_domains { 561 | pmuio1-supply = <&vcc3v3_pmu>; 562 | pmuio2-supply = <&vcc3v3_pmu>; 563 | vccio1-supply = <&vccio_acodec>; 564 | vccio2-supply = <&vcc_1v8>; 565 | vccio3-supply = <&vccio_sd>; 566 | vccio4-supply = <&vcc_1v8>; 567 | vccio5-supply = <&vcc_3v3>; 568 | vccio6-supply = <&vcc_1v8>; 569 | vccio7-supply = <&vcc_3v3>; 570 | status = "okay"; 571 | }; 572 | 573 | &rng { 574 | status = "okay"; 575 | }; 576 | 577 | &rockchip_suspend { 578 | status = "okay"; 579 | }; 580 | 581 | &route_hdmi { 582 | status = "okay"; 583 | connect = <&vp0_out_hdmi>; 584 | }; 585 | 586 | &saradc { 587 | vref-supply = <&vcca_1v8>; 588 | status = "okay"; 589 | }; 590 | 591 | &sdhci { 592 | max-frequency = <200000000>; 593 | bus-width = <8>; 594 | no-sdio; 595 | no-sd; 596 | supports-emmc; 597 | non-removable; 598 | mmc-hs200-1_8v; 599 | pinctrl-names = "default"; 600 | pinctrl-0 = <&emmc_bus8 &emmc_clk &emmc_cmd &emmc_datastrobe>; 601 | status = "okay"; 602 | }; 603 | 604 | &sdmmc0 { 605 | max-frequency = <150000000>; 606 | bus-width = <4>; 607 | cap-mmc-highspeed; 608 | cap-sd-highspeed; 609 | cd-gpios = <&gpio0 RK_PA4 GPIO_ACTIVE_LOW>; 610 | supports-sd; 611 | disable-wp; 612 | sd-uhs-sdr104; 613 | vmmc-supply = <&vcc3v3_sd>; 614 | vqmmc-supply = <&vccio_sd>; 615 | pinctrl-names = "default"; 616 | pinctrl-0 = <&sdmmc0_bus4 &sdmmc0_clk &sdmmc0_cmd &sdmmc0_det>; 617 | status = "okay"; 618 | }; 619 | 620 | &tsadc { 621 | rockchip,hw-tshut-mode = <1>; 622 | rockchip,hw-tshut-polarity = <0>; 623 | status = "okay"; 624 | }; 625 | 626 | &uart2 { 627 | status = "disabled"; 628 | }; 629 | 630 | &usb_host0_ehci { 631 | status = "okay"; 632 | }; 633 | 634 | &usb_host0_ohci { 635 | status = "okay"; 636 | }; 637 | 638 | &usb_host1_ehci { 639 | status = "okay"; 640 | }; 641 | 642 | &usb_host1_ohci { 643 | status = "okay"; 644 | }; 645 | 646 | &usb2phy0 { 647 | status = "okay"; 648 | }; 649 | 650 | &u2phy0_host { 651 | phy-supply = <&vcc5v0_usb_host>; 652 | status = "okay"; 653 | }; 654 | 655 | &u2phy0_otg { 656 | phy-supply = <&vcc5v0_usb_otg>; 657 | status = "okay"; 658 | }; 659 | 660 | &usb2phy1 { 661 | status = "okay"; 662 | }; 663 | 664 | &u2phy1_host { 665 | phy-supply = <&vcc5v0_usb_host>; 666 | status = "okay"; 667 | }; 668 | 669 | &u2phy1_otg { 670 | phy-supply = <&vcc5v0_usb_host>; 671 | status = "okay"; 672 | }; 673 | 674 | &usbdrd_dwc3 { 675 | dr_mode = "host"; 676 | extcon = <&usb2phy0>; 677 | status = "okay"; 678 | }; 679 | 680 | &usbdrd30 { 681 | status = "okay"; 682 | }; 683 | 684 | &usbhost_dwc3 { 685 | status = "okay"; 686 | }; 687 | 688 | &usbhost30 { 689 | status = "okay"; 690 | }; 691 | -------------------------------------------------------------------------------- /configfiles/rk3568-mrkaio-m68s-plus.dts: -------------------------------------------------------------------------------- 1 | // SPDX-License-Identifier: (GPL-2.0+ OR MIT) 2 | // Copyright (c) 2023 mleaf 3 | 4 | /dts-v1/; 5 | 6 | #include "rk3568-mrkaio-m68s-core.dtsi" 7 | 8 | / { 9 | model = "EZPRO Mrkaio M68S PLUS"; 10 | compatible = "ezpro,mrkaio-m68s-plus", "rockchip,rk3568"; 11 | 12 | aliases { 13 | ethernet0 = &r8125_1; 14 | ethernet1 = &r8125_2; 15 | mmc0 = &sdhci; 16 | led-boot = &power_led; 17 | led-failsafe = &power_led; 18 | led-running = &power_led; 19 | led-upgrade = &power_led; 20 | }; 21 | 22 | leds { 23 | compatible = "gpio-leds"; 24 | pinctrl-names = "default"; 25 | pinctrl-0 = <&power_led_pin>; 26 | 27 | power_led: led-power { 28 | label = "red:power"; 29 | gpios = <&gpio3 RK_PC0 GPIO_ACTIVE_HIGH>; 30 | }; 31 | }; 32 | 33 | switch_otg: switch-otg-regulator { 34 | compatible = "regulator-fixed"; 35 | gpio = <&gpio2 RK_PC6 GPIO_ACTIVE_LOW>; 36 | pinctrl-names = "default"; 37 | pinctrl-0 = <&usb_otg_switch_en>; 38 | regulator-name = "switch_otg"; 39 | regulator-always-on; 40 | }; 41 | 42 | vcc3v3_pcie: vcc3v3-pcie-regulator { 43 | compatible = "regulator-fixed"; 44 | enable-active-high; 45 | gpios = <&gpio0 RK_PD4 GPIO_ACTIVE_HIGH>; 46 | regulator-name = "vcc3v3_pcie"; 47 | regulator-min-microvolt = <3300000>; 48 | regulator-max-microvolt = <3300000>; 49 | startup-delay-us = <5000>; 50 | vin-supply = <&dc_12v>; 51 | }; 52 | }; 53 | 54 | &pcie30phy { 55 | data-lanes = <1 2>; 56 | status = "okay"; 57 | }; 58 | 59 | &pcie2x1 { 60 | num-viewport = <4>; 61 | reset-gpios = <&gpio2 RK_PB5 GPIO_ACTIVE_HIGH>; 62 | status = "okay"; 63 | 64 | pcie@0,0 { 65 | reg = <0x00000000 0 0 0 0>; 66 | #address-cells = <3>; 67 | #size-cells = <2>; 68 | 69 | r8125_1: pcie@01,0 { 70 | reg = <0x000000 0 0 0 0>; 71 | }; 72 | }; 73 | }; 74 | 75 | &pcie3x1 { 76 | num-viewport = <4>; 77 | reset-gpios = <&gpio0 RK_PA0 GPIO_ACTIVE_HIGH>; 78 | status = "okay"; 79 | 80 | pcie@0,0 { 81 | reg = <0x00100000 0 0 0 0>; 82 | #address-cells = <3>; 83 | #size-cells = <2>; 84 | 85 | r8125_2: pcie@10,0 { 86 | reg = <0x000000 0 0 0 0>; 87 | }; 88 | }; 89 | }; 90 | 91 | &pcie3x2 { 92 | num-lanes = <1>; 93 | max-link-speed = <2>; 94 | num-ib-windows = <8>; 95 | num-ob-windows = <8>; 96 | num-viewport = <4>; 97 | reset-gpios = <&gpio2 RK_PD6 GPIO_ACTIVE_HIGH>; 98 | vpcie3v3-supply = <&vcc3v3_pcie>; 99 | status = "okay"; 100 | }; 101 | 102 | &pinctrl { 103 | leds { 104 | power_led_pin: power-led-pin { 105 | rockchip,pins = <3 RK_PC0 RK_FUNC_GPIO &pcfg_pull_none>; 106 | }; 107 | }; 108 | 109 | usb { 110 | vcc5v0_usb_host_en: vcc5v0-usb-host-en { 111 | rockchip,pins = <2 RK_PB2 RK_FUNC_GPIO &pcfg_pull_none>; 112 | }; 113 | 114 | vcc5v0_usb_otg_en: vcc5v0-usb-otg-en { 115 | rockchip,pins = <2 RK_PB1 RK_FUNC_GPIO &pcfg_pull_none>; 116 | }; 117 | 118 | usb_otg_switch_en: usb-otg-switch-en { 119 | rockchip,pins = <2 RK_PC6 RK_FUNC_GPIO &pcfg_pull_none>; 120 | }; 121 | }; 122 | }; 123 | 124 | &gmac0 { 125 | status = "disabled"; 126 | }; 127 | 128 | &gmac1 { 129 | status = "disabled"; 130 | }; 131 | -------------------------------------------------------------------------------- /configfiles/rk3568-mrkaio-m68s.dts: -------------------------------------------------------------------------------- 1 | // SPDX-License-Identifier: (GPL-2.0+ OR MIT) 2 | // Copyright (c) 2022 AmadeusGhost 3 | 4 | /dts-v1/; 5 | 6 | #include "rk3568-mrkaio-m68s-core.dtsi" 7 | 8 | / { 9 | model = "EZPRO Mrkaio M68S"; 10 | compatible = "ezpro,mrkaio-m68s", "rockchip,rk3568"; 11 | 12 | aliases { 13 | ethernet0 = &gmac0; 14 | ethernet1 = &gmac1; 15 | mmc0 = &sdhci; 16 | led-boot = &power_led; 17 | led-failsafe = &power_led; 18 | led-running = &power_led; 19 | led-upgrade = &power_led; 20 | }; 21 | 22 | leds { 23 | compatible = "gpio-leds"; 24 | pinctrl-names = "default"; 25 | pinctrl-0 = <&power_led_pin>, <&sata_led_pin>; 26 | 27 | power_led: led-power { 28 | label = "red:power"; 29 | gpios = <&gpio4 RK_PC4 GPIO_ACTIVE_HIGH>; 30 | }; 31 | 32 | led-sata { 33 | label = "blue:sata"; 34 | gpios = <&gpio0 RK_PC2 GPIO_ACTIVE_HIGH>; 35 | linux,default-trigger = "disk-activity"; 36 | }; 37 | }; 38 | 39 | switch_otg: switch-otg-regulator { 40 | compatible = "regulator-fixed"; 41 | gpio = <&gpio0 RK_PD6 GPIO_ACTIVE_LOW>; 42 | pinctrl-names = "default"; 43 | pinctrl-0 = <&usb_otg_switch_en>; 44 | regulator-name = "switch_otg"; 45 | regulator-always-on; 46 | }; 47 | 48 | vcc5v0_ahci: vcc5v0-ahci-regulator { 49 | compatible = "regulator-fixed"; 50 | enable-active-high; 51 | gpio = <&gpio0 RK_PB6 GPIO_ACTIVE_HIGH>; 52 | pinctrl-names = "default"; 53 | pinctrl-0 = <&sata_pwr_en>; 54 | regulator-always-on; 55 | regulator-boot-on; 56 | regulator-min-microvolt = <5000000>; 57 | regulator-max-microvolt = <5000000>; 58 | regulator-name = "vcc5v0_ahci"; 59 | }; 60 | }; 61 | 62 | &gmac0 { 63 | assigned-clocks = <&cru SCLK_GMAC0_RX_TX>, <&cru SCLK_GMAC0>; 64 | assigned-clock-parents = <&cru SCLK_GMAC0_RGMII_SPEED>, <&cru CLK_MAC0_2TOP>; 65 | assigned-clock-rates = <0>, <125000000>; 66 | clock_in_out = "output"; 67 | phy-mode = "rgmii"; 68 | pinctrl-names = "default"; 69 | pinctrl-0 = <&gmac0_miim 70 | &gmac0_tx_bus2 71 | &gmac0_rx_bus2 72 | &gmac0_rgmii_clk 73 | &gmac0_rgmii_bus>; 74 | snps,reset-gpio = <&gpio3 RK_PA6 GPIO_ACTIVE_LOW>; 75 | snps,reset-active-low; 76 | /* Reset time is 20ms, 100ms for rtl8211f */ 77 | snps,reset-delays-us = <0 20000 100000>; 78 | tx_delay = <0x3c>; 79 | rx_delay = <0x2f>; 80 | phy-handle = <&rgmii_phy0>; 81 | status = "okay"; 82 | }; 83 | 84 | &gmac1 { 85 | assigned-clocks = <&cru SCLK_GMAC1_RX_TX>, <&cru SCLK_GMAC1>; 86 | assigned-clock-parents = <&cru SCLK_GMAC1_RGMII_SPEED>, <&cru CLK_MAC1_2TOP>; 87 | assigned-clock-rates = <0>, <125000000>; 88 | clock_in_out = "output"; 89 | phy-mode = "rgmii"; 90 | pinctrl-names = "default"; 91 | pinctrl-0 = <&gmac1m1_miim 92 | &gmac1m1_tx_bus2 93 | &gmac1m1_rx_bus2 94 | &gmac1m1_rgmii_clk 95 | &gmac1m1_rgmii_bus>; 96 | snps,reset-gpio = <&gpio3 RK_PA7 GPIO_ACTIVE_LOW>; 97 | snps,reset-active-low; 98 | /* Reset time is 20ms, 100ms for rtl8211f */ 99 | snps,reset-delays-us = <0 20000 100000>; 100 | tx_delay = <0x42>; 101 | rx_delay = <0x28>; 102 | phy-handle = <&rgmii_phy1>; 103 | phy-supply = <&vcca1v8_image>; 104 | status = "okay"; 105 | }; 106 | 107 | &mdio0 { 108 | rgmii_phy0: ethernet-phy@0 { 109 | compatible = "ethernet-phy-ieee802.3-c22"; 110 | reg = <0x0>; 111 | }; 112 | }; 113 | 114 | &mdio1 { 115 | rgmii_phy1: ethernet-phy@0 { 116 | compatible = "ethernet-phy-ieee802.3-c22"; 117 | reg = <0x0>; 118 | }; 119 | }; 120 | 121 | &pinctrl { 122 | leds { 123 | power_led_pin: power-led-pin { 124 | rockchip,pins = <4 RK_PC4 RK_FUNC_GPIO &pcfg_pull_none>; 125 | }; 126 | 127 | sata_led_pin: sata-led-pin { 128 | rockchip,pins = <0 RK_PC2 RK_FUNC_GPIO &pcfg_pull_none>; 129 | }; 130 | }; 131 | 132 | sata { 133 | sata_pwr_en: sata-pwr-en { 134 | rockchip,pins = <0 RK_PB6 RK_FUNC_GPIO &pcfg_pull_none>; 135 | }; 136 | }; 137 | 138 | usb { 139 | vcc5v0_usb_host_en: vcc5v0-usb-host-en { 140 | rockchip,pins = <0 RK_PA5 RK_FUNC_GPIO &pcfg_pull_none>; 141 | }; 142 | 143 | vcc5v0_usb_otg_en: vcc5v0-usb-otg-en { 144 | rockchip,pins = <0 RK_PA6 RK_FUNC_GPIO &pcfg_pull_none>; 145 | }; 146 | 147 | usb_otg_switch_en: usb-otg-switch-en { 148 | rockchip,pins = <0 RK_PD6 RK_FUNC_GPIO &pcfg_pull_none>; 149 | }; 150 | }; 151 | }; 152 | 153 | &sata2 { 154 | target-supply = <&vcc5v0_ahci>; 155 | status = "okay"; 156 | }; 157 | -------------------------------------------------------------------------------- /configfiles/swconfig_install: -------------------------------------------------------------------------------- 1 | #!/bin/sh /etc/rc.common 2 | 3 | START=99 4 | STOP=12 5 | 6 | board_name() { 7 | [ -e /tmp/sysinfo/board_name ] && cat /tmp/sysinfo/board_name || echo "generic" 8 | } 9 | 10 | start() { 11 | local board=$(board_name) 12 | case "$board" in 13 | nsy,g68-plus|\ 14 | nsy,g16-plus|\ 15 | bdy,g18-pro) 16 | if ! [ -s /etc/config/swconfig_lock ]; then 17 | cat < /etc/config/swconfig_lock 18 | true / 交换机初始化OK, 4wlan 1lan,最右边端口为wlan 19 | EOF 20 | /etc/init.d/network restart 21 | /etc/init.d/dnsmasq restart 22 | echo "交换机初始化OK, 4wlan 1lan,最右边端口为wlan" 23 | else 24 | echo "交换机已初始化过,不再重复执行" 25 | fi 26 | ;; 27 | *) 28 | return 1 29 | ;; 30 | esac 31 | } 32 | -------------------------------------------------------------------------------- /configfiles/ubus-examine.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | check_ubus() { 4 | if [ "$(pgrep rpcd | wc -l)" -gt 2 ]; then 5 | killall rpcd 2>/dev/null 6 | sleep 1 7 | fi 8 | 9 | if [ "$(pgrep ubusd | wc -l)" -eq 0 ]; then 10 | /sbin/ubusd & 11 | sleep 1 12 | fi 13 | 14 | if [ "$(pgrep rpcd | wc -l)" -eq 0 ] && [ "$(pgrep ubusd | wc -l)" -eq 1 ]; then 15 | /sbin/rpcd -s /var/run/ubus/ubus.sock -t 30 & 16 | sleep 1 17 | fi 18 | 19 | local datetime=$(date +"%Y-%m-%d %H:%M:%S") 20 | local rpcd_status=$(/etc/init.d/rpcd status 2>&1) 21 | local status_code=$(curl -o /dev/null -s -w "%{http_code}\n" http://127.0.0.1/cgi-bin/luci/ 2>/dev/null) 22 | if [ -z "$status_code" ]; then 23 | status_code="ERROR" 24 | fi 25 | 26 | if [[ "$status_code" == 500 || "$status_code" == 502 ]] && echo "$rpcd_status" | grep -q "running"; then 27 | echo "$datetime / Ubus服务异常1,正在重启Ubus。" 28 | killall rpcd 2>/dev/null 29 | sleep 1 30 | /sbin/rpcd -s /var/run/ubus/ubus.sock -t 30 & 31 | elif echo "$rpcd_status" | grep -q "failed" || echo "$rpcd_status" | grep -q "Command failed" || echo "$rpcd_status" | grep -q "Failed" || echo "$rpcd_status" | grep -q "Failed to connect to ubus" || echo "$rpcd_status" | grep -q "inactive"; then 32 | echo "$datetime / Ubus服务异常2,正在重启Ubus。" 33 | killall ubusd 2>/dev/null 34 | killall rpcd 2>/dev/null 35 | sleep 1 36 | /sbin/rpcd -s /var/run/ubus/ubus.sock -t 30 & 37 | elif echo "$rpcd_status" | grep -q "running"; then 38 | echo "$datetime / Ubus服务正在运行,一切正常。" 39 | fi 40 | } 41 | 42 | while true; do 43 | check_ubus 44 | sleep 60 45 | done 46 | -------------------------------------------------------------------------------- /configfiles/ubus_Makefile: -------------------------------------------------------------------------------- 1 | include $(TOPDIR)/rules.mk 2 | 3 | PKG_NAME:=ubus 4 | PKG_RELEASE:=1 5 | 6 | PKG_SOURCE_PROTO:=git 7 | PKG_SOURCE_URL=$(PROJECT_GIT)/project/ubus.git 8 | # PKG_SOURCE_URL:=https://git.openwrt.org/project/ubus.git 9 | PKG_SOURCE_DATE:=2023-12-18 10 | PKG_SOURCE_VERSION:=65bb027054def3b94a977229fd6ad62ddd32345b 11 | PKG_MIRROR_HASH:=skip 12 | PKG_ABI_VERSION:=$(call abi_version_str,$(PKG_SOURCE_DATE)) 13 | CMAKE_INSTALL:=1 14 | 15 | PKG_LICENSE:=LGPL-2.1 16 | PKG_LICENSE_FILES:= 17 | PKG_MAINTAINER:=Felix Fietkau 18 | 19 | PKG_ASLR_PIE_REGULAR:=1 20 | 21 | include $(INCLUDE_DIR)/package.mk 22 | include $(INCLUDE_DIR)/cmake.mk 23 | 24 | define Package/ubus 25 | SECTION:=base 26 | CATEGORY:=Base system 27 | DEPENDS:=+libubus +libblobmsg-json +ubusd 28 | TITLE:=OpenWrt RPC client utility 29 | endef 30 | 31 | define Package/ubusd 32 | SECTION:=base 33 | CATEGORY:=Base system 34 | TITLE:=OpenWrt RPC daemon 35 | DEPENDS:=+libubox +libblobmsg-json 36 | USERID:=ubus=81:ubus=81 37 | endef 38 | 39 | define Package/libubus 40 | SECTION:=libs 41 | CATEGORY:=Libraries 42 | DEPENDS:=+libubox 43 | ABI_VERSION:=$(PKG_ABI_VERSION) 44 | TITLE:=OpenWrt RPC client library 45 | endef 46 | 47 | define Package/libubus-lua 48 | SECTION:=libs 49 | CATEGORY:=Libraries 50 | DEPENDS:=+libubus +liblua 51 | TITLE:=Lua binding for the OpenWrt RPC client 52 | endef 53 | 54 | TARGET_CFLAGS += -I$(STAGING_DIR)/usr/include -flto 55 | TARGET_LDFLAGS += -flto 56 | 57 | CMAKE_OPTIONS += \ 58 | -DLUAPATH=/usr/lib/lua \ 59 | -DABIVERSION="$(PKG_ABI_VERSION)" 60 | 61 | define Package/ubus/install 62 | $(INSTALL_DIR) $(1)/bin 63 | $(CP) $(PKG_INSTALL_DIR)/usr/bin/ubus $(1)/bin/ 64 | endef 65 | 66 | define Package/ubusd/install 67 | $(INSTALL_DIR) $(1)/sbin 68 | $(CP) $(PKG_INSTALL_DIR)/usr/sbin/ubusd $(1)/sbin/ 69 | endef 70 | 71 | define Package/libubus/install 72 | $(INSTALL_DIR) $(1)/lib 73 | $(CP) $(PKG_INSTALL_DIR)/usr/lib/libubus.so.* $(1)/lib/ 74 | endef 75 | 76 | define Package/libubus-lua/install 77 | $(INSTALL_DIR) $(1)/usr/lib/lua 78 | $(CP) $(PKG_BUILD_DIR)/lua/ubus.so $(1)/usr/lib/lua/ 79 | endef 80 | 81 | $(eval $(call BuildPackage,libubus)) 82 | $(eval $(call BuildPackage,libubus-lua)) 83 | $(eval $(call BuildPackage,ubus)) 84 | $(eval $(call BuildPackage,ubusd)) 85 | -------------------------------------------------------------------------------- /depends/ubuntu-22.04: -------------------------------------------------------------------------------- 1 | ack antlr3 asciidoc autoconf automake autopoint binutils bison build-essential bzip2 ccache cmake cpio curl device-tree-compiler fastjar flex gawk gettext gcc-multilib g++-multilib git gperf haveged help2man intltool libc6-dev-i386 libelf-dev libglib2.0-dev libgmp3-dev libltdl-dev libmpc-dev libmpfr-dev libncurses5-dev libncursesw5-dev libreadline-dev libssl-dev libtool lrzsz mkisofs msmtp nano ninja-build p7zip p7zip-full patch pkgconf python2 python3.6 python3 python3-pyelftools libpython3-dev qemu-utils rsync scons squashfs-tools subversion swig texinfo uglifyjs upx-ucl unzip vim wget xmlto xxd zlib1g-dev 2 | -------------------------------------------------------------------------------- /diy-part1.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | #=============================================== 3 | # Description: DIY script 4 | # File name: diy-script.sh 5 | # Lisence: MIT 6 | # Author: P3TERX 7 | # Blog: https://p3terx.com 8 | #=============================================== 9 | 10 | # 修改版本为编译日期,数字类型。 11 | date_version=$(date +"%Y%m%d%H") 12 | echo $date_version > version 13 | 14 | # 为iStoreOS固件版本加上编译作者 15 | author="xiaomeng9597" 16 | sed -i "s/DISTRIB_DESCRIPTION.*/DISTRIB_DESCRIPTION='%D %V ${date_version} by ${author}'/g" package/base-files/files/etc/openwrt_release 17 | sed -i "s/OPENWRT_RELEASE.*/OPENWRT_RELEASE=\"%D %V ${date_version} by ${author}\"/g" package/base-files/files/usr/lib/os-release 18 | 19 | # 拉取我的软件包仓库 20 | echo 'src-git xmpackages https://github.com/xiaomeng9597/openwrt-packages2.git;main' >> feeds.conf.default 21 | -------------------------------------------------------------------------------- /diy-part2-x86.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | #=============================================== 3 | # Description: DIY script 4 | # File name: diy-script.sh 5 | # Lisence: MIT 6 | # Author: P3TERX 7 | # Blog: https://p3terx.com 8 | #=============================================== 9 | 10 | # 删除引起iproute2依赖编译报错的补丁 11 | [ -e package/libs/elfutils/patches/999-fix-odd-build-oot-kmod-fail.patch ] && rm -f package/libs/elfutils/patches/999-fix-odd-build-oot-kmod-fail.patch 12 | 13 | # update ubus git HEAD 14 | cp -f $GITHUB_WORKSPACE/configfiles/ubus_Makefile package/system/ubus/Makefile 15 | 16 | # 近期istoreos网站文件服务器不稳定,临时增加一个自定义下载网址 17 | sed -i "s/push @mirrors, 'https:\/\/mirror2.openwrt.org\/sources';/&\\npush @mirrors, 'https:\/\/github.com\/xiaomeng9597\/files\/releases\/download\/iStoreosFile';/g" scripts/download.pl 18 | 19 | # 修改uhttpd配置文件,启用nginx 20 | # sed -i "/.*uhttpd.*/d" .config 21 | # sed -i '/.*\/etc\/init.d.*/d' package/network/services/uhttpd/Makefile 22 | # sed -i '/.*.\/files\/uhttpd.init.*/d' package/network/services/uhttpd/Makefile 23 | sed -i "s/:80/:81/g" package/network/services/uhttpd/files/uhttpd.config 24 | sed -i "s/:443/:4443/g" package/network/services/uhttpd/files/uhttpd.config 25 | cp -a $GITHUB_WORKSPACE/configfiles/etc/* package/base-files/files/etc/ 26 | # ls package/base-files/files/etc/ 27 | 28 | 29 | #集成CPU性能跑分脚本 30 | echo "CONFIG_PACKAGE_coremark=y" >> .config 31 | cp -f $GITHUB_WORKSPACE/configfiles/coremark/coremark.sh package/base-files/files/bin/coremark.sh 32 | chmod 755 package/base-files/files/bin/coremark.sh 33 | 34 | # 定时限速插件 35 | echo "CONFIG_PACKAGE_luci-app-eqosplus=y 36 | CONFIG_PACKAGE_luci-i18n-eqosplus-zh-cn=y" >> .config 37 | git clone --depth=1 https://github.com/sirpdboy/luci-app-eqosplus package/luci-app-eqosplus 38 | -------------------------------------------------------------------------------- /diy-part2.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | #=============================================== 3 | # Description: DIY script 4 | # File name: diy-script.sh 5 | # Lisence: MIT 6 | # Author: P3TERX 7 | # Blog: https://p3terx.com 8 | #=============================================== 9 | 10 | # 删除引起iproute2依赖编译报错的补丁 11 | [ -e package/libs/elfutils/patches/999-fix-odd-build-oot-kmod-fail.patch ] && rm -f package/libs/elfutils/patches/999-fix-odd-build-oot-kmod-fail.patch 12 | 13 | # enable rk3568 model adc keys 14 | cp -f $GITHUB_WORKSPACE/configfiles/adc-keys.txt adc-keys.txt 15 | ! grep -q 'adc-keys {' package/boot/uboot-rk35xx/src/arch/arm/dts/rk3568-easepi.dts && sed -i '/\"rockchip,rk3568\";/r adc-keys.txt' package/boot/uboot-rk35xx/src/arch/arm/dts/rk3568-easepi.dts 16 | 17 | # update ubus git HEAD 18 | cp -f $GITHUB_WORKSPACE/configfiles/ubus_Makefile package/system/ubus/Makefile 19 | 20 | # 近期istoreos网站文件服务器不稳定,临时增加一个自定义下载网址 21 | sed -i "s/push @mirrors, 'https:\/\/mirror2.openwrt.org\/sources';/&\\npush @mirrors, 'https:\/\/github.com\/xiaomeng9597\/files\/releases\/download\/iStoreosFile';/g" scripts/download.pl 22 | 23 | 24 | # 修改内核配置文件 25 | sed -i "/.*CONFIG_ROCKCHIP_RGA2.*/d" target/linux/rockchip/rk35xx/config-5.10 26 | # sed -i "/# CONFIG_ROCKCHIP_RGA2 is not set/d" target/linux/rockchip/rk35xx/config-5.10 27 | # sed -i "/CONFIG_ROCKCHIP_RGA2_DEBUGGER=y/d" target/linux/rockchip/rk35xx/config-5.10 28 | # sed -i "/CONFIG_ROCKCHIP_RGA2_DEBUG_FS=y/d" target/linux/rockchip/rk35xx/config-5.10 29 | # sed -i "/CONFIG_ROCKCHIP_RGA2_PROC_FS=y/d" target/linux/rockchip/rk35xx/config-5.10 30 | 31 | 32 | 33 | 34 | # 替换dts文件 35 | cp -f $GITHUB_WORKSPACE/configfiles/rk3566-jp-tvbox.dts target/linux/rockchip/dts/rk3568/rk3566-jp-tvbox.dts 36 | 37 | cp -f $GITHUB_WORKSPACE/configfiles/rk3566-panther-x2.dts target/linux/rockchip/dts/rk3568/rk3566-panther-x2.dts 38 | 39 | cp -f $GITHUB_WORKSPACE/configfiles/rk3568-dg-nas-lite-core.dtsi target/linux/rockchip/dts/rk3568/rk3568-dg-nas-lite-core.dtsi 40 | cp -f $GITHUB_WORKSPACE/configfiles/rk3568-dg-nas-lite.dts target/linux/rockchip/dts/rk3568/rk3568-dg-nas-lite.dts 41 | 42 | cp -f $GITHUB_WORKSPACE/configfiles/rk3568-mrkaio-m68s-core.dtsi target/linux/rockchip/dts/rk3568/rk3568-mrkaio-m68s-core.dtsi 43 | cp -f $GITHUB_WORKSPACE/configfiles/rk3568-mrkaio-m68s.dts target/linux/rockchip/dts/rk3568/rk3568-mrkaio-m68s.dts 44 | cp -f $GITHUB_WORKSPACE/configfiles/rk3568-mrkaio-m68s-plus.dts target/linux/rockchip/dts/rk3568/rk3568-mrkaio-m68s-plus.dts 45 | 46 | 47 | 48 | # 修改uhttpd配置文件,启用nginx 49 | # sed -i "/.*uhttpd.*/d" .config 50 | # sed -i '/.*\/etc\/init.d.*/d' package/network/services/uhttpd/Makefile 51 | # sed -i '/.*.\/files\/uhttpd.init.*/d' package/network/services/uhttpd/Makefile 52 | sed -i "s/:80/:81/g" package/network/services/uhttpd/files/uhttpd.config 53 | sed -i "s/:443/:4443/g" package/network/services/uhttpd/files/uhttpd.config 54 | cp -a $GITHUB_WORKSPACE/configfiles/etc/* package/base-files/files/etc/ 55 | # ls package/base-files/files/etc/ 56 | 57 | 58 | 59 | 60 | # 轮询检查ubus服务是否崩溃,崩溃就重启ubus服务,只针对rk3566机型,如黑豹X2和荐片TV盒子。 61 | cp -f $GITHUB_WORKSPACE/configfiles/httpubus package/base-files/files/etc/init.d/httpubus 62 | cp -f $GITHUB_WORKSPACE/configfiles/ubus-examine.sh package/base-files/files/bin/ubus-examine.sh 63 | chmod 755 package/base-files/files/etc/init.d/httpubus 64 | chmod 755 package/base-files/files/bin/ubus-examine.sh 65 | 66 | 67 | 68 | # 集成黑豹X2和荐片TV盒子WiFi驱动,默认不启用WiFi 69 | cp -a $GITHUB_WORKSPACE/configfiles/firmware/* package/firmware/ 70 | # cp -f $GITHUB_WORKSPACE/configfiles/opwifi package/base-files/files/etc/init.d/opwifi 71 | # chmod 755 package/base-files/files/etc/init.d/opwifi 72 | # sed -i "s/wireless.radio\${devidx}.disabled=1/wireless.radio\${devidx}.disabled=0/g" package/kernel/mac80211/files/lib/wifi/mac80211.sh 73 | 74 | 75 | 76 | # 集成CPU性能跑分脚本 77 | cp -a $GITHUB_WORKSPACE/configfiles/coremark/* package/base-files/files/bin/ 78 | chmod 755 package/base-files/files/bin/coremark 79 | chmod 755 package/base-files/files/bin/coremark.sh 80 | 81 | 82 | 83 | 84 | 85 | sed -i "s/192.168.100.1/192.168.200.1/g" package/base-files/files/bin/config_generate 86 | sed -i "s/192.168.1.1/192.168.200.1/g" package/base-files/files/bin/config_generate 87 | 88 | 89 | # 加入nsy_g68-plus初始化网络配置脚本 90 | cp -f $GITHUB_WORKSPACE/configfiles/swconfig_install package/base-files/files/etc/init.d/swconfig_install 91 | chmod 755 package/base-files/files/etc/init.d/swconfig_install 92 | 93 | 94 | 95 | 96 | # 集成 nsy_g68-plus WiFi驱动 97 | mkdir -p package/base-files/files/lib/firmware/mediatek 98 | cp -f $GITHUB_WORKSPACE/configfiles/WirelessDriver/mt7916_eeprom.bin package/base-files/files/lib/firmware/mediatek/mt7916_eeprom.bin 99 | 100 | 101 | 102 | 103 | # 删除会导致编译失败的补丁 104 | rm -f target/linux/generic/hack-5.10/747-1-rtl8367b-support-rtl8367s.patch 105 | rm -f target/linux/generic/hack-5.10/747-2-rtl8366_smi-phy-id.patch 106 | rm -f target/linux/generic/hack-5.10/744-rtl8366_smi-fix-ce-debugfs.patch 107 | 108 | 109 | 110 | # 电工大佬的rtl8367b驱动资源包,暂时使用这样替换 111 | wget https://github.com/xiaomeng9597/files/releases/download/files/rtl8367b.tar.gz 112 | tar -xvf rtl8367b.tar.gz 113 | 114 | 115 | # openwrt主线rtl8367b驱动资源包,暂时使用这样替换 116 | # wget https://github.com/xiaomeng9597/files/releases/download/files/rtl8367b-openwrt.tar.gz 117 | # tar -xvf rtl8367b-openwrt.tar.gz 118 | 119 | 120 | 121 | # rm -f target/linux/rockchip/rk35xx/base-files/lib/board/init.sh 122 | # cp -f $GITHUB_WORKSPACE/configfiles/init.sh target/linux/rockchip/rk35xx/base-files/lib/board/init.sh 123 | 124 | rm -f target/linux/rockchip/rk35xx/base-files/etc/board.d/02_network 125 | cp -f $GITHUB_WORKSPACE/configfiles/02_network target/linux/rockchip/rk35xx/base-files/etc/board.d/02_network 126 | 127 | 128 | 129 | # 增加nsy_g68-plus 130 | echo -e "\\ndefine Device/nsy_g68-plus 131 | \$(call Device/rk3568) 132 | DEVICE_VENDOR := NSY 133 | DEVICE_MODEL := G68 134 | DEVICE_DTS := rk3568-nsy-g68-plus 135 | SUPPORTED_DEVICES += nsy,g68-plus 136 | DEVICE_PACKAGES := kmod-nvme kmod-scsi-core kmod-thermal kmod-switch-rtl8306 kmod-switch-rtl8366-smi kmod-switch-rtl8366rb kmod-switch-rtl8366s kmod-hwmon-pwmfan kmod-leds-pwm kmod-r8125 kmod-r8168 kmod-switch-rtl8367b swconfig kmod-swconfig kmod-mt7916-firmware 137 | endef 138 | TARGET_DEVICES += nsy_g68-plus" >> target/linux/rockchip/image/rk35xx.mk 139 | 140 | 141 | 142 | # 增加nsy_g16-plus 143 | echo -e "\\ndefine Device/nsy_g16-plus 144 | \$(call Device/rk3568) 145 | DEVICE_VENDOR := NSY 146 | DEVICE_MODEL := G16 147 | DEVICE_DTS := rk3568-nsy-g16-plus 148 | SUPPORTED_DEVICES += nsy,g16-plus 149 | DEVICE_PACKAGES := kmod-nvme kmod-scsi-core kmod-thermal kmod-switch-rtl8306 kmod-switch-rtl8366-smi kmod-switch-rtl8366rb kmod-switch-rtl8366s kmod-hwmon-pwmfan kmod-leds-pwm kmod-r8125 kmod-r8168 kmod-switch-rtl8367b swconfig kmod-swconfig kmod-mt7615-firmware 150 | endef 151 | TARGET_DEVICES += nsy_g16-plus" >> target/linux/rockchip/image/rk35xx.mk 152 | 153 | 154 | 155 | # 增加bdy_g18-pro 156 | echo -e "\\ndefine Device/bdy_g18-pro 157 | \$(call Device/rk3568) 158 | DEVICE_VENDOR := BDY 159 | DEVICE_MODEL := G18 160 | DEVICE_DTS := rk3568-bdy-g18-pro 161 | SUPPORTED_DEVICES += bdy,g18-pro 162 | DEVICE_PACKAGES := kmod-nvme kmod-scsi-core kmod-thermal kmod-switch-rtl8306 kmod-switch-rtl8366-smi kmod-switch-rtl8366rb kmod-switch-rtl8366s kmod-hwmon-pwmfan kmod-leds-pwm kmod-r8125 kmod-r8168 kmod-switch-rtl8367b swconfig kmod-swconfig kmod-mt7615-firmware 163 | endef 164 | TARGET_DEVICES += bdy_g18-pro" >> target/linux/rockchip/image/rk35xx.mk 165 | 166 | 167 | 168 | cp -f $GITHUB_WORKSPACE/configfiles/rk3568-nsy-g68-plus.dts target/linux/rockchip/dts/rk3568/rk3568-nsy-g68-plus.dts 169 | cp -f $GITHUB_WORKSPACE/configfiles/rk3568-nsy-g16-plus.dts target/linux/rockchip/dts/rk3568/rk3568-nsy-g16-plus.dts 170 | cp -f $GITHUB_WORKSPACE/configfiles/rk3568-bdy-g18-pro.dts target/linux/rockchip/dts/rk3568/rk3568-bdy-g18-pro.dts 171 | 172 | 173 | # 定时限速插件 174 | git clone --depth=1 https://github.com/sirpdboy/luci-app-eqosplus package/luci-app-eqosplus 175 | -------------------------------------------------------------------------------- /diy-part3.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | #=============================================== 3 | # Description: DIY script 4 | # File name: diy-script.sh 5 | # Lisence: MIT 6 | # Author: P3TERX 7 | # Blog: https://p3terx.com 8 | #=============================================== 9 | 10 | # 删除引起iproute2依赖编译报错的补丁 11 | [ -e package/libs/elfutils/patches/999-fix-odd-build-oot-kmod-fail.patch ] && rm -f package/libs/elfutils/patches/999-fix-odd-build-oot-kmod-fail.patch 12 | 13 | # enable rk3568 model adc keys 14 | cp -f $GITHUB_WORKSPACE/configfiles/adc-keys.txt adc-keys.txt 15 | ! grep -q 'adc-keys {' package/boot/uboot-rk35xx/src/arch/arm/dts/rk3568-easepi.dts && sed -i '/\"rockchip,rk3568\";/r adc-keys.txt' package/boot/uboot-rk35xx/src/arch/arm/dts/rk3568-easepi.dts 16 | 17 | # 不集成联发科WiFi驱动 18 | getconfig=$(cat ${GITHUB_WORKSPACE}/configfiles/nowifi.txt) 19 | echo "$getconfig" >> .config 20 | 21 | # update ubus git HEAD 22 | cp -f $GITHUB_WORKSPACE/configfiles/ubus_Makefile package/system/ubus/Makefile 23 | 24 | # 近期istoreos网站文件服务器不稳定,临时增加一个自定义下载网址 25 | sed -i "s/push @mirrors, 'https:\/\/mirror2.openwrt.org\/sources';/&\\npush @mirrors, 'https:\/\/github.com\/xiaomeng9597\/files\/releases\/download\/iStoreosFile';/g" scripts/download.pl 26 | 27 | 28 | # 修改内核配置文件 29 | sed -i "/.*CONFIG_ROCKCHIP_RGA2.*/d" target/linux/rockchip/rk35xx/config-5.10 30 | # sed -i "/# CONFIG_ROCKCHIP_RGA2 is not set/d" target/linux/rockchip/rk35xx/config-5.10 31 | # sed -i "/CONFIG_ROCKCHIP_RGA2_DEBUGGER=y/d" target/linux/rockchip/rk35xx/config-5.10 32 | # sed -i "/CONFIG_ROCKCHIP_RGA2_DEBUG_FS=y/d" target/linux/rockchip/rk35xx/config-5.10 33 | # sed -i "/CONFIG_ROCKCHIP_RGA2_PROC_FS=y/d" target/linux/rockchip/rk35xx/config-5.10 34 | 35 | 36 | 37 | 38 | # 替换dts文件 39 | cp -f $GITHUB_WORKSPACE/configfiles/rk3566-jp-tvbox.dts target/linux/rockchip/dts/rk3568/rk3566-jp-tvbox.dts 40 | 41 | cp -f $GITHUB_WORKSPACE/configfiles/rk3566-panther-x2.dts target/linux/rockchip/dts/rk3568/rk3566-panther-x2.dts 42 | 43 | cp -f $GITHUB_WORKSPACE/configfiles/rk3568-dg-nas-lite-core.dtsi target/linux/rockchip/dts/rk3568/rk3568-dg-nas-lite-core.dtsi 44 | cp -f $GITHUB_WORKSPACE/configfiles/rk3568-dg-nas-lite.dts target/linux/rockchip/dts/rk3568/rk3568-dg-nas-lite.dts 45 | 46 | cp -f $GITHUB_WORKSPACE/configfiles/rk3568-mrkaio-m68s-core.dtsi target/linux/rockchip/dts/rk3568/rk3568-mrkaio-m68s-core.dtsi 47 | cp -f $GITHUB_WORKSPACE/configfiles/rk3568-mrkaio-m68s.dts target/linux/rockchip/dts/rk3568/rk3568-mrkaio-m68s.dts 48 | cp -f $GITHUB_WORKSPACE/configfiles/rk3568-mrkaio-m68s-plus.dts target/linux/rockchip/dts/rk3568/rk3568-mrkaio-m68s-plus.dts 49 | 50 | 51 | 52 | # 修改uhttpd配置文件,启用nginx 53 | # sed -i "/.*uhttpd.*/d" .config 54 | # sed -i '/.*\/etc\/init.d.*/d' package/network/services/uhttpd/Makefile 55 | # sed -i '/.*.\/files\/uhttpd.init.*/d' package/network/services/uhttpd/Makefile 56 | sed -i "s/:80/:81/g" package/network/services/uhttpd/files/uhttpd.config 57 | sed -i "s/:443/:4443/g" package/network/services/uhttpd/files/uhttpd.config 58 | cp -a $GITHUB_WORKSPACE/configfiles/etc/* package/base-files/files/etc/ 59 | # ls package/base-files/files/etc/ 60 | 61 | 62 | 63 | 64 | # 轮询检查ubus服务是否崩溃,崩溃就重启ubus服务,只针对rk3566机型,如黑豹X2和荐片TV盒子。 65 | cp -f $GITHUB_WORKSPACE/configfiles/httpubus package/base-files/files/etc/init.d/httpubus 66 | cp -f $GITHUB_WORKSPACE/configfiles/ubus-examine.sh package/base-files/files/bin/ubus-examine.sh 67 | chmod 755 package/base-files/files/etc/init.d/httpubus 68 | chmod 755 package/base-files/files/bin/ubus-examine.sh 69 | 70 | 71 | 72 | # 集成黑豹X2和荐片TV盒子WiFi驱动,默认不启用WiFi 73 | cp -a $GITHUB_WORKSPACE/configfiles/firmware/* package/firmware/ 74 | # cp -f $GITHUB_WORKSPACE/configfiles/opwifi package/base-files/files/etc/init.d/opwifi 75 | # chmod 755 package/base-files/files/etc/init.d/opwifi 76 | # sed -i "s/wireless.radio\${devidx}.disabled=1/wireless.radio\${devidx}.disabled=0/g" package/kernel/mac80211/files/lib/wifi/mac80211.sh 77 | 78 | 79 | 80 | # 集成CPU性能跑分脚本 81 | cp -a $GITHUB_WORKSPACE/configfiles/coremark/* package/base-files/files/bin/ 82 | chmod 755 package/base-files/files/bin/coremark 83 | chmod 755 package/base-files/files/bin/coremark.sh 84 | 85 | 86 | 87 | 88 | 89 | sed -i "s/192.168.100.1/192.168.200.1/g" package/base-files/files/bin/config_generate 90 | sed -i "s/192.168.1.1/192.168.200.1/g" package/base-files/files/bin/config_generate 91 | 92 | 93 | # 加入nsy_g68-plus初始化网络配置脚本 94 | cp -f $GITHUB_WORKSPACE/configfiles/swconfig_install package/base-files/files/etc/init.d/swconfig_install 95 | chmod 755 package/base-files/files/etc/init.d/swconfig_install 96 | 97 | 98 | 99 | 100 | # 删除会导致编译失败的补丁 101 | rm -f target/linux/generic/hack-5.10/747-1-rtl8367b-support-rtl8367s.patch 102 | rm -f target/linux/generic/hack-5.10/747-2-rtl8366_smi-phy-id.patch 103 | rm -f target/linux/generic/hack-5.10/744-rtl8366_smi-fix-ce-debugfs.patch 104 | 105 | 106 | 107 | # 电工大佬的rtl8367b驱动资源包,暂时使用这样替换 108 | wget https://github.com/xiaomeng9597/files/releases/download/files/rtl8367b.tar.gz 109 | tar -xvf rtl8367b.tar.gz 110 | 111 | 112 | # openwrt主线rtl8367b驱动资源包,暂时使用这样替换 113 | # wget https://github.com/xiaomeng9597/files/releases/download/files/rtl8367b-openwrt.tar.gz 114 | # tar -xvf rtl8367b-openwrt.tar.gz 115 | 116 | 117 | 118 | # rm -f target/linux/rockchip/rk35xx/base-files/lib/board/init.sh 119 | # cp -f $GITHUB_WORKSPACE/configfiles/init.sh target/linux/rockchip/rk35xx/base-files/lib/board/init.sh 120 | 121 | rm -f target/linux/rockchip/rk35xx/base-files/etc/board.d/02_network 122 | cp -f $GITHUB_WORKSPACE/configfiles/02_network target/linux/rockchip/rk35xx/base-files/etc/board.d/02_network 123 | 124 | 125 | 126 | # 增加nsy_g68-plus 127 | echo -e "\\ndefine Device/nsy_g68-plus 128 | \$(call Device/rk3568) 129 | DEVICE_VENDOR := NSY 130 | DEVICE_MODEL := G68 131 | DEVICE_DTS := rk3568-nsy-g68-plus 132 | SUPPORTED_DEVICES += nsy,g68-plus 133 | DEVICE_PACKAGES := kmod-nvme kmod-scsi-core kmod-thermal kmod-switch-rtl8306 kmod-switch-rtl8366-smi kmod-switch-rtl8366rb kmod-switch-rtl8366s kmod-hwmon-pwmfan kmod-leds-pwm kmod-r8125 kmod-r8168 kmod-switch-rtl8367b swconfig kmod-swconfig 134 | endef 135 | TARGET_DEVICES += nsy_g68-plus" >> target/linux/rockchip/image/rk35xx.mk 136 | 137 | 138 | 139 | # 增加nsy_g16-plus 140 | echo -e "\\ndefine Device/nsy_g16-plus 141 | \$(call Device/rk3568) 142 | DEVICE_VENDOR := NSY 143 | DEVICE_MODEL := G16 144 | DEVICE_DTS := rk3568-nsy-g16-plus 145 | SUPPORTED_DEVICES += nsy,g16-plus 146 | DEVICE_PACKAGES := kmod-nvme kmod-scsi-core kmod-thermal kmod-switch-rtl8306 kmod-switch-rtl8366-smi kmod-switch-rtl8366rb kmod-switch-rtl8366s kmod-hwmon-pwmfan kmod-leds-pwm kmod-r8125 kmod-r8168 kmod-switch-rtl8367b swconfig kmod-swconfig 147 | endef 148 | TARGET_DEVICES += nsy_g16-plus" >> target/linux/rockchip/image/rk35xx.mk 149 | 150 | 151 | 152 | # 增加bdy_g18-pro 153 | echo -e "\\ndefine Device/bdy_g18-pro 154 | \$(call Device/rk3568) 155 | DEVICE_VENDOR := BDY 156 | DEVICE_MODEL := G18 157 | DEVICE_DTS := rk3568-bdy-g18-pro 158 | SUPPORTED_DEVICES += bdy,g18-pro 159 | DEVICE_PACKAGES := kmod-nvme kmod-scsi-core kmod-thermal kmod-switch-rtl8306 kmod-switch-rtl8366-smi kmod-switch-rtl8366rb kmod-switch-rtl8366s kmod-hwmon-pwmfan kmod-leds-pwm kmod-r8125 kmod-r8168 kmod-switch-rtl8367b swconfig kmod-swconfig 160 | endef 161 | TARGET_DEVICES += bdy_g18-pro" >> target/linux/rockchip/image/rk35xx.mk 162 | 163 | 164 | 165 | cp -f $GITHUB_WORKSPACE/configfiles/rk3568-nsy-g68-plus.dts target/linux/rockchip/dts/rk3568/rk3568-nsy-g68-plus.dts 166 | cp -f $GITHUB_WORKSPACE/configfiles/rk3568-nsy-g16-plus.dts target/linux/rockchip/dts/rk3568/rk3568-nsy-g16-plus.dts 167 | cp -f $GITHUB_WORKSPACE/configfiles/rk3568-bdy-g18-pro.dts target/linux/rockchip/dts/rk3568/rk3568-bdy-g18-pro.dts 168 | 169 | 170 | # 定时限速插件 171 | git clone --depth=1 https://github.com/sirpdboy/luci-app-eqosplus package/luci-app-eqosplus 172 | -------------------------------------------------------------------------------- /rk35xx/feeds.conf: -------------------------------------------------------------------------------- 1 | src-include defaults feeds.conf.default 2 | src-git h69k_oled https://github.com/jjm2473/luci-app-oled.git;master 3 | src-git lcdsimple https://github.com/jjm2473/lcdsimple.git;main 4 | src-git third_party https://github.com/linkease/istore-packages.git;main 5 | src-git diskman https://github.com/jjm2473/luci-app-diskman.git;dev 6 | src-git oaf https://github.com/jjm2473/OpenAppFilter.git;dev4 7 | src-git linkease_nas https://github.com/linkease/nas-packages.git;master 8 | src-git linkease_nas_luci https://github.com/linkease/nas-packages-luci.git;main 9 | src-git jjm2473_apps https://github.com/jjm2473/openwrt-apps.git;main 10 | -------------------------------------------------------------------------------- /x86/.config: -------------------------------------------------------------------------------- 1 | CONFIG_TARGET_x86=y 2 | CONFIG_TARGET_x86_64=y 3 | CONFIG_TARGET_x86_64_DEVICE_generic=y 4 | CONFIG_ALL_KMODS=y 5 | CONFIG_DEVEL=y 6 | CONFIG_BUSYBOX_CUSTOM=y 7 | CONFIG_CCACHE=y 8 | CONFIG_DOCKER_NET_ENCRYPT=y 9 | CONFIG_DOCKER_NET_MACVLAN=y 10 | CONFIG_DOCKER_NET_OVERLAY=y 11 | CONFIG_DOCKER_NET_TFTP=y 12 | CONFIG_GNUTLS_ALPN=y 13 | CONFIG_GNUTLS_ANON=y 14 | CONFIG_GNUTLS_DTLS_SRTP=y 15 | CONFIG_GNUTLS_HEARTBEAT=y 16 | CONFIG_GNUTLS_OCSP=y 17 | CONFIG_GNUTLS_PSK=y 18 | CONFIG_GRUB_TIMEOUT="1" 19 | CONFIG_HTOP_LMSENSORS=y 20 | # CONFIG_IB is not set 21 | CONFIG_IB_STANDALONE=y 22 | CONFIG_IMAGEOPT=y 23 | CONFIG_KERNEL_ANDROID=y 24 | CONFIG_KERNEL_CGROUP_DEVICE=y 25 | CONFIG_KERNEL_CGROUP_FREEZER=y 26 | CONFIG_KERNEL_MEMCG_SWAP_ENABLED=y 27 | CONFIG_KERNEL_NET_CLS_CGROUP=y 28 | CONFIG_KERNEL_PSI=y 29 | # CONFIG_LIBCURL_MBEDTLS is not set 30 | CONFIG_LIBCURL_OPENSSL=y 31 | CONFIG_LIBCURL_UNIX_SOCKETS=y 32 | CONFIG_LIBCURL_VERBOSE=y 33 | CONFIG_LIBCURL_ZLIB=y 34 | CONFIG_LIBCURL_ZSTD=y 35 | CONFIG_LIBQMI_COLLECTION_BASIC=y 36 | CONFIG_LIBQMI_WITH_MBIM_QMUX=y 37 | CONFIG_LIBQMI_WITH_QRTR_GLIB=y 38 | CONFIG_MODEMMANAGER_WITH_MBIM=y 39 | CONFIG_MODEMMANAGER_WITH_QMI=y 40 | CONFIG_MODEMMANAGER_WITH_QRTR=y 41 | CONFIG_NFS_KERNEL_SERVER_V4=y 42 | CONFIG_OPENSSL_ENGINE=y 43 | CONFIG_OPENSSL_OPTIMIZE_SPEED=y 44 | CONFIG_OPENSSL_WITH_ASM=y 45 | CONFIG_OPENSSL_WITH_CHACHA_POLY1305=y 46 | CONFIG_OPENSSL_WITH_CMS=y 47 | CONFIG_OPENSSL_WITH_DEPRECATED=y 48 | CONFIG_OPENSSL_WITH_ERROR_MESSAGES=y 49 | CONFIG_OPENSSL_WITH_PSK=y 50 | CONFIG_OPENSSL_WITH_SRP=y 51 | CONFIG_OPENSSL_WITH_TLS13=y 52 | CONFIG_PACKAGE_adb=y 53 | CONFIG_PACKAGE_adb-enablemodem=y 54 | CONFIG_PACKAGE_amdgpu-firmware=y 55 | CONFIG_PACKAGE_appfilter=y 56 | CONFIG_PACKAGE_ath10k-board-qca9888=y 57 | CONFIG_PACKAGE_ath10k-board-qca988x=y 58 | CONFIG_PACKAGE_ath10k-board-qca9984=y 59 | CONFIG_PACKAGE_ath10k-firmware-qca9888=y 60 | CONFIG_PACKAGE_ath10k-firmware-qca988x=y 61 | CONFIG_PACKAGE_ath10k-firmware-qca9984=y 62 | CONFIG_PACKAGE_avahi-dbus-daemon=y 63 | CONFIG_PACKAGE_avahi-utils=y 64 | CONFIG_PACKAGE_badblocks=y 65 | CONFIG_PACKAGE_bash=y 66 | CONFIG_PACKAGE_bnx2x-firmware=y 67 | CONFIG_PACKAGE_brcmfmac-firmware-43602a1-pcie=y 68 | CONFIG_PACKAGE_btrfs-progs=y 69 | CONFIG_PACKAGE_ca-certificates=y 70 | CONFIG_PACKAGE_chat=y 71 | CONFIG_PACKAGE_cifsmount=y 72 | CONFIG_PACKAGE_comgt=y 73 | CONFIG_PACKAGE_comgt-directip=y 74 | CONFIG_PACKAGE_comgt-ncm=y 75 | CONFIG_PACKAGE_containerd=y 76 | CONFIG_PACKAGE_coreutils-stat=y 77 | CONFIG_PACKAGE_davfs2=y 78 | CONFIG_PACKAGE_dbus=y 79 | CONFIG_PACKAGE_ddns-scripts=y 80 | CONFIG_PACKAGE_ddns-scripts-cloudflare=y 81 | CONFIG_PACKAGE_ddns-scripts-dnspod=y 82 | CONFIG_PACKAGE_ddns-scripts-services=y 83 | CONFIG_PACKAGE_ddns-scripts_aliyun=y 84 | CONFIG_PACKAGE_ddnsto=y 85 | CONFIG_PACKAGE_dkml=y 86 | # CONFIG_PACKAGE_dnsmasq is not set 87 | CONFIG_PACKAGE_dnsmasq-full=y 88 | CONFIG_PACKAGE_dnsmasq_full_auth=y 89 | CONFIG_PACKAGE_dnsmasq_full_conntrack=y 90 | CONFIG_PACKAGE_dnsmasq_full_dhcp=y 91 | CONFIG_PACKAGE_dnsmasq_full_dhcpv6=y 92 | CONFIG_PACKAGE_dnsmasq_full_dnssec=y 93 | CONFIG_PACKAGE_dnsmasq_full_ipset=y 94 | CONFIG_PACKAGE_dnsmasq_full_noid=y 95 | CONFIG_PACKAGE_dnsmasq_full_tftp=y 96 | CONFIG_PACKAGE_docker=y 97 | CONFIG_PACKAGE_dockerd=y 98 | CONFIG_PACKAGE_e100-firmware=y 99 | CONFIG_PACKAGE_edgeport-firmware=y 100 | CONFIG_PACKAGE_etherwake=y 101 | CONFIG_PACKAGE_ethtool=y 102 | CONFIG_PACKAGE_fdisk=y 103 | CONFIG_PACKAGE_glib2=y 104 | CONFIG_PACKAGE_gre=y 105 | CONFIG_PACKAGE_grub-conf=y 106 | CONFIG_PACKAGE_grub2-editenv=y 107 | CONFIG_PACKAGE_hd-idle=y 108 | CONFIG_PACKAGE_hostapd-common=y 109 | CONFIG_PACKAGE_hostapd-openssl=y 110 | CONFIG_PACKAGE_htop=y 111 | CONFIG_PACKAGE_i915-firmware=y 112 | CONFIG_PACKAGE_i915-oot-firmware=y 113 | CONFIG_PACKAGE_iommu-conf=y 114 | CONFIG_PACKAGE_ip-full=y 115 | CONFIG_PACKAGE_ip6tables-mod-nat=y 116 | CONFIG_PACKAGE_ip6tables-zz-legacy=y 117 | CONFIG_PACKAGE_iperf3=y 118 | CONFIG_PACKAGE_ipset=y 119 | CONFIG_PACKAGE_iptables-mod-conntrack-extra=y 120 | CONFIG_PACKAGE_iptables-mod-extra=y 121 | CONFIG_PACKAGE_iptables-mod-filter=y 122 | CONFIG_PACKAGE_iptables-mod-ipopt=y 123 | CONFIG_PACKAGE_iptables-mod-iprange=y 124 | CONFIG_PACKAGE_iptables-mod-nat-extra=y 125 | CONFIG_PACKAGE_iptables-mod-socket=y 126 | CONFIG_PACKAGE_iptables-mod-tproxy=y 127 | # CONFIG_PACKAGE_iptables-nft is not set 128 | CONFIG_PACKAGE_iptables-zz-legacy=y 129 | CONFIG_PACKAGE_istoreos-intl=m 130 | CONFIG_PACKAGE_iw=y 131 | CONFIG_PACKAGE_iwinfo=y 132 | CONFIG_PACKAGE_iwlwifi-firmware-ax200=y 133 | CONFIG_PACKAGE_iwlwifi-firmware-ax201=y 134 | CONFIG_PACKAGE_iwlwifi-firmware-ax210=y 135 | CONFIG_PACKAGE_iwlwifi-firmware-ax211=y 136 | CONFIG_PACKAGE_iwlwifi-firmware-iwl8265=y 137 | CONFIG_PACKAGE_kmod-3c59x=y 138 | CONFIG_PACKAGE_kmod-8139cp=y 139 | CONFIG_PACKAGE_kmod-8139too=y 140 | CONFIG_PACKAGE_kmod-9pnet=y 141 | CONFIG_PACKAGE_kmod-alx=y 142 | CONFIG_PACKAGE_kmod-aoe=y 143 | CONFIG_PACKAGE_kmod-asn1-decoder=y 144 | CONFIG_PACKAGE_kmod-ata-ahci=y 145 | CONFIG_PACKAGE_kmod-ata-artop=y 146 | CONFIG_PACKAGE_kmod-ata-core=y 147 | CONFIG_PACKAGE_kmod-ata-nvidia-sata=y 148 | CONFIG_PACKAGE_kmod-ata-pdc202xx-old=y 149 | CONFIG_PACKAGE_kmod-ata-piix=y 150 | CONFIG_PACKAGE_kmod-ata-sil=y 151 | CONFIG_PACKAGE_kmod-ata-sil24=y 152 | CONFIG_PACKAGE_kmod-ata-via-sata=y 153 | CONFIG_PACKAGE_kmod-ath=y 154 | CONFIG_PACKAGE_kmod-ath10k=y 155 | CONFIG_PACKAGE_kmod-atl1=y 156 | CONFIG_PACKAGE_kmod-atl1c=y 157 | CONFIG_PACKAGE_kmod-atl1e=y 158 | CONFIG_PACKAGE_kmod-atl2=y 159 | CONFIG_PACKAGE_kmod-atlantic=y 160 | CONFIG_PACKAGE_kmod-atm=y 161 | CONFIG_PACKAGE_kmod-b44=y 162 | CONFIG_PACKAGE_kmod-backlight=y 163 | CONFIG_PACKAGE_kmod-be2net=y 164 | CONFIG_PACKAGE_kmod-block2mtd=y 165 | CONFIG_PACKAGE_kmod-bnx2x=y 166 | CONFIG_PACKAGE_kmod-bonding=y 167 | CONFIG_PACKAGE_kmod-br-netfilter=y 168 | CONFIG_PACKAGE_kmod-cdrom=y 169 | CONFIG_PACKAGE_kmod-cfg80211=y 170 | CONFIG_PACKAGE_kmod-chaoskey=y 171 | CONFIG_PACKAGE_kmod-crypto-acompress=y 172 | CONFIG_PACKAGE_kmod-crypto-aead=y 173 | CONFIG_PACKAGE_kmod-crypto-arc4=y 174 | CONFIG_PACKAGE_kmod-crypto-authenc=y 175 | CONFIG_PACKAGE_kmod-crypto-cbc=y 176 | CONFIG_PACKAGE_kmod-crypto-ccm=y 177 | CONFIG_PACKAGE_kmod-crypto-cmac=y 178 | CONFIG_PACKAGE_kmod-crypto-crc32=y 179 | CONFIG_PACKAGE_kmod-crypto-ctr=y 180 | CONFIG_PACKAGE_kmod-crypto-cts=y 181 | CONFIG_PACKAGE_kmod-crypto-deflate=y 182 | CONFIG_PACKAGE_kmod-crypto-des=y 183 | CONFIG_PACKAGE_kmod-crypto-ecb=y 184 | CONFIG_PACKAGE_kmod-crypto-echainiv=y 185 | CONFIG_PACKAGE_kmod-crypto-fcrypt=y 186 | CONFIG_PACKAGE_kmod-crypto-gcm=y 187 | CONFIG_PACKAGE_kmod-crypto-gf128=y 188 | CONFIG_PACKAGE_kmod-crypto-ghash=y 189 | CONFIG_PACKAGE_kmod-crypto-hmac=y 190 | CONFIG_PACKAGE_kmod-crypto-hw-ccp=y 191 | CONFIG_PACKAGE_kmod-crypto-kpp=y 192 | CONFIG_PACKAGE_kmod-crypto-lib-chacha20=y 193 | CONFIG_PACKAGE_kmod-crypto-lib-chacha20poly1305=y 194 | CONFIG_PACKAGE_kmod-crypto-lib-curve25519=y 195 | CONFIG_PACKAGE_kmod-crypto-lib-poly1305=y 196 | CONFIG_PACKAGE_kmod-crypto-manager=y 197 | CONFIG_PACKAGE_kmod-crypto-md4=y 198 | CONFIG_PACKAGE_kmod-crypto-md5=y 199 | CONFIG_PACKAGE_kmod-crypto-null=y 200 | CONFIG_PACKAGE_kmod-crypto-pcbc=y 201 | CONFIG_PACKAGE_kmod-crypto-rng=y 202 | CONFIG_PACKAGE_kmod-crypto-rsa=y 203 | CONFIG_PACKAGE_kmod-crypto-seqiv=y 204 | CONFIG_PACKAGE_kmod-crypto-sha1=y 205 | CONFIG_PACKAGE_kmod-crypto-sha256=y 206 | CONFIG_PACKAGE_kmod-crypto-sha512=y 207 | CONFIG_PACKAGE_kmod-dax=y 208 | CONFIG_PACKAGE_kmod-dm=y 209 | CONFIG_PACKAGE_kmod-dm-raid=y 210 | CONFIG_PACKAGE_kmod-dm9000=y 211 | CONFIG_PACKAGE_kmod-dma-buf=y 212 | CONFIG_PACKAGE_kmod-dnsresolver=y 213 | CONFIG_PACKAGE_kmod-drm=y 214 | CONFIG_PACKAGE_kmod-drm-amdgpu=y 215 | CONFIG_PACKAGE_kmod-drm-i915=y 216 | CONFIG_PACKAGE_kmod-drm-i915-coex=y 217 | CONFIG_PACKAGE_kmod-drm-kms-helper=y 218 | CONFIG_PACKAGE_kmod-drm-radeon=y 219 | CONFIG_PACKAGE_kmod-drm-ttm=y 220 | CONFIG_PACKAGE_kmod-dummy=y 221 | CONFIG_PACKAGE_kmod-e100=y 222 | CONFIG_PACKAGE_kmod-et131x=y 223 | CONFIG_PACKAGE_kmod-ethoc=y 224 | CONFIG_PACKAGE_kmod-fb=y 225 | CONFIG_PACKAGE_kmod-fb-cfb-copyarea=y 226 | CONFIG_PACKAGE_kmod-fb-cfb-fillrect=y 227 | CONFIG_PACKAGE_kmod-fb-cfb-imgblt=y 228 | CONFIG_PACKAGE_kmod-fb-sys-fops=y 229 | CONFIG_PACKAGE_kmod-fb-sys-ram=y 230 | CONFIG_PACKAGE_kmod-fs-9p=y 231 | CONFIG_PACKAGE_kmod-fs-autofs4=y 232 | CONFIG_PACKAGE_kmod-fs-binfmt-misc=y 233 | CONFIG_PACKAGE_kmod-fs-btrfs=y 234 | CONFIG_PACKAGE_kmod-fs-cifs=y 235 | CONFIG_PACKAGE_kmod-fs-configfs=y 236 | CONFIG_PACKAGE_kmod-fs-cramfs=y 237 | CONFIG_PACKAGE_kmod-fs-efivarfs=y 238 | CONFIG_PACKAGE_kmod-fs-exfat=y 239 | CONFIG_PACKAGE_kmod-fs-exportfs=y 240 | CONFIG_PACKAGE_kmod-fs-ext4=y 241 | CONFIG_PACKAGE_kmod-fs-f2fs=y 242 | CONFIG_PACKAGE_kmod-fs-fscache=y 243 | CONFIG_PACKAGE_kmod-fs-hfs=y 244 | CONFIG_PACKAGE_kmod-fs-hfsplus=y 245 | CONFIG_PACKAGE_kmod-fs-isofs=y 246 | CONFIG_PACKAGE_kmod-fs-jfs=y 247 | CONFIG_PACKAGE_kmod-fs-ksmbd=y 248 | CONFIG_PACKAGE_kmod-fs-minix=y 249 | CONFIG_PACKAGE_kmod-fs-msdos=y 250 | CONFIG_PACKAGE_kmod-fs-nfs=y 251 | CONFIG_PACKAGE_kmod-fs-nfs-common=y 252 | CONFIG_PACKAGE_kmod-fs-nfs-common-rpcsec=y 253 | CONFIG_PACKAGE_kmod-fs-nfs-v3=y 254 | CONFIG_PACKAGE_kmod-fs-nfs-v4=y 255 | CONFIG_PACKAGE_kmod-fs-nfsd=y 256 | CONFIG_PACKAGE_kmod-fs-ntfs3-oot=y 257 | CONFIG_PACKAGE_kmod-fs-reiserfs=y 258 | CONFIG_PACKAGE_kmod-fs-squashfs=y 259 | CONFIG_PACKAGE_kmod-fs-udf=y 260 | CONFIG_PACKAGE_kmod-fs-xfs=y 261 | CONFIG_PACKAGE_kmod-fuse=y 262 | CONFIG_PACKAGE_kmod-gre=y 263 | CONFIG_PACKAGE_kmod-gre6=y 264 | CONFIG_PACKAGE_kmod-hfcmulti=y 265 | CONFIG_PACKAGE_kmod-hfcpci=y 266 | CONFIG_PACKAGE_kmod-hid=y 267 | CONFIG_PACKAGE_kmod-hid-generic=y 268 | CONFIG_PACKAGE_kmod-hwmon-drivetemp=y 269 | CONFIG_PACKAGE_kmod-hwmon-it87=y 270 | CONFIG_PACKAGE_kmod-hwmon-pwmfan=y 271 | CONFIG_PACKAGE_kmod-hwmon-vid=y 272 | CONFIG_PACKAGE_kmod-i40e=y 273 | CONFIG_PACKAGE_kmod-iavf=y 274 | CONFIG_PACKAGE_kmod-ifb=y 275 | CONFIG_PACKAGE_kmod-igbvf=y 276 | CONFIG_PACKAGE_kmod-inet-diag=y 277 | CONFIG_PACKAGE_kmod-input-evdev=y 278 | # CONFIG_PACKAGE_kmod-intel_i40e is not set 279 | CONFIG_PACKAGE_kmod-ip6-tunnel=y 280 | CONFIG_PACKAGE_kmod-ip6tables=y 281 | CONFIG_PACKAGE_kmod-ipip=y 282 | CONFIG_PACKAGE_kmod-ipsec=y 283 | CONFIG_PACKAGE_kmod-ipsec4=y 284 | CONFIG_PACKAGE_kmod-ipsec6=y 285 | CONFIG_PACKAGE_kmod-ipt-conntrack-extra=y 286 | CONFIG_PACKAGE_kmod-ipt-extra=y 287 | CONFIG_PACKAGE_kmod-ipt-filter=y 288 | CONFIG_PACKAGE_kmod-ipt-iface=y 289 | CONFIG_PACKAGE_kmod-ipt-ipopt=y 290 | CONFIG_PACKAGE_kmod-ipt-iprange=y 291 | CONFIG_PACKAGE_kmod-ipt-ipset=y 292 | CONFIG_PACKAGE_kmod-ipt-nat-extra=y 293 | CONFIG_PACKAGE_kmod-ipt-nat6=y 294 | CONFIG_PACKAGE_kmod-ipt-offload=y 295 | CONFIG_PACKAGE_kmod-ipt-physdev=y 296 | CONFIG_PACKAGE_kmod-ipt-raw=y 297 | CONFIG_PACKAGE_kmod-ipt-socket=y 298 | CONFIG_PACKAGE_kmod-ipt-tproxy=y 299 | CONFIG_PACKAGE_kmod-iptunnel=y 300 | CONFIG_PACKAGE_kmod-iptunnel4=y 301 | CONFIG_PACKAGE_kmod-iptunnel6=y 302 | CONFIG_PACKAGE_kmod-irqbypass=y 303 | CONFIG_PACKAGE_kmod-iwlwifi=y 304 | CONFIG_PACKAGE_kmod-ixgbevf=y 305 | CONFIG_PACKAGE_kmod-keys-encrypted=y 306 | CONFIG_PACKAGE_kmod-keys-trusted=y 307 | CONFIG_PACKAGE_kmod-kvm-amd=y 308 | CONFIG_PACKAGE_kmod-kvm-intel=y 309 | CONFIG_PACKAGE_kmod-kvm-x86=y 310 | CONFIG_PACKAGE_kmod-l2tp=y 311 | CONFIG_PACKAGE_kmod-l2tp-eth=y 312 | CONFIG_PACKAGE_kmod-l2tp-ip=y 313 | CONFIG_PACKAGE_kmod-ledtrig-activity=y 314 | CONFIG_PACKAGE_kmod-lib-crc-itu-t=y 315 | CONFIG_PACKAGE_kmod-lib-crc16=y 316 | CONFIG_PACKAGE_kmod-lib-crc7=y 317 | CONFIG_PACKAGE_kmod-lib-crc8=y 318 | CONFIG_PACKAGE_kmod-lib-lzo=y 319 | CONFIG_PACKAGE_kmod-lib-raid6=y 320 | CONFIG_PACKAGE_kmod-lib-textsearch=y 321 | CONFIG_PACKAGE_kmod-lib-xor=y 322 | CONFIG_PACKAGE_kmod-lib-zlib-deflate=y 323 | CONFIG_PACKAGE_kmod-lib-zlib-inflate=y 324 | CONFIG_PACKAGE_kmod-lib-zstd=y 325 | CONFIG_PACKAGE_kmod-libfc=y 326 | CONFIG_PACKAGE_kmod-libfcoe=y 327 | CONFIG_PACKAGE_kmod-libsas=y 328 | CONFIG_PACKAGE_kmod-loop=y 329 | CONFIG_PACKAGE_kmod-mac80211=y 330 | CONFIG_PACKAGE_kmod-macsec=y 331 | CONFIG_PACKAGE_kmod-macvlan=y 332 | CONFIG_PACKAGE_kmod-md-linear=y 333 | CONFIG_PACKAGE_kmod-md-mod=y 334 | CONFIG_PACKAGE_kmod-md-multipath=y 335 | CONFIG_PACKAGE_kmod-md-raid0=y 336 | CONFIG_PACKAGE_kmod-md-raid1=y 337 | CONFIG_PACKAGE_kmod-md-raid10=y 338 | CONFIG_PACKAGE_kmod-md-raid456=y 339 | CONFIG_PACKAGE_kmod-mdio-gpio=y 340 | CONFIG_PACKAGE_kmod-misdn=y 341 | CONFIG_PACKAGE_kmod-mlx4-core=y 342 | CONFIG_PACKAGE_kmod-mlx5-core=y 343 | CONFIG_PACKAGE_kmod-mmc=y 344 | CONFIG_PACKAGE_kmod-mmc-spi=y 345 | CONFIG_PACKAGE_kmod-mppe=y 346 | CONFIG_PACKAGE_kmod-mpt3sas=y 347 | CONFIG_PACKAGE_kmod-mt76-connac=y 348 | CONFIG_PACKAGE_kmod-mt76-core=y 349 | CONFIG_PACKAGE_kmod-mt76-usb=y 350 | CONFIG_PACKAGE_kmod-mt7615-common=y 351 | CONFIG_PACKAGE_kmod-mt7615-firmware=y 352 | CONFIG_PACKAGE_kmod-mt7615e=y 353 | CONFIG_PACKAGE_kmod-mt7663-firmware-ap=y 354 | CONFIG_PACKAGE_kmod-mt7663-usb-sdio=y 355 | CONFIG_PACKAGE_kmod-mt7663u=y 356 | CONFIG_PACKAGE_kmod-mt76x0-common=y 357 | CONFIG_PACKAGE_kmod-mt76x02-common=y 358 | CONFIG_PACKAGE_kmod-mt76x02-usb=y 359 | CONFIG_PACKAGE_kmod-mt76x0u=y 360 | CONFIG_PACKAGE_kmod-mt76x2-common=y 361 | CONFIG_PACKAGE_kmod-mt76x2u=y 362 | CONFIG_PACKAGE_kmod-mt7915e=y 363 | CONFIG_PACKAGE_kmod-mt7916-firmware=y 364 | CONFIG_PACKAGE_kmod-mt7921-common=y 365 | CONFIG_PACKAGE_kmod-mt7921-firmware=y 366 | CONFIG_PACKAGE_kmod-mt7921e=y 367 | CONFIG_PACKAGE_kmod-mt7921u=y 368 | CONFIG_PACKAGE_kmod-mt7922-firmware=y 369 | CONFIG_PACKAGE_kmod-mvsas=y 370 | CONFIG_PACKAGE_kmod-mwifiex-pcie=y 371 | CONFIG_PACKAGE_kmod-nat46=y 372 | CONFIG_PACKAGE_kmod-natsemi=y 373 | CONFIG_PACKAGE_kmod-nbd=y 374 | CONFIG_PACKAGE_kmod-ne2k-pci=y 375 | CONFIG_PACKAGE_kmod-netlink-diag=y 376 | CONFIG_PACKAGE_kmod-nf-conntrack-netlink=y 377 | CONFIG_PACKAGE_kmod-nf-flow=y 378 | CONFIG_PACKAGE_kmod-nf-ipt6=y 379 | CONFIG_PACKAGE_kmod-nf-ipvs=y 380 | CONFIG_PACKAGE_kmod-nf-nat6=y 381 | CONFIG_PACKAGE_kmod-nf-nathelper=y 382 | CONFIG_PACKAGE_kmod-nf-nathelper-extra=y 383 | CONFIG_PACKAGE_kmod-nf-socket=y 384 | CONFIG_PACKAGE_kmod-nf-tproxy=y 385 | CONFIG_PACKAGE_kmod-nft-compat=m 386 | CONFIG_PACKAGE_kmod-nft-core=m 387 | CONFIG_PACKAGE_kmod-niu=y 388 | CONFIG_PACKAGE_kmod-nls-cp936=y 389 | CONFIG_PACKAGE_kmod-oaf=y 390 | CONFIG_PACKAGE_kmod-oid-registry=y 391 | CONFIG_PACKAGE_kmod-pcnet32=y 392 | CONFIG_PACKAGE_kmod-phy-ax88796b=y 393 | CONFIG_PACKAGE_kmod-phy-bcm84881=y 394 | CONFIG_PACKAGE_kmod-phy-broadcom=y 395 | CONFIG_PACKAGE_kmod-phy-smsc=y 396 | CONFIG_PACKAGE_kmod-phylib-broadcom=y 397 | CONFIG_PACKAGE_kmod-phylink=y 398 | CONFIG_PACKAGE_kmod-pppol2tp=y 399 | CONFIG_PACKAGE_kmod-pptp=y 400 | CONFIG_PACKAGE_kmod-qed=y 401 | CONFIG_PACKAGE_kmod-qede=y 402 | CONFIG_PACKAGE_kmod-qedf=y 403 | CONFIG_PACKAGE_kmod-r6040=y 404 | CONFIG_PACKAGE_kmod-r8125=y 405 | CONFIG_PACKAGE_kmod-r8126=y 406 | CONFIG_PACKAGE_kmod-r8168=y 407 | CONFIG_PACKAGE_kmod-random-core=y 408 | CONFIG_PACKAGE_kmod-rtl8192c-common=y 409 | CONFIG_PACKAGE_kmod-rtl8192cu=y 410 | CONFIG_PACKAGE_kmod-rtl8192de=y 411 | CONFIG_PACKAGE_kmod-rtl8192se=y 412 | CONFIG_PACKAGE_kmod-rtl8812au-ac=y 413 | CONFIG_PACKAGE_kmod-rtl8821ae=y 414 | CONFIG_PACKAGE_kmod-rtl8xxxu=y 415 | CONFIG_PACKAGE_kmod-rtlwifi=y 416 | CONFIG_PACKAGE_kmod-rtlwifi-btcoexist=y 417 | CONFIG_PACKAGE_kmod-rtlwifi-pci=y 418 | CONFIG_PACKAGE_kmod-rtlwifi-usb=y 419 | CONFIG_PACKAGE_kmod-rtw88-oot=y 420 | CONFIG_PACKAGE_kmod-rtw89-oot=y 421 | CONFIG_PACKAGE_kmod-sched=y 422 | CONFIG_PACKAGE_kmod-sched-bpf=y 423 | CONFIG_PACKAGE_kmod-sched-cake=y 424 | CONFIG_PACKAGE_kmod-sched-connmark=y 425 | CONFIG_PACKAGE_kmod-sched-core=y 426 | CONFIG_PACKAGE_kmod-sched-ctinfo=y 427 | CONFIG_PACKAGE_kmod-sched-flower=y 428 | CONFIG_PACKAGE_kmod-sched-ipset=y 429 | CONFIG_PACKAGE_kmod-sched-mqprio=y 430 | CONFIG_PACKAGE_kmod-scsi-cdrom=y 431 | CONFIG_PACKAGE_kmod-scsi-core=y 432 | CONFIG_PACKAGE_kmod-scsi-generic=y 433 | CONFIG_PACKAGE_kmod-scsi-raid=y 434 | CONFIG_PACKAGE_kmod-scsi-tape=y 435 | CONFIG_PACKAGE_kmod-sctp=y 436 | CONFIG_PACKAGE_kmod-sfc=y 437 | CONFIG_PACKAGE_kmod-sfc-falcon=y 438 | CONFIG_PACKAGE_kmod-sfp=y 439 | CONFIG_PACKAGE_kmod-siit=y 440 | CONFIG_PACKAGE_kmod-sis190=y 441 | CONFIG_PACKAGE_kmod-sis900=y 442 | CONFIG_PACKAGE_kmod-sit=y 443 | CONFIG_PACKAGE_kmod-skge=y 444 | CONFIG_PACKAGE_kmod-sky2=y 445 | CONFIG_PACKAGE_kmod-solos-pci=y 446 | CONFIG_PACKAGE_kmod-sound-core=y 447 | CONFIG_PACKAGE_kmod-spi-ks8995=y 448 | CONFIG_PACKAGE_kmod-ssb=y 449 | CONFIG_PACKAGE_kmod-swconfig=y 450 | CONFIG_PACKAGE_kmod-switch-bcm53xx=y 451 | CONFIG_PACKAGE_kmod-switch-bcm53xx-mdio=y 452 | CONFIG_PACKAGE_kmod-switch-ip17xx=y 453 | CONFIG_PACKAGE_kmod-switch-rtl8306=y 454 | CONFIG_PACKAGE_kmod-switch-rtl8366-smi=y 455 | CONFIG_PACKAGE_kmod-switch-rtl8366rb=y 456 | CONFIG_PACKAGE_kmod-switch-rtl8366s=y 457 | CONFIG_PACKAGE_kmod-switch-rtl8367b=y 458 | CONFIG_PACKAGE_kmod-thermal=y 459 | CONFIG_PACKAGE_kmod-tpm=y 460 | CONFIG_PACKAGE_kmod-trelay=y 461 | CONFIG_PACKAGE_kmod-tulip=y 462 | CONFIG_PACKAGE_kmod-tun=y 463 | CONFIG_PACKAGE_kmod-udptunnel4=y 464 | CONFIG_PACKAGE_kmod-udptunnel6=y 465 | CONFIG_PACKAGE_kmod-usb-acm=y 466 | CONFIG_PACKAGE_kmod-usb-atm=y 467 | CONFIG_PACKAGE_kmod-usb-audio=y 468 | CONFIG_PACKAGE_kmod-usb-cm109=y 469 | CONFIG_PACKAGE_kmod-usb-core=y 470 | CONFIG_PACKAGE_kmod-usb-dwc2=y 471 | CONFIG_PACKAGE_kmod-usb-dwc3=y 472 | CONFIG_PACKAGE_kmod-usb-ehci=y 473 | CONFIG_PACKAGE_kmod-usb-hid=y 474 | CONFIG_PACKAGE_kmod-usb-hid-cp2112=y 475 | CONFIG_PACKAGE_kmod-usb-ledtrig-usbport=y 476 | CONFIG_PACKAGE_kmod-usb-net=y 477 | CONFIG_PACKAGE_kmod-usb-net-aqc111=y 478 | CONFIG_PACKAGE_kmod-usb-net-asix=y 479 | CONFIG_PACKAGE_kmod-usb-net-asix-ax88179=y 480 | CONFIG_PACKAGE_kmod-usb-net-cdc-eem=y 481 | CONFIG_PACKAGE_kmod-usb-net-cdc-ether=y 482 | CONFIG_PACKAGE_kmod-usb-net-cdc-mbim=y 483 | CONFIG_PACKAGE_kmod-usb-net-cdc-ncm=y 484 | CONFIG_PACKAGE_kmod-usb-net-cdc-subset=y 485 | CONFIG_PACKAGE_kmod-usb-net-dm9601-ether=y 486 | CONFIG_PACKAGE_kmod-usb-net-hso=y 487 | CONFIG_PACKAGE_kmod-usb-net-huawei-cdc-ncm=y 488 | CONFIG_PACKAGE_kmod-usb-net-ipheth=y 489 | CONFIG_PACKAGE_kmod-usb-net-kalmia=y 490 | CONFIG_PACKAGE_kmod-usb-net-kaweth=y 491 | CONFIG_PACKAGE_kmod-usb-net-mcs7830=y 492 | CONFIG_PACKAGE_kmod-usb-net-pegasus=y 493 | CONFIG_PACKAGE_kmod-usb-net-pl=y 494 | CONFIG_PACKAGE_kmod-usb-net-qmi-wwan=y 495 | CONFIG_PACKAGE_kmod-usb-net-rndis=y 496 | CONFIG_PACKAGE_kmod-usb-net-rtl8150=y 497 | CONFIG_PACKAGE_kmod-usb-net-rtl8152=y 498 | CONFIG_PACKAGE_kmod-usb-net-sierrawireless=y 499 | CONFIG_PACKAGE_kmod-usb-net-smsc95xx=y 500 | CONFIG_PACKAGE_kmod-usb-net-sr9700=y 501 | CONFIG_PACKAGE_kmod-usb-ohci=y 502 | CONFIG_PACKAGE_kmod-usb-ohci-pci=y 503 | CONFIG_PACKAGE_kmod-usb-printer=y 504 | CONFIG_PACKAGE_kmod-usb-roles=y 505 | CONFIG_PACKAGE_kmod-usb-serial=y 506 | CONFIG_PACKAGE_kmod-usb-serial-ark3116=y 507 | CONFIG_PACKAGE_kmod-usb-serial-belkin=y 508 | CONFIG_PACKAGE_kmod-usb-serial-ch341=y 509 | CONFIG_PACKAGE_kmod-usb-serial-cp210x=y 510 | CONFIG_PACKAGE_kmod-usb-serial-cypress-m8=y 511 | CONFIG_PACKAGE_kmod-usb-serial-dmx_usb_module=y 512 | CONFIG_PACKAGE_kmod-usb-serial-edgeport=y 513 | CONFIG_PACKAGE_kmod-usb-serial-ftdi=y 514 | CONFIG_PACKAGE_kmod-usb-serial-garmin=y 515 | CONFIG_PACKAGE_kmod-usb-serial-ipw=y 516 | CONFIG_PACKAGE_kmod-usb-serial-keyspan=y 517 | CONFIG_PACKAGE_kmod-usb-serial-mct=y 518 | CONFIG_PACKAGE_kmod-usb-serial-mos7720=y 519 | CONFIG_PACKAGE_kmod-usb-serial-mos7840=y 520 | CONFIG_PACKAGE_kmod-usb-serial-option=y 521 | CONFIG_PACKAGE_kmod-usb-serial-oti6858=y 522 | CONFIG_PACKAGE_kmod-usb-serial-pl2303=y 523 | CONFIG_PACKAGE_kmod-usb-serial-qualcomm=y 524 | CONFIG_PACKAGE_kmod-usb-serial-sierrawireless=y 525 | CONFIG_PACKAGE_kmod-usb-serial-simple=y 526 | CONFIG_PACKAGE_kmod-usb-serial-ti-usb=y 527 | CONFIG_PACKAGE_kmod-usb-serial-visor=y 528 | CONFIG_PACKAGE_kmod-usb-serial-wwan=y 529 | CONFIG_PACKAGE_kmod-usb-serial-xr_usb_serial_common=y 530 | CONFIG_PACKAGE_kmod-usb-storage=y 531 | CONFIG_PACKAGE_kmod-usb-storage-extras=y 532 | CONFIG_PACKAGE_kmod-usb-storage-uas=y 533 | CONFIG_PACKAGE_kmod-usb-uhci=y 534 | CONFIG_PACKAGE_kmod-usb-wdm=y 535 | CONFIG_PACKAGE_kmod-usb-xhci-hcd=y 536 | CONFIG_PACKAGE_kmod-usb2=y 537 | CONFIG_PACKAGE_kmod-usb2-pci=y 538 | CONFIG_PACKAGE_kmod-usb3=y 539 | CONFIG_PACKAGE_kmod-veth=y 540 | CONFIG_PACKAGE_kmod-vfio=y 541 | CONFIG_PACKAGE_kmod-vfio-mdev=y 542 | CONFIG_PACKAGE_kmod-vfio-pci=y 543 | CONFIG_PACKAGE_kmod-via-rhine=y 544 | CONFIG_PACKAGE_kmod-via-velocity=y 545 | CONFIG_PACKAGE_kmod-video-core=y 546 | CONFIG_PACKAGE_kmod-video-uvc=y 547 | CONFIG_PACKAGE_kmod-video-videobuf2=y 548 | CONFIG_PACKAGE_kmod-vmxnet3=y 549 | CONFIG_PACKAGE_kmod-vxlan=y 550 | CONFIG_PACKAGE_kmod-wireguard=y 551 | CONFIG_PACKAGE_kmod-zram=y 552 | CONFIG_PACKAGE_libatomic=y 553 | CONFIG_PACKAGE_libavahi-client=y 554 | CONFIG_PACKAGE_libavahi-dbus-support=y 555 | CONFIG_PACKAGE_libbpf=y 556 | CONFIG_PACKAGE_libcap=y 557 | CONFIG_PACKAGE_libcap-ng=y 558 | CONFIG_PACKAGE_libdaemon=y 559 | CONFIG_PACKAGE_libdbus=y 560 | CONFIG_PACKAGE_libdevmapper=y 561 | CONFIG_PACKAGE_libelf=y 562 | CONFIG_PACKAGE_libevdev=y 563 | CONFIG_PACKAGE_libexpat=y 564 | CONFIG_PACKAGE_libfdisk=y 565 | CONFIG_PACKAGE_libffi=y 566 | CONFIG_PACKAGE_libfuse=y 567 | CONFIG_PACKAGE_libgcrypt=y 568 | CONFIG_PACKAGE_libgdbm=y 569 | CONFIG_PACKAGE_libgmp=y 570 | CONFIG_PACKAGE_libgnutls=y 571 | CONFIG_PACKAGE_libgpg-error=y 572 | CONFIG_PACKAGE_libiperf3=y 573 | CONFIG_PACKAGE_libipset=y 574 | # CONFIG_PACKAGE_libiptext-nft is not set 575 | CONFIG_PACKAGE_libiwinfo=y 576 | CONFIG_PACKAGE_libiwinfo-data=y 577 | CONFIG_PACKAGE_libiwinfo-lua=y 578 | CONFIG_PACKAGE_libkeyutils=y 579 | CONFIG_PACKAGE_libkmod=y 580 | CONFIG_PACKAGE_liblzo=y 581 | CONFIG_PACKAGE_libmbim=y 582 | CONFIG_PACKAGE_libnatpmp=y 583 | CONFIG_PACKAGE_libncurses=y 584 | CONFIG_PACKAGE_libneon=y 585 | CONFIG_PACKAGE_libnetfilter-conntrack=y 586 | CONFIG_PACKAGE_libnettle=y 587 | CONFIG_PACKAGE_libnetwork=y 588 | CONFIG_PACKAGE_libnfnetlink=y 589 | # CONFIG_PACKAGE_libnftnl is not set 590 | CONFIG_PACKAGE_libopenssl=y 591 | CONFIG_PACKAGE_libopenssl-conf=y 592 | CONFIG_PACKAGE_libparted=y 593 | CONFIG_PACKAGE_libpcap=y 594 | CONFIG_PACKAGE_libpci=y 595 | CONFIG_PACKAGE_libpcre=y 596 | CONFIG_PACKAGE_libpcre2=y 597 | CONFIG_PACKAGE_libpopt=y 598 | CONFIG_PACKAGE_libqmi=y 599 | CONFIG_PACKAGE_libqrtr-glib=y 600 | CONFIG_PACKAGE_libreadline=y 601 | CONFIG_PACKAGE_libseccomp=y 602 | CONFIG_PACKAGE_libsensors=y 603 | CONFIG_PACKAGE_libstdcpp=y 604 | CONFIG_PACKAGE_libsysfs=y 605 | CONFIG_PACKAGE_libtasn1=y 606 | CONFIG_PACKAGE_libtirpc=y 607 | CONFIG_PACKAGE_libudev-zero=y 608 | CONFIG_PACKAGE_liburing=y 609 | CONFIG_PACKAGE_libusb-1.0=y 610 | CONFIG_PACKAGE_libustream-openssl=y 611 | # CONFIG_PACKAGE_libustream-wolfssl is not set 612 | CONFIG_PACKAGE_libuv=y 613 | CONFIG_PACKAGE_libwebsockets-full=y 614 | # CONFIG_PACKAGE_libwolfssl is not set 615 | CONFIG_PACKAGE_libwrap=y 616 | CONFIG_PACKAGE_linkease=y 617 | CONFIG_PACKAGE_linkmount=y 618 | CONFIG_PACKAGE_lm-sensors=y 619 | CONFIG_PACKAGE_lm-sensors-detect=y 620 | CONFIG_PACKAGE_losetup=y 621 | CONFIG_PACKAGE_lsblk=y 622 | CONFIG_PACKAGE_luci=y 623 | CONFIG_PACKAGE_luci-app-argon-config=y 624 | CONFIG_PACKAGE_luci-app-cifs-mount=y 625 | CONFIG_PACKAGE_luci-app-cpufreq=y 626 | CONFIG_PACKAGE_luci-app-ddns=y 627 | CONFIG_PACKAGE_luci-app-ddnsto=y 628 | CONFIG_PACKAGE_luci-app-diskman=y 629 | CONFIG_PACKAGE_luci-app-diskman_INCLUDE_btrfs_progs=y 630 | CONFIG_PACKAGE_luci-app-diskman_INCLUDE_lsblk=y 631 | CONFIG_PACKAGE_luci-app-dockerman=y 632 | CONFIG_PACKAGE_luci-app-fan=y 633 | CONFIG_PACKAGE_luci-app-filetransfer=y 634 | CONFIG_PACKAGE_luci-app-firewall=y 635 | CONFIG_PACKAGE_luci-app-hd-idle=y 636 | CONFIG_PACKAGE_luci-app-istorex=m 637 | CONFIG_PACKAGE_luci-app-linkease=y 638 | CONFIG_PACKAGE_luci-app-nfs=y 639 | CONFIG_PACKAGE_luci-app-oaf=y 640 | CONFIG_PACKAGE_luci-app-opkg=y 641 | CONFIG_PACKAGE_luci-app-ota=y 642 | CONFIG_PACKAGE_luci-app-quickstart=y 643 | CONFIG_PACKAGE_luci-app-samba4=y 644 | CONFIG_PACKAGE_luci-app-ttyd=y 645 | CONFIG_PACKAGE_luci-app-unishare=y 646 | CONFIG_PACKAGE_luci-app-upnp=y 647 | CONFIG_PACKAGE_luci-app-wol=y 648 | CONFIG_PACKAGE_luci-compat=y 649 | CONFIG_PACKAGE_luci-i18n-argon-config-zh-cn=y 650 | CONFIG_PACKAGE_luci-i18n-cifs-mount-zh-cn=y 651 | CONFIG_PACKAGE_luci-i18n-cpufreq-zh-cn=y 652 | CONFIG_PACKAGE_luci-i18n-ddns-zh-cn=y 653 | CONFIG_PACKAGE_luci-i18n-ddnsto-zh-cn=y 654 | CONFIG_PACKAGE_luci-i18n-diskman-zh-cn=y 655 | CONFIG_PACKAGE_luci-i18n-dockerman-zh-cn=y 656 | CONFIG_PACKAGE_luci-i18n-fan-zh-cn=y 657 | CONFIG_PACKAGE_luci-i18n-filetransfer-zh-cn=y 658 | CONFIG_PACKAGE_luci-i18n-firewall-zh-cn=y 659 | CONFIG_PACKAGE_luci-i18n-hd-idle-zh-cn=y 660 | CONFIG_PACKAGE_luci-i18n-linkease-zh-cn=y 661 | CONFIG_PACKAGE_luci-i18n-nfs-zh-cn=y 662 | CONFIG_PACKAGE_luci-i18n-oaf-zh-cn=y 663 | CONFIG_PACKAGE_luci-i18n-opkg-zh-cn=y 664 | CONFIG_PACKAGE_luci-i18n-ota-zh-cn=y 665 | CONFIG_PACKAGE_luci-i18n-quickstart-zh-cn=y 666 | CONFIG_PACKAGE_luci-i18n-samba4-zh-cn=y 667 | CONFIG_PACKAGE_luci-i18n-ttyd-zh-cn=y 668 | CONFIG_PACKAGE_luci-i18n-unishare-zh-cn=y 669 | CONFIG_PACKAGE_luci-i18n-upnp-zh-cn=y 670 | CONFIG_PACKAGE_luci-i18n-wol-zh-cn=y 671 | CONFIG_PACKAGE_luci-lib-docker=y 672 | CONFIG_PACKAGE_luci-lib-fs=y 673 | CONFIG_PACKAGE_luci-lib-mac-vendor=y 674 | CONFIG_PACKAGE_luci-mod-admin-full=y 675 | CONFIG_PACKAGE_luci-mod-network=y 676 | CONFIG_PACKAGE_luci-mod-status=y 677 | CONFIG_PACKAGE_luci-mod-system=y 678 | CONFIG_PACKAGE_luci-proto-3g=y 679 | CONFIG_PACKAGE_luci-proto-bonding=y 680 | CONFIG_PACKAGE_luci-proto-gre=y 681 | CONFIG_PACKAGE_luci-proto-ipv6=y 682 | CONFIG_PACKAGE_luci-proto-modemmanager=y 683 | CONFIG_PACKAGE_luci-proto-ncm=y 684 | CONFIG_PACKAGE_luci-proto-ppp=y 685 | CONFIG_PACKAGE_luci-proto-qmi=y 686 | CONFIG_PACKAGE_luci-proto-relay=y 687 | CONFIG_PACKAGE_luci-ssl-openssl=y 688 | CONFIG_PACKAGE_luci-theme-bootstrap=y 689 | CONFIG_PACKAGE_mdadm=y 690 | CONFIG_PACKAGE_miniupnpd-iptables=y 691 | CONFIG_PACKAGE_modemmanager=y 692 | CONFIG_PACKAGE_mwifiex-pcie-firmware=y 693 | CONFIG_PACKAGE_nfs-kernel-server=y 694 | CONFIG_PACKAGE_nfs-kernel-server-utils=y 695 | CONFIG_PACKAGE_nfs-utils=y 696 | CONFIG_PACKAGE_nfs-utils-libs=y 697 | CONFIG_PACKAGE_ntfs3-mount=y 698 | CONFIG_PACKAGE_ntfsprogs=y 699 | CONFIG_PACKAGE_openssh-sftp-server=y 700 | CONFIG_PACKAGE_openssl-util=y 701 | CONFIG_PACKAGE_parted=y 702 | CONFIG_PACKAGE_pciids=y 703 | CONFIG_PACKAGE_pciutils=y 704 | CONFIG_PACKAGE_perl=y 705 | CONFIG_PACKAGE_perlbase-base=y 706 | CONFIG_PACKAGE_perlbase-bytes=y 707 | CONFIG_PACKAGE_perlbase-class=y 708 | CONFIG_PACKAGE_perlbase-config=y 709 | CONFIG_PACKAGE_perlbase-cwd=y 710 | CONFIG_PACKAGE_perlbase-errno=y 711 | CONFIG_PACKAGE_perlbase-essential=y 712 | CONFIG_PACKAGE_perlbase-fcntl=y 713 | CONFIG_PACKAGE_perlbase-file=y 714 | CONFIG_PACKAGE_perlbase-filehandle=y 715 | CONFIG_PACKAGE_perlbase-i18n=y 716 | CONFIG_PACKAGE_perlbase-integer=y 717 | CONFIG_PACKAGE_perlbase-io=y 718 | CONFIG_PACKAGE_perlbase-list=y 719 | CONFIG_PACKAGE_perlbase-locale=y 720 | CONFIG_PACKAGE_perlbase-params=y 721 | CONFIG_PACKAGE_perlbase-posix=y 722 | CONFIG_PACKAGE_perlbase-re=y 723 | CONFIG_PACKAGE_perlbase-scalar=y 724 | CONFIG_PACKAGE_perlbase-selectsaver=y 725 | CONFIG_PACKAGE_perlbase-socket=y 726 | CONFIG_PACKAGE_perlbase-symbol=y 727 | CONFIG_PACKAGE_perlbase-tie=y 728 | CONFIG_PACKAGE_perlbase-unicore=y 729 | CONFIG_PACKAGE_perlbase-utf8=y 730 | CONFIG_PACKAGE_perlbase-xsloader=y 731 | CONFIG_PACKAGE_procps-ng=y 732 | CONFIG_PACKAGE_procps-ng-vmstat=y 733 | CONFIG_PACKAGE_proto-bonding=y 734 | CONFIG_PACKAGE_qed-firmware=y 735 | CONFIG_PACKAGE_qmi-utils=y 736 | CONFIG_PACKAGE_quickstart=y 737 | CONFIG_PACKAGE_r8152-firmware=y 738 | CONFIG_PACKAGE_radeon-firmware=y 739 | CONFIG_PACKAGE_relayd=y 740 | CONFIG_PACKAGE_resolveip=y 741 | CONFIG_PACKAGE_rpcbind=y 742 | CONFIG_PACKAGE_rpcd-mod-iwinfo=y 743 | CONFIG_PACKAGE_rpcd-mod-rrdns=y 744 | CONFIG_PACKAGE_rtl8192cu-firmware=y 745 | CONFIG_PACKAGE_rtl8192de-firmware=y 746 | CONFIG_PACKAGE_rtl8192se-firmware=y 747 | CONFIG_PACKAGE_rtl8723du-firmware=y 748 | CONFIG_PACKAGE_rtl8821ae-firmware=y 749 | CONFIG_PACKAGE_rtl8821ce-firmware=y 750 | CONFIG_PACKAGE_rtl8822be-firmware=y 751 | CONFIG_PACKAGE_rtl8822ce-firmware=y 752 | CONFIG_PACKAGE_rtl8851be-firmware=y 753 | CONFIG_PACKAGE_rtl8852ae-firmware=y 754 | CONFIG_PACKAGE_rtl8852be-firmware=y 755 | CONFIG_PACKAGE_rtl8852ce-firmware=y 756 | CONFIG_PACKAGE_runc=y 757 | CONFIG_PACKAGE_samba4-libs=y 758 | CONFIG_PACKAGE_samba4-server=y 759 | CONFIG_PACKAGE_shadow=y 760 | CONFIG_PACKAGE_shadow-chage=y 761 | CONFIG_PACKAGE_shadow-chfn=y 762 | CONFIG_PACKAGE_shadow-chgpasswd=y 763 | CONFIG_PACKAGE_shadow-chpasswd=y 764 | CONFIG_PACKAGE_shadow-chsh=y 765 | CONFIG_PACKAGE_shadow-common=y 766 | CONFIG_PACKAGE_shadow-expiry=y 767 | CONFIG_PACKAGE_shadow-faillog=y 768 | CONFIG_PACKAGE_shadow-gpasswd=y 769 | CONFIG_PACKAGE_shadow-groupadd=y 770 | CONFIG_PACKAGE_shadow-groupdel=y 771 | CONFIG_PACKAGE_shadow-groupmems=y 772 | CONFIG_PACKAGE_shadow-groupmod=y 773 | CONFIG_PACKAGE_shadow-groups=y 774 | CONFIG_PACKAGE_shadow-grpck=y 775 | CONFIG_PACKAGE_shadow-grpconv=y 776 | CONFIG_PACKAGE_shadow-grpunconv=y 777 | CONFIG_PACKAGE_shadow-lastlog=y 778 | CONFIG_PACKAGE_shadow-login=y 779 | CONFIG_PACKAGE_shadow-logoutd=y 780 | CONFIG_PACKAGE_shadow-newgidmap=y 781 | CONFIG_PACKAGE_shadow-newgrp=y 782 | CONFIG_PACKAGE_shadow-newuidmap=y 783 | CONFIG_PACKAGE_shadow-newusers=y 784 | CONFIG_PACKAGE_shadow-nologin=y 785 | CONFIG_PACKAGE_shadow-passwd=y 786 | CONFIG_PACKAGE_shadow-pwck=y 787 | CONFIG_PACKAGE_shadow-pwconv=y 788 | CONFIG_PACKAGE_shadow-pwunconv=y 789 | CONFIG_PACKAGE_shadow-su=y 790 | CONFIG_PACKAGE_shadow-useradd=y 791 | CONFIG_PACKAGE_shadow-userdel=y 792 | CONFIG_PACKAGE_shadow-usermod=y 793 | CONFIG_PACKAGE_shadow-utils=y 794 | CONFIG_PACKAGE_shadow-vipw=y 795 | CONFIG_PACKAGE_smartd=y 796 | CONFIG_PACKAGE_smartmontools=y 797 | CONFIG_PACKAGE_strace=y 798 | CONFIG_PACKAGE_swap-utils=y 799 | CONFIG_PACKAGE_sysfsutils=y 800 | CONFIG_PACKAGE_sysstat=y 801 | CONFIG_PACKAGE_tcpdump=y 802 | CONFIG_PACKAGE_terminfo=y 803 | CONFIG_PACKAGE_tini=y 804 | CONFIG_PACKAGE_ttyd=y 805 | CONFIG_PACKAGE_uhttpd=y 806 | CONFIG_PACKAGE_uhttpd-mod-ubus=y 807 | CONFIG_PACKAGE_umbim=y 808 | CONFIG_PACKAGE_unishare=y 809 | CONFIG_PACKAGE_unzip=y 810 | CONFIG_PACKAGE_uqmi=y 811 | CONFIG_PACKAGE_usb-modeswitch=y 812 | CONFIG_PACKAGE_usbutils=y 813 | CONFIG_PACKAGE_webdav2=y 814 | CONFIG_PACKAGE_wget-ssl=y 815 | CONFIG_PACKAGE_wireless-regdb=y 816 | CONFIG_PACKAGE_wpa-cli=y 817 | CONFIG_PACKAGE_wpa-supplicant-openssl=y 818 | CONFIG_PACKAGE_wsdd2=y 819 | CONFIG_PACKAGE_wwan=y 820 | CONFIG_PACKAGE_xtables-legacy=y 821 | # CONFIG_PACKAGE_xtables-nft is not set 822 | CONFIG_PACKAGE_zlib=y 823 | CONFIG_PACKAGE_zram-swap=y 824 | CONFIG_PARTED_READLINE=y 825 | CONFIG_PCRE2_JIT_ENABLED=y 826 | CONFIG_PCRE_JIT_ENABLED=y 827 | CONFIG_PERL_NOCOMMENT=y 828 | CONFIG_PERL_THREADS=y 829 | CONFIG_RPCBIND_LIBWRAP=y 830 | CONFIG_RPCBIND_RMTCALLS=y 831 | CONFIG_SAMBA4_SERVER_AVAHI=y 832 | CONFIG_SAMBA4_SERVER_NETBIOS=y 833 | CONFIG_SAMBA4_SERVER_VFS=y 834 | CONFIG_SAMBA4_SERVER_WSDD2=y 835 | CONFIG_TARGET_KERNEL_PARTSIZE=128 836 | # CONFIG_TARGET_ROOTFS_EXT4FS is not set 837 | CONFIG_TARGET_ROOTFS_PARTSIZE=256 838 | # CONFIG_TARGET_ROOTFS_TARGZ is not set 839 | CONFIG_VERSIONOPT=y 840 | CONFIG_VERSION_BUG_URL="" 841 | CONFIG_VERSION_CODE="" 842 | CONFIG_VERSION_DIST="iStoreOS" 843 | CONFIG_VERSION_HOME_URL="" 844 | CONFIG_VERSION_HWREV="" 845 | CONFIG_VERSION_MANUFACTURER="" 846 | CONFIG_VERSION_MANUFACTURER_URL="" 847 | CONFIG_VERSION_NUMBER="" 848 | CONFIG_VERSION_PRODUCT="" 849 | CONFIG_VERSION_REPO="https://mirrors.cernet.edu.cn/openwrt/releases/%V" 850 | CONFIG_VERSION_SUPPORT_URL="" 851 | CONFIG_WPA_MSG_MIN_PRIORITY=3 852 | CONFIG_shadow-all=y 853 | # CONFIG_LIBMBEDTLS_DEBUG_C is not set 854 | # CONFIG_LIBMBEDTLS_HKDF_C is not set 855 | CONFIG_PACKAGE_libmbedtls=y 856 | # CONFIG_VERSION_CODE_FILENAMES is not set 857 | # CONFIG_VERSION_FILENAMES is not set 858 | -------------------------------------------------------------------------------- /x86/feeds.conf: -------------------------------------------------------------------------------- 1 | src-include defaults feeds.conf.default 2 | src-git third_party https://github.com/linkease/istore-packages.git;main 3 | src-git diskman https://github.com/jjm2473/luci-app-diskman.git;dev 4 | src-git oaf https://github.com/jjm2473/OpenAppFilter.git;dev4 5 | src-git linkease_nas https://github.com/linkease/nas-packages.git;master 6 | src-git linkease_nas_luci https://github.com/linkease/nas-packages-luci.git;main 7 | src-git jjm2473_apps https://github.com/jjm2473/openwrt-apps.git;main 8 | --------------------------------------------------------------------------------