22- [ 1. Overview] ( #1-overview )
33- [ 2. Feature Changes] ( #2-feature-changes )
44 - [ 2.1 Version 2.0.0] ( #21-version-200 )
5+ - [ 2.2 Version 2.1.0 (FuSA)] ( #22-version-210-fusa )
56- [ 3. Quality Improvements] ( #3-quality-improvements )
7+ - [ Version 2.1.0] ( #version-210 )
68- [ 4. Verified Platforms] ( #4-verified-platforms )
79
810# 1. Overview
@@ -28,17 +30,107 @@ The **QCNode** is the Qualcomm ADAS hardware abstraction layer that provides use
2830 - ** Optical Flow** : Based on * SV* to compute optical flow
2931 - ** Depth From Stereo** : Based on * SV* to compute depth from stereo images
3032
33+ ## 2.2 Version 2.1.0 (FuSA)
34+
35+ - New Nodes
36+ - ** Radar** : Promoted to a standalone node, supporting both HQX and HGY platforms
37+ - ** Simulation** : Added SimulationNode for testing and simulating node behaviors (error conditions, processing delays, and state transitions)
38+
39+ - Camera Node
40+ - Bumped to version 2.3.2
41+ - Added metadata feature support and new dependent platform libs
42+ - Fixed multi-stream issue; added FuSA AoU documentation
43+
44+ - Remap Node
45+ - Added NSP0/1/2/3 core selection support on Nordy
46+ - Fixed GTests for ` ProcessFrameDescriptor ` and ` MapDimensionsValidation `
47+
48+ - CL2DFlex Node
49+ - Added memory deregister on stop with stress GTests
50+ - Fixed UV plane mismatch in NV12 UBWC decompress; added ` convert_ubwc ` work mode for NV12 UBWC → NV12 decompression
51+
52+ - Voxelization Node
53+ - Added NSP core 0–3 support on Nordy
54+ - Fixed GPU output correctness issue
55+
56+ - QNN Node
57+ - Added ` loadType ` option to select model loading method (` binary ` , ` library ` , or ` buffer ` )
58+ - Added FuSA Software Assumption Usecase documentation
59+
60+ - EVA Node
61+ - Enabled Lemans platform support
62+ - Added condition checks for set-configuration properties
63+
64+ - Video Encoder/Decoder
65+ - Fixed Encoder deinitialization failure (CR4329991) and invalid output issue
66+ - Fixed Video Decoder issue (CR4416935)
67+ - Made output buffer size configurable
68+ - Added VPU Mock Library for code coverage
69+
70+ - Memory Manager
71+ - Fixed thread-safety issue in public APIs
72+ - Fixed pool handle collision under concurrent ` CreatePool `
73+ - Fixed resource reclaim error during deinitialization
74+
75+ - FADAS
76+ - Added FastRPC BCS support for SMMU-mapped communication
77+ - Fixed ` fastrpc_munmap ` to always release SMMU mapping on stop
78+
79+ - Framework / Infrastructure
80+ - Temporal: support multiple Temporal tensors
81+ - DataTree/MemoryManager: security code review fixes
82+ - Node: fixed security issues and updated node ID data type
83+ - QNX Secpol: added channel connect permission for ` compresmgr_service_t `
84+ - QCRun & Secpol: joined ` hetero_sched_group ` and ` mqueue ` group to enable hetero scheduler
85+ - QCRun: joined ` safetymonitor_group ` to access FuSA CRC libs
86+ - Replaced ` HAP_farf ` logging with ` printf ` -mapped ` _QAIC_FARF ` macro
87+
88+ - Sample Apps
89+ - Hetero Scheduler integration across all sample pipelines (SampleCamera, SampleDataReader, SampleFrameSync, SampleQNN/Remap/CL2DFlex/Voxelization, SV/EVA)
90+ - SampleFrameSync: added FrameSync and Temporal Hetero Scheduler support; fixed empty frame publish issue
91+ - SampleVideo: added H264 pipeline support; use ` dmaHandle ` to maintain buffer life cycle
92+ - SampleQNN: fixed UDO log formatting and image-to-tensor conversion bug
93+ - SampleApp: NSP multi-core resource protection optimization
94+ - Added lidar coordinate computation sample with Neon acceleration
95+
96+ - FuSA
97+ - Added Common SWAoU documentation for QCNode, Camera, and Voxelization nodes
98+ - QNN: added FuSA Software Assumption Usecase document
99+
100+ - Build / Toolchain
101+ - Updated toolchain to support QNN SDK lib-safe and FastRPC BCS
102+ - Added safetylibs and camera metadata toolchain support
103+ - Replaced hardcoded cache path with ` THIRD_PARTY_CACHE ` variable
104+ - Cleaned up engineering-only FADAS remap format and pipeline macros
31105
32106# 3. Quality Improvements
33107
108+ ## Version 2.1.0
109+
110+ - MISRA-C / Static Analysis
111+ - Enabled ` -Wall ` compiler option across all nodes (Remap, Voxelization, Video Encoder/Decoder, CL2DFlex, QNN, Infras, OpenCL Iface), resolving all outstanding warnings
112+ - Fixed MISRA-C rule violations in CL2DFlex node
113+ - Applied Klockwork static analysis fixes across the codebase
114+
115+ - Code Coverage
116+ - Improved unit test coverage across multiple components:
117+ - Voxelization, Remap, EVA, CL2DFlex: added dedicated code coverage GTests; fixed build warnings in Voxelization tests
118+ - Memory Manager: reached 90% code coverage with additional test cases
119+ - Radar: improved code coverage
120+ - FADAS (FadasIfaceCore, MemUtils): added unit test cases
121+ - CL2DFlex: fixed mock coverage GTest failure on Nordy HQX
122+
123+ - Security
124+ - Fixed security code review issues in Node base class and DataTree/MemoryManager infrastructure
125+ - Fixed DAC issue in qcrun shell script
126+
34127# 4. Verified Platforms
35128- QCNode is verified on Lemans device with the following meta build:
36129 - HQX QNX Snapdragon_Auto.HQX.4.5.6.0.1.r1
130+ - HQX QNX Snapdragon_Auto.HQX.4.8.9.0.1
37131 - HGY Ubuntu Snapdragon_Auto.HGY.4.1.6.0.r1
38132 - HGY Linux Snapdragon_Auto.HGY.4.1.6.0.1.r1
39133
40134- QCNode is verified on Nordy device with the following meta build:
41135 - HGY Linux SA8797P.HGY.5.1.7.0.r1
42136 - HQX QNX SA8797P.HQX.5.7.7.0.r1
43-
44-
0 commit comments