AG903ライブラリリファレンス
Body Source
AG903_BMUMgrSetBufferConfig 関数
本文ソース
コピコード
1: int32_t AG903_BMUMgrSetBufferConfig(
AG903_BMUMgrHandle
*handle,
void
*buffer, uint32_t stride, uint32_t buf_num) 2: { 3: uint32_t unit = (handle - handle_list); 4: 5: 6:
if
(unit >=
AG903_BMU_UNIT_NUM
|| &handle_list[unit] != handle) 7: { 8:
return
-
AG903_EINVAL
; 9: } 10: 11: 12:
if
(handle->is_exec) 13: { 14:
return
-
AG903_EBUSY
; 15: } 16: 17: 19: 20:
if
(stride >= (1<<(24+1)) || (stride & 0x7f)) 21: { 22:
return
-
AG903_EINVAL
; 23: } 24: 25:
if
(buf_num >
AG903_BMU_BUF_NUM_MAX
) 26: { 27:
return
-
AG903_EINVAL
; 28: } 29: 30:
if
(8 < buf_num) 31: { 32:
return
-
AG903_EINVAL
; 33: } 34: 35:
if
(buf_num == 8) 36: { 37: buf_num = 0; 38: } 39: 40:
AG903_BMUPrmSetBASEADR
(unit, ((uint32_t)buffer) &
AG903_BMUn_BASEADR_ADR_MSK
); 41:
AG903_BMUPrmSetSTRIDE
(unit, stride &
AG903_BMUn_STRIDE_STRIDE_MSK
); 42:
AG903_BMUPrmSetBUFNUM
(unit, buf_num); 43: 44:
return
AG903_ENONE
; 45: }
Copyright (c) 2017-2025 Axell Corporation. All rights reserved.
内容
|
インデックス
|
ホーム