Skip to content

nor-split: the Hi3516CV500 family, Hi3536DV100 and the Hi3516AV100 family - #622

Merged
widgetii merged 2 commits into
masterfrom
nor-split-round2
Oct 24, 2026
Merged

widgetii merged 2 commits into
masterfrom
nor-split-round2

Conversation

@widgetii

Copy link
Copy Markdown
Member

en/nor-split-layout.md and en/sysupgrade.md add three more families on the split NOR layout. They ship the -split package beside the fixed-slot one since OpenIPC/firmware#2669, on OpenIPC/linux#142, #143 and #144 and OpenIPC/u-boot#62.

Checked in qemu-hisilicon (hi3516cv500 16 MB, hi3536dv100 and hi3516av100 8 MB). Not run on hardware.

…mily

They ship the split package beside the fixed-slot one since
OpenIPC/firmware#2669, on OpenIPC/linux#142, #143 and #144 and
OpenIPC/u-boot#62. The Hi3516AV100 family's u-boot-<soc>-nor.bin boots
only from #62 on: earlier builds had no sf command, so their bootcmd
could not read the kernel. sysupgrade -k -r takes the split package on
them, and they go back to fixed slots the same way.

Checked in qemu-hisilicon (hi3516cv500 16 MB, hi3536dv100 and hi3516av100
8 MB). Not run on hardware.
@qodo-free-for-open-source-projects

Copy link
Copy Markdown

PR Summary by Qodo

Document split NOR support for six additional HiSilicon SoCs

📝 Documentation 🕐 Less than 10 minutes

Grey Divider

AI Description

• Document split NOR packages and bootloader requirements for six additional HiSilicon SoCs.
• Clarify sysupgrade -k -r support and the return path to fixed-slot firmware.
Diagram

graph TD
  S["Added NOR SoCs"] --> B{"Compatible bootloader?"} -->|Yes| P["Split package"] --> U["sysupgrade -k -r"] --> F["Split layout"] --> R["Fixed-slot rollback"]
  B -->|No| N["Upgrade U-Boot"] --> P
Loading
High-Level Assessment

Documenting the additions in both the layout reference and upgrade guide is appropriate: readers need the bootloader and package prerequisites as well as the upgrade command. Consolidating the guidance into one page would make the other less useful at its point of use.

Files changed (2) +7 / -2

Documentation (2) +7 / -2
nor-split-layout.mdList six additional SoCs and their split NOR prerequisites +5/-1

List six additional SoCs and their split NOR prerequisites

• Adds boot-area, firmware-offset, bootloader, and package information for the Hi3516CV500, Hi3516DV300, Hi3516AV300, Hi3536DV100, Hi3516AV100, and Hi3516DV100. Notes that the Hi3516AV100 family needs OpenIPC/u-boot#62 or later, and extends the fixed-slot rollback guidance to these SoCs.

en/nor-split-layout.md

sysupgrade.mdInclude the new SoCs in split NOR upgrade guidance +2/-1

Include the new SoCs in split NOR upgrade guidance

• Adds the six SoCs to the list for which 'sysupgrade -k -r' installs a NOR split package while carrying settings across.

en/sysupgrade.md

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

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

Copy link
Copy Markdown

Code Review by Qodo

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

Grey Divider


Action required

1. Older AV/DV100 upgrades fail to boot 🐞 Bug ☼ Reliability
Description
The sysupgrade -k -r list adds Hi3516AV100 and Hi3516DV100 without carrying over the required
OpenIPC U-Boot version. On cameras with an earlier U-Boot, which lacks sf, the split image is
installed but the boot command cannot read its kernel, leaving the camera unable to boot.
Code

en/sysupgrade.md[R29-30]

+Hi3518EV200, on Hi3516CV500, Hi3516DV300 and Hi3516AV300, on Hi3536DV100, on
+Hi3516AV100 and Hi3516DV100, and on Hi3516CV610, Hi3516CV608 and Hi3519DV500,
Evidence
The sysupgrade page presents the split upgrade command as applicable to both families, while the NOR
layout table states that their required bootloader is OpenIPC/u-boot#62 or later because earlier
builds lack sf. The upgrade page must expose that prerequisite before directing users to install
the split image.

en/sysupgrade.md[29-31]
en/nor-split-layout.md[25-27]

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 instructions tell Hi3516AV100 and Hi3516DV100 users to install the split package without warning that older U-Boot builds lack `sf` and cannot boot the resulting image.
### Fix Focus Areas
- en/sysupgrade.md[29-31]
- en/nor-split-layout.md[25-27]
### Recommended Fix
Add the OpenIPC/u-boot#62-or-later prerequisite directly to the Hi3516AV100 and Hi3516DV100 entry in the sysupgrade instructions, and make clear that users with earlier bootloaders must update the bootloader before running `sysupgrade -k -r`. Keep the detailed bootloader caveat in the NOR layout page as the supporting reference.

ⓘ 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 choose which labels appear on a finding, and whether they show icons or text

More tips ↗ | Customize Qodo ↗ | Qodo docs ↗

Grey Divider

Qodo Logo

Comment thread en/sysupgrade.md Resolved
…image

From review: the older u-boot-<soc>-universal.bin (2010.06) that these
cameras run loads the split image's kernel, which takes the device tree's
layout over the fixed-slot mtdparts it is given (checked in qemu-hisilicon,
hi3516av100). An -nor.bin from before OpenIPC/u-boot#62 boots nothing, so
no camera runs it to upgrade from.
@widgetii
widgetii merged commit 1bb18c1 into master Oct 24, 2026
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