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

USB HOSTスタックに対してアタッチ/デタッチ処理禁止のキャンセルを要求する。

Syntax
C++
uhs_status_t Usbh_Api_CancelDisableAttDet();

USB HOSTスタックに対してアタッチ/デタッチ処理禁止のキャンセルの要求結果

返値の詳細 
説明 
正常終了 
状態異常 
パラメータ異常 
リソース不足 
アボートエラー(ルートHUB挿抜含む。) 

USB HOSTスタックに対してアタッチ/デタッチ処理の禁止を要求に対するキャンセル処理です。 

SUSPEND要求、RESUME要求を発行せずにキャンセルする場合に使用します。 

以降、アタッチ/デタッチ処理は許可状態となります。

SUSPEND要求、RESUME要求を呼び出し済みの場合は、本APIは呼び出さないで下さい。

1: uhs_status_t Usbh_Api_CancelDisableAttDet( void ) 2: { 3: uhs_status_t retval = UDI_STAT_INVALID_STATE; 4: uhs_status_t result; 5: UHS_MSG_APIWRAP_ANS_DIS_ATTDET_FMT *rcv_msg; 6: 7: 8: 9: retval = kernel_create_message( &g_suspend_reqans_mbox ); 10: if(retval != UDI_OK){ 11: CORE_REPORT_ERROR( USBC_RESOURCE_UNAVAIL ); 12: return UDI_STAT_RESOURCE_UNAVAIL; 13: } 14: 15: 16: 17: retval = Usbh_susres_SendMsg_req_susres( &g_suspend_reqans_mbox , USBH_APIWRAP_MSGID_REQ_CANCEL_DIS_ATTDET ); 18: if(retval != UDI_OK){ 19: kernel_delete_message( &g_suspend_reqans_mbox , in_interrupt() ); 20: CORE_REPORT_ERROR( USBC_RESOURCE_UNAVAIL ); 21: return UDI_STAT_RESOURCE_UNAVAIL; 22: } 23: 24: 25: retval = kernel_receive_message( 26: &g_suspend_reqans_mbox , 27: (T_MSG **)&rcv_msg, 28: WAITFOREVER , 29: in_interrupt() 30: ); 31: if(retval != UDI_OK){ 32: kernel_delete_message( &g_suspend_reqans_mbox , in_interrupt() ); 33: CORE_REPORT_ERROR(USBC_ILLEGAL_ERROR); 34: return retval; 35: } 36: 37: #ifdef USBH_COMMON_DISP_MESSID 38: 39: Usbh_common_DisplayMessage( (void *)rcv_msg , "API_WR_SUSD" ); 40: #endif 41: 42: 43: retval = rcv_msg->result; 44: 45: 46: result = kernel_mem_free( &g_apiwrap_info.mpl_osc , (void*)rcv_msg , in_interrupt() ); 47: if( result != UDI_OK ) { 48: CORE_REPORT_ERROR( USBC_ILLEGAL_ERROR ); 49: } 50: 51: 52: result = kernel_delete_message( &g_suspend_reqans_mbox , in_interrupt() ); 53: if(result != UDI_OK){ 54: CORE_REPORT_ERROR( USBC_ILLEGAL_ERROR ); 55: } 56: 57: #ifdef USBH_DBG_ADD_MESSAGE 58: uhs_debug_print( DBG_ERR, ( "Return Usbh_Api_CancelDisableAttDet (result=%d)",retval) ); 59: #endif 60: return retval; 61: }
Copyright (c) 2017-2025 Axell Corporation. All rights reserved.