Repository navigation
msposd: build the hi3536 target on hi3536dv100 - #2603
Conversation
msposd.mk has no hi3536dv100 arm, so its else falls through to star6e. That builds a SigmaStar binary linked against libmi_rgn, libmi_sys and libcam_os_wrapper. Those libraries are installed only when the vendor is sigmastar, so on a HiSilicon NVR msposd cannot start at all. msposd has carried a hi3536 target for this SoC since its #50.
520b17a to
9922384
Compare
PR Summary by QodoBuild msposd's hi3536 target for hi3536dv100
AI Description
Diagram
High-Level Assessment
Files changed (1)
|
Code Review by Qodo
1.
|
On hi3536dv100, msposd draws on the hifb layer, /dev/fb0. That exists only once hisilicon-osdrv-hi3536dv100's load_hisilicon has loaded hifb.ko, and nothing pulled that package in: builder's wfbng config happens to select both, but msposd alone on hi3536dv100_lite would have had no framebuffer (Qodo, #2603). Select it when the SoC family is hi3536dv100. Other families are unaffected: hi3516ev300_lite with msposd does not get it. The help text now names the repository the .mk fetches.
Problem
general/package/msposd/msposd.mkhas no case forhi3536dv100, so it falls through toelse→star6e. EnablingBR2_PACKAGE_MSPOSDon a hi3536dv100 image therefore builds a SigmaStar msposd linked againstlibmi_rgn,libmi_sysandlibcam_os_wrapper.MSPOSD_INSTALL_LIBRARIESinstalls those only when the vendor issigmastar, so on a HiSilicon NVR the binary cannot start.msposd has a
hi3536target. Since OpenIPC/msposd#107 it draws the OSD on the hifb layer (/dev/fb0) and links no HiSilicon library. Part of OpenIPC/msposd#18 and #1621.Hardware tested on
Hi3536DV100 NVR, OpenIPC
hi3536dv100_litenightly-20261015-1d9c834, with the MPP set fromhisilicon-osdrv-hi3536dv100loaded through itsload_hisilicon, and silicon_researchvdecat 720p60.Evidence
Built from this branch, rebased on
5c01f0a92, forhi3536dv100_litewithBR2_PACKAGE_MSPOSD=yadded only to the local.config. msposd is fetched from upstreammain(MSPOSD_VERSION = HEAD), so it includes msposd#107.Before (master's fallthrough,
MSPOSD_FAMILY=star6e):After:
That binary, run on the NVR next to
vdec -m 720p60, withmsposd --master 127.0.0.1:14551 --osd -r 50 -v:No flight controller was attached, and the HDMI output was checked from
/dev/fb0and/proc/umap, not on a monitor.python3 .github/scripts/ci-matrix.py --self-test: ok.Scope
general/package/all-patches/linux/(those go to OpenIPC/linux)general/overlay/or in a sharedload_<vendor>script hardcodes a value specific to my boardLD_PRELOAD, and no binaries that cannot be rebuilt from source