Skip to content

goke: add GK7205V500 ultimate NAND (UBI) board#2200

Merged
widgetii merged 1 commit into
masterfrom
gk7205v500-nand-ultimate
Jun 19, 2026
Merged

goke: add GK7205V500 ultimate NAND (UBI) board#2200
widgetii merged 1 commit into
masterfrom
gk7205v500-nand-ultimate

Conversation

@widgetii

Copy link
Copy Markdown
Member

What

Adds gk7205v500_ultimate_defconfig for the 128 MB SPI-NAND variant of the GK7205V500, using OpenIPC's standard UBI layout.

Target flash on the lab cameras: GigaDevice GD5F1GM7UEYIG SPI-NAND — JEDEC 0xC8 0x91, 1 Gbit / 128 MiB SLC, 2 KB page, 128 KB erase block, 128 B OOB, on-die 24-bit/1K ECC.

Layout (Option B — UBI)

Partition Size Offset Contents
boot 512K 0x000000 U-Boot
bootenv 512K 0x080000 U-Boot env
kernel 4M 0x100000 uImage (xz)
ubi rest (~123M) 0x500000 UBI: rootfs (ubifs, ro) + rootfs_data (ubifs, autoresize)

Follows the existing OpenIPC UBI convention (hi3518ev300_ultimate et al.): read-only rootfs volume + autoresize rootfs_data overlay, mounted by general/overlay/init. Partition names kernel/rootfs/rootfs_data are the load-bearing contract used by init and sysupgrade.

Changes

  • New br-ext-chip-goke/configs/gk7205v500_ultimate_defconfig
    • BR2_TARGET_ROOTFS_UBI with SUBSIZE=2048 / UBIFS_LEBSIZE=0x1f000 — match the GD5F1GM7 page/block geometry. ubinize emits -m 0x800 -p 0x20000 -s 2048 as expected.
    • Ultimate package set modeled on gk7205v300_ultimate, retaining the v500-specific GOKE_OSDRV_GK7205V500 and the PTZ GPIO stepper packages.
    • HISILICON_OPENSDK left disabled — that SDK has no mkp_isp.h for the v500 family (matches gk7205v500_lite); enabling it breaks the build.
  • Kernel gk7205v500.generic.config: enable CONFIG_UBIFS_FS (+LZO/ZLIB) so the rootfs_data overlay can mount as ubifs. The XMedia FMC100 SPI-NAND driver, MTD_UBI, MTD_UBI_BLOCK, and MTD_CMDLINE_PARTS were already enabled.

Build / test

Built locally on this branch (toolchain + kernel from GitHub release assets):

  • rootfs.ubi: 13056KB / 16384KB
  • uImage: 1931KB / 4096KB
  • Produces openipc.gk7205v500-nand-ultimate.tgz.

Pair with u-boot-gk7205v500-nand.bin from the OpenIPC/firmware release assets. Not yet flash-validated on hardware — QEMU/board bring-up to follow.

🤖 Generated with Claude Code

Add gk7205v500_ultimate_defconfig targeting 128 MB SPI-NAND
(GigaDevice GD5F1GM7UEYIG: 2 KB page / 128 KB erase block, SLC).

Layout follows OpenIPC's standard UBI scheme: read-only ubifs
`rootfs` volume + autoresize `rootfs_data` overlay volume, mounted
by general/overlay/init. Reuses the proven NAND geometry knobs
(BR2_TARGET_ROOTFS_UBI_SUBSIZE=2048, UBIFS_LEBSIZE=0x1f000) which
match the GD5F1GM7 page/block sizes; ubinize emits -m 0x800 -p
0x20000 -s 2048 as expected.

Ultimate package set modeled on gk7205v300_ultimate, keeping the
v500-specific GOKE_OSDRV_GK7205V500 and PTZ GPIO stepper packages.
HISILICON_OPENSDK left disabled (no mkp_isp.h for the v500 family,
matching gk7205v500_lite).

Kernel: enable CONFIG_UBIFS_FS (+LZO/ZLIB) in
gk7205v500.generic.config so the rootfs_data overlay can mount as
ubifs (driver/UBI/MTD-SPI-NAND were already enabled).

Built locally: rootfs.ubi 13056KB/16384KB, uImage 1931KB/4096KB.
Pair with u-boot-gk7205v500-nand.bin from the OpenIPC/firmware
release assets.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@widgetii widgetii merged commit ed1290c into master Jun 19, 2026
99 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant