Skip to content

hisilicon: hi3516cv6xx: enable TUN module + vtund-openipc (lite) - #2799

Open
dimerr wants to merge 2 commits into
OpenIPC:masterfrom
dimerr:hisilicon-cv6xx-enable-tun
Open

dimerr wants to merge 2 commits into
OpenIPC:masterfrom
dimerr:hisilicon-cv6xx-enable-tun

Conversation

@dimerr

@dimerr dimerr commented Nov 8, 2026 •

Copy link
Copy Markdown
Collaborator

Two related changes for the HiSilicon hi3516cv6xx (CV608/CV610/CV613) family:

  1. Kernel: enable CONFIG_TUN=m in hi3516cv6xx.generic.config. Builds the TUN/TAP driver as a loadable module, bringing cv6xx to parity with all other HiSilicon board configs (which already ship CONFIG_TUN=m). Needed for userspace VPN / ZeroTier / WireGuard-go / tunnel use on these boards.

  2. Userspace: enable BR2_PACKAGE_VTUND_OPENIPC=y on the cv6xx lite defconfig. Matches the ultimate variant (which already ships it) and other board lite defconfigs. Provides the vtun/tunnel helper to go with the kernel TUN module above.

Enables the TUN/TAP driver as a loadable module for the CV608/CV610/CV613
family, bringing it to parity with all other HiSilicon board configs
(which already ship CONFIG_TUN=m). Needed for userspace VPN / ZeroTier /
WireGuard-go / tunnel use on these boards.
@qodo-free-for-open-source-projects

Copy link
Copy Markdown

PR Summary by Qodo

Enable TUN/TAP module for HiSilicon hi3516cv6xx boards

⚙️ Configuration changes ✨ Enhancement 🕐 Less than 5 minutes

Grey Divider

AI Description

• Enable TUN/TAP as a loadable kernel module for the hi3516cv6xx family.
• Support userspace tunnel applications and match other HiSilicon board configurations.
High-Level Assessment

Keep the module setting in the shared hi3516cv6xx kernel configuration: both lite and ultimate builds reference it, and CONFIG_TUN=m matches the other HiSilicon boards. A built-in driver would use kernel image space unnecessarily.

Files changed (1) +1 / -1

Other (1) +1 / -1
hi3516cv6xx.generic.configEnable the TUN/TAP kernel module +1/-1

Enable the TUN/TAP kernel module

• Changes CONFIG_TUN from disabled to a loadable module in the shared hi3516cv6xx kernel configuration. This makes TUN/TAP available to userspace tunnel applications when the module is installed and loaded.

br-ext-chip-hisilicon/board/hi3516cv6xx/hi3516cv6xx.generic.config

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

qodo-free-for-open-source-projects Bot commented Nov 8, 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


Remediation recommended

1. TUN module ships without board evidence 📘 Rule violation ◔ Observability
Description
CONFIG_TUN=m replaces the disabled CONFIG_TUN line in hi3516cv6xx.generic.config, so every
image built from this family's kernel config now carries a loadable TUN/TAP module that did not
exist before. The description gives only a parity rationale (other HiSilicon configs already set it)
and names no symptom, no affected board, and no before/after output from a real camera, which the
hardware-evidence gate requires for any change that alters what the firmware does on a device.
Code

br-ext-chip-hisilicon/board/hi3516cv6xx/hi3516cv6xx.generic.config[1122]

+CONFIG_TUN=m
Evidence
The only hunk changes line 1122 from # CONFIG_TUN is not set to CONFIG_TUN=m. The PR description
states the purpose ('Needed for userspace VPN / ZeroTier / WireGuard-go / tunnel use') and parity
with other boards, but contains no verification section, no checkboxes, and no log, dmesg, or
module-load output from a camera. The change itself adds a kernel module to the shipped image, so it
is an image-altering change under checklist item 3.

Rule 3: Hardware evidence is present and honest
br-ext-chip-hisilicon/board/hi3516cv6xx/hi3516cv6xx.generic.config[1122-1122]

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 flips `CONFIG_TUN` from disabled to `CONFIG_TUN=m` for the hi3516cv6xx family (br-ext-chip-hisilicon/board/hi3516cv6xx/hi3516cv6xx.generic.config, line 1122). This adds a TUN/TAP module to every image built from that config, but the description only gives a parity rationale and no evidence from hardware.
## Fix Focus Areas
- br-ext-chip-hisilicon/board/hi3516cv6xx/hi3516cv6xx.generic.config[1122-1122]
## Recommended Fix
Update the PR description to name the symptom or use case the change fixes and the affected board(s). Attach real output from a camera built with this config: `lsmod` or `modprobe tun` result, `ls -l /dev/net/tun`, and a dmesg excerpt. If hardware testing was not done, say so plainly and give the evidence the change class allows, such as a build artifact check confirming `tun.ko` is present in the image.

ⓘ 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 pick a display mode instead of tweaking every Display option by hand

More tips ↗ | Customize Qodo ↗ | Qodo docs ↗

Grey Divider

Qodo Logo

@dimerr
dimerr disabled auto-merge November 8, 2026 20:59
Enables the vtun/tunnel userspace package (BR2_PACKAGE_VTUND_OPENIPC) on
the cv6xx lite variant, matching the ultimate variant (which already
ships it) and other board lite defconfigs. Complements the CONFIG_TUN=m
kernel change in this PR.
@dimerr dimerr changed the title hisilicon: hi3516cv6xx: enable CONFIG_TUN=m hisilicon: hi3516cv6xx: enable TUN module + vtund-openipc (lite) Nov 8, 2026
@dimerr
dimerr enabled auto-merge (squash) November 8, 2026 21:02

This branch has not been deployed

No deployments
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