142103316Sopenharmony_ci/* 242103316Sopenharmony_ci * Copyright (c) 2021-2022 Huawei Device Co., Ltd. 342103316Sopenharmony_ci * Licensed under the Apache License, Version 2.0 (the "License"); 442103316Sopenharmony_ci * you may not use this file except in compliance with the License. 542103316Sopenharmony_ci * You may obtain a copy of the License at 642103316Sopenharmony_ci * 742103316Sopenharmony_ci * http://www.apache.org/licenses/LICENSE-2.0 842103316Sopenharmony_ci * 942103316Sopenharmony_ci * Unless required by applicable law or agreed to in writing, software 1042103316Sopenharmony_ci * distributed under the License is distributed on an "AS IS" BASIS, 1142103316Sopenharmony_ci * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 1242103316Sopenharmony_ci * See the License for the specific language governing permissions and 1342103316Sopenharmony_ci * limitations under the License. 1442103316Sopenharmony_ci */ 1542103316Sopenharmony_ci 1642103316Sopenharmony_ci#include "usb_request.h" 1742103316Sopenharmony_ci#include "usb_common.h" 1842103316Sopenharmony_ci#include "usb_srv_client.h" 1942103316Sopenharmony_ci 2042103316Sopenharmony_cinamespace OHOS { 2142103316Sopenharmony_cinamespace USB { 2242103316Sopenharmony_ciint32_t UsbRequest::Initialize(const USBDevicePipe &pipe, const USBEndpoint &endpoint) 2342103316Sopenharmony_ci{ 2442103316Sopenharmony_ci this->pipe_ = pipe; 2542103316Sopenharmony_ci this->endpoint_ = endpoint; 2642103316Sopenharmony_ci int32_t ret = UsbSrvClient::GetInstance().RequestInitialize(*this); 2742103316Sopenharmony_ci if (ret != ERR_OK) { 2842103316Sopenharmony_ci USB_HILOGE(MODULE_USB_INNERKIT, "RequestInitialize failed with ret = %{public}d.", ret); 2942103316Sopenharmony_ci } 3042103316Sopenharmony_ci return ret; 3142103316Sopenharmony_ci} 3242103316Sopenharmony_ci 3342103316Sopenharmony_ciint32_t UsbRequest::Queue() 3442103316Sopenharmony_ci{ 3542103316Sopenharmony_ci int32_t ret = UsbSrvClient::GetInstance().RequestQueue(*this); 3642103316Sopenharmony_ci if (ret != ERR_OK) { 3742103316Sopenharmony_ci USB_HILOGE(MODULE_USB_INNERKIT, "RequestQueue failed with ret = %{public}d.", ret); 3842103316Sopenharmony_ci } 3942103316Sopenharmony_ci return ret; 4042103316Sopenharmony_ci} 4142103316Sopenharmony_ci 4242103316Sopenharmony_ciint32_t UsbRequest::Free() 4342103316Sopenharmony_ci{ 4442103316Sopenharmony_ci int32_t ret = UsbSrvClient::GetInstance().RequestFree(*this); 4542103316Sopenharmony_ci if (ret != ERR_OK) { 4642103316Sopenharmony_ci USB_HILOGE(MODULE_USB_INNERKIT, "RequestFree failed with ret = %{public}d.", ret); 4742103316Sopenharmony_ci } 4842103316Sopenharmony_ci return ret; 4942103316Sopenharmony_ci} 5042103316Sopenharmony_ci 5142103316Sopenharmony_ciint32_t UsbRequest::Abort() 5242103316Sopenharmony_ci{ 5342103316Sopenharmony_ci int32_t ret = UsbSrvClient::GetInstance().RequestAbort(*this); 5442103316Sopenharmony_ci if (ret != ERR_OK) { 5542103316Sopenharmony_ci USB_HILOGE(MODULE_USB_INNERKIT, "RequestAbort failed with ret = %{public}d.", ret); 5642103316Sopenharmony_ci } 5742103316Sopenharmony_ci return ret; 5842103316Sopenharmony_ci} 5942103316Sopenharmony_ci} // namespace USB 6042103316Sopenharmony_ci} // namespace OHOS 61