Add SSC337 to project

pull/35/head
Igor Zalatov (from Citadel PC) 2021-08-06 21:31:58 +03:00
parent 8915ae9304
commit e32cb14da3
10 changed files with 262 additions and 2666 deletions

View File

@ -0,0 +1,134 @@
name: OpenIPC for SSC337
on:
push:
branches:
- master
tags:
- "v*"
workflow_dispatch:
jobs:
build_core:
name: OpenIPC v2.1 for SSC337
runs-on: ubuntu-18.04
steps:
- name: Checkout
id: checkout
uses: actions/checkout@v2
- name: Install build dependencies
id: install
run: |
make install-deps
mkdir -p tmp
- name: Free disk space
id: freshing
run: |
sudo swapoff -a
sudo rm -f /swapfile
sudo apt clean
docker rmi $(docker image ls -aq)
df -h
- name: Prepare buildroot
id: prepare
run: |
HEAD_TAG=$(git tag --points-at HEAD)
GIT_HASH=$(git rev-parse --short $GITHUB_SHA)
BRANCH_NAME=$(echo $GITHUB_REF | cut -d'/' -f 3)
if [ -z "$HEAD_TAG" ]; then
TAG_NAME="latest"
RELEASE_NAME="Development Build"
PRERELEASE=true
else
TAG_NAME=${{ github.ref }}
RELEASE_NAME="Release ${{ github.ref }}"
PRERELEASE=false
fi
echo "GIT_HASH=$GIT_HASH" >> $GITHUB_ENV
echo "TAG_NAME=$TAG_NAME" >> $GITHUB_ENV
echo "RELEASE_NAME=$RELEASE_NAME" >> $GITHUB_ENV
echo "PRERELEASE=$PRERELEASE" >> $GITHUB_ENV
echo "BRANCH_NAME=$BRANCH_NAME" >> $GITHUB_ENV
cd $GITHUB_WORKSPACE
make prepare
- name: Build SSC337 firmware
id: build-ssc337-firmware
continue-on-error: true
run: |
ARCHIVE_FW="${GITHUB_WORKSPACE}/output/images/openipc.ssc337-br.tgz"
echo "ARCHIVE_FW=$ARCHIVE_FW" >> $GITHUB_ENV
cd $GITHUB_WORKSPACE
make PLATFORM=sigmastar BOARD=unknown_unknown_ssc337_openipc all
[[ $(stat --printf="%s" ${GITHUB_WORKSPACE}/output/images/uImage) -gt 2097152 ]] && echo "TG_NOTIFY=Warning, kernel size exceeded : $(stat --printf="%s" ${GITHUB_WORKSPACE}/output/images/uImage) vs 2097152" >> $GITHUB_ENV && exit 1
[[ $(stat --printf="%s" ${GITHUB_WORKSPACE}/output/images/rootfs.squashfs) -gt 5242880 ]] && echo "TG_NOTIFY=Warning, rootfs size exceeded - $(stat --printf="%s" ${GITHUB_WORKSPACE}/output/images/rootfs.squashfs) vs 5242880" >> $GITHUB_ENV && exit 1
mv ${GITHUB_WORKSPACE}/output/images/uImage ${GITHUB_WORKSPACE}/output/images/uImage.ssc337
mv ${GITHUB_WORKSPACE}/output/images/rootfs.squashfs ${GITHUB_WORKSPACE}/output/images/rootfs.squashfs.ssc337
tar -C ${GITHUB_WORKSPACE}/output/images -cvzf $ARCHIVE_FW rootfs.squashfs.ssc337 uImage.ssc337
- name: Build SSC337 SDK
id: build-ssc337-sdk
continue-on-error: true
run: |
ARCHIVE_SDK="${GITHUB_WORKSPACE}/output/images/arm-openipc-linux-uclibcgnueabihf_sdk-buildroot.tar.gz"
echo "ARCHIVE_SDK=$ARCHIVE_SDK" >> $GITHUB_ENV
cd $GITHUB_WORKSPACE/output
make sdk
- name: Send warning message to telegram channel
env:
TG_TOKEN: ${{ secrets.TELEGRAM_TOKEN_BOT_OPENIPC }}
TG_CHANNEL: ${{ secrets.TELEGRAM_CHANNEL_OPENIPC_DEV }}
if: steps.build-ssc337-firmware.outcome != 'success' || steps.build-ssc337-sdk.outcome != 'success'
run: |
TG_OPTIONS="-s --connect-timeout 5 --max-time 15"
TG_NOTIFY="${TG_NOTIFY:=Warning, Buildroot compiling error...}"
TG_HEADER=$(echo -e "\r\n$TG_NOTIFY \r\n\r\nCommit: $GIT_HASH \r\nBranch: $BRANCH_NAME \r\nTag: $TAG_NAME \r\n\r\n\xE2\x9A\xA0 GitHub Actions")
curl $TG_OPTIONS -H "Content-Type: multipart/form-data" -X POST https://api.telegram.org/bot$TG_TOKEN/sendMessage \
-F chat_id=$TG_CHANNEL -F text="$TG_HEADER"
- name: Create release
uses: actions/create-release@v1
continue-on-error: true
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
tag_name: ${{ env.TAG_NAME }}
release_name: ${{ env.RELEASE_NAME }}
draft: false
prerelease: ${{ env.PRERELEASE }}
- name: Upload FW to release
uses: svenstaro/upload-release-action@v2
continue-on-error: true
with:
repo_token: ${{ secrets.GITHUB_TOKEN }}
file: ${{ env.ARCHIVE_FW }}
asset_name: "openipc.ssc337-br.tgz"
tag: ${{ env.TAG_NAME }}
overwrite: true
- name: Upload SDK to release
uses: svenstaro/upload-release-action@v2
continue-on-error: true
with:
repo_token: ${{ secrets.GITHUB_TOKEN }}
file: ${{ env.ARCHIVE_SDK }}
asset_name: "arm-openipc-ssc337-linux-uclibcgnueabihf_sdk-buildroot.tar.gz"
tag: ${{ env.TAG_NAME }}
overwrite: true
- name: Send binary file to telegram channel
env:
TG_TOKEN: ${{ secrets.TELEGRAM_TOKEN_BOT_OPENIPC }}
TG_CHANNEL: ${{ secrets.TELEGRAM_CHANNEL_OPENIPC_DEV }}
run: |
TG_OPTIONS="-s --connect-timeout 5 --max-time 15"
TG_HEADER=$(echo -e "\r\nCommit: $GIT_HASH \r\nBranch: $BRANCH_NAME \r\nTag: $TAG_NAME \r\n\r\n\xE2\x9C\x85 GitHub Actions")
curl $TG_OPTIONS -H "Content-Type: multipart/form-data" -X POST https://api.telegram.org/bot$TG_TOKEN/sendDocument \
-F chat_id=$TG_CHANNEL -F document="@$ARCHIVE_FW" -F caption="$TG_HEADER"

