Fix pdschRxdataF_comp phy scope data source
pdschRxdataF_comp data source was handled incorrectly. Each symbol entire slot data was copied. This caused pdschRxdataF_comp to mostly contain zeros. The call to UEscopeCopy was moved from symbol loop into last symbol processing. In case imscope is used padding and unused REs are not copied to the sink. Added checks inside scope functions to ensure correct functionality.
This commit is contained in:
@@ -154,6 +154,25 @@ void copyData(void *, enum scopeDataType type, void *dataIn, int elementSz, int
|
||||
scope_data->unlockScopeData(type); \
|
||||
}
|
||||
|
||||
#define UEScopeHasTryLock(ue) \
|
||||
(ue->scopeData && ((scopeData_t *)ue->scopeData)->tryLockScopeData)
|
||||
|
||||
#define UETryLockScopeData(ue, type, ...) \
|
||||
ue->scopeData && ((scopeData_t *)ue->scopeData)->tryLockScopeData \
|
||||
&& ((scopeData_t *)ue->scopeData)->tryLockScopeData(type, ##__VA_ARGS__)
|
||||
|
||||
#define UEscopeCopyUnsafe(ue, type, ...) \
|
||||
scopeData_t *scope_data = (scopeData_t *)ue->scopeData; \
|
||||
if (scope_data && scope_data->copyDataUnsafeWithOffset) { \
|
||||
scope_data->copyDataUnsafeWithOffset(type, ##__VA_ARGS__); \
|
||||
}
|
||||
|
||||
#define UEunlockScopeData(ue, type) \
|
||||
scopeData_t *scope_data = (scopeData_t *)ue->scopeData; \
|
||||
if (scope_data && scope_data->unlockScopeData) { \
|
||||
scope_data->unlockScopeData(type); \
|
||||
}
|
||||
|
||||
extended_kpi_ue* getKPIUE();
|
||||
|
||||
#endif
|
||||
|
||||
Reference in New Issue
Block a user