[debug] use LOG_D instead RT_DEBUG_LOG

related: https://github.com/RT-Thread/rt-thread/pull/7799
This commit is contained in:
Meco Man 2023-07-27 23:33:14 -04:00
parent 307e9e5e98
commit 4e0225a48d
10 changed files with 199 additions and 213 deletions

View File

@ -18,7 +18,7 @@
#include "drv_config.h"
//#define DRV_DEBUG
#define LOG_TAG "drv.usb"
#define LOG_TAG "drv.usb.fsh"
#include <drv_log.h>
static struct rt_completion urb_completion;
@ -76,7 +76,7 @@ void usbh_connect_callback(usbh_core_type *uhost)
if (!connect_status)
{
connect_status = RT_TRUE;
RT_DEBUG_LOG(RT_DEBUG_USB, ("usb connected\n"));
LOG_D("usb connected");
rt_usbh_root_hub_connect_handler(hcd, 1, RT_FALSE);
}
}
@ -87,7 +87,7 @@ void usbh_disconnect_callback(usbh_core_type *uhost)
if (connect_status)
{
connect_status = RT_FALSE;
RT_DEBUG_LOG(RT_DEBUG_USB, ("usb disconnnect\n"));
LOG_D("usb disconnnect");
rt_usbh_root_hub_disconnect_handler(hcd, 1);
}
}
@ -99,7 +99,7 @@ void usbd_notify_urbchange_callback(usbh_core_type *uhost, uint8_t chnum, urb_st
static rt_err_t drv_reset_port(rt_uint8_t port)
{
RT_DEBUG_LOG(RT_DEBUG_USB, ("reset port\n"));
LOG_D("reset port");
usbh_reset_port(&p_usbfs_instance->p_otg_core->host);
return RT_EOK;
}
@ -224,7 +224,7 @@ static int drv_pipe_xfer(upipe_t pipe, rt_uint8_t token, void *buffer, int nbyte
if(usbh_get_status((&p_usbfs_instance->p_otg_core->host), pipe->pipe_index) == HCH_NAK)
{
RT_DEBUG_LOG(RT_DEBUG_USB, ("nak\n"));
LOG_D("nak");
if (pipe->ep.bmAttributes == USB_EP_ATTR_INT)
{
rt_thread_delay((pipe->ep.bInterval * RT_TICK_PER_SECOND / 1000) > 0 ? (pipe->ep.bInterval * RT_TICK_PER_SECOND / 1000) : 1);
@ -242,7 +242,7 @@ static int drv_pipe_xfer(upipe_t pipe, rt_uint8_t token, void *buffer, int nbyte
}
else if (usbh_get_status(&p_usbfs_instance->p_otg_core->host, pipe->pipe_index) == HCH_STALL)
{
RT_DEBUG_LOG(RT_DEBUG_USB, ("stall\n"));
LOG_D("stall");
pipe->status = UPIPE_STATUS_STALL;
if (pipe->callback != RT_NULL)
{
@ -252,7 +252,7 @@ static int drv_pipe_xfer(upipe_t pipe, rt_uint8_t token, void *buffer, int nbyte
}
else if (usbh_get_status(&p_usbfs_instance->p_otg_core->host, pipe->pipe_index) == URB_ERROR)
{
RT_DEBUG_LOG(RT_DEBUG_USB, ("error\n"));
LOG_D("error");
pipe->status = UPIPE_STATUS_ERROR;
if (pipe->callback != RT_NULL)
{
@ -262,7 +262,7 @@ static int drv_pipe_xfer(upipe_t pipe, rt_uint8_t token, void *buffer, int nbyte
}
else if(URB_DONE == usbh_get_urb_status(&p_usbfs_instance->p_otg_core->host, pipe->pipe_index))
{
RT_DEBUG_LOG(RT_DEBUG_USB, ("ok\n"));
LOG_D("ok");
pipe->status = UPIPE_STATUS_OK;
if (pipe->callback != RT_NULL)
{

View File

@ -21,6 +21,9 @@
#include <usb/host/usb_host_ehci.h>
#include <rtdevice.h>
//#define DRV_DEBUG
#define LOG_TAG "drv.usb.host"
#include <drv_log.h>
/* USB PHY configuration */
#ifndef BOARD_USB_PHY_D_CAL
@ -171,12 +174,12 @@ static int _ehci0_pipe_xfer(upipe_t pipe, rt_uint8_t token, void *buffer, int nb
usb_host_transfer_t *transfer;
if (imxrt_usb_host_obj[USBH0_INDEX].pipes[pipe->pipe_index].pipe_handle == NULL)
{
RT_DEBUG_LOG(RT_DEBUG_USB, ("error operation on null pipe\n"));
LOG_D("error operation on null pipe");
return -1;
}
if (USB_HostMallocTransfer(imxrt_usb_host_obj[USBH0_INDEX].host_handle, &transfer) != kStatus_USB_Success)
{
RT_DEBUG_LOG(RT_DEBUG_USB, ("error to get transfer\n"));
LOG_D("error to get transfer");
return -1;
}
transfer->transferBuffer = buffer;
@ -228,13 +231,13 @@ static int _ehci0_pipe_xfer(upipe_t pipe, rt_uint8_t token, void *buffer, int nb
rt_completion_init(&(imxrt_usb_host_obj[USBH0_INDEX].pipes[pipe->pipe_index].urb_completion));
if (USB_HostEhciWritePipe(((usb_host_instance_t *)imxrt_usb_host_obj[USBH0_INDEX].host_handle)->controllerHandle, imxrt_usb_host_obj[USBH0_INDEX].pipes[pipe->pipe_index].pipe_handle, transfer) != kStatus_USB_Success)
{
RT_DEBUG_LOG(RT_DEBUG_USB, ("usb host failed to send\n"));
LOG_D("usb host failed to send");
(void)USB_HostFreeTransfer(imxrt_usb_host_obj[USBH0_INDEX].host_handle, transfer);
return -1;
}
if (-RT_ETIMEOUT == rt_completion_wait(&(imxrt_usb_host_obj[USBH0_INDEX].pipes[pipe->pipe_index].urb_completion), RT_WAITING_FOREVER))
{
RT_DEBUG_LOG(RT_DEBUG_USB, ("usb transfer timeout\n"));
LOG_D("usb transfer timeout");
(void)USB_HostFreeTransfer(imxrt_usb_host_obj[USBH0_INDEX].host_handle, transfer);
return -1;
}
@ -243,7 +246,7 @@ static int _ehci0_pipe_xfer(upipe_t pipe, rt_uint8_t token, void *buffer, int nb
{
case kStatus_USB_Success:
{
RT_DEBUG_LOG(RT_DEBUG_USB, ("ok\n"));
LOG_D("ok");
pipe->status = UPIPE_STATUS_OK;
if (pipe->callback != RT_NULL)
{
@ -264,7 +267,7 @@ static int _ehci0_pipe_xfer(upipe_t pipe, rt_uint8_t token, void *buffer, int nb
}
case kStatus_USB_TransferStall:
{
RT_DEBUG_LOG(RT_DEBUG_USB, ("stall\n"));
LOG_D("stall");
pipe->status = UPIPE_STATUS_STALL;
if (pipe->callback != RT_NULL)
{
@ -277,7 +280,7 @@ static int _ehci0_pipe_xfer(upipe_t pipe, rt_uint8_t token, void *buffer, int nb
case kStatus_USB_TransferFailed:
default:
{
RT_DEBUG_LOG(RT_DEBUG_USB, ("error\n"));
LOG_D("error");
pipe->status = UPIPE_STATUS_ERROR;
if (pipe->callback != RT_NULL)
{
@ -358,17 +361,17 @@ static usb_status_t usb0_host_callback(usb_device_handle handle, usb_host_config
{
imxrt_usb_host_obj[USBH0_INDEX].connect_status = RT_TRUE;
imxrt_usb_host_obj[USBH0_INDEX].device_handle = handle;
RT_DEBUG_LOG(RT_DEBUG_USB, ("usb connected\n"));
LOG_D("usb connected");
rt_usbh_root_hub_connect_handler(&(imxrt_usb_host_obj[USBH0_INDEX].uhcd), OTG_PORT, RT_TRUE);
}
break;
case kUSB_HostEventNotSupported:
RT_DEBUG_LOG(RT_DEBUG_USB, ("usb device not supported\n"));
LOG_D("usb device not supported");
break;
case kUSB_HostEventEnumerationDone:
RT_DEBUG_LOG(RT_DEBUG_USB, ("enumeration done\n"));
LOG_D("enumeration done");
break;
case kUSB_HostEventDetach:
@ -376,7 +379,7 @@ static usb_status_t usb0_host_callback(usb_device_handle handle, usb_host_config
{
imxrt_usb_host_obj[USBH0_INDEX].connect_status = RT_FALSE;
imxrt_usb_host_obj[USBH0_INDEX].device_handle = handle;
RT_DEBUG_LOG(RT_DEBUG_USB, ("usb disconnnect\n"));
LOG_D("usb disconnnect");
rt_usbh_root_hub_disconnect_handler(&(imxrt_usb_host_obj[USBH0_INDEX].uhcd), OTG_PORT);
(void)USB_HostCloseDeviceInterface(handle, NULL);
}
@ -448,12 +451,12 @@ static int _ehci1_pipe_xfer(upipe_t pipe, rt_uint8_t token, void *buffer, int nb
usb_host_transfer_t *transfer;
if (imxrt_usb_host_obj[USBH1_INDEX].pipes[pipe->pipe_index].pipe_handle == NULL)
{
RT_DEBUG_LOG(RT_DEBUG_USB, ("error operation on null pipe\n"));
LOG_D("error operation on null pipe");
return -1;
}
if (USB_HostMallocTransfer(imxrt_usb_host_obj[USBH1_INDEX].host_handle, &transfer) != kStatus_USB_Success)
{
RT_DEBUG_LOG(RT_DEBUG_USB, ("error to get transfer\n"));
LOG_D("error to get transfer");
return -1;
}
transfer->transferBuffer = buffer;
@ -505,13 +508,13 @@ static int _ehci1_pipe_xfer(upipe_t pipe, rt_uint8_t token, void *buffer, int nb
rt_completion_init(&(imxrt_usb_host_obj[USBH1_INDEX].pipes[pipe->pipe_index].urb_completion));
if (USB_HostEhciWritePipe(((usb_host_instance_t *)imxrt_usb_host_obj[USBH1_INDEX].host_handle)->controllerHandle, imxrt_usb_host_obj[USBH1_INDEX].pipes[pipe->pipe_index].pipe_handle, transfer) != kStatus_USB_Success)
{
RT_DEBUG_LOG(RT_DEBUG_USB, ("usb host failed to send\n"));
LOG_D("usb host failed to send");
(void)USB_HostFreeTransfer(imxrt_usb_host_obj[USBH1_INDEX].host_handle, transfer);
return -1;
}
if (-RT_ETIMEOUT == rt_completion_wait(&(imxrt_usb_host_obj[USBH1_INDEX].pipes[pipe->pipe_index].urb_completion), RT_WAITING_FOREVER))
{
RT_DEBUG_LOG(RT_DEBUG_USB, ("usb transfer timeout\n"));
LOG_D("usb transfer timeout");
(void)USB_HostFreeTransfer(imxrt_usb_host_obj[USBH1_INDEX].host_handle, transfer);
return -1;
}
@ -521,7 +524,7 @@ static int _ehci1_pipe_xfer(upipe_t pipe, rt_uint8_t token, void *buffer, int nb
{
case kStatus_USB_Success:
{
RT_DEBUG_LOG(RT_DEBUG_USB, ("ok\n"));
LOG_D("ok");
pipe->status = UPIPE_STATUS_OK;
if (pipe->callback != RT_NULL)
{
@ -542,7 +545,7 @@ static int _ehci1_pipe_xfer(upipe_t pipe, rt_uint8_t token, void *buffer, int nb
}
case kStatus_USB_TransferStall:
{
RT_DEBUG_LOG(RT_DEBUG_USB, ("stall\n"));
LOG_D("stall");
pipe->status = UPIPE_STATUS_STALL;
if (pipe->callback != RT_NULL)
{
@ -555,7 +558,7 @@ static int _ehci1_pipe_xfer(upipe_t pipe, rt_uint8_t token, void *buffer, int nb
case kStatus_USB_TransferFailed:
default:
{
RT_DEBUG_LOG(RT_DEBUG_USB, ("error\n"));
LOG_D("error");
pipe->status = UPIPE_STATUS_ERROR;
if (pipe->callback != RT_NULL)
{
@ -636,17 +639,17 @@ static usb_status_t usb1_host_callback(usb_device_handle handle, usb_host_config
{
imxrt_usb_host_obj[USBH1_INDEX].connect_status = RT_TRUE;
imxrt_usb_host_obj[USBH1_INDEX].device_handle = handle;
RT_DEBUG_LOG(RT_DEBUG_USB, ("usb connected\n"));
LOG_D("usb connected");
rt_usbh_root_hub_connect_handler(&(imxrt_usb_host_obj[USBH1_INDEX].uhcd), OTG_PORT, RT_TRUE);
}
break;
case kUSB_HostEventNotSupported:
RT_DEBUG_LOG(RT_DEBUG_USB, ("usb device not supported\n"));
LOG_D("usb device not supported");
break;
case kUSB_HostEventEnumerationDone:
RT_DEBUG_LOG(RT_DEBUG_USB, ("enumeration done\n"));
LOG_D("enumeration done");
break;
case kUSB_HostEventDetach:
@ -654,7 +657,7 @@ static usb_status_t usb1_host_callback(usb_device_handle handle, usb_host_config
{
imxrt_usb_host_obj[USBH1_INDEX].connect_status = RT_FALSE;
imxrt_usb_host_obj[USBH1_INDEX].device_handle = handle;
RT_DEBUG_LOG(RT_DEBUG_USB, ("usb disconnnect\n"));
LOG_D("usb disconnnect");
rt_usbh_root_hub_disconnect_handler(&(imxrt_usb_host_obj[USBH1_INDEX].uhcd), OTG_PORT);
(void)USB_HostCloseDeviceInterface(handle, NULL);
}

View File

@ -21,12 +21,9 @@
#include "usb.h"
#include "usbh_lib.h"
#define LOG_TAG "drv.usbhost"
#define DBG_ENABLE
#define DBG_SECTION_NAME LOG_TAG
#define DBG_LEVEL LOG_LVL_DBG
#define DBG_COLOR
#include <rtdbg.h>
#define LOG_TAG "drv.usb.host"
#define DBG_LVL DBG_INFO
#include <drv_log.h>
#if !defined(NU_USBHOST_HUB_POLLING_INTERVAL)
#define NU_USBHOST_HUB_POLLING_INTERVAL (100)
@ -113,7 +110,7 @@ GetRHPortControlFromPipe(
if (port > NU_MAX_USBH_PORT)
{
RT_DEBUG_LOG(RT_DEBUG_USB, ("nu_open_pipe ERROR: port index over NU_MAX_USBH_PORT\n"));
LOG_D("nu_open_pipe ERROR: port index over NU_MAX_USBH_PORT");
return RT_NULL;
}
@ -155,14 +152,14 @@ static rt_err_t nu_reset_port(rt_uint8_t port)
if (port > NU_MAX_USBH_PORT)
{
RT_DEBUG_LOG(RT_DEBUG_USB, ("%s ERROR: port index over NU_MAX_USBH_PORT\n", __func__));
LOG_D("%s ERROR: port index over NU_MAX_USBH_PORT", __func__);
return -RT_EIO;
}
psPortCtrl = &s_sUSBHDev.asPortCtrl[port - 1];
if (psPortCtrl->sRHPortDev.pUDev == NULL)
{
RT_DEBUG_LOG(RT_DEBUG_USB, ("%s ERROR: udev not found\n", __func__));
LOG_D("%s ERROR: udev not found", __func__);
return -RT_EIO;
}
@ -252,13 +249,13 @@ static rt_err_t nu_open_pipe(upipe_t pipe)
psPortCtrl = GetRHPortControlFromPipe(pipe);
if (psPortCtrl == RT_NULL)
{
RT_DEBUG_LOG(RT_DEBUG_USB, ("%s ERROR: RHPort not found\n", __func__));
LOG_D("%s ERROR: RHPort not found", __func__);
goto exit_nu_open_pipe;
}
if (psPortCtrl->sRHPortDev.pUDev == NULL)
{
RT_DEBUG_LOG(RT_DEBUG_USB, ("%s ERROR: udev not found\n", __func__));
LOG_D("%s ERROR: udev not found", __func__);
goto exit_nu_open_pipe;
}
@ -271,7 +268,7 @@ static rt_err_t nu_open_pipe(upipe_t pipe)
if (psPortDev == RT_NULL)
{
RT_DEBUG_LOG(RT_DEBUG_USB, ("nu_open_pipe ERROR: udev allocate failed\n"));
LOG_D("nu_open_pipe ERROR: udev allocate failed");
goto exit_nu_open_pipe;
}
@ -302,7 +299,7 @@ static rt_err_t nu_open_pipe(upipe_t pipe)
EP_INFO_T *psEPInfo = GetFreePipe(psPortCtrl, psPortDev, &pipe->pipe_index);
if (psEPInfo == RT_NULL)
{
RT_DEBUG_LOG(RT_DEBUG_USB, ("%s ERROR: get free pipe failed\n", __func__));
LOG_D("%s ERROR: get free pipe failed", __func__);
goto exit_nu_open_pipe;
}
@ -380,13 +377,13 @@ static int nu_ctrl_xfer(
ret = usbh_ctrl_xfer(psPortDev->pUDev, psSetup->request_type, psSetup->bRequest, psSetup->wValue, psSetup->wIndex, psSetup->wLength, buffer, &xfer_len, timeouts * 10);
if (ret < 0)
{
RT_DEBUG_LOG(RT_DEBUG_USB, ("nu_ctrl_xfer ERROR: xfer failed %d\n", ret));
LOG_D("nu_ctrl_xfer ERROR: xfer failed %d", ret);
return ret;
}
if (xfer_len != psSetup->wLength)
{
RT_DEBUG_LOG(RT_DEBUG_USB, ("nu_ctrl_xfer ERROR: xfer length %d %d\n", psSetup->wLength, xfer_len));
LOG_D("nu_ctrl_xfer ERROR: xfer length %d %d", psSetup->wLength, xfer_len);
}
if ((psSetup->bRequest == USB_REQ_SET_ADDRESS) && ((psSetup->request_type & 0x60) == REQ_TYPE_STD_DEV))
@ -443,7 +440,7 @@ static int nu_int_xfer(
if (rt_completion_wait(&(psPortDev->utr_completion), timeouts) != 0)
{
RT_DEBUG_LOG(RT_DEBUG_USB, ("Request %08x Timeout in %d ms!!\n", psUTR, timeouts));
LOG_D("Request %08x Timeout in %d ms", psUTR, timeouts);
usbh_quit_utr(psUTR);
rt_completion_init(&(psPortDev->utr_completion));
@ -452,7 +449,7 @@ static int nu_int_xfer(
else
{
RT_DEBUG_LOG(RT_DEBUG_USB, ("Transferring done %08x\n", psUTR));
LOG_D("Transferring done %08x", psUTR);
usbh_quit_utr(psUTR);
break;
}
@ -489,7 +486,7 @@ static int nu_pipe_xfer(upipe_t pipe, rt_uint8_t token, void *buffer, int nbytes
psPortDev = GetPortDevFromPipe(pipe);
if (psPortDev->pUDev == NULL)
{
RT_DEBUG_LOG(RT_DEBUG_USB, ("nu_pipe_xfer ERROR: udev not found\n"));
LOG_D("nu_pipe_xfer ERROR: udev not found");
goto exit_nu_pipe_xfer;
}
@ -553,7 +550,7 @@ static int nu_pipe_xfer(upipe_t pipe, rt_uint8_t token, void *buffer, int nbytes
}
else
{
RT_DEBUG_LOG(RT_DEBUG_USB, ("%d == USBH_PID_DATA, nil buf-%d \n", token, nbytes));
LOG_D("%d == USBH_PID_DATA, nil buf-%d", token, nbytes);
}
} //else
@ -567,7 +564,7 @@ static int nu_pipe_xfer(upipe_t pipe, rt_uint8_t token, void *buffer, int nbytes
if (!psUTR)
{
RT_DEBUG_LOG(RT_DEBUG_USB, ("nu_pipe_xfer ERROR: unable alloc UTR\n"));
LOG_D("nu_pipe_xfer ERROR: unable alloc UTR");
goto exit_nu_pipe_xfer;
}
@ -587,7 +584,7 @@ static int nu_pipe_xfer(upipe_t pipe, rt_uint8_t token, void *buffer, int nbytes
{
if (nu_bulk_xfer(psPortDev, psUTR, timeouts) < 0)
{
RT_DEBUG_LOG(RT_DEBUG_USB, ("nu_pipe_xfer ERROR: bulk transfer failed\n"));
LOG_D("nu_pipe_xfer ERROR: bulk transfer failed");
goto failreport_nu_pipe_xfer;
}
}
@ -595,7 +592,7 @@ static int nu_pipe_xfer(upipe_t pipe, rt_uint8_t token, void *buffer, int nbytes
{
if (nu_int_xfer(pipe, psPortDev, psUTR, timeouts) < 0)
{
RT_DEBUG_LOG(RT_DEBUG_USB, ("nu_pipe_xfer ERROR: int transfer failed\n"));
LOG_D("nu_pipe_xfer ERROR: int transfer failed");
//goto exit_nu_pipe_xfer;
}
else
@ -607,7 +604,7 @@ static int nu_pipe_xfer(upipe_t pipe, rt_uint8_t token, void *buffer, int nbytes
else if (pipe->ep.bmAttributes == USB_EP_ATTR_ISOC)
{
//TODO: ISO transfer
RT_DEBUG_LOG(RT_DEBUG_USB, ("nu_pipe_xfer ERROR: isoc transfer not support\n"));
LOG_D("nu_pipe_xfer ERROR: isoc transfer not support");
goto exit_nu_pipe_xfer;
}
@ -618,7 +615,7 @@ failreport_nu_pipe_xfer:
if (psUTR->bIsTransferDone == 0)
{
//Timeout
RT_DEBUG_LOG(RT_DEBUG_USB, ("nu_pipe_xfer ERROR: timeout\n"));
LOG_D("nu_pipe_xfer ERROR: timeout");
pipe->status = UPIPE_STATUS_ERROR;
usbh_quit_utr(psUTR);
}
@ -687,7 +684,7 @@ static void nu_hcd_connect_callback(
if (i >= NU_MAX_USBH_PORT)
{
RT_DEBUG_LOG(RT_DEBUG_USB, ("ERROR: port connect slot is full\n"));
LOG_D("ERROR: port connect slot is full");
return;
}
@ -695,7 +692,7 @@ static void nu_hcd_connect_callback(
psPortCtrl->sRHPortDev.pUDev = udev;
psPortCtrl->sRHPortDev.bRHParent = TRUE;
RT_DEBUG_LOG(RT_DEBUG_USB, ("usb connected\n"));
LOG_D("usb connected");
if (udev->speed == SPEED_HIGH)
rt_usbh_root_hub_connect_handler(&s_sUSBHDev.uhcd, port_index, RT_TRUE);
@ -720,7 +717,7 @@ static void nu_hcd_disconnect_callback(
if (i >= NU_MAX_USBH_PORT)
{
RT_DEBUG_LOG(RT_DEBUG_USB, ("ERROR: udev not found\n"));
LOG_D("ERROR: udev not found");
return;
}
@ -736,7 +733,7 @@ static void nu_hcd_disconnect_callback(
psPortCtrl->sRHPortDev.pUDev = NULL;
RT_DEBUG_LOG(RT_DEBUG_USB, ("usb disconnect\n"));
LOG_D("usb disconnect");
rt_usbh_root_hub_disconnect_handler(&s_sUSBHDev.uhcd, port_index);
}

View File

@ -23,12 +23,9 @@
#include "usb.h"
#include "usbh_lib.h"
#define LOG_TAG "drv.usbhost"
#define DBG_ENABLE
#define DBG_SECTION_NAME LOG_TAG
#define DBG_LEVEL LOG_LVL_DBG
#define DBG_COLOR
#include <rtdbg.h>
#define LOG_TAG "drv.usb.host"
#define DBG_LVL DBG_INFO
#include <drv_log.h>
#if !defined(NU_USBHOST_HUB_POLLING_INTERVAL)
#define NU_USBHOST_HUB_POLLING_INTERVAL (100)
@ -115,7 +112,7 @@ GetRHPortControlFromPipe(
if (port > NU_MAX_USBH_PORT)
{
RT_DEBUG_LOG(RT_DEBUG_USB, ("nu_open_pipe ERROR: port index over NU_MAX_USBH_PORT\n"));
LOG_D("nu_open_pipe ERROR: port index over NU_MAX_USBH_PORT");
return RT_NULL;
}
@ -157,14 +154,14 @@ static rt_err_t nu_reset_port(rt_uint8_t port)
if (port > NU_MAX_USBH_PORT)
{
RT_DEBUG_LOG(RT_DEBUG_USB, ("%s ERROR: port index over NU_MAX_USBH_PORT\n", __func__));
LOG_D("%s ERROR: port index over NU_MAX_USBH_PORT", __func__);
return -RT_EIO;
}
psPortCtrl = &s_sUSBHDev.asPortCtrl[port - 1];
if (psPortCtrl->sRHPortDev.pUDev == NULL)
{
RT_DEBUG_LOG(RT_DEBUG_USB, ("%s ERROR: udev not found\n", __func__));
LOG_D("%s ERROR: udev not found", __func__);
return -RT_EIO;
}
@ -254,13 +251,13 @@ static rt_err_t nu_open_pipe(upipe_t pipe)
psPortCtrl = GetRHPortControlFromPipe(pipe);
if (psPortCtrl == RT_NULL)
{
RT_DEBUG_LOG(RT_DEBUG_USB, ("%s ERROR: RHPort not found\n", __func__));
LOG_D("%s ERROR: RHPort not found", __func__);
goto exit_nu_open_pipe;
}
if (psPortCtrl->sRHPortDev.pUDev == NULL)
{
RT_DEBUG_LOG(RT_DEBUG_USB, ("%s ERROR: udev not found\n", __func__));
LOG_D("%s ERROR: udev not found", __func__);
goto exit_nu_open_pipe;
}
@ -273,7 +270,7 @@ static rt_err_t nu_open_pipe(upipe_t pipe)
if (psPortDev == RT_NULL)
{
RT_DEBUG_LOG(RT_DEBUG_USB, ("nu_open_pipe ERROR: udev allocate failed\n"));
LOG_D("nu_open_pipe ERROR: udev allocate failed");
goto exit_nu_open_pipe;
}
@ -304,7 +301,7 @@ static rt_err_t nu_open_pipe(upipe_t pipe)
EP_INFO_T *psEPInfo = GetFreePipe(psPortCtrl, psPortDev, &pipe->pipe_index);
if (psEPInfo == RT_NULL)
{
RT_DEBUG_LOG(RT_DEBUG_USB, ("%s ERROR: get free pipe failed\n", __func__));
LOG_D("%s ERROR: get free pipe failed", __func__);
goto exit_nu_open_pipe;
}
@ -382,13 +379,13 @@ static int nu_ctrl_xfer(
ret = usbh_ctrl_xfer(psPortDev->pUDev, psSetup->request_type, psSetup->bRequest, psSetup->wValue, psSetup->wIndex, psSetup->wLength, buffer, &xfer_len, timeouts * 10);
if (ret < 0)
{
RT_DEBUG_LOG(RT_DEBUG_USB, ("nu_ctrl_xfer ERROR: xfer failed %d\n", ret));
LOG_D("nu_ctrl_xfer ERROR: xfer failed %d");
return ret;
}
if (xfer_len != psSetup->wLength)
{
RT_DEBUG_LOG(RT_DEBUG_USB, ("nu_ctrl_xfer ERROR: xfer length %d %d\n", psSetup->wLength, xfer_len));
LOG_D("nu_ctrl_xfer ERROR: xfer length %d %d", psSetup->wLength, xfer_len);
}
if ((psSetup->bRequest == USB_REQ_SET_ADDRESS) && ((psSetup->request_type & 0x60) == REQ_TYPE_STD_DEV))
@ -462,7 +459,7 @@ static int nu_int_xfer(
if (rt_completion_wait(&(psPortDev->utr_completion), timeouts) != 0)
{
RT_DEBUG_LOG(RT_DEBUG_USB, ("Request %08x Timeout in %d ms!!\n", psUTR, timeouts));
LOG_D("Request %08x Timeout in %d ms", psUTR, timeouts);
usbh_quit_utr(psUTR);
rt_completion_init(&(psPortDev->utr_completion));
@ -471,7 +468,7 @@ static int nu_int_xfer(
else
{
RT_DEBUG_LOG(RT_DEBUG_USB, ("Transferring done %08x\n", psUTR));
LOG_D("Transferring done %08x", psUTR);
usbh_quit_utr(psUTR);
break;
}
@ -508,7 +505,7 @@ static int nu_pipe_xfer(upipe_t pipe, rt_uint8_t token, void *buffer, int nbytes
psPortDev = GetPortDevFromPipe(pipe);
if (psPortDev->pUDev == NULL)
{
RT_DEBUG_LOG(RT_DEBUG_USB, ("nu_pipe_xfer ERROR: udev not found\n"));
LOG_D("nu_pipe_xfer ERROR: udev not found");
goto exit_nu_pipe_xfer;
}
@ -572,7 +569,7 @@ static int nu_pipe_xfer(upipe_t pipe, rt_uint8_t token, void *buffer, int nbytes
}
else
{
RT_DEBUG_LOG(RT_DEBUG_USB, ("%d == USBH_PID_DATA, nil buf-%d \n", token, nbytes));
LOG_D("%d == USBH_PID_DATA, nil buf-%d", token, nbytes);
}
} //else
@ -586,7 +583,7 @@ static int nu_pipe_xfer(upipe_t pipe, rt_uint8_t token, void *buffer, int nbytes
if (!psUTR)
{
RT_DEBUG_LOG(RT_DEBUG_USB, ("nu_pipe_xfer ERROR: unable alloc UTR\n"));
LOG_D("nu_pipe_xfer ERROR: unable alloc UTR");
goto exit_nu_pipe_xfer;
}
@ -606,7 +603,7 @@ static int nu_pipe_xfer(upipe_t pipe, rt_uint8_t token, void *buffer, int nbytes
{
if (nu_bulk_xfer(psPortDev, psUTR, timeouts) < 0)
{
RT_DEBUG_LOG(RT_DEBUG_USB, ("nu_pipe_xfer ERROR: bulk transfer failed\n"));
LOG_D("nu_pipe_xfer ERROR: bulk transfer failed");
goto failreport_nu_pipe_xfer;
}
}
@ -614,7 +611,7 @@ static int nu_pipe_xfer(upipe_t pipe, rt_uint8_t token, void *buffer, int nbytes
{
if (nu_int_xfer(pipe, psPortDev, psUTR, timeouts) < 0)
{
RT_DEBUG_LOG(RT_DEBUG_USB, ("nu_pipe_xfer ERROR: int transfer failed\n"));
LOG_D("nu_pipe_xfer ERROR: int transfer failed");
//goto exit_nu_pipe_xfer;
}
else
@ -626,7 +623,7 @@ static int nu_pipe_xfer(upipe_t pipe, rt_uint8_t token, void *buffer, int nbytes
else if (pipe->ep.bmAttributes == USB_EP_ATTR_ISOC)
{
//TODO: ISO transfer
RT_DEBUG_LOG(RT_DEBUG_USB, ("nu_pipe_xfer ERROR: isoc transfer not support\n"));
LOG_D("nu_pipe_xfer ERROR: isoc transfer not support");
goto exit_nu_pipe_xfer;
}
@ -637,7 +634,7 @@ failreport_nu_pipe_xfer:
if (psUTR->bIsTransferDone == 0)
{
//Timeout
RT_DEBUG_LOG(RT_DEBUG_USB, ("nu_pipe_xfer ERROR: timeout\n"));
LOG_D("nu_pipe_xfer ERROR: timeout");
pipe->status = UPIPE_STATUS_ERROR;
usbh_quit_utr(psUTR);
}
@ -706,7 +703,7 @@ static void nu_hcd_connect_callback(
if (i >= NU_MAX_USBH_PORT)
{
RT_DEBUG_LOG(RT_DEBUG_USB, ("ERROR: port connect slot is full\n"));
LOG_D("ERROR: port connect slot is full");
return;
}
@ -714,7 +711,7 @@ static void nu_hcd_connect_callback(
psPortCtrl->sRHPortDev.pUDev = udev;
psPortCtrl->sRHPortDev.bRHParent = TRUE;
RT_DEBUG_LOG(RT_DEBUG_USB, ("usb connected\n"));
LOG_D("usb connected");
if (udev->speed == SPEED_HIGH)
rt_usbh_root_hub_connect_handler(&s_sUSBHDev.uhcd, port_index, RT_TRUE);
@ -739,7 +736,7 @@ static void nu_hcd_disconnect_callback(
if (i >= NU_MAX_USBH_PORT)
{
RT_DEBUG_LOG(RT_DEBUG_USB, ("ERROR: udev not found\n"));
LOG_D("ERROR: udev not found");
return;
}
@ -755,7 +752,7 @@ static void nu_hcd_disconnect_callback(
psPortCtrl->sRHPortDev.pUDev = NULL;
RT_DEBUG_LOG(RT_DEBUG_USB, ("usb disconnect\n"));
LOG_D("usb disconnect");
rt_usbh_root_hub_disconnect_handler(&s_sUSBHDev.uhcd, port_index);
}

View File

@ -23,12 +23,9 @@
#include "usb.h"
#include "usbh_lib.h"
#define LOG_TAG "drv.usbhost"
#define DBG_ENABLE
#define DBG_SECTION_NAME LOG_TAG
#define DBG_LEVEL LOG_LVL_DBG
#define DBG_COLOR
#include <rtdbg.h>
#define LOG_TAG "drv.usb.host"
#define DBG_LVL DBG_INFO
#include <drv_log.h>
#if !defined(NU_USBHOST_HUB_POLLING_INTERVAL)
#define NU_USBHOST_HUB_POLLING_INTERVAL (100)
@ -115,7 +112,7 @@ GetRHPortControlFromPipe(
if (port > NU_MAX_USBH_PORT)
{
RT_DEBUG_LOG(RT_DEBUG_USB, ("nu_open_pipe ERROR: port index over NU_MAX_USBH_PORT\n"));
LOG_D("nu_open_pipe ERROR: port index over NU_MAX_USBH_PORT");
return RT_NULL;
}
@ -157,14 +154,14 @@ static rt_err_t nu_reset_port(rt_uint8_t port)
if (port > NU_MAX_USBH_PORT)
{
RT_DEBUG_LOG(RT_DEBUG_USB, ("%s ERROR: port index over NU_MAX_USBH_PORT\n", __func__));
LOG_D("%s ERROR: port index over NU_MAX_USBH_PORT", __func__);
return -RT_EIO;
}
psPortCtrl = &s_sUSBHDev.asPortCtrl[port - 1];
if (psPortCtrl->sRHPortDev.pUDev == NULL)
{
RT_DEBUG_LOG(RT_DEBUG_USB, ("%s ERROR: udev not found\n", __func__));
LOG_D("%s ERROR: udev not found", __func__);
return -RT_EIO;
}
@ -254,13 +251,13 @@ static rt_err_t nu_open_pipe(upipe_t pipe)
psPortCtrl = GetRHPortControlFromPipe(pipe);
if (psPortCtrl == RT_NULL)
{
RT_DEBUG_LOG(RT_DEBUG_USB, ("%s ERROR: RHPort not found\n", __func__));
LOG_D("%s ERROR: RHPort not found", __func__);
goto exit_nu_open_pipe;
}
if (psPortCtrl->sRHPortDev.pUDev == NULL)
{
RT_DEBUG_LOG(RT_DEBUG_USB, ("%s ERROR: udev not found\n", __func__));
LOG_D("%s ERROR: udev not found", __func__);
goto exit_nu_open_pipe;
}
@ -273,7 +270,7 @@ static rt_err_t nu_open_pipe(upipe_t pipe)
if (psPortDev == RT_NULL)
{
RT_DEBUG_LOG(RT_DEBUG_USB, ("nu_open_pipe ERROR: udev allocate failed\n"));
LOG_D("nu_open_pipe ERROR: udev allocate failed");
goto exit_nu_open_pipe;
}
@ -304,7 +301,7 @@ static rt_err_t nu_open_pipe(upipe_t pipe)
EP_INFO_T *psEPInfo = GetFreePipe(psPortCtrl, psPortDev, &pipe->pipe_index);
if (psEPInfo == RT_NULL)
{
RT_DEBUG_LOG(RT_DEBUG_USB, ("%s ERROR: get free pipe failed\n", __func__));
LOG_D("%s ERROR: get free pipe failed", __func__);
goto exit_nu_open_pipe;
}
@ -382,13 +379,13 @@ static int nu_ctrl_xfer(
ret = usbh_ctrl_xfer(psPortDev->pUDev, psSetup->request_type, psSetup->bRequest, psSetup->wValue, psSetup->wIndex, psSetup->wLength, buffer, &xfer_len, timeouts * 10);
if (ret < 0)
{
RT_DEBUG_LOG(RT_DEBUG_USB, ("nu_ctrl_xfer ERROR: xfer failed %d\n", ret));
LOG_D("nu_ctrl_xfer ERROR: xfer failed %d", ret);
return ret;
}
if (xfer_len != psSetup->wLength)
{
RT_DEBUG_LOG(RT_DEBUG_USB, ("nu_ctrl_xfer ERROR: xfer length %d %d\n", psSetup->wLength, xfer_len));
LOG_D("nu_ctrl_xfer ERROR: xfer length %d %d", psSetup->wLength, xfer_len);
}
if ((psSetup->bRequest == USB_REQ_SET_ADDRESS) && ((psSetup->request_type & 0x60) == REQ_TYPE_STD_DEV))
@ -445,7 +442,7 @@ static int nu_int_xfer(
if (rt_completion_wait(&(psPortDev->utr_completion), timeouts) != 0)
{
RT_DEBUG_LOG(RT_DEBUG_USB, ("Request %08x Timeout in %d ms!!\n", psUTR, timeouts));
LOG_D("Request %08x Timeout in %d ms", psUTR, timeouts);
usbh_quit_utr(psUTR);
rt_completion_init(&(psPortDev->utr_completion));
@ -454,7 +451,7 @@ static int nu_int_xfer(
else
{
RT_DEBUG_LOG(RT_DEBUG_USB, ("Transferring done %08x\n", psUTR));
LOG_D("Transferring done %08x", psUTR);
usbh_quit_utr(psUTR);
break;
}
@ -491,7 +488,7 @@ static int nu_pipe_xfer(upipe_t pipe, rt_uint8_t token, void *buffer, int nbytes
psPortDev = GetPortDevFromPipe(pipe);
if (psPortDev->pUDev == NULL)
{
RT_DEBUG_LOG(RT_DEBUG_USB, ("nu_pipe_xfer ERROR: udev not found\n"));
LOG_D("nu_pipe_xfer ERROR: udev not found");
goto exit_nu_pipe_xfer;
}
@ -555,7 +552,7 @@ static int nu_pipe_xfer(upipe_t pipe, rt_uint8_t token, void *buffer, int nbytes
}
else
{
RT_DEBUG_LOG(RT_DEBUG_USB, ("%d == USBH_PID_DATA, nil buf-%d \n", token, nbytes));
LOG_D("%d == USBH_PID_DATA, nil buf-%d", token, nbytes);
}
} //else
@ -569,7 +566,7 @@ static int nu_pipe_xfer(upipe_t pipe, rt_uint8_t token, void *buffer, int nbytes
if (!psUTR)
{
RT_DEBUG_LOG(RT_DEBUG_USB, ("nu_pipe_xfer ERROR: unable alloc UTR\n"));
LOG_D("nu_pipe_xfer ERROR: unable alloc UTR");
goto exit_nu_pipe_xfer;
}
@ -589,7 +586,7 @@ static int nu_pipe_xfer(upipe_t pipe, rt_uint8_t token, void *buffer, int nbytes
{
if (nu_bulk_xfer(psPortDev, psUTR, timeouts) < 0)
{
RT_DEBUG_LOG(RT_DEBUG_USB, ("nu_pipe_xfer ERROR: bulk transfer failed\n"));
LOG_D("nu_pipe_xfer ERROR: bulk transfer failed");
goto failreport_nu_pipe_xfer;
}
}
@ -597,7 +594,7 @@ static int nu_pipe_xfer(upipe_t pipe, rt_uint8_t token, void *buffer, int nbytes
{
if (nu_int_xfer(pipe, psPortDev, psUTR, timeouts) < 0)
{
RT_DEBUG_LOG(RT_DEBUG_USB, ("nu_pipe_xfer ERROR: int transfer failed\n"));
LOG_D("nu_pipe_xfer ERROR: int transfer failed");
//goto exit_nu_pipe_xfer;
}
else
@ -609,7 +606,7 @@ static int nu_pipe_xfer(upipe_t pipe, rt_uint8_t token, void *buffer, int nbytes
else if (pipe->ep.bmAttributes == USB_EP_ATTR_ISOC)
{
//TODO: ISO transfer
RT_DEBUG_LOG(RT_DEBUG_USB, ("nu_pipe_xfer ERROR: isoc transfer not support\n"));
LOG_D("nu_pipe_xfer ERROR: isoc transfer not support");
goto exit_nu_pipe_xfer;
}
@ -620,7 +617,7 @@ failreport_nu_pipe_xfer:
if (psUTR->bIsTransferDone == 0)
{
//Timeout
RT_DEBUG_LOG(RT_DEBUG_USB, ("nu_pipe_xfer ERROR: timeout\n"));
LOG_D("nu_pipe_xfer ERROR: timeout");
pipe->status = UPIPE_STATUS_ERROR;
usbh_quit_utr(psUTR);
}
@ -689,7 +686,7 @@ static void nu_hcd_connect_callback(
if (i >= NU_MAX_USBH_PORT)
{
RT_DEBUG_LOG(RT_DEBUG_USB, ("ERROR: port connect slot is full\n"));
LOG_D("ERROR: port connect slot is full");
return;
}
@ -697,7 +694,7 @@ static void nu_hcd_connect_callback(
psPortCtrl->sRHPortDev.pUDev = udev;
psPortCtrl->sRHPortDev.bRHParent = TRUE;
RT_DEBUG_LOG(RT_DEBUG_USB, ("usb connected\n"));
LOG_D("usb connected");
if (udev->speed == SPEED_HIGH)
rt_usbh_root_hub_connect_handler(&s_sUSBHDev.uhcd, port_index, RT_TRUE);
@ -722,7 +719,7 @@ static void nu_hcd_disconnect_callback(
if (i >= NU_MAX_USBH_PORT)
{
RT_DEBUG_LOG(RT_DEBUG_USB, ("ERROR: udev not found\n"));
LOG_D("ERROR: udev not found");
return;
}
@ -738,7 +735,7 @@ static void nu_hcd_disconnect_callback(
psPortCtrl->sRHPortDev.pUDev = NULL;
RT_DEBUG_LOG(RT_DEBUG_USB, ("usb disconnect\n"));
LOG_D("usb disconnect");
rt_usbh_root_hub_disconnect_handler(&s_sUSBHDev.uhcd, port_index);
}

View File

@ -20,12 +20,9 @@
#include "usb.h"
#include "usbh_lib.h"
#define LOG_TAG "drv.usbhost"
#define DBG_ENABLE
#define DBG_SECTION_NAME LOG_TAG
#define DBG_LEVEL LOG_LVL_DBG
#define DBG_COLOR
#include <rtdbg.h>
#define LOG_TAG "drv.usb.host"
#define DBG_LVL DBG_INFO
#include <drv_log.h>
#if !defined(NU_USBHOST_HUB_POLLING_INTERVAL)
#define NU_USBHOST_HUB_POLLING_INTERVAL (100)
@ -119,7 +116,7 @@ GetRHPortControlFromPipe(
if (port > NU_MAX_USBH_PORT)
{
RT_DEBUG_LOG(RT_DEBUG_USB, ("nu_open_pipe ERROR: port index over NU_MAX_USBH_PORT\n"));
LOG_D("nu_open_pipe ERROR: port index over NU_MAX_USBH_PORT");
return RT_NULL;
}
@ -161,14 +158,14 @@ static rt_err_t nu_reset_port(rt_uint8_t port)
if (port > NU_MAX_USBH_PORT)
{
RT_DEBUG_LOG(RT_DEBUG_USB, ("%s ERROR: port index over NU_MAX_USBH_PORT\n", __func__));
LOG_D("%s ERROR: port index over NU_MAX_USBH_PORT", __func__);
return -RT_EIO;
}
psPortCtrl = &s_sUSBHDev.asPortCtrl[port - 1];
if (psPortCtrl->sRHPortDev.pUDev == NULL)
{
RT_DEBUG_LOG(RT_DEBUG_USB, ("%s ERROR: udev not found\n", __func__));
LOG_D("%s ERROR: udev not found", __func__);
return -RT_EIO;
}
@ -258,13 +255,13 @@ static rt_err_t nu_open_pipe(upipe_t pipe)
psPortCtrl = GetRHPortControlFromPipe(pipe);
if (psPortCtrl == RT_NULL)
{
RT_DEBUG_LOG(RT_DEBUG_USB, ("%s ERROR: RHPort not found\n", __func__));
LOG_D("%s ERROR: RHPort not found", __func__);
goto exit_nu_open_pipe;
}
if (psPortCtrl->sRHPortDev.pUDev == NULL)
{
RT_DEBUG_LOG(RT_DEBUG_USB, ("%s ERROR: udev not found\n", __func__));
LOG_D("%s ERROR: udev not found", __func__);
goto exit_nu_open_pipe;
}
@ -277,7 +274,7 @@ static rt_err_t nu_open_pipe(upipe_t pipe)
if (psPortDev == RT_NULL)
{
RT_DEBUG_LOG(RT_DEBUG_USB, ("nu_open_pipe ERROR: udev allocate failed\n"));
LOG_D("nu_open_pipe ERROR: udev allocate failed");
goto exit_nu_open_pipe;
}
@ -308,7 +305,7 @@ static rt_err_t nu_open_pipe(upipe_t pipe)
EP_INFO_T *psEPInfo = GetFreePipe(psPortCtrl, psPortDev, &pipe->pipe_index);
if (psEPInfo == RT_NULL)
{
RT_DEBUG_LOG(RT_DEBUG_USB, ("%s ERROR: get free pipe failed\n", __func__));
LOG_D("%s ERROR: get free pipe failed", __func__);
goto exit_nu_open_pipe;
}
@ -397,13 +394,13 @@ static int nu_ctrl_xfer(
ret = usbh_ctrl_xfer(psPortDev->pUDev, psSetup->request_type, psSetup->bRequest, psSetup->wValue, psSetup->wIndex, psSetup->wLength, buffer, &xfer_len, timeouts * 10);
if (ret < 0)
{
RT_DEBUG_LOG(RT_DEBUG_USB, ("nu_ctrl_xfer ERROR: xfer failed %d\n", ret));
LOG_D("nu_ctrl_xfer ERROR: xfer failed %d", ret);
return ret;
}
if (xfer_len != psSetup->wLength)
{
RT_DEBUG_LOG(RT_DEBUG_USB, ("nu_ctrl_xfer ERROR: xfer length %d %d\n", psSetup->wLength, xfer_len));
LOG_D("nu_ctrl_xfer ERROR: xfer length %d %d", psSetup->wLength, xfer_len);
}
if ((psSetup->bRequest == USB_REQ_SET_ADDRESS) && ((psSetup->request_type & 0x60) == REQ_TYPE_STD_DEV))
@ -461,7 +458,7 @@ static int nu_int_xfer(
if (rt_completion_wait(&(psPortDev->utr_completion), timeouts) != 0)
{
RT_DEBUG_LOG(RT_DEBUG_USB, ("Request %08x Timeout in %d ms!!\n", psUTR, timeouts));
LOG_D("Request %08x Timeout in %d ms", psUTR, timeouts);
usbh_quit_utr(psUTR);
rt_completion_init(&(psPortDev->utr_completion));
@ -470,7 +467,7 @@ static int nu_int_xfer(
else
{
RT_DEBUG_LOG(RT_DEBUG_USB, ("Transferring done %08x\n", psUTR));
LOG_D("Transferring done %08x", psUTR);
usbh_quit_utr(psUTR);
break;
}
@ -507,7 +504,7 @@ static int nu_pipe_xfer(upipe_t pipe, rt_uint8_t token, void *buffer, int nbytes
psPortDev = GetPortDevFromPipe(pipe);
if (psPortDev->pUDev == NULL)
{
RT_DEBUG_LOG(RT_DEBUG_USB, ("nu_pipe_xfer ERROR: udev not found\n"));
LOG_D("nu_pipe_xfer ERROR: udev not found");
goto exit_nu_pipe_xfer;
}
@ -586,7 +583,7 @@ static int nu_pipe_xfer(upipe_t pipe, rt_uint8_t token, void *buffer, int nbytes
}
else
{
RT_DEBUG_LOG(RT_DEBUG_USB, ("%d == USBH_PID_DATA, nil buf-%d \n", token, nbytes));
LOG_D("%d == USBH_PID_DATA, nil buf-%d", token, nbytes);
}
} //else
@ -600,7 +597,7 @@ static int nu_pipe_xfer(upipe_t pipe, rt_uint8_t token, void *buffer, int nbytes
if (!psUTR)
{
RT_DEBUG_LOG(RT_DEBUG_USB, ("nu_pipe_xfer ERROR: unable alloc UTR\n"));
LOG_D("nu_pipe_xfer ERROR: unable alloc UTR");
goto exit_nu_pipe_xfer;
}
@ -620,7 +617,7 @@ static int nu_pipe_xfer(upipe_t pipe, rt_uint8_t token, void *buffer, int nbytes
{
if (nu_bulk_xfer(psPortDev, psUTR, timeouts) < 0)
{
RT_DEBUG_LOG(RT_DEBUG_USB, ("nu_pipe_xfer ERROR: bulk transfer failed\n"));
LOG_D("nu_pipe_xfer ERROR: bulk transfer failed");
goto failreport_nu_pipe_xfer;
}
}
@ -628,7 +625,7 @@ static int nu_pipe_xfer(upipe_t pipe, rt_uint8_t token, void *buffer, int nbytes
{
if (nu_int_xfer(pipe, psPortDev, psUTR, timeouts) < 0)
{
RT_DEBUG_LOG(RT_DEBUG_USB, ("nu_pipe_xfer ERROR: int transfer failed\n"));
LOG_D("nu_pipe_xfer ERROR: int transfer failed");
//goto exit_nu_pipe_xfer;
}
else
@ -640,7 +637,7 @@ static int nu_pipe_xfer(upipe_t pipe, rt_uint8_t token, void *buffer, int nbytes
else if (pipe->ep.bmAttributes == USB_EP_ATTR_ISOC)
{
//TODO: ISO transfer
RT_DEBUG_LOG(RT_DEBUG_USB, ("nu_pipe_xfer ERROR: isoc transfer not support\n"));
LOG_D("nu_pipe_xfer ERROR: isoc transfer not support");
goto exit_nu_pipe_xfer;
}
@ -651,7 +648,7 @@ failreport_nu_pipe_xfer:
if (psUTR->bIsTransferDone == 0)
{
//Timeout
RT_DEBUG_LOG(RT_DEBUG_USB, ("nu_pipe_xfer ERROR: timeout\n"));
LOG_D("nu_pipe_xfer ERROR: timeout");
pipe->status = UPIPE_STATUS_ERROR;
usbh_quit_utr(psUTR);
}
@ -732,7 +729,7 @@ static void nu_hcd_connect_callback(
if (i >= NU_MAX_USBH_PORT)
{
RT_DEBUG_LOG(RT_DEBUG_USB, ("ERROR: port connect slot is full\n"));
LOG_D("ERROR: port connect slot is full");
return;
}
@ -740,7 +737,7 @@ static void nu_hcd_connect_callback(
psPortCtrl->sRHPortDev.pUDev = udev;
psPortCtrl->sRHPortDev.bRHParent = TRUE;
RT_DEBUG_LOG(RT_DEBUG_USB, ("usb connected\n"));
LOG_D("usb connected");
if (udev->speed == SPEED_HIGH)
rt_usbh_root_hub_connect_handler(&s_sUSBHDev.uhcd, port_index, RT_TRUE);
@ -765,7 +762,7 @@ static void nu_hcd_disconnect_callback(
if (i >= NU_MAX_USBH_PORT)
{
RT_DEBUG_LOG(RT_DEBUG_USB, ("ERROR: udev not found\n"));
LOG_D("ERROR: udev not found");
return;
}
@ -781,7 +778,7 @@ static void nu_hcd_disconnect_callback(
psPortCtrl->sRHPortDev.pUDev = NULL;
RT_DEBUG_LOG(RT_DEBUG_USB, ("usb disconnect\n"));
LOG_D("usb disconnect");
rt_usbh_root_hub_disconnect_handler(&s_sUSBHDev.uhcd, port_index);
}

View File

@ -20,12 +20,9 @@
#include "usb.h"
#include "usbh_lib.h"
#define LOG_TAG "drv.usbhost"
#define DBG_ENABLE
#define DBG_SECTION_NAME LOG_TAG
#define DBG_LEVEL LOG_LVL_DBG
#define DBG_COLOR
#include <rtdbg.h>
#define LOG_TAG "drv.usb.host"
#define DBG_LVL DBG_INFO
#include <drv_log.h>
#if !defined(NU_USBHOST_HUB_POLLING_INTERVAL)
#define NU_USBHOST_HUB_POLLING_INTERVAL (100)
@ -127,7 +124,7 @@ GetRHPortControlFromPipe(
if (port > NU_MAX_USBH_PORT)
{
RT_DEBUG_LOG(RT_DEBUG_USB, ("nu_open_pipe ERROR: port index over NU_MAX_USBH_PORT\n"));
LOG_D("nu_open_pipe ERROR: port index over NU_MAX_USBH_PORT");
return RT_NULL;
}
@ -169,14 +166,14 @@ static rt_err_t nu_reset_port(rt_uint8_t port)
if (port > NU_MAX_USBH_PORT)
{
RT_DEBUG_LOG(RT_DEBUG_USB, ("%s ERROR: port index over NU_MAX_USBH_PORT\n", __func__));
LOG_D("%s ERROR: port index over NU_MAX_USBH_PORT", __func__);
return -RT_EIO;
}
psPortCtrl = &s_sUSBHDev.asPortCtrl[port - 1];
if (psPortCtrl->sRHPortDev.pUDev == NULL)
{
RT_DEBUG_LOG(RT_DEBUG_USB, ("%s ERROR: udev not found\n", __func__));
LOG_D("%s ERROR: udev not found", __func__);
return -RT_EIO;
}
@ -274,13 +271,13 @@ static rt_err_t nu_open_pipe(upipe_t pipe)
psPortCtrl = GetRHPortControlFromPipe(pipe);
if (psPortCtrl == RT_NULL)
{
RT_DEBUG_LOG(RT_DEBUG_USB, ("%s ERROR: RHPort not found\n", __func__));
LOG_D("%s ERROR: RHPort not found", __func__);
goto exit_nu_open_pipe;
}
if (psPortCtrl->sRHPortDev.pUDev == NULL)
{
RT_DEBUG_LOG(RT_DEBUG_USB, ("%s ERROR: udev not found\n", __func__));
LOG_D("%s ERROR: udev not found", __func__);
goto exit_nu_open_pipe;
}
@ -293,7 +290,7 @@ static rt_err_t nu_open_pipe(upipe_t pipe)
if (psPortDev == RT_NULL)
{
RT_DEBUG_LOG(RT_DEBUG_USB, ("nu_open_pipe ERROR: udev allocate failed\n"));
LOG_D("nu_open_pipe ERROR: udev allocate failed");
goto exit_nu_open_pipe;
}
@ -324,7 +321,7 @@ static rt_err_t nu_open_pipe(upipe_t pipe)
EP_INFO_T *psEPInfo = GetFreePipe(psPortCtrl, psPortDev, &pipe->pipe_index);
if (psEPInfo == RT_NULL)
{
RT_DEBUG_LOG(RT_DEBUG_USB, ("%s ERROR: get free pipe failed\n", __func__));
LOG_D("%s ERROR: get free pipe failed", __func__);
goto exit_nu_open_pipe;
}
@ -420,13 +417,13 @@ static int nu_ctrl_xfer(
ret = usbh_ctrl_xfer(psPortDev->pUDev, psSetup->request_type, psSetup->bRequest, psSetup->wValue, psSetup->wIndex, psSetup->wLength, buffer, &xfer_len, timeouts * 10);
if (ret < 0)
{
RT_DEBUG_LOG(RT_DEBUG_USB, ("nu_ctrl_xfer ERROR: xfer failed %d\n", ret));
LOG_D("nu_ctrl_xfer ERROR: xfer failed %d", ret);
return ret;
}
if (xfer_len != psSetup->wLength)
{
RT_DEBUG_LOG(RT_DEBUG_USB, ("nu_ctrl_xfer ERROR: xfer length %d %d\n", psSetup->wLength, xfer_len));
LOG_D("nu_ctrl_xfer ERROR: xfer length %d %d", psSetup->wLength, xfer_len);
}
if ((psSetup->bRequest == USB_REQ_SET_ADDRESS) && ((psSetup->request_type & 0x60) == REQ_TYPE_STD_DEV))
@ -500,7 +497,7 @@ static int nu_int_xfer(
if (rt_completion_wait(&(psPortDev->utr_completion), timeouts) != 0)
{
RT_DEBUG_LOG(RT_DEBUG_USB, ("Request %08x Timeout in %d ms!!\n", psUTR, timeouts));
LOG_D("Request %08x Timeout in %d ms", psUTR, timeouts);
usbh_quit_utr(psUTR);
rt_completion_init(&(psPortDev->utr_completion));
@ -509,7 +506,7 @@ static int nu_int_xfer(
else
{
RT_DEBUG_LOG(RT_DEBUG_USB, ("Transferring done %08x\n", psUTR));
LOG_D("Transferring done %08x", psUTR);
usbh_quit_utr(psUTR);
break;
}
@ -546,7 +543,7 @@ static int nu_pipe_xfer(upipe_t pipe, rt_uint8_t token, void *buffer, int nbytes
psPortDev = GetPortDevFromPipe(pipe);
if (psPortDev->pUDev == NULL)
{
RT_DEBUG_LOG(RT_DEBUG_USB, ("nu_pipe_xfer ERROR: udev not found\n"));
LOG_D("nu_pipe_xfer ERROR: udev not found");
goto exit_nu_pipe_xfer;
}
@ -625,7 +622,7 @@ static int nu_pipe_xfer(upipe_t pipe, rt_uint8_t token, void *buffer, int nbytes
}
else
{
RT_DEBUG_LOG(RT_DEBUG_USB, ("%d == USBH_PID_DATA, nil buf-%d \n", token, nbytes));
LOG_D("%d == USBH_PID_DATA, nil buf-%d", token, nbytes);
}
} //else
@ -639,7 +636,7 @@ static int nu_pipe_xfer(upipe_t pipe, rt_uint8_t token, void *buffer, int nbytes
if (!psUTR)
{
RT_DEBUG_LOG(RT_DEBUG_USB, ("nu_pipe_xfer ERROR: unable alloc UTR\n"));
LOG_D("nu_pipe_xfer ERROR: unable alloc UTR");
goto exit_nu_pipe_xfer;
}
@ -659,7 +656,7 @@ static int nu_pipe_xfer(upipe_t pipe, rt_uint8_t token, void *buffer, int nbytes
{
if (nu_bulk_xfer(psPortDev, psUTR, timeouts) < 0)
{
RT_DEBUG_LOG(RT_DEBUG_USB, ("nu_pipe_xfer ERROR: bulk transfer failed\n"));
LOG_D("nu_pipe_xfer ERROR: bulk transfer failed");
goto failreport_nu_pipe_xfer;
}
}
@ -667,7 +664,7 @@ static int nu_pipe_xfer(upipe_t pipe, rt_uint8_t token, void *buffer, int nbytes
{
if (nu_int_xfer(pipe, psPortDev, psUTR, timeouts) < 0)
{
RT_DEBUG_LOG(RT_DEBUG_USB, ("nu_pipe_xfer ERROR: int transfer failed\n"));
LOG_D("nu_pipe_xfer ERROR: int transfer failed");
//goto exit_nu_pipe_xfer;
}
else
@ -679,7 +676,7 @@ static int nu_pipe_xfer(upipe_t pipe, rt_uint8_t token, void *buffer, int nbytes
else if (pipe->ep.bmAttributes == USB_EP_ATTR_ISOC)
{
//TODO: ISO transfer
RT_DEBUG_LOG(RT_DEBUG_USB, ("nu_pipe_xfer ERROR: isoc transfer not support\n"));
LOG_D("nu_pipe_xfer ERROR: isoc transfer not support");
goto exit_nu_pipe_xfer;
}
@ -690,7 +687,7 @@ failreport_nu_pipe_xfer:
if (psUTR->bIsTransferDone == 0)
{
//Timeout
RT_DEBUG_LOG(RT_DEBUG_USB, ("nu_pipe_xfer ERROR: timeout\n"));
LOG_D("nu_pipe_xfer ERROR: timeout");
pipe->status = UPIPE_STATUS_ERROR;
usbh_quit_utr(psUTR);
}
@ -781,7 +778,7 @@ static void nu_hcd_connect_callback(
if (i >= NU_MAX_USBH_PORT)
{
RT_DEBUG_LOG(RT_DEBUG_USB, ("ERROR: port connect slot is full\n"));
LOG_D("ERROR: port connect slot is full");
return;
}
@ -789,7 +786,7 @@ static void nu_hcd_connect_callback(
psPortCtrl->sRHPortDev.pUDev = udev;
psPortCtrl->sRHPortDev.bRHParent = TRUE;
RT_DEBUG_LOG(RT_DEBUG_USB, ("usb connected\n"));
LOG_D("usb connected");
if (udev->speed == SPEED_HIGH)
rt_usbh_root_hub_connect_handler(&s_sUSBHDev.uhcd, port_index, RT_TRUE);
@ -814,7 +811,7 @@ static void nu_hcd_disconnect_callback(
if (i >= NU_MAX_USBH_PORT)
{
RT_DEBUG_LOG(RT_DEBUG_USB, ("ERROR: udev not found\n"));
LOG_D("ERROR: udev not found");
return;
}
@ -830,7 +827,7 @@ static void nu_hcd_disconnect_callback(
psPortCtrl->sRHPortDev.pUDev = NULL;
RT_DEBUG_LOG(RT_DEBUG_USB, ("usb disconnect\n"));
LOG_D("usb disconnect");
rt_usbh_root_hub_disconnect_handler(&s_sUSBHDev.uhcd, port_index);

View File

@ -20,12 +20,9 @@
#include "usb.h"
#include "usbh_lib.h"
#define LOG_TAG "drv.usbhost"
#define DBG_ENABLE
#define DBG_SECTION_NAME LOG_TAG
#define DBG_LEVEL LOG_LVL_DBG
#define DBG_COLOR
#include <rtdbg.h>
#define LOG_TAG "drv.usb.host"
#define DBG_LVL DBG_INFO
#include <drv_log.h>
#if !defined(NU_USBHOST_HUB_POLLING_INTERVAL)
#define NU_USBHOST_HUB_POLLING_INTERVAL (100)
@ -127,7 +124,7 @@ GetRHPortControlFromPipe(
if (port > NU_MAX_USBH_PORT)
{
RT_DEBUG_LOG(RT_DEBUG_USB, ("nu_open_pipe ERROR: port index over NU_MAX_USBH_PORT\n"));
LOG_D("nu_open_pipe ERROR: port index over NU_MAX_USBH_PORT");
return RT_NULL;
}
@ -169,14 +166,14 @@ static rt_err_t nu_reset_port(rt_uint8_t port)
if (port > NU_MAX_USBH_PORT)
{
RT_DEBUG_LOG(RT_DEBUG_USB, ("%s ERROR: port index over NU_MAX_USBH_PORT\n", __func__));
LOG_D("%s ERROR: port index over NU_MAX_USBH_PORT", __func__);
return -RT_EIO;
}
psPortCtrl = &s_sUSBHDev.asPortCtrl[port - 1];
if (psPortCtrl->sRHPortDev.pUDev == NULL)
{
RT_DEBUG_LOG(RT_DEBUG_USB, ("%s ERROR: udev not found\n", __func__));
LOG_D("%s ERROR: udev not found", __func__);
return -RT_EIO;
}
@ -274,13 +271,13 @@ static rt_err_t nu_open_pipe(upipe_t pipe)
psPortCtrl = GetRHPortControlFromPipe(pipe);
if (psPortCtrl == RT_NULL)
{
RT_DEBUG_LOG(RT_DEBUG_USB, ("%s ERROR: RHPort not found\n", __func__));
LOG_D("%s ERROR: RHPort not found", __func__);
goto exit_nu_open_pipe;
}
if (psPortCtrl->sRHPortDev.pUDev == NULL)
{
RT_DEBUG_LOG(RT_DEBUG_USB, ("%s ERROR: udev not found\n", __func__));
LOG_D("%s ERROR: udev not found", __func__);
goto exit_nu_open_pipe;
}
@ -293,7 +290,7 @@ static rt_err_t nu_open_pipe(upipe_t pipe)
if (psPortDev == RT_NULL)
{
RT_DEBUG_LOG(RT_DEBUG_USB, ("nu_open_pipe ERROR: udev allocate failed\n"));
LOG_D("nu_open_pipe ERROR: udev allocate failed");
goto exit_nu_open_pipe;
}
@ -324,7 +321,7 @@ static rt_err_t nu_open_pipe(upipe_t pipe)
EP_INFO_T *psEPInfo = GetFreePipe(psPortCtrl, psPortDev, &pipe->pipe_index);
if (psEPInfo == RT_NULL)
{
RT_DEBUG_LOG(RT_DEBUG_USB, ("%s ERROR: get free pipe failed\n", __func__));
LOG_D("%s ERROR: get free pipe failed", __func__);
goto exit_nu_open_pipe;
}
@ -420,13 +417,13 @@ static int nu_ctrl_xfer(
ret = usbh_ctrl_xfer(psPortDev->pUDev, psSetup->request_type, psSetup->bRequest, psSetup->wValue, psSetup->wIndex, psSetup->wLength, buffer, &xfer_len, timeouts * 10);
if (ret < 0)
{
RT_DEBUG_LOG(RT_DEBUG_USB, ("nu_ctrl_xfer ERROR: xfer failed %d\n", ret));
LOG_D("nu_ctrl_xfer ERROR: xfer failed %d", ret);
return ret;
}
if (xfer_len != psSetup->wLength)
{
RT_DEBUG_LOG(RT_DEBUG_USB, ("nu_ctrl_xfer ERROR: xfer length %d %d\n", psSetup->wLength, xfer_len));
LOG_D("nu_ctrl_xfer ERROR: xfer length %d %d\n", psSetup->wLength, xfer_len);
}
if ((psSetup->bRequest == USB_REQ_SET_ADDRESS) && ((psSetup->request_type & 0x60) == REQ_TYPE_STD_DEV))
@ -500,7 +497,7 @@ static int nu_int_xfer(
if (rt_completion_wait(&(psPortDev->utr_completion), timeouts) != 0)
{
RT_DEBUG_LOG(RT_DEBUG_USB, ("Request %08x Timeout in %d ms!!\n", psUTR, timeouts));
LOG_D("Request %08x Timeout in %d ms\n", psUTR, timeouts);
usbh_quit_utr(psUTR);
rt_completion_init(&(psPortDev->utr_completion));
@ -509,7 +506,7 @@ static int nu_int_xfer(
else
{
RT_DEBUG_LOG(RT_DEBUG_USB, ("Transferring done %08x\n", psUTR));
LOG_D("Transferring done %08x\n", psUTR);
usbh_quit_utr(psUTR);
break;
}
@ -546,7 +543,7 @@ static int nu_pipe_xfer(upipe_t pipe, rt_uint8_t token, void *buffer, int nbytes
psPortDev = GetPortDevFromPipe(pipe);
if (psPortDev->pUDev == NULL)
{
RT_DEBUG_LOG(RT_DEBUG_USB, ("nu_pipe_xfer ERROR: udev not found\n"));
LOG_D("nu_pipe_xfer ERROR: udev not found");
goto exit_nu_pipe_xfer;
}
@ -625,7 +622,7 @@ static int nu_pipe_xfer(upipe_t pipe, rt_uint8_t token, void *buffer, int nbytes
}
else
{
RT_DEBUG_LOG(RT_DEBUG_USB, ("%d == USBH_PID_DATA, nil buf-%d \n", token, nbytes));
LOG_D("%d == USBH_PID_DATA, nil buf-%d", token, nbytes);
}
} //else
@ -639,7 +636,7 @@ static int nu_pipe_xfer(upipe_t pipe, rt_uint8_t token, void *buffer, int nbytes
if (!psUTR)
{
RT_DEBUG_LOG(RT_DEBUG_USB, ("nu_pipe_xfer ERROR: unable alloc UTR\n"));
LOG_D("nu_pipe_xfer ERROR: unable alloc UTR");
goto exit_nu_pipe_xfer;
}
@ -659,7 +656,7 @@ static int nu_pipe_xfer(upipe_t pipe, rt_uint8_t token, void *buffer, int nbytes
{
if (nu_bulk_xfer(psPortDev, psUTR, timeouts) < 0)
{
RT_DEBUG_LOG(RT_DEBUG_USB, ("nu_pipe_xfer ERROR: bulk transfer failed\n"));
LOG_D("nu_pipe_xfer ERROR: bulk transfer failed");
goto failreport_nu_pipe_xfer;
}
}
@ -667,7 +664,7 @@ static int nu_pipe_xfer(upipe_t pipe, rt_uint8_t token, void *buffer, int nbytes
{
if (nu_int_xfer(pipe, psPortDev, psUTR, timeouts) < 0)
{
RT_DEBUG_LOG(RT_DEBUG_USB, ("nu_pipe_xfer ERROR: int transfer failed\n"));
LOG_D("nu_pipe_xfer ERROR: int transfer failed");
//goto exit_nu_pipe_xfer;
}
else
@ -679,7 +676,7 @@ static int nu_pipe_xfer(upipe_t pipe, rt_uint8_t token, void *buffer, int nbytes
else if (pipe->ep.bmAttributes == USB_EP_ATTR_ISOC)
{
//TODO: ISO transfer
RT_DEBUG_LOG(RT_DEBUG_USB, ("nu_pipe_xfer ERROR: isoc transfer not support\n"));
LOG_D("nu_pipe_xfer ERROR: isoc transfer not support");
goto exit_nu_pipe_xfer;
}
@ -690,7 +687,7 @@ failreport_nu_pipe_xfer:
if (psUTR->bIsTransferDone == 0)
{
//Timeout
RT_DEBUG_LOG(RT_DEBUG_USB, ("nu_pipe_xfer ERROR: timeout\n"));
LOG_D("nu_pipe_xfer ERROR: timeout");
pipe->status = UPIPE_STATUS_ERROR;
usbh_quit_utr(psUTR);
}
@ -781,7 +778,7 @@ static void nu_hcd_connect_callback(
if (i >= NU_MAX_USBH_PORT)
{
RT_DEBUG_LOG(RT_DEBUG_USB, ("ERROR: port connect slot is full\n"));
LOG_D("ERROR: port connect slot is full");
return;
}
@ -789,7 +786,7 @@ static void nu_hcd_connect_callback(
psPortCtrl->sRHPortDev.pUDev = udev;
psPortCtrl->sRHPortDev.bRHParent = TRUE;
RT_DEBUG_LOG(RT_DEBUG_USB, ("usb connected\n"));
LOG_D("usb connected");
if (udev->speed == SPEED_HIGH)
rt_usbh_root_hub_connect_handler(&s_sUSBHDev.uhcd, port_index, RT_TRUE);
@ -814,7 +811,7 @@ static void nu_hcd_disconnect_callback(
if (i >= NU_MAX_USBH_PORT)
{
RT_DEBUG_LOG(RT_DEBUG_USB, ("ERROR: udev not found\n"));
LOG_D("ERROR: udev not found");
return;
}
@ -830,7 +827,7 @@ static void nu_hcd_disconnect_callback(
psPortCtrl->sRHPortDev.pUDev = NULL;
RT_DEBUG_LOG(RT_DEBUG_USB, ("usb disconnect\n"));
LOG_D("usb disconnect");
rt_usbh_root_hub_disconnect_handler(&s_sUSBHDev.uhcd, port_index);

View File

@ -8,9 +8,14 @@
* 2017-10-30 ZYH the first version
* 2019-12-19 tyustli port to stm32 series
*/
#include "drv_usbh.h"
#include "board.h"
#define LOG_TAG "drv.usb.host"
#define DBG_LVL DBG_INFO
#include <drv_log.h>
static HCD_HandleTypeDef stm32_hhcd_fs;
static struct rt_completion urb_completion;
static volatile rt_bool_t connect_status = RT_FALSE;
@ -28,7 +33,7 @@ void HAL_HCD_Connect_Callback(HCD_HandleTypeDef *hhcd)
if (!connect_status)
{
connect_status = RT_TRUE;
RT_DEBUG_LOG(RT_DEBUG_USB, ("usb connected\n"));
LOG_D("usb connected");
rt_usbh_root_hub_connect_handler(hcd, OTG_FS_PORT, RT_FALSE);
}
}
@ -39,7 +44,7 @@ void HAL_HCD_Disconnect_Callback(HCD_HandleTypeDef *hhcd)
if (connect_status)
{
connect_status = RT_FALSE;
RT_DEBUG_LOG(RT_DEBUG_USB, ("usb disconnnect\n"));
LOG_D("usb disconnnect");
rt_usbh_root_hub_disconnect_handler(hcd, OTG_FS_PORT);
}
}
@ -51,7 +56,7 @@ void HAL_HCD_HC_NotifyURBChange_Callback(HCD_HandleTypeDef *hhcd, uint8_t chnum,
static rt_err_t drv_reset_port(rt_uint8_t port)
{
RT_DEBUG_LOG(RT_DEBUG_USB, ("reset port\n"));
LOG_D("reset port");
HAL_HCD_ResetPort(&stm32_hhcd_fs);
return RT_EOK;
}
@ -79,7 +84,7 @@ static int drv_pipe_xfer(upipe_t pipe, rt_uint8_t token, void *buffer, int nbyte
rt_thread_mdelay(1);
if (HAL_HCD_HC_GetState(&stm32_hhcd_fs, pipe->pipe_index) == HC_NAK)
{
RT_DEBUG_LOG(RT_DEBUG_USB, ("nak\n"));
LOG_D("nak");
if (pipe->ep.bmAttributes == USB_EP_ATTR_INT)
{
rt_thread_delay((pipe->ep.bInterval * RT_TICK_PER_SECOND / 1000) > 0 ? (pipe->ep.bInterval * RT_TICK_PER_SECOND / 1000) : 1);
@ -96,7 +101,7 @@ static int drv_pipe_xfer(upipe_t pipe, rt_uint8_t token, void *buffer, int nbyte
}
else if (HAL_HCD_HC_GetState(&stm32_hhcd_fs, pipe->pipe_index) == HC_STALL)
{
RT_DEBUG_LOG(RT_DEBUG_USB, ("stall\n"));
LOG_D("stall");
pipe->status = UPIPE_STATUS_STALL;
if (pipe->callback != RT_NULL)
{
@ -106,7 +111,7 @@ static int drv_pipe_xfer(upipe_t pipe, rt_uint8_t token, void *buffer, int nbyte
}
else if (HAL_HCD_HC_GetState(&stm32_hhcd_fs, pipe->pipe_index) == URB_ERROR)
{
RT_DEBUG_LOG(RT_DEBUG_USB, ("error\n"));
LOG_D("error");
pipe->status = UPIPE_STATUS_ERROR;
if (pipe->callback != RT_NULL)
{
@ -116,7 +121,7 @@ static int drv_pipe_xfer(upipe_t pipe, rt_uint8_t token, void *buffer, int nbyte
}
else if(URB_DONE == HAL_HCD_HC_GetURBState(&stm32_hhcd_fs, pipe->pipe_index))
{
RT_DEBUG_LOG(RT_DEBUG_USB, ("ok\n"));
LOG_D("ok");
pipe->status = UPIPE_STATUS_OK;
if (pipe->callback != RT_NULL)
{

View File

@ -14,8 +14,8 @@
#define USB_THREAD_STACK_SIZE 4096
#define DBG_TAG "usbhost.hub"
#define DBG_LVL DBG_INFO
#define DBG_TAG "usb.host.hub"
#define DBG_LVL DBG_INFO
#include <rtdbg.h>
@ -405,7 +405,7 @@ static rt_err_t rt_usbh_hub_port_change(uhub_t hub)
ret = rt_usbh_hub_get_port_status(hub, i + 1, &pstatus);
if(ret != RT_EOK) continue;
RT_DEBUG_LOG_D("port %d status 0x%x", i + 1, pstatus);
LOG_D("port %d status 0x%x", i + 1, pstatus);
/* check port status change */
if (pstatus & PORT_CCSC)
@ -512,8 +512,6 @@ static rt_err_t rt_usbh_hub_enable(void *arg)
/* paremeter check */
RT_ASSERT(intf != RT_NULL);
RT_DEBUG_LOG_D("rt_usbh_hub_run");
/* get usb device instance */
device = intf->device;
@ -613,7 +611,7 @@ static rt_err_t rt_usbh_hub_disable(void* arg)
/* paremeter check */
RT_ASSERT(intf != RT_NULL);
RT_DEBUG_LOG_D("rt_usbh_hub_stop");
LOG_D("rt_usbh_hub_stop");
hub = (uhub_t)intf->user_data;
for(i=0; i<hub->num_ports; i++)
@ -662,8 +660,6 @@ static void rt_usbh_hub_thread_entry(void* parameter)
if (rt_mq_recv(hcd->usb_mq, &msg, sizeof(struct uhost_msg), RT_WAITING_FOREVER) < 0)
continue;
//RT_DEBUG_LOG_D("msg type %d", msg.type);
switch (msg.type)
{
case USB_MSG_CONNECT_CHANGE: