hisilicon-cv500: build 20 sensor drivers from openhisilicon source#2053
Merged
Conversation
This was referenced May 5, 2026
Expands HISILICON_OPENSDK_SENSORS_hi3516cv500 from 3 sensors
(imx307, imx335, imx415) to 20 — every cv500 sensor that has source
in the openhisilicon repo at the current pin (680085e).
galaxycore_gc2053 omnivision_os05a_2L sony_imx307
omnivision_os04b10 omnivision_os08a10 sony_imx307_2L
omnivision_os05a omnivision_ov12870 sony_imx327
omnivision_ov2775 omnivision_ov9284 sony_imx327_2L
panasonic_mn34220 primesensor_ps5260_2L sony_imx335
smart_sc4210 sony_imx335_ForCar
sony_imx390
sony_imx415
sony_imx458
Deletes 20 binary blobs from
general/package/hisilicon-osdrv-hi3516cv500/files/sensor/ — every
source-built libname has an exactly-matching binary blob (perfect
overlap), so the binary-deletion count exactly mirrors the list
expansion. The osdrv .mk uses files/sensor/*.so glob, so blob
deletion is sufficient — no .mk edit needed.
Five binary blobs without source counterparts remain (intentional):
libsns_imx290.so libsns_imx307_2l_slave.so
libsns_imx307_i2c_lvds.so libsns_imx334.so
libsns_imx377.so
Verified: all 20 source-built sensors compile cleanly with the cached
cv500 musleabi toolchain (arm-linux-musleabi-gcc 13.3.0). ELF target
ARMv5 EABI5 soft-float, matching the platform's ABI.
Tracks OpenIPC/openhisilicon#82. Same pattern as #2042 (cv200) and
INSTALL_TARGET_CMDS block at hisilicon-opensdk.mk:250.
490c110 to
5acf155
Compare
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_hi3516cv500from 3 sensors (imx307,imx335,imx415) to 20 — every cv500 sensor that has source in openhisilicon at the current pin (680085e).Tracks the umbrella issue openhisilicon#82. Same pattern as #2042 (cv200) and #2052 (v101).
Sensors moved from binary blob to source build
20 binary blobs deleted — perfect overlap. Sensors without source remain as binary blobs (
imx290,imx307_2l_slave,imx307_i2c_lvds,imx334,imx377).The osdrv
.mkusesfiles/sensor/*.soglob — blob deletion is sufficient, no.mkedit needed.INSTALL_TARGET_CMDSforeach already wired athisilicon-opensdk.mk:250.Verification
All 20 sensors compile cleanly with the cached cv500 musleabi toolchain (arm-linux-musleabi-gcc 13.3.0), ARMv5 EABI5 soft-float.
Test plan
Build (hi3516cv500_lite)job stays greenoutput/target/usr/lib/sensors/contains the 20 source-built.sofiles plus the 5 still-binary blobs🤖 Generated with Claude Code