hisilicon-v101: build 9 sensor drivers from openhisilicon source#2052
Merged
Conversation
Expands HISILICON_OPENSDK_SENSORS_hi3519v101 from 1 entry (sony_imx385 only) to 9 — every sensor that has source in the openhisilicon repo at the current pin (680085e): omnivision_os05a sony_imx226 sony_imx290 sony_imx327 omnivision_os08a sony_imx274 sony_imx326 sony_imx385 omnivision_ov4689_slave Deletes 8 binary blobs from general/package/hisilicon-osdrv-hi3519v101/files/sensor/ that the 8 source-built sensors with matching libsns_*.so names now replace (imx226, imx274, imx290, imx326, imx327, imx385, os05a, ov4689_slave). The osdrv .mk uses files/sensor/*.so glob, so blob deletion is sufficient — no .mk edit needed. omnivision_os08a is source-only on this platform (no matching binary blob — the firmware has libsns_os08a10.so which is a different sensor variant; that blob is kept untouched). Five binary blobs without source counterparts remain (intentional): libsns_imx178.so libsns_imx185.so libsns_imx385_lvds_8ch.so libsns_os08a10.so libsns_sc4210.so Verified: all 9 source-built sensors compile cleanly with the cached v101 musleabi toolchain (arm-linux-musleabi-gcc 13.3.0). ELF target is ARMv5 EABI5 soft-float, matching the platform's ABI. Tracks OpenIPC/openhisilicon#82 (sensor source-build umbrella). Same pattern as #2042 (cv200); install foreach was already wired in the v101 INSTALL_TARGET_CMDS block at .mk line 128.
This was referenced May 5, 2026
widgetii
added a commit
that referenced
this pull request
May 8, 2026
Adds HISILICON_OPENSDK_SENSORS_hi3516cv100 with 17 sensors — every
cv100 sensor that has source in the openhisilicon repo at the
current pin (680085e):
aptina_9m034 ov_9712 soi_jxh42
aptina_ar0130 ov_9712+ sony_icx692
aptina_ar0330 pana34031 sony_imx104
aptina_mt9p006 pana34041 sony_imx122
himax_1375 pixelplus_3100k sony_imx138
soi_h22 sony_imx236
Wires the cv100 INSTALL_TARGET_CMDS block to install them via the
standard sensor foreach. The block was previously kernel-modules-
only.
Deletes 11 binary blobs from
general/package/hisilicon-osdrv-hi3516cv100/files/sensor/ — every
source-built libname that exact-matches a binary blob:
libsns_9m034.so libsns_imx138.so libsns_mt9p006.so
libsns_icx692.so libsns_imx236.so libsns_ov9712.so
libsns_imx104.so libsns_mn34041.so libsns_ov9712_plus.so
libsns_imx122.so libsns_po3100k.so
Nineteen binary blobs without exact-match source counterparts
remain (intentional). Variants of source-built sensors with bus/
resolution suffixes (libsns_ar0130_720p, libsns_imx138_i2c_dc,
libsns_jxh42_i2c, libsns_mn34031_720p, libsns_ov9712_i2c_dc) are
preserved as binary alongside the source-built unsuffixed versions
because the cv100 .ini configs reference these specific filenames.
Sensors with no source at all (ar0140, ar0330_1080p, gc1004ok,
imx222_spi_dc, imx225_*, ov2710, ov9732, sc1035_*) also stay.
Naming peculiarities preserved as-is (source uses platform
convention libsns_<model>; binary blobs use legacy non-standard
names that .ini files reference): libsns_hm1375 (source) vs
libsns_himax1375.so (binary, .ini); libsns_h22 (source) vs
libsns_soih22.so (binary, .ini). Both binary versions stay; the
source-built versions ship alongside.
The cv100 osdrv .mk uses files/sensor/*.so glob, so blob deletion
is sufficient — no osdrv .mk edit needed.
Tracks OpenIPC/openhisilicon#82. Closes the per-platform sweep
(after #2042 cv200, #2052 v101, #2053 cv500, #2054 ev200+gk7205,
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
Expands
HISILICON_OPENSDK_SENSORS_hi3519v101from 1 sensor (sony_imx385only) to 9 — every v101 sensor that has source in the openhisilicon repo at the current pin (680085e).Tracks the umbrella issue openhisilicon#82. Same pattern as #2042 (cv200).
Sensors moved from binary blob to source build
Reproducibility
Every v101 build now compiles those 9 sensors from C source. 8 binary
.soblobs deleted fromgeneral/package/hisilicon-osdrv-hi3519v101/files/sensor/(one source-only sensor —os08a— has no matching binary blob; the firmware shipslibsns_os08a10.sowhich is a different variant and stays untouched).The osdrv
.mkusesfiles/sensor/*.soglob — blob deletion is sufficient, no.mkedit needed.Sensors without source code remain as binary blobs (intentional):
Verification
make CHIPARCH=hi3519v101 -C libraries/sensor/hi3519v101/<each>against the cached v101 musleabi toolchain (arm-linux-musleabi-gcc 13.3.0) — all 9 sensor.sofiles produced cleanly, ARMv5 EABI5 soft-float (matching the v101 ABI).INSTALL_TARGET_CMDSforeach was already wired in the v101 block athisilicon-opensdk.mk:128— no install-block edit needed.Test plan
Build (hi3519v101_lite)job stays greenoutput/target/usr/lib/sensors/contains the 9 source-built.sofiles plus the 5 still-binary blobsReal-hardware test
Cannot test on the available hi3518ev200 camera (it's a V2 platform, not V3A). CI will exercise the build path.
🤖 Generated with Claude Code