Skip to content

nor-split: the Hi3516EV200 family and the GK7205V500 family - #620

Merged
widgetii merged 3 commits into
masterfrom
nor-split-ev200-family
Oct 23, 2026
Merged

widgetii merged 3 commits into
masterfrom
nor-split-ev200-family

Conversation

@widgetii

Copy link
Copy Markdown
Member

en/nor-split-layout.md and en/sysupgrade.md catch up with the split NOR layout on two more families.

All of it was checked in qemu-hisilicon, not on hardware.

- nor-split-layout: Hi3516EV200, Hi3518EV300 and Hi3516DV200 ship the
  split package beside the fixed-slot one (OpenIPC/firmware#2655, on
  OpenIPC/linux#131 and OpenIPC/u-boot#48); Hi3516EV300 lite and
  ultimate ship the split package only, its kernel filling the 2 MiB
  kernel slot (neo keeps fixed slots). Going back to fixed slots lists
  them accordingly.
- sysupgrade: `sysupgrade -k -r` installs the split layout on them.

Checked in qemu-hisilicon (hi3516ev200, hi3518ev300, hi3516ev300; 8 and
16 MB). Not run on hardware.
GK7205V500 ships the split package beside the fixed-slot one
(OpenIPC/firmware#2658, on OpenIPC/linux#137 and OpenIPC/u-boot#52).
GK7205V510 and GK7205V530 install that one gk7205v500 build, as defib
(OpenIPC/defib#163) and the site's installer do. Each keeps its own
u-boot-<soc>-nor.bin. sysupgrade -k -r takes the split package on them
too, and they go back to fixed slots the same way.

Checked in qemu-hisilicon (gk7205v500 8 and 16 MB, gk7205v510/v530
16 MB). Not run on hardware.
@qodo-free-for-open-source-projects

Copy link
Copy Markdown

PR Summary by Qodo

Document split NOR support for Hi3516EV200 and GK7205V500 families

📝 Documentation 🕐 Less than 10 minutes

Grey Divider

AI Description

• Document split NOR packages and bootloader requirements for additional HiSilicon and GK SoCs.
• Clarify sysupgrade behavior, shared GK7205V500 packages, and fixed-slot rollback limitations.
Diagram

graph TD
  A["Supported camera"] --> B["sysupgrade -k -r"] --> C["Split package"] --> D["NOR flash"] --> E["U-Boot"] --> F["Kernel mtdsplit"]
  G["Fixed-slot package"] -->|"eligible SoCs"| D
  A -->|"rollback where available"| G
Loading
High-Level Assessment

Updating the existing layout and upgrade guides is appropriate for this documentation-only PR. A separate guide would duplicate the established upgrade and rollback instructions.

Files changed (2) +14 / -6

Documentation (2) +14 / -6
nor-split-layout.mdAdd SoC package availability and rollback guidance +9/-3

Add SoC package availability and rollback guidance

• Adds the Hi3516EV200 and GK7205V500 families and Hi3516EV300 to the split-layout table, including the shared GK7205V500 build and SoC-specific bootloaders. Extends fixed-slot rollback guidance and explains why Hi3516EV300 lite and ultimate are split-only.

en/nor-split-layout.md

sysupgrade.mdDocument split-layout upgrades for additional SoCs +5/-3

Document split-layout upgrades for additional SoCs

• Lists the newly supported SoCs for 'sysupgrade -k -r' and identifies the shared GK7205V500 split package used by GK7205V500, V510, and V530.

en/sysupgrade.md

@qodo-free-for-open-source-projects

qodo-free-for-open-source-projects Bot commented Oct 23, 2026 •

Copy link
Copy Markdown

Code Review by Qodo

🐞 Bugs (0) 📘 Rule violations (1) 📎 Requirement gaps (0) 🎨 UX issues (0) 🔗 Cross-repo conflicts (0) 📜 Skill insights (0)

Grey Divider


Action required

1. Readers see the private test environment 📘 Rule violation ⛨ Security
Description
qemu-hisilicon appears in the PR description and both commit messages as the verification
environment instead of a hardware class and configuration. Publishing that project-specific
environment name identifies private verification infrastructure to every repository reader, while
the public documentation only needs the tested SoCs and capacities.
Code

en/nor-split-layout.md[R20-22]

+| Hi3516EV200, Hi3518EV300, Hi3516DV200 | 256K boot + 64K env | `0x50000` | `u-boot-<soc>-nor.bin` | `-split` and the fixed-slot one |
+| Hi3516EV300 | 256K boot + 64K env | `0x50000` | `u-boot-<soc>-nor.bin` | `-split` only (neo: fixed slots) |
+| GK7205V500, GK7205V510, GK7205V530 | 256K boot + 64K env | `0x50000` | `u-boot-<soc>-nor.bin` | `-split` and the fixed-slot one, both `gk7205v500` |
Evidence
The checklist prohibits commit messages, the PR title, and the PR description from adding
identifying details about the project's own test hardware or network. The PR description and both
commit messages name qemu-hisilicon as the verification environment.

Rule 2: No lab environment details

Agent prompt
The issue below was found during a code review. Follow the provided context and guidance below and implement a solution

## Issue description
The PR description and commit messages disclose `qemu-hisilicon`, a project-specific verification environment, contrary to the requirement to publish only reproducible hardware and configuration details.
## Fix Focus Areas
- en/nor-split-layout.md[20-22]
## Recommended Fix
Remove `qemu-hisilicon` from the PR description and commit messages, and describe verification only using the tested SoCs, memory capacities, and other reproducible hardware configuration details.

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


2. NAND cameras get the wrong upgrade ✓ Resolved
Description
The new SoC list in sysupgrade.md places NAND-capable cameras in the NOR-only package instruction
without checking the flash layout. On a NAND camera using any of these SoCs, the paragraph points
the operator to a NOR split archive even though the documented NAND process uses a NAND archive and
a single UBIFS image.
Code

en/sysupgrade.md[R27-31]

+GK7205V500, GK7205V510 and GK7205V530, and on Hi3516CV610, Hi3516CV608 and
+Hi3519DV500, `sysupgrade -k -r` installs the
[NOR split layout](nor-split-layout.md) from `openipc.<soc>-nor-<variant>-split.tgz`
and carries your settings across (Hi3516CV610 and Hi3516CV608 share one package,
-`openipc.hi3516cv6xx-nor-<variant>-split.tgz`). The offsets in *From U-Boot* below
+`openipc.hi3516cv6xx-nor-<variant>-split.tgz`; the GK7205V500 family shares
Evidence
The changed paragraph names these SoCs and says sysupgrade -k -r installs the NOR split archive,
but the NAND page documents the same SoCs with a different layout and upgrade artifact.

/en/sysupgrade.md[24-32]
/en/nand-rootfs-layouts.md[14-23]
/en/nand-rootfs-layouts.md[55-68]

Agent prompt
The issue below was found during a code review. Follow the provided context and guidance below and implement a solution

## Issue description
The new sysupgrade paragraph lists SoCs that also have a documented NAND layout, but presents the NOR split archive as the upgrade path without limiting the statement to NOR cameras. This can direct NAND-camera operators to the wrong package and upgrade procedure.
## Fix Focus Areas
- en/sysupgrade.md[26-32]
- en/nand-rootfs-layouts.md[14-23]
- en/nand-rootfs-layouts.md[55-68]
## Recommended Fix
Limit the new paragraph explicitly to cameras using NOR flash, and add a concise cross-reference directing NAND users to the NAND upgrade instructions and `openipc.<soc>-nand-<variant>.tgz`. Ensure the wording does not imply that SoC identity alone selects the NOR package.

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


3. Fixed-slot cameras get split upgrades ✓ Resolved
Description
The added Hi3516EV300 entry in the sysupgrade coverage list does not preserve the documented
fixed-slot exception for the neo edition. A neo camera following this instruction is told to fetch
the split package even though the NOR layout page says neo ships with fixed slots, while the
fixed-slot instructions elsewhere assume a different partition layout.
Code

en/sysupgrade.md[R26-29]

+well), on Hi3516EV200, Hi3516EV300, Hi3518EV300 and Hi3516DV200, on
+GK7205V500, GK7205V510 and GK7205V530, and on Hi3516CV610, Hi3516CV608 and
+Hi3519DV500, `sysupgrade -k -r` installs the
[NOR split layout](nor-split-layout.md) from `openipc.<soc>-nor-<variant>-split.tgz`
Evidence
The changed sysupgrade paragraph unconditionally includes Hi3516EV300, while the changed NOR table
explicitly says its split package is only for non-neo editions and that neo keeps fixed slots. The
migration documentation also shows a distinct Hi3516EV300 fixed-slot partition arrangement rather
than the generic 2 MiB layout.

/en/sysupgrade.md[26-32]
/en/nor-split-layout.md[20-22]
/en/nor-split-layout.md[301-306]
/en/lite-ultimate-migration.md[158-169]

Agent prompt
The issue below was found during a code review. Follow the provided context and guidance below and implement a solution

## Issue description
The sysupgrade coverage sentence treats every Hi3516EV300 camera as a NOR-split target, contradicting the layout table's fixed-slot exception for the neo edition. Operators of that edition can be directed to an incompatible package or layout.
## Fix Focus Areas
- en/sysupgrade.md[26-32]
- en/nor-split-layout.md[20-22]
- en/nor-split-layout.md[301-306]
- en/lite-ultimate-migration.md[158-169]
## Recommended Fix
State explicitly which Hi3516EV300 editions use the split package and which edition remains fixed-slot. Give the fixed-slot exception its appropriate upgrade/reversion instructions, and avoid claiming that `Hi3516EV300` as a bare SoC universally selects the split archive.

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


Grey Divider

Tip of the day
💡 Did you know, you can reply 'qodo' on any finding to push back, ask questions, or dig deeper

More tips ↗ | Customize Qodo ↗ | Qodo docs ↗

Grey Divider

Qodo Logo

Comment thread en/nor-split-layout.md
Comment thread en/sysupgrade.md
Comment thread en/sysupgrade.md Outdated
…nd ultimate

From review: the list of SoCs whose sysupgrade -k -r installs the split
package now says it is about NOR flash, and points NAND cameras to their
own layout page. Hi3516EV300 is listed for lite and ultimate only: neo
keeps fixed slots, as the layout page says.
@widgetii
widgetii force-pushed the nor-split-ev200-family branch from 381af25 to 2e88306 Compare October 23, 2026 07:16
@widgetii
widgetii merged commit aa285df into master Oct 23, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant