AG903ライブラリリファレンス
内容インデックスホーム
前へ上へ次へ
Usb_HubApi_ClearTTBuffer 関数

ClearTTBufferの発行

Syntax
C++
uhs_status_t Usb_HubApi_ClearTTBuffer(struct usb_hub_info* hub_info, uhs_ubit16_t tt_port, struct usbd_usb_spliterrinfo * split_err_info);
引数 
説明 
struct usb_hub_info* hub_info 
[in] HUBデバイス情報構造体用ポインタ 
uhs_ubit16_t tt_port 
[in] TTポート番号 
struct usbd_usb_spliterrinfo * split_err_info 
[in] splitエラー時のucb情報ポインタ 

ClearTTBufferの発行結果

返値の詳細 
説明 
正常終了 
ステートエラー 
パラメータエラー 

対象HUBの指定TTに対して、ClearTTBufferリクエストを発行します。

1: uhs_status_t Usb_HubApi_ClearTTBuffer( 2: struct usb_hub_info* hub_info, 3: uhs_ubit16_t tt_port, 4: struct usbd_usb_spliterrinfo *split_err_info 5: ) 6: { 7: uhs_ubit8_t err_direction = 0; 8: uhs_ubit16_t err_ep_kind = 0; 9: uhs_ubit16_t err_dev_addr = 0; 10: uhs_ubit16_t err_ep_num = 0; 11: 12: 13: 14: 15: if( split_err_info == NULL ){ 16: uhs_debug_print( DBG_ERR, ( "Usb_HubApi_ClearTTBuffer: parameter error" ) ); 17: HUB_REPORT_ERROR( USBCLS_HUB_INVALID_PARAMETER, 0 ); 18: return UDI_STAT_DATA_ERROR; 19: } 20: 21: 22: 23: 24: if( Usbc_Api_GetPipeDirIn( split_err_info->pipe ) == TRUE ){ 25: err_direction = USB_ENDPOINT_DIR_IN; 26: } 27: else{ 28: err_direction = USB_ENDPOINT_DIR_OUT; 29: } 30: err_ep_kind = Usbc_Api_GetPipeEpType( split_err_info->pipe ); 31: err_dev_addr = Usbc_Api_GetPipeAddr( split_err_info->pipe ); 32: err_ep_num = Usbc_Api_GetPipeEpNum( split_err_info->pipe ); 33: 34: 35: 36: 37: return Usb_HubApi_ClearTTBuffer_detail( 38: hub_info, 39: tt_port, 40: err_direction, 41: err_ep_kind, 42: err_dev_addr, 43: err_ep_num 44: ); 45: }
Copyright (c) 2017-2025 Axell Corporation. All rights reserved.