View File

@ -994,9 +994,9 @@ CONFIG_EEPROM_LEGACY=m
#
# SCSI device support
#
CONFIG_SCSI_MOD=m
CONFIG_SCSI_MOD=y
# CONFIG_RAID_ATTRS is not set
CONFIG_SCSI=m
CONFIG_SCSI=y
CONFIG_SCSI_DMA=y
# CONFIG_SCSI_NETLINK is not set
# CONFIG_SCSI_MQ_DEFAULT is not set
@ -1005,7 +1005,7 @@ CONFIG_SCSI_PROC_FS=y
#
# SCSI support type (disk, tape, CD-ROM)
#
CONFIG_BLK_DEV_SD=m
CONFIG_BLK_DEV_SD=y
# CONFIG_CHR_DEV_ST is not set
# CONFIG_CHR_DEV_OSST is not set
# CONFIG_BLK_DEV_SR is not set
@ -1405,7 +1405,7 @@ CONFIG_GPIO_SYSFS=y
# CONFIG_THERMAL is not set
CONFIG_WATCHDOG=y
CONFIG_WATCHDOG_CORE=y
CONFIG_WATCHDOG_NOWAYOUT=y
# CONFIG_WATCHDOG_NOWAYOUT is not set
# CONFIG_WATCHDOG_SYSFS is not set
#
@ -1595,9 +1595,9 @@ CONFIG_FB_NOTIFY=y
CONFIG_USB_OHCI_LITTLE_ENDIAN=y
CONFIG_USB_SUPPORT=y
CONFIG_MP_USB_MSTAR=y
CONFIG_USB_COMMON=m
CONFIG_USB_COMMON=y
CONFIG_USB_ARCH_HAS_HCD=y
CONFIG_USB=m
CONFIG_USB=y
CONFIG_USB_ANNOUNCE_NEW_DEVICES=y
#
@ -1615,7 +1615,7 @@ CONFIG_USB_DEFAULT_PERSIST=y
#
# CONFIG_USB_C67X00_HCD is not set
# CONFIG_USB_XHCI_HCD is not set
CONFIG_USB_EHCI_HCD=m
CONFIG_USB_EHCI_HCD=y
CONFIG_USB_EHCI_ROOT_HUB_TT=y
CONFIG_USB_EHCI_TT_NEWSCHED=y
# CONFIG_USB_EHCI_SUSPEND_PORT is not set
@ -2093,7 +2093,7 @@ CONFIG_DCACHE_WORD_ACCESS=y
# CONFIG_OCFS2_FS is not set
# CONFIG_BTRFS_FS is not set
# CONFIG_NILFS2_FS is not set
CONFIG_F2FS_FS=y
CONFIG_F2FS_FS=m
CONFIG_F2FS_STAT_FS=y
CONFIG_F2FS_FS_XATTR=y
CONFIG_F2FS_FS_POSIX_ACL=y
@ -2218,9 +2218,9 @@ CONFIG_NFS_COMMON=y
CONFIG_SUNRPC=y
# CONFIG_SUNRPC_DEBUG is not set
# CONFIG_CEPH_FS is not set
CONFIG_CIFS=m
# CONFIG_CIFS is not set
# CONFIG_CIFS_STATS is not set
CONFIG_CIFS_WEAK_PW_HASH=y
# CONFIG_CIFS_WEAK_PW_HASH is not set
# CONFIG_CIFS_XATTR is not set
# CONFIG_CIFS_DEBUG is not set
# CONFIG_CIFS_SMB2 is not set
@ -2288,7 +2288,7 @@ CONFIG_NLS_UTF8=y
# printk and dmesg options
#
# CONFIG_PRINTK_TIME is not set
CONFIG_MESSAGE_LOGLEVEL_DEFAULT=3
CONFIG_MESSAGE_LOGLEVEL_DEFAULT=4
# CONFIG_BOOT_PRINTK_DELAY is not set
# CONFIG_DYNAMIC_DEBUG is not set

