hisilicon-osdrv-hi3516cv300: drop opensdk-overwritten blobs (mirror of #2101)#2102
Merged
Conversation
…en blobs Mirror of #2101 for the cv500 case, narrowed to cv300's structurally different setup. Unlike cv500 (where opensdk produces a full open_*.ko replacement set), opensdk on cv300 only renames a subset of open_*.ko to vendor names — VO and piris are not built (DISABLE_VO=1, no piris module in hi3516cv300.kbuild). Stripping all .ko installs the way cv500 did would lose hi3516cv300_vou.ko and hi_piris.ko, both actively loaded by files/script/load_hisilicon. So this commit removes only the install lines for the 28 modules that hisilicon-opensdk overwrites at install time (hi_osal, sys_config, hi_mipi, hi_acodec, hi3516cv300_base/sys/isp/vpss/venc/vedu/h264e/h265e/ jpege/rc/vgs/ive/chnl/aio/ai/ao/aenc/adec/viu/region/wdt/ir/pwm/rtc/ sensor). On every modern OpenIPC cv300 build these were installed, then immediately clobbered by the opensdk install step — pure dead weight in the rootfs build pipeline. Kept install lines: - hi3516cv300_vou.ko — VO subsystem, opensdk sets DISABLE_VO=1 for cv300 - hi_piris.ko — P-iris, not built by openhisilicon cv300 kbuild - hi_adv7179, hi_cipher, hi_sample_ist, hi_ssp_*, hi_tlv320aic31, virtualhifb — board-specific extras referenced only by commented insmod lines in load_hisilicon; kept as opt-in until each grows an open replacement or is pruned from the load script. Verified by building hi3516cv300_lite from this branch and comparing against today's nightly: rootfs file list : 674 = 674, diff empty /lib/modules/3.18.20/hisilicon/ : 40 = 40, diff empty QEMU boot (-M hi3516cv300) : identical (5/5 lsmod entries, same pre-existing cma_osal.ko insmod failure on both)
Companion to the previous commit. These 29 prebuilt vendor .ko files
were installed by HISILICON_OSDRV_HI3516CV300_INSTALL_TARGET_CMDS but
hisilicon-opensdk renames open_*.ko over each of them at install time,
so they're never present in any shipped rootfs. Removing the install
lines orphaned them in files/kmod/ — drop the binaries too.
Files removed (kernel 3.18.20 vendor blobs, hi3516cv300_* and hi_*
naming, ~600 KB total):
hi3516cv300_{adec,aenc,ai,aio,ao,base,chnl,h264e,h265e,ir,isp,
ive,jpege,pwm,rc,region,rtc,sensor,sys,vedu,venc,
vgs,viu,vpss,wdt}.ko
hi_acodec.ko hi_mipi.ko hi_osal.ko sys_config.ko
Kept: hi3516cv300_vou.ko, hi_piris.ko, hi_adv7179.ko, hi_cipher.ko,
hi_sample_ist.ko, hi_ssp_ili9341v_6bit.ko, hi_ssp_ota5182.ko,
hi_tlv320aic31.ko, virtualhifb.ko — each is referenced by the .mk
and has no opensdk replacement (see commit a few back for rationale).
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.
Summary
Mirror of #2101 for the cv300 case. cv300 osdrv was unconditionally installing 35 prebuilt vendor
.kofiles; hisilicon-opensdk renamed 28open_*.koover them at install time, so they were dead weight in the rootfs build pipeline. This PR drops those 28 install lines from the.mkand deletes the orphan binaries (~600 KB freed in the source tree).cv300 is structurally different from cv500 in one important way: opensdk on cv300 sets
DISABLE_VO=1and has no piris module, sohi3516cv300_vou.koandhi_piris.ko(both actively loaded byload_hisilicon) have no openhisilicon replacement. Those prebuilts stay, along with seven other vendor-only modules referenced only by commentedinsmodlines (kept as opt-in extras until each grows an open replacement or is pruned from the load script).Commits:
hisilicon-osdrv-hi3516cv300.mk(-29 / +16; comment block explains what stays and why).kofiles fromfiles/kmod/Test plan
Local build of
hi3516cv300_litefrom this branch, compared against today's nightlyopenipc.hi3516cv300-nor-lite.tgz:/lib/modules/3.18.20/hisilicon/count.kolist diff-M hi3516cv300lsmodBoth QEMU boots hit the same pre-existing
cma_osal.koinsmod failure (separate firmware-side bug, orthogonal to this PR — the cv300qemu-bootrow in openhisilicon CI is alreadyallow-failure: truefor it)..koset ends up in/lib/modules/3.18.20/hisilicon/openipc-hi3516cv300 login:with no new errors🤖 Generated with Claude Code