Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -102,6 +102,7 @@ Xiaomi MJSXJ03HL T31N JXQ03 RTL8189FS_SDIO NOR_16M done
Xiaomi MJSXJ03HL T31N JXQ03P RTL8189FS_SDIO NOR_16M done
Xiaomi MJSXJ05HL T31L GC2053 ATBM6031_SDIO NOR_16M preparation
ZTE K540 T31X SC4336 ATBM6012B_USB NOR_16M done
ZTE K545 T31X SC4336 ATBM6012B_USB NOR_16M done
4G Camera XG521 V1.2 GK7202V300 GC1054 EC800E-CN_USB NOR_8M done
XM IPG-G3-WR GK7202V300 JXH63 ATBM60321S_USB NOR_8M done
```
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,71 @@
# Architecture

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Action required

1. New camera lacks filesystem exclusions 📘 Rule violation ≡ Correctness

The new devices/t31_lite_zte-k545 profile adds its defconfig but does not contain the required
general/scripts/excludes/t31_lite.list. When this profile is assembled, no device-level exclusion
data defines which T31 lite assets must be pruned or preserved, including the required sensor and
Wi-Fi files.
Agent Prompt
## Issue description
The new device profile is missing its required `t31_lite.list` root filesystem exclusion file.

## Issue Context
Create the exclusion list at the documented device path and ensure it preserves the SC4336 sensor assets and ATBM603X Wi-Fi modules while excluding unused assets.

## Fix Focus Areas
- devices/t31_lite_zte-k545/general/scripts/excludes/t31_lite.list[1-1]

ⓘ Copy this prompt and use it to remediate the issue with your preferred AI generation tools

BR2_mipsel=y
BR2_mips_xburst=y
# BR2_MIPS_SOFT_FLOAT is not set
BR2_MIPS_FP32_MODE_32=y

# Toolchain
BR2_TOOLCHAIN_EXTERNAL=y
BR2_TOOLCHAIN_EXTERNAL_CUSTOM=y
BR2_TOOLCHAIN_EXTERNAL_DOWNLOAD=y
BR2_TOOLCHAIN_EXTERNAL_URL="https://github.com/openipc/firmware/releases/download/$(OPENIPC_TOOLCHAIN).tgz"
BR2_TOOLCHAIN_EXTERNAL_CUSTOM_PREFIX="mipsel-openipc-linux-musl"
BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_10=y
BR2_TOOLCHAIN_EXTERNAL_CUSTOM_MUSL=y
BR2_TOOLCHAIN_EXTERNAL_CXX=y

# Kernel
BR2_LINUX_KERNEL=y
BR2_LINUX_KERNEL_CUSTOM_TARBALL=y
BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="https://github.com/openipc/linux/archive/$(OPENIPC_KERNEL).tar.gz"
BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y
BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="$(EXTERNAL_VENDOR)/board/$(OPENIPC_SOC_FAMILY)/t31.generic.config"
BR2_LINUX_KERNEL_LZMA=y

# Filesystem
BR2_PACKAGE_BUSYBOX_CONFIG="$(BR2_EXTERNAL)/package/busybox/busybox.config"
BR2_PACKAGE_UBOOT_TOOLS=y
BR2_PACKAGE_ZLIB=y
# BR2_PACKAGE_IFUPDOWN_SCRIPTS is not set
# BR2_PACKAGE_WIREGUARD_LINUX_COMPAT is not set
# BR2_PACKAGE_WIREGUARD_TOOLS is not set
BR2_PACKAGE_WIRELESS_TOOLS=y
BR2_PACKAGE_WPA_SUPPLICANT=y
BR2_PACKAGE_WPA_SUPPLICANT_CLI=y
BR2_PACKAGE_WPA_SUPPLICANT_PASSPHRASE=y
BR2_TARGET_ROOTFS_CPIO=y
BR2_TARGET_ROOTFS_SQUASHFS=y
BR2_TARGET_ROOTFS_SQUASHFS4_XZ=y

# OpenIPC
BR2_OPENIPC_SOC_VENDOR="ingenic"
BR2_OPENIPC_SOC_MODEL="t31"
BR2_OPENIPC_SOC_FAMILY="t31"
BR2_OPENIPC_SNS_MODEL="sc4336"
BR2_OPENIPC_VARIANT="lite"
BR2_OPENIPC_FLASH_SIZE="8"

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Action required

2. Firmware targets wrong flash size 📘 Rule violation ≡ Correctness

BR2_OPENIPC_FLASH_SIZE is set to 8 even though the newly documented K545 hardware has 16 MiB NOR
flash. Every build selected through this defconfig therefore uses an 8 MiB target for the 16 MiB
board, propagating the incorrect capacity into firmware generation.
Agent Prompt
## Issue description
The K545 defconfig declares an 8 MiB flash target despite the device having 16 MiB NOR flash.

## Issue Context
Set the Buildroot flash-size value to the physical capacity required by the compliance rule, then rebuild and verify the resulting image and partition layout on the K545.

## Fix Focus Areas
- devices/t31_lite_zte-k545/br-ext-chip-ingenic/configs/t31_lite_zte-k545_defconfig[46-46]

ⓘ Copy this prompt and use it to remediate the issue with your preferred AI generation tools


# Packages
BR2_PACKAGE_ATBM60XX=y
BR2_PACKAGE_ATBM60XX_MODEL_603X=y
BR2_PACKAGE_DROPBEAR_OPENIPC=y
BR2_PACKAGE_INGENIC_OSDRV_T31=y
BR2_PACKAGE_IPCTOOL=y
BR2_PACKAGE_LIBCURL_OPENIPC=y
BR2_PACKAGE_LIBCURL_OPENIPC_CURL=y
# BR2_PACKAGE_LIBCURL_OPENIPC_PROXY_SUPPORT is not set
# BR2_PACKAGE_LIBCURL_OPENIPC_COOKIES_SUPPORT is not set
# BR2_PACKAGE_LIBCURL_OPENIPC_EXTRA_PROTOCOLS_FEATURES is not set
BR2_PACKAGE_LIBEVENT_OPENIPC=y
BR2_PACKAGE_LIBOGG_OPENIPC=y
BR2_PACKAGE_MAJESTIC_FONTS=y
BR2_PACKAGE_MAJESTIC_WEBUI=y
BR2_PACKAGE_MAJESTIC=y
BR2_PACKAGE_MBEDTLS_OPENIPC=y
# BR2_PACKAGE_MOTORS is not set
BR2_PACKAGE_GPIO_MOTORS=y
BR2_PACKAGE_OPUS_OPENIPC=y
BR2_PACKAGE_OPUS_OPENIPC_FIXED_POINT=y
# BR2_PACKAGE_QUIRC_OPENIPC=y
# BR2_PACKAGE_VTUND_OPENIPC is not set
BR2_PACKAGE_YAML_CLI=y
Original file line number Diff line number Diff line change
@@ -0,0 +1,50 @@
#!/bin/sh
#
# Perform basic settings on a known IP camera
#
#
# Set custom upgrade url
#
fw_setenv upgrade 'https://github.com/OpenIPC/builder/releases/download/latest/t31_lite_zte-k545-nor.tgz'
#
#
# Set custom majestic settings
#
cli -s .nightMode.irCutPin1 57
cli -s .nightMode.irCutPin2 58
cli -s .nightMode.colorToGray true
cli -s .nightMode.backlightPin 11
cli -s .video0.codec h264
cli -s .audio.speakerPin 64
cli -s .audio.speakerPinInvert true
#
#
# Set wlan device and credentials if need
#
fw_setenv wlandev atbm603x-t31-zte-k540
#fw_setenv wlanssid Router
#fw_setenv wlanpass 12345678
#
#
# Set ptz motor pins
#
fw_setenv ptz_control gpio
fw_setenv ptz_gpio '49 63 62 61 59 52 53 54'
#
#
# Set osmem and rmem
#
fw_setenv osmem 64M
fw_setenv rmem 64M@0x4000000
#
# Status LEDs (active low: 0 = on, 1 = off):
# Blue: GPIO 10
# Red: GPIO 16
# Green: GPIO 17
#
# Example to turn on green LED on boot:
# echo 17 > /sys/class/gpio/export 2>/dev/null
# echo out > /sys/class/gpio/gpio17/direction 2>/dev/null
# echo 0 > /sys/class/gpio/gpio17/value 2>/dev/null
#
exit 0
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
diff --git a/arch/mips/xburst/soc-t31/chip-t31/isvp/Swan/board.h b/arch/mips/xburst/soc-t31/chip-t31/isvp/Swan/board.h
index d9058e1271..b53c252c64 100644
--- a/arch/mips/xburst/soc-t31/chip-t31/isvp/Swan/board.h
+++ b/arch/mips/xburst/soc-t31/chip-t31/isvp/Swan/board.h
@@ -32,7 +32,7 @@
/* ****************************GPIO MMC START******************************** */
#define GPIO_MMC_RST_N -1
#define GPIO_MMC_RST_N_LEVEL LOW_ENABLE
-#define GPIO_MMC_CD_N GPIO_PB(27)
+#define GPIO_MMC_CD_N GPIO_PB(18)
#define GPIO_MMC_CD_N_LEVEL LOW_ENABLE
#define GPIO_MMC_PWR -1
#define GPIO_MMC_PWR_LEVEL HIGH_ENABLE