View File

@ -0,0 +1,3 @@
MEM_START_ADDR=0x20000000
KERNEL_UPLOAD_ADDR=0x20008000

View File

@ -3,8 +3,8 @@ MODEL=unknown
FAMILY=infinity6b0
CHIP=ssc335
RAM_SIZE=128M
RAM_LINUX_SIZE=64M
RAM_MPP_SIZE=64M
RAM_LINUX_SIZE=32M
RAM_MPP_SIZE=32M
ROM_SIZE=?
CMOS=unknown
UBOOT_SIZE=?

View File

@ -0,0 +1,10 @@
VENDOR=unknown
MODEL=unknown
FAMILY=infinity6b0
CHIP=ssc335
RAM_SIZE=64M
RAM_LINUX_SIZE=32M
RAM_MPP_SIZE=32M
ROM_SIZE=?
CMOS=unknown
UBOOT_SIZE=?

View File

@ -0,0 +1,79 @@
# Architecture
BR2_arm=y
BR2_cortex_a7=y
BR2_ARM_EABIHF=y
BR2_ARM_FPU_NEON_VFPV4=y
BR2_ARM_INSTRUCTIONS_THUMB2=y
BR2_KERNEL_HEADERS_VERSION=y
BR2_DEFAULT_KERNEL_VERSION="4.9.84"
BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_9=y
# Toolchain
BR2_PER_PACKAGE_DIRECTORIES=y
BR2_GCC_VERSION_7_X=y
BR2_TOOLCHAIN_USES_UCLIBC=y
BR2_TOOLCHAIN_BUILDROOT_UCLIBC=y
BR2_TOOLCHAIN_BUILDROOT_LIBC="uclibc"
# BR2_TOOLCHAIN_USES_MUSL is not set
# BR2_TOOLCHAIN_BUILDROOT_MUSL is not set
# BR2_TOOLCHAIN_BUILDROOT_LIBC="musl"
BR2_TOOLCHAIN_BUILDROOT_CXX=y
BR2_TOOLCHAIN_BUILDROOT_LOCALE=y
BR2_TOOLCHAIN_BUILDROOT_USE_SSP=y
# Kernel
BR2_LINUX_KERNEL=y
BR2_LINUX_KERNEL_CUSTOM_VERSION=y
BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.9.84"
BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y
BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="$(BR2_EXTERNAL_SIGMASTAR_PATH)/board/infinity6b0/kernel/ssc337.generic.config"
BR2_LINUX_KERNEL_UIMAGE=y
BR2_LINUX_KERNEL_XZ=y
BR2_LINUX_KERNEL_EXT_SIGMASTAR_PATCHER=y
BR2_LINUX_KERNEL_EXT_SIGMASTAR_PATCHER_LIST="$(BR2_EXTERNAL_SIGMASTAR_PATH)/board/infinity6b0/kernel/patches/ $(BR2_EXTERNAL_SIGMASTAR_PATH)/board/infinity6b0/kernel/overlay"
# Filesystem
# BR2_TARGET_TZ_INFO is not set
BR2_TARGET_ROOTFS_SQUASHFS=y
BR2_TARGET_ROOTFS_SQUASHFS4_XZ=y
BR2_ROOTFS_OVERLAY="$(TOPDIR)/../general/overlay"
BR2_ROOTFS_POST_BUILD_SCRIPT="$(TOPDIR)/../scripts/executing_commands_for_$(BR2_TOOLCHAIN_BUILDROOT_LIBC).sh"
# OpenIPC configuration
BR2_TOOLCHAIN_BUILDROOT_VENDOR="openipc"
BR2_TARGET_GENERIC_ISSUE="Welcome to OpenIPC v2.1"
BR2_TARGET_GENERIC_HOSTNAME="rotek"
BR2_GLOBAL_PATCH_DIR="$(TOPDIR)/../general/package/all-patches"
# Packages
BR2_PACKAGE_BUSYBOX_CONFIG="$(TOPDIR)/../general/package/busybox/busybox.config"
BR2_PACKAGE_DROPBEAR=y
BR2_PACKAGE_FWPRINTENV_NG=y
# BR2_PACKAGE_HASERL is not set
BR2_PACKAGE_IPCTOOL=y
BR2_PACKAGE_JSON_C=y
# BR2_PACKAGE_LAME is not set
# BR2_PACKAGE_LIBEVENT_MINI is not set
BR2_PACKAGE_LIBYAML=y
# BR2_PACKAGE_MAJESTIC is not set
# BR2_PACKAGE_MINI_SNMPD is not set
BR2_PACKAGE_SIGMASTAR_OSDRV_SSC335=y
BR2_PACKAGE_VTUND_LITE=y
BR2_PACKAGE_YAML_CLI=y
# WiFi
BR2_PACKAGE_WIRELESS_TOOLS=y
BR2_PACKAGE_WPA_SUPPLICANT=y
BR2_PACKAGE_WPA_SUPPLICANT_CLI=y
BR2_PACKAGE_WPA_SUPPLICANT_NL80211=y
BR2_PACKAGE_WPA_SUPPLICANT_PASSPHRASE=y
BR2_PACKAGE_LINUX_FIRMWARE=y
BR2_PACKAGE_LINUX_FIRMWARE_MEDIATEK_MT7601U=y
# Unused
# BR2_SHARED_STATIC_LIBS is not set
# BR2_PACKAGE_JPEG_TURBO is not set
# BR2_PACKAGE_MINIHTTP is not set
# BR2_PACKAGE_MXML is not set
# BR2_PACKAGE_SSHPASS is not set
# BR2_PACKAGE_RTL8188EU is not set

