ci: build the KC110 and the Tapo TC70 v3 instead of skipping them - #132
Merged
Conversation
Both devices have had a complete devices/<dir>/ in this tree for a long time and have never once been built. #120 froze that state rather than changing it -- it put the 7 defconfigs that were in no master.yml matrix into NOT_BUILT so that a device falling out of CI would be a test failure instead of a silent skip. Freezing was the right call for a change whose job was to not alter what gets built; it was never meant to be permanent for devices whose only problem is that nobody added the matrix line. Two contributors did try to add that line. #111 (Tapo TC70 v3, July) and #108 (KC110, June) both append to the device list in master.yml, which is where the registry lived when they were written. It does not live there any more -- the matrix is read off the tree -- so both PRs are just merge conflicts now, and the devices they were asking for are exactly the two entries removed here. This is their CI half, landed the way the selector wants it. #108 also carries a majestic="ultimate" line and a vendor libsns_ov2735.so for the no-video bug; those are unaffected by any of this and stay with that PR. The two self-test cases that used t31_lite_tp-link-tapo-tc70-v3 as their example of an unbuilt device move to t31_lite_xiaomi-mjsxj05hl, which is still in NOT_BUILT. The overlay case also switches to a path that exists, since the device it now names has no etc/inittab. Neither device has ever been through a build, so this PR is where we find out. That is affordable exactly once: a change to ci-matrix.py cannot narrow -- it is what does the narrowing -- so this runs the full 109-device matrix and proves both of them in the same run. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01VJAy8zt35ichXSVnCrg1Cf
openipc-ai
requested review from
cronyx,
flyrouter and
viktorxda
as code owners
August 27, 2026 17:30
PR Summary by QodoBuild KC110 and Tapo TC70 v3 in CI
AI Description
Diagram
High-Level Assessment
Files changed (1)
|
Code Review by Qodo🐞 Bugs (0) 📘 Rule violations (0) 📎 Requirement gaps (0)
Great, no issues found!Qodo reviewed your code and found no material issues that require reviewTip of the day💡 Did you know, you can ask Qodo to dismiss a finding you disagree with, with your reason on record |
This was referenced Aug 27, 2026
openipc-ai
pushed a commit
that referenced
this pull request
Aug 27, 2026
…majestic (#108) Two changes for the TP-Link Kasa KC110, both device-local. BR2_OPENIPC_MAJESTIC="ultimate" brings the defconfig in line with the only other devices that set it, hi3516ev300_ultimate_rostelecom-ipc8232swc-we and hi3516ev300_ultimate_rvi-1ncmw2028. The overlay ships a vendor libsns_ov2735.so, which fixes the no-video symptom on this board. hisilicon-osdrv-hi3516cv200 already installs a libsns_ov2735.so of its own, so this overrides it rather than filling a gap; the two are different builds (23076 bytes here against 17988 upstream), consistent with the KC110 needing the MIPI variant while the osdrv ships the DVP/i2c one. That matches the ov2735_mipi_1080p.ini and the patched load_hisilicon this device already carried. Verified in CI against master (run 33106540798, merge dc5c2fc): ci-matrix: 1/110 devices (needs_build=True) --- narrowed to the affected devices Firmware (hi3518ev200_ultimate_tplink-kasa-kc110) SUCCESS - uImage: [1776KB/2048KB] - rootfs.squashfs: [6276KB/8192KB] No entry in hi3518ev200_ultimate.list reported "matched no file", so the prune list is not stale against the overlay, and /usr/lib/sensors/libsns_ov2735.so is not one of the paths it strips -- the blob reaches the image. This device only started building at all in #132, which took it out of the NOT_BUILT opt-out in ci-matrix.py; the CI-registration half of this PR landed there.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Both devices have had a complete
devices/<dir>/in this tree for a long time and have never once been built. #120 froze that state rather than changing it — it put the 7 defconfigs that were in nomaster.ymlmatrix intoNOT_BUILTso that a device falling out of CI would be a test failure instead of a silent skip. Freezing was right for a change whose job was to not alter what gets built; it was never meant to be permanent for devices whose only problem is that nobody added the matrix line.Two contributors did try to add that line. #111 (Tapo TC70 v3, July) and #108 (KC110, June) both append to the device list in
master.yml, which is where the registry lived when they were written. It does not live there any more — the matrix is read off the tree — so both PRs are merge conflicts now, and the devices they asked for are exactly the two entries removed here.This is their CI half, landed the way the selector wants it. #108 also carries a
BR2_OPENIPC_MAJESTIC="ultimate"line and a vendorlibsns_ov2735.sofor the no-video bug; those are unaffected by any of this and stay with that PR.Self-test
The two cases that used
t31_lite_tp-link-tapo-tc70-v3as their example of an unbuilt device move tot31_lite_xiaomi-mjsxj05hl, which is still inNOT_BUILT. The overlay case also switches to a path that exists, since the device it now names has noetc/inittab.Before, both devices reached nothing; now each narrows to itself:
Note on cost
Neither device has ever been through a build, so this PR is where we find out. That is affordable exactly once: a change to
ci-matrix.pycannot narrow — it is what does the narrowing — so this runs the full 109-device matrix and proves both of them in the same run.