View File

@ -9,6 +9,7 @@ clone() {
}
fresh() {
date >/tmp/openipc_buildtime.txt
make distclean #clean
[ -d buildroot* ] && echo -e "\nBuildroot found, OK\n" || make prepare
}
@ -20,6 +21,8 @@ rename() {
mv -v ./output/images/uImage ./output/images/uImage.${soc}
mv -v ./output/images/rootfs.squashfs ./output/images/rootfs.squashfs.${soc}
mv -v ./output/images/rootfs.tar ./output/images/rootfs.${soc}.tar
date >>/tmp/openipc_buildtime.txt
echo -e "\n\n$(cat /tmp/openipc_buildtime.txt)"
}
upload() {
@ -109,6 +112,11 @@ ssc335_rotek() {
fresh && make PLATFORM=sigmastar BOARD=unknown_unknown_ssc335_rotek all && rename
}
ssc337() {
soc="ssc337"
fresh && make PLATFORM=sigmastar BOARD=unknown_unknown_ssc337_openipc all && rename
}
xm530() {
soc="xm530"
fresh && make PLATFORM=xiongmai BOARD=unknown_unknown_xm530_openipc all && rename
@ -138,6 +146,8 @@ ssc335 # OpenIPC
# ssc335_musl # Musl
# ssc335_rotek # Rotek
#
# ssc337 # OpenIPC
#
# xm530 # OK
#
#

View File

@ -35,19 +35,21 @@ If you like our work, please consider supporting us on [Opencollective](https://
| Building status | SoC | Files | Maintainers | Notes |
|-----------------|-----------|----------|-------------|-------|
|![Image](https://github.com/OpenIPC/openipc-2.1/actions/workflows/fh8632_images.yml/badge.svg)|FH8632|[uImage + rootfs.squashfs](https://github.com/OpenIPC/openipc-2.1/releases/download/latest/openipc.fh8632-br.tgz)|[zigfisher](https://github.com/ZigFisher), [widgetii](https://github.com/widgetii)| Start |
|![Image](https://github.com/OpenIPC/openipc-2.1/actions/workflows/fh8852_images.yml/badge.svg)|FH8852|[uImage + rootfs.squashfs](https://github.com/OpenIPC/openipc-2.1/releases/download/latest/openipc.fh8852-br.tgz)|[zigfisher](https://github.com/ZigFisher), [widgetii](https://github.com/widgetii)| Start |
|![Image](https://github.com/OpenIPC/openipc-2.1/actions/workflows/fh8856_images.yml/badge.svg)|FH8856|[uImage + rootfs.squashfs](https://github.com/OpenIPC/openipc-2.1/releases/download/latest/openipc.fh8856-br.tgz)|[zigfisher](https://github.com/ZigFisher), [widgetii](https://github.com/widgetii)| Start |
|![Image](https://github.com/OpenIPC/openipc-2.1/actions/workflows/gk7102s_images.yml/badge.svg)|GK7102S|[uImage + rootfs.squashfs](https://github.com/OpenIPC/openipc-2.1/releases/download/latest/openipc.gk7102s-br.tgz)|[zigfisher](https://github.com/ZigFisher), [widgetii](https://github.com/widgetii)| Start |
|![Image](https://github.com/OpenIPC/openipc-2.1/actions/workflows/fh8632_images.yml/badge.svg)|FH8632|[uImage + rootfs.squashfs](https://github.com/OpenIPC/openipc-2.1/releases/download/latest/openipc.fh8632-br.tgz)|[zigfisher](https://github.com/ZigFisher)| Start |
|![Image](https://github.com/OpenIPC/openipc-2.1/actions/workflows/fh8852_images.yml/badge.svg)|FH8852|[uImage + rootfs.squashfs](https://github.com/OpenIPC/openipc-2.1/releases/download/latest/openipc.fh8852-br.tgz)|[zigfisher](https://github.com/ZigFisher)| Start |
|![Image](https://github.com/OpenIPC/openipc-2.1/actions/workflows/fh8856_images.yml/badge.svg)|FH8856|[uImage + rootfs.squashfs](https://github.com/OpenIPC/openipc-2.1/releases/download/latest/openipc.fh8856-br.tgz)|[zigfisher](https://github.com/ZigFisher)| Start |
|![Image](https://github.com/OpenIPC/openipc-2.1/actions/workflows/gk7102s_images.yml/badge.svg)|GK7102S|[uImage + rootfs.squashfs](https://github.com/OpenIPC/openipc-2.1/releases/download/latest/openipc.gk7102s-br.tgz)|[zigfisher](https://github.com/ZigFisher)| Start |
|![Image](https://github.com/OpenIPC/openipc-2.1/actions/workflows/gk7205v200_images.yml/badge.svg)|GK7205v200|[uImage + rootfs.squashfs](https://github.com/OpenIPC/openipc-2.1/releases/download/latest/openipc.gk7205v200-br.tgz)|[zigfisher](https://github.com/ZigFisher), [widgetii](https://github.com/widgetii)| Start |
|![Image](https://github.com/OpenIPC/openipc-2.1/actions/workflows/hi3516ev200_images.yml/badge.svg)|Hi3516Ev200|[uImage + rootfs.squashfs](https://github.com/OpenIPC/openipc-2.1/releases/download/latest/openipc.hi3516ev200-br.tgz)|[zigfisher](https://github.com/ZigFisher), [widgetii](https://github.com/widgetii)| Ready |
|![Image](https://github.com/OpenIPC/openipc-2.1/actions/workflows/hi3516ev300_images.yml/badge.svg)|Hi3516Ev300|[uImage + rootfs.squashfs](https://github.com/OpenIPC/openipc-2.1/releases/download/latest/openipc.hi3516ev300-br.tgz)|[zigfisher](https://github.com/ZigFisher), [widgetii](https://github.com/widgetii)| Ready |
|![Image](https://github.com/OpenIPC/openipc-2.1/actions/workflows/hi3518ev300_images.yml/badge.svg)|Hi3518Ev300|[uImage + rootfs.squashfs](https://github.com/OpenIPC/openipc-2.1/releases/download/latest/openipc.hi3518ev300-br.tgz)|[zigfisher](https://github.com/ZigFisher), [widgetii](https://github.com/widgetii)| Ready |
|![Image](https://github.com/OpenIPC/openipc-2.1/actions/workflows/nt98562_images.yml/badge.svg)|NT98562|[uImage + rootfs.squashfs](https://github.com/OpenIPC/openipc-2.1/releases/download/latest/openipc.nt98562-br.tgz)|[zigfisher](https://github.com/ZigFisher), [widgetii](https://github.com/widgetii)| Start |
|![Image](https://github.com/OpenIPC/openipc-2.1/actions/workflows/nt98566_images.yml/badge.svg)|NT98566|[uImage + rootfs.squashfs](https://github.com/OpenIPC/openipc-2.1/releases/download/latest/openipc.nt98566-br.tgz)|[zigfisher](https://github.com/ZigFisher), [widgetii](https://github.com/widgetii)| Start |
|![Image](https://github.com/OpenIPC/openipc-2.1/actions/workflows/ssc335_images.yml/badge.svg)|SSC335|[uImage + rootfs.squashfs](https://github.com/OpenIPC/openipc-2.1/releases/download/latest/openipc.ssc335-br.tgz)|[zigfisher](https://github.com/ZigFisher)| Testing |
|![Image](https://github.com/OpenIPC/openipc-2.1/actions/workflows/nt98562_images.yml/badge.svg)|NT98562|[uImage + rootfs.squashfs](https://github.com/OpenIPC/openipc-2.1/releases/download/latest/openipc.nt98562-br.tgz)|[zigfisher](https://github.com/ZigFisher)| Start |
|![Image](https://github.com/OpenIPC/openipc-2.1/actions/workflows/nt98566_images.yml/badge.svg)|NT98566|[uImage + rootfs.squashfs](https://github.com/OpenIPC/openipc-2.1/releases/download/latest/openipc.nt98566-br.tgz)|[zigfisher](https://github.com/ZigFisher)| Start |
|![Image](https://github.com/OpenIPC/openipc-2.1/actions/workflows/ssc325_images.yml/badge.svg)|SSC325|[uImage + rootfs.squashfs](https://github.com/OpenIPC/openipc-2.1/releases/download/latest/openipc.ssc325-br.tgz)|[zigfisher](https://github.com/ZigFisher)| Start |
|![Image](https://github.com/OpenIPC/openipc-2.1/actions/workflows/ssc335_images.yml/badge.svg)|SSC335|[uImage + rootfs.squashfs](https://github.com/OpenIPC/openipc-2.1/releases/download/latest/openipc.ssc335-br.tgz)|[zigfisher](https://github.com/ZigFisher), [widgetii](https://github.com/widgetii)| Testing |
|![Image](https://github.com/OpenIPC/openipc-2.1/actions/workflows/ssc337_images.yml/badge.svg)|SSC337|[uImage + rootfs.squashfs](https://github.com/OpenIPC/openipc-2.1/releases/download/latest/openipc.ssc337-br.tgz)|[zigfisher](https://github.com/ZigFisher)| Testing |
|![Image](https://github.com/OpenIPC/openipc-2.1/actions/workflows/t31_images.yml/badge.svg)|T31|[uImage + rootfs.squashfs](https://github.com/OpenIPC/openipc-2.1/releases/download/latest/openipc.t31-br.tgz)|[zigfisher](https://github.com/ZigFisher)| Start |
|![Image](https://github.com/OpenIPC/openipc-2.1/actions/workflows/xm530_images.yml/badge.svg)|XM530/XM550|[uImage + rootfs.squashfs](https://github.com/OpenIPC/openipc-2.1/releases/download/latest/openipc.xm530-br.tgz)|[zigfisher](https://github.com/ZigFisher)| Testing |
|![Image](https://github.com/OpenIPC/openipc-2.1/actions/workflows/xm530_images.yml/badge.svg)|XM530/XM550|[uImage + rootfs.squashfs](https://github.com/OpenIPC/openipc-2.1/releases/download/latest/openipc.xm530-br.tgz)|[zigfisher](https://github.com/ZigFisher), [widgetii](https://github.com/widgetii)| Testing |
-----
@ -63,6 +65,7 @@ If you like our work, please consider supporting us on [Opencollective](https://
| nt98566 | - | - | - |
| ssc325 | - | - | - |
| ssc335 | - | yes | yes |
| ssc337 | - | - | - |
| t31 | - | - | - |
| xm530 | - | yes | yes |
@ -75,7 +78,8 @@ If you like our work, please consider supporting us on [Opencollective](https://
| gk7205v200 |
| hi3516ev200 | yes | yes | yes | yes | yes | yes |
| nt98566 |
| ssc325 |
| ssc335 | yes | ? | yes | yes | yes | yes |
| ssc335 |
| ssc337 |
| t31 |
| xm530 |