FRDM-RW612 USB_DEVICE_STACK_NEXT support

キャンセル
次の結果を表示 
表示  限定  | 次の代わりに検索 
もしかして: 

FRDM-RW612 USB_DEVICE_STACK_NEXT support

ソリューションへジャンプ
6,461件の閲覧回数
wima88
Contributor III

Hi , 

I'm using zephyr 4.0.0 an tried to run some samples with USB device stack next an encounter following error 

 <err> usbd_core: Failed to init device driver

however I ran some samples with old usb device stack. 

I would like to know if this is the expected behavior as of this zephyr version or am I missing something   

タグ(2)
0 件の賞賛
返信
1 解決策
6,318件の閲覧回数
DanielRuvalcaba
NXP TechSupport
NXP TechSupport

Hi,

 

I found the following issue in the Github repo NXP USB drivers don't work with usb_next · Issue #86409 · zephyrproject-rtos/zephyr. Looks like this has already been reported.

Could you please confirm is the same issue?

 

Regards,

Daniel

元の投稿で解決策を見る

0 件の賞賛
返信
6 返答(返信)
6,308件の閲覧回数
wima88
Contributor III

Thanks Daniel, I follow the issue. I was about to create a issue on git 

Wimansha 

0 件の賞賛
返信
6,427件の閲覧回数
wima88
Contributor III

Hi Daniel ,

Thank you for getting back to me . 

I tried the following 

1.  use the hid-mouse example as it is with usbd_next_proj.conf  

2. use with loopback class

      1.  proj.conf 

CONFIG_LOG=y
 
CONFIG_USB_DEVICE_STACK_NEXT=y
CONFIG_USBD_LOOPBACK_CLASS=y
 
2.  main.c
 
#include "sample_usbd.h" 
/*located on zephyrproject/zephyr/samples/subsys/usb/common*/

#include <zephyr/kernel.h>
#include <zephyr/usb/usbd.h>

#include <zephyr/logging/log.h>

LOG_MODULE_REGISTER(app, LOG_LEVEL_DBG);

static void msg_cb(struct usbd_context *const usbd_ctx,
                   const struct usbd_msg *const msg) {
  LOG_INF("USBD message: %s", usbd_msg_type_string(msg->type));

  if (usbd_can_detect_vbus(usbd_ctx)) {
    if (msg->type == USBD_MSG_VBUS_READY) {
      if (usbd_enable(usbd_ctx)) {
        LOG_ERR("Failed to enable device support");
      }
    }

    if (msg->type == USBD_MSG_VBUS_REMOVED) {
      if (usbd_disable(usbd_ctx)) {
        LOG_ERR("Failed to disable device support");
      }
    }
  }
}
int main(void) {
  struct usbd_context *sample_usbd;
  int ret;

  sample_usbd = sample_usbd_init_device(msg_cb);
  if (sample_usbd == NULL) {
    k_msleep(100);
    return 0;
  }

  if (!usbd_can_detect_vbus(sample_usbd)) {
    ret = usbd_enable(sample_usbd);
    {
      if (ret) {
        LOG_ERR("Failed to enable usb support !");
        return ret;
      }
    }
  }
  return 0;
}

 in both cases I got   <err> usbd_core: Failed to init device driver . to be little more specific -12(-ENOMEM) 

after tracing the issue back I pin point the error to udc_mcux_init(...) function located in drivers/usb/udc/udc_mcux_ehci.c

to narrow it further

        /* Init MCUX USB device driver. */
        status = mcux_if->deviceInit(priv->controller_id,
                &priv->mcux_device, &(priv->mcux_device.controllerHandle));
        if (status != kStatus_USB_Success) {
                return -ENOMEM;
        }

 

 

 

0 件の賞賛
返信
6,359件の閲覧回数
DanielRuvalcaba
NXP TechSupport
NXP TechSupport

Hi,

 

If you use the HID mouse example as is, does it work?

Could you please try using Zephyr 4.1.0?

Is this custom code? If not, could you please point me where did you get it?

 

Regards,

Daniel.

0 件の賞賛
返信
6,331件の閲覧回数
wima88
Contributor III

Hi Daniel,

I tried it with zephyr 4.1.0, 

still seen the same error code, according to 4.1.0 migration guide   not much been change in zephyr USB side 

If I use HID-mouse as it is USB stack is initializing properly and I can see device enumeration on host. 

Wimansha

 

0 件の賞賛
返信
6,319件の閲覧回数
DanielRuvalcaba
NXP TechSupport
NXP TechSupport

Hi,

 

I found the following issue in the Github repo NXP USB drivers don't work with usb_next · Issue #86409 · zephyrproject-rtos/zephyr. Looks like this has already been reported.

Could you please confirm is the same issue?

 

Regards,

Daniel

0 件の賞賛
返信
6,438件の閲覧回数
DanielRuvalcaba
NXP TechSupport
NXP TechSupport

Hi,

What example are you testing?

Could you please share some reproduction steps?

Regards,

Daniel.

0 件の賞賛
返信
%3CLINGO-SUB%20id%3D%22lingo-sub-2064972%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3EFRDM-RW612%20USB_DEVICE_STACK_NEXT%E3%82%B5%E3%83%9D%E3%83%BC%E3%83%88%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2064972%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3EHi%20%2C%26nbsp%3B%3C%2FP%3E%3CP%3E%E7%A7%81%E3%81%AFzephyr%204.0.0%E3%82%92%E4%BD%BF%E7%94%A8%E3%81%97%E3%81%A6%E3%81%84%E3%81%BE%E3%81%99%E3%81%8C%E3%80%81%E6%AC%A1%E3%81%ABUSB%E3%83%87%E3%83%90%E3%82%A4%E3%82%B9%E3%82%B9%E3%82%BF%E3%83%83%E3%82%AF%E3%81%A7%E3%81%84%E3%81%8F%E3%81%A4%E3%81%8B%E3%81%AE%E3%82%B5%E3%83%B3%E3%83%97%E3%83%AB%E3%82%92%E5%AE%9F%E8%A1%8C%E3%81%97%E3%82%88%E3%81%86%E3%81%A8%E3%81%97%E3%81%BE%E3%81%97%E3%81%9F%E3%81%8C%E3%80%81%E6%AC%A1%E3%81%AE%E3%82%A8%E3%83%A9%E3%83%BC%E3%81%AB%E9%81%AD%E9%81%87%E3%81%97%E3%81%BE%E3%81%97%E3%81%9F%3C%2FP%3E%3CP%3E%3CSTRONG%3E%3CERR%3E%20usbd_core%3A%20%E3%83%87%E3%83%90%E3%82%A4%E3%82%B9%E3%83%89%E3%83%A9%E3%82%A4%E3%83%90%E3%83%BC%E3%81%AE%E5%88%9D%E6%9C%9F%E5%8C%96%E3%81%AB%E5%A4%B1%E6%95%97%E3%81%97%E3%81%BE%E3%81%97%E3%81%9F%3C%2FERR%3E%3C%2FSTRONG%3E%3C%2FP%3E%3CP%3E%E3%81%9F%E3%81%A0%E3%81%97%E3%80%81%E5%8F%A4%E3%81%84USB%E3%83%87%E3%83%90%E3%82%A4%E3%82%B9%E3%82%B9%E3%82%BF%E3%83%83%E3%82%AF%E3%81%A7%E3%81%84%E3%81%8F%E3%81%A4%E3%81%8B%E3%81%AE%E3%82%B5%E3%83%B3%E3%83%97%E3%83%AB%E3%82%92%E5%AE%9F%E8%A1%8C%E3%81%97%E3%81%BE%E3%81%97%E3%81%9F%E3%80%82%3C%2FP%3E%3CP%3E%E3%81%93%E3%82%8C%E3%81%8C%E3%81%93%E3%81%AEzephyr%E3%83%90%E3%83%BC%E3%82%B8%E3%83%A7%E3%83%B3%E3%81%AE%E6%99%82%E7%82%B9%E3%81%A7%E4%BA%88%E6%83%B3%E3%81%95%E3%82%8C%E3%82%8B%E5%8B%95%E4%BD%9C%E3%81%A7%E3%81%82%E3%82%8B%E3%81%8B%E3%81%A9%E3%81%86%E3%81%8B%E3%80%81%E3%81%BE%E3%81%9F%E3%81%AF%E4%BD%95%E3%81%8B%E3%81%8C%E8%B6%B3%E3%82%8A%E3%81%AA%E3%81%84%E3%81%AE%E3%81%8B%E3%82%92%E7%9F%A5%E3%82%8A%E3%81%9F%E3%81%84%E3%81%A7%E3%81%99%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-2069034%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%E6%97%A5%E6%99%82%3AFRDM-RW612%20USB_DEVICE_STACK_NEXT%E3%82%B5%E3%83%9D%E3%83%BC%E3%83%88%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2069034%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3E%E3%81%82%E3%82%8A%E3%81%8C%E3%81%A8%E3%81%86%E3%83%80%E3%83%8B%E3%82%A8%E3%83%AB%E3%80%81%E7%A7%81%E3%81%AF%E5%95%8F%E9%A1%8C%E3%82%92%E3%83%95%E3%82%A9%E3%83%AD%E3%83%BC%E3%81%97%E3%81%A6%E3%81%84%E3%81%BE%E3%81%99%E3%80%82%E7%A7%81%E3%81%AFgit%E3%81%A7%E5%95%8F%E9%A1%8C%E3%82%92%E4%BD%9C%E6%88%90%E3%81%97%E3%82%88%E3%81%86%E3%81%A8%E3%81%97%E3%81%A6%E3%81%84%E3%81%BE%E3%81%97%E3%81%9F%3C%2FP%3E%3CP%3E%E3%82%A6%E3%82%A3%E3%83%9E%E3%83%B3%E3%82%B7%E3%83%A3%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-2068896%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%E6%97%A5%E6%99%82%3AFRDM-RW612%20USB_DEVICE_STACK_NEXT%E3%82%B5%E3%83%9D%E3%83%BC%E3%83%88%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2068896%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3EHi%2C%3C%2FP%3E%0A%3CBR%20%2F%3E%0A%3CP%3EGithub%E3%83%AA%E3%83%9D%E3%82%B8%E3%83%88%E3%83%AA%E3%81%A7%E6%AC%A1%E3%81%AE%E5%95%8F%E9%A1%8C%E3%82%92%E8%A6%8B%E3%81%A4%E3%81%91%E3%81%BE%E3%81%97%E3%81%9F%3A%3CA%20href%3D%22https%3A%2F%2Fgithub.com%2Fzephyrproject-rtos%2Fzephyr%2Fissues%2F86409%22%20target%3D%22_blank%22%20rel%3D%22nofollow%20noopener%20noreferrer%22%3ENXP%20USB%E3%83%89%E3%83%A9%E3%82%A4%E3%83%90%E3%83%BC%E3%81%8Cusb_next%E3%81%A7%E5%8B%95%E4%BD%9C%E3%81%97%E3%81%BE%E3%81%9B%E3%82%93%20%C2%B7%E5%95%8F%E9%A1%8C%20%2386409%20%C2%B7zephyrproject-RTOS%2Fzephyr%3C%2FA%3E.%E3%81%93%E3%82%8C%E3%81%AF%E3%81%99%E3%81%A7%E3%81%AB%E5%A0%B1%E5%91%8A%E3%81%95%E3%82%8C%E3%81%A6%E3%81%84%E3%82%8B%E3%82%88%E3%81%86%E3%81%A7%E3%81%99%E3%80%82%3C%2FP%3E%0A%3CP%3E%E5%90%8C%E3%81%98%E5%95%8F%E9%A1%8C%E3%81%A7%E3%81%82%E3%82%8B%E3%81%93%E3%81%A8%E3%82%92%E7%A2%BA%E8%AA%8D%E3%81%97%E3%81%A6%E3%81%84%E3%81%9F%E3%81%A0%E3%81%91%E3%81%BE%E3%81%99%E3%81%8B%3F%3C%2FP%3E%0A%3CBR%20%2F%3E%0A%3CP%3E%E3%82%88%E3%82%8D%E3%81%97%E3%81%8F%E3%81%8A%E9%A1%98%E3%81%84%E3%81%97%E3%81%BE%E3%81%99%E3%80%82%3C%2FP%3E%0A%3CP%3EDaniel%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-2068791%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%E6%97%A5%E6%99%82%3AFRDM-RW612%20USB_DEVICE_STACK_NEXT%E3%82%B5%E3%83%9D%E3%83%BC%E3%83%88%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2068791%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3EHi%20Daniel%2C%3C%2FP%3E%3CP%3Ezephyr%204.1.0%E3%81%A7%E8%A9%A6%E3%81%97%E3%81%A6%E3%81%BF%E3%81%BE%E3%81%97%E3%81%9F%E3%81%8C%E3%80%81%3C%2FP%3E%3CP%3E%3CA%20href%3D%22https%3A%2F%2Fdocs.zephyrproject.org%2Flatest%2Freleases%2Fmigration-guide-4.1.html%22%20target%3D%22_self%22%20rel%3D%22nofollow%20noopener%20noreferrer%22%3E4.1.0%E7%A7%BB%E8%A1%8C%E3%82%AC%E3%82%A4%E3%83%89%3C%2FA%3E%E3%81%AB%E3%82%88%E3%82%8B%E3%81%A8%E3%80%81Zephyr%20USB%E5%81%B4%E3%81%A7%E3%81%AF%E3%81%82%E3%81%BE%E3%82%8A%E5%A4%89%E6%9B%B4%E3%81%95%E3%82%8C%E3%81%A6%E3%81%84%E3%81%BE%E3%81%9B%E3%82%93%E3%81%8C%E3%80%81%E5%90%8C%E3%81%98%E3%82%A8%E3%83%A9%E3%83%BC%E3%82%B3%E3%83%BC%E3%83%89%E3%81%8C%E8%A1%A8%E7%A4%BA%E3%81%95%E3%82%8C%E3%81%A6%E3%81%84%E3%81%BE%E3%81%99%3C%2FP%3E%3CP%3EHID-mouse%E3%82%92%E3%81%9D%E3%81%AE%E3%81%BE%E3%81%BE%E4%BD%BF%E7%94%A8%E3%81%99%E3%82%8B%E3%81%A8%E3%80%81USB%E3%82%B9%E3%82%BF%E3%83%83%E3%82%AF%E3%81%AF%E9%81%A9%E5%88%87%E3%81%AB%E5%88%9D%E6%9C%9F%E5%8C%96%E3%81%95%E3%82%8C%E3%81%A6%E3%81%8A%E3%82%8A%E3%80%81%E3%83%9B%E3%82%B9%E3%83%88%E4%B8%8A%E3%81%AE%E3%83%87%E3%83%90%E3%82%A4%E3%82%B9%E3%81%AE%E5%88%97%E6%8C%99%E3%82%92%E7%A2%BA%E8%AA%8D%E3%81%A7%E3%81%8D%E3%81%BE%E3%81%99%E3%80%82%3C%2FP%3E%3CP%3E%E3%82%A6%E3%82%A3%E3%83%9E%E3%83%B3%E3%82%B7%E3%83%A3%3C%2FP%3E%3CBR%20%2F%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-2067551%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%E6%97%A5%E6%99%82%3AFRDM-RW612%20USB_DEVICE_STACK_NEXT%E3%82%B5%E3%83%9D%E3%83%BC%E3%83%88%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2067551%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3EHi%2C%3C%2FP%3E%0A%3CBR%20%2F%3E%0A%3CP%3EHID%20%E3%83%9E%E3%82%A6%E3%82%B9%E3%81%AE%E4%BE%8B%E3%82%92%E3%81%9D%E3%81%AE%E3%81%BE%E3%81%BE%E4%BD%BF%E7%94%A8%E3%81%99%E3%82%8B%E3%81%A8%E3%80%81%E5%8B%95%E4%BD%9C%E3%81%97%E3%81%BE%E3%81%99%E3%81%8B%3F%3C%2FP%3E%0A%3CP%3EZephyr%204.1.0%E3%82%92%E3%81%8A%E8%A9%A6%E3%81%97%E3%81%84%E3%81%9F%E3%81%A0%E3%81%91%E3%81%BE%E3%81%99%E3%81%8B%3F%3C%2FP%3E%0A%3CP%3E%E3%81%93%E3%82%8C%E3%81%AF%E3%82%AB%E3%82%B9%E3%82%BF%E3%83%A0%E3%82%B3%E3%83%BC%E3%83%89%E3%81%A7%E3%81%99%E3%81%8B%3F%E3%81%9D%E3%81%86%E3%81%A7%E3%81%AA%E3%81%84%E5%A0%B4%E5%90%88%E3%81%AF%E3%80%81%E3%81%A9%E3%81%93%E3%81%A7%E6%89%8B%E3%81%AB%E5%85%A5%E3%82%8C%E3%81%9F%E3%81%AE%E3%81%8B%E6%95%99%E3%81%88%E3%81%A6%E3%81%84%E3%81%9F%E3%81%A0%E3%81%91%E3%81%BE%E3%81%99%E3%81%8B%3F%3C%2FP%3E%0A%3CBR%20%2F%3E%0A%3CP%3E%E3%82%88%E3%82%8D%E3%81%97%E3%81%8F%E3%81%8A%E9%A1%98%E3%81%84%E3%81%97%E3%81%BE%E3%81%99%E3%80%82%3C%2FP%3E%0A%3CP%3EDaniel.%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-2065796%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%E6%97%A5%E6%99%82%3AFRDM-RW612%20USB_DEVICE_STACK_NEXT%E3%82%B5%E3%83%9D%E3%83%BC%E3%83%88%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2065796%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3EHi%20Daniel%20%2C%3C%2FP%3E%3CP%3E%E7%A7%81%E3%81%AB%E6%88%BB%E3%81%A3%E3%81%A6%E3%81%8D%E3%81%A6%E3%81%82%E3%82%8A%E3%81%8C%E3%81%A8%E3%81%86%E3%80%82%3C%2FP%3E%3CP%3E%E7%A7%81%E3%81%AF%E4%BB%A5%E4%B8%8B%E3%82%92%E8%A9%A6%E3%81%97%E3%81%BE%E3%81%97%E3%81%9F%3C%2FP%3E%3CP%3E1.%20hid-mouse%20%E3%81%AE%E4%BE%8B%E3%82%92%E3%81%9D%E3%81%AE%E3%81%BE%E3%81%BE%20usbd_next_proj.conf%20%E3%81%A7%E4%BD%BF%E7%94%A8%E3%81%97%E3%81%BE%E3%81%99%3C%2FP%3E%3CP%3E2.%20%E3%83%AB%E3%83%BC%E3%83%97%E3%83%90%E3%83%83%E3%82%AF%E3%82%AF%E3%83%A9%E3%82%B9%E3%81%A8%E4%B8%80%E7%B7%92%E3%81%AB%E4%BD%BF%E7%94%A8%E3%81%99%E3%82%8B%3C%2FP%3E%3CP%3E%26nbsp%3B%20%26nbsp%3B%20%26nbsp%3B%201.%26nbsp%3B%20proj.conf%26nbsp%3B%3C%2FP%3E%3CDIV%20class%3D%22lia-indent-padding-left-60px%22%20style%3D%22padding-left%20%3A%2060px%3B%22%20style%3D%22padding-left%20%3A%2060px%3B%22%3ECONFIG_LOG%3Dy%3C%2FDIV%3E%3CDIV%20class%3D%22lia-indent-padding-left-60px%22%20style%3D%22padding-left%20%3A%2060px%3B%22%20style%3D%22padding-left%20%3A%2060px%3B%22%3E%26nbsp%3B%3C%2FDIV%3E%3CDIV%20class%3D%22lia-indent-padding-left-60px%22%20style%3D%22padding-left%20%3A%2060px%3B%22%20style%3D%22padding-left%20%3A%2060px%3B%22%3ECONFIG_USB_DEVICE_STACK_NEXT%3Dy%3C%2FDIV%3E%3CDIV%20class%3D%22lia-indent-padding-left-60px%22%20style%3D%22padding-left%20%3A%2060px%3B%22%20style%3D%22padding-left%20%3A%2060px%3B%22%3ECONFIG_USBD_LOOPBACK_CLASS%3Dy%3C%2FDIV%3E%3CDIV%20class%3D%22lia-indent-padding-left-60px%22%20style%3D%22padding-left%20%3A%2060px%3B%22%20style%3D%22padding-left%20%3A%2060px%3B%22%3E%26nbsp%3B%3C%2FDIV%3E%3CDIV%20class%3D%22lia-indent-padding-left-30px%22%20style%3D%22padding-left%20%3A%2030px%3B%22%20style%3D%22padding-left%20%3A%2030px%3B%22%3E2.%E3%83%A1%E3%82%A4%E3%83%B3.c%3C%2FDIV%3E%3CDIV%20class%3D%22lia-indent-padding-left-30px%22%20style%3D%22padding-left%20%3A%2030px%3B%22%20style%3D%22padding-left%20%3A%2030px%3B%22%3E%26nbsp%3B%3C%2FDIV%3E%3CPRE%20class%3D%22lia-code-sample%20language-c%22%3E%3CCODE%20translate%3D%22no%22%3E%23include%20%22sample_usbd.h%22%20%0A%2F*located%20on%20zephyrproject%2Fzephyr%2Fsamples%2Fsubsys%2Fusb%2Fcommon*%2F%0A%0A%23include%20%3CZEPHYR%3E%0A%23include%20%3CZEPHYR%3E%0A%0A%23include%20%3CZEPHYR%3E%0A%0ALOG_MODULE_REGISTER(app%2C%20LOG_LEVEL_DBG)%3B%0A%0Astatic%20void%20msg_cb(struct%20usbd_context%20*const%20usbd_ctx%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20const%20struct%20usbd_msg%20*const%20msg)%20%7B%0A%20%20LOG_INF(%22USBD%20message%3A%20%25s%22%2C%20usbd_msg_type_string(msg-%26gt%3Btype))%3B%0A%0A%20%20if%20(usbd_can_detect_vbus(usbd_ctx))%20%7B%0A%20%20%20%20if%20(msg-%26gt%3Btype%20%3D%3D%20USBD_MSG_VBUS_READY)%20%7B%0A%20%20%20%20%20%20if%20(usbd_enable(usbd_ctx))%20%7B%0A%20%20%20%20%20%20%20%20LOG_ERR(%22Failed%20to%20enable%20device%20support%22)%3B%0A%20%20%20%20%20%20%7D%0A%20%20%20%20%7D%0A%0A%20%20%20%20if%20(msg-%26gt%3Btype%20%3D%3D%20USBD_MSG_VBUS_REMOVED)%20%7B%0A%20%20%20%20%20%20if%20(usbd_disable(usbd_ctx))%20%7B%0A%20%20%20%20%20%20%20%20LOG_ERR(%22Failed%20to%20disable%20device%20support%22)%3B%0A%20%20%20%20%20%20%7D%0A%20%20%20%20%7D%0A%20%20%7D%0A%7D%0Aint%20main(void)%20%7B%0A%20%20struct%20usbd_context%20*sample_usbd%3B%0A%20%20int%20ret%3B%0A%0A%20%20sample_usbd%20%3D%20sample_usbd_init_device(msg_cb)%3B%0A%20%20if%20(sample_usbd%20%3D%3D%20NULL)%20%7B%0A%20%20%20%20k_msleep(100)%3B%0A%20%20%20%20return%200%3B%0A%20%20%7D%0A%0A%20%20if%20(!usbd_can_detect_vbus(sample_usbd))%20%7B%0A%20%20%20%20ret%20%3D%20usbd_enable(sample_usbd)%3B%0A%20%20%20%20%7B%0A%20%20%20%20%20%20if%20(ret)%20%7B%0A%20%20%20%20%20%20%20%20LOG_ERR(%22Failed%20to%20enable%20usb%20support%20!%22)%3B%0A%20%20%20%20%20%20%20%20return%20ret%3B%0A%20%20%20%20%20%20%7D%0A%20%20%20%20%7D%0A%20%20%7D%0A%20%20return%200%3B%0A%7D%3C%2FZEPHYR%3E%3C%2FZEPHYR%3E%3C%2FZEPHYR%3E%3C%2FCODE%3E%3C%2FPRE%3E%3CP%3E%E3%81%A9%E3%81%A1%E3%82%89%E3%81%AE%E5%A0%B4%E5%90%88%E3%82%82%E3%80%81%3CSTRONG%3E%3CERR%3E%20usbd_core%3A%20%E3%83%87%E3%83%90%E3%82%A4%E3%82%B9%E3%83%89%E3%83%A9%E3%82%A4%E3%83%90%E3%83%BC%E3%81%AE%E5%88%9D%E6%9C%9F%E5%8C%96%E3%81%AB%E5%A4%B1%E6%95%97%E3%81%97%E3%81%BE%E3%81%97%E3%81%9F%E3%80%82%20%3C%2FERR%3E%3C%2FSTRONG%3E%E3%82%82%E3%81%86%E5%B0%91%E3%81%97%E5%85%B7%E4%BD%93%E7%9A%84%E3%81%AB%E8%A8%80%E3%81%86%E3%81%A8%E3%80%81-12(-ENOMEM)%3C%2FP%3E%3CP%3E%E5%95%8F%E9%A1%8C%E3%82%92%E8%BF%BD%E8%B7%A1%E3%81%97%E3%81%9F%E5%BE%8C%E3%80%81%E3%82%A8%E3%83%A9%E3%83%BC%E3%82%92drivers%2Fusb%2Fudc%2Fudc_mcux_ehci.c%E3%81%AB%E3%81%82%E3%82%8Budc_mcux_init%EF%BC%88...)%E9%96%A2%E6%95%B0%E3%81%AB%E7%89%B9%E5%AE%9A%E3%81%97%E3%81%9F%E3%82%8A%E3%81%97%E3%81%BE%E3%81%99%3C%2FP%3E%3CP%3E%E3%81%95%E3%82%89%E3%81%AB%E7%B5%9E%E3%82%8A%E8%BE%BC%E3%82%80%E3%81%AB%E3%81%AF%3C%2FP%3E%3CPRE%20class%3D%22lia-code-sample%20language-c%22%3E%3CCODE%20translate%3D%22no%22%3E%20%20%20%20%20%20%20%20%2F*%20Init%20MCUX%20USB%20device%20driver.%20*%2F%0A%20%20%20%20%20%20%20%20status%20%3D%20mcux_if-%26gt%3BdeviceInit(priv-%26gt%3Bcontroller_id%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%26amp%3Bpriv-%26gt%3Bmcux_device%2C%20%26amp%3B(priv-%26gt%3Bmcux_device.controllerHandle))%3B%0A%20%20%20%20%20%20%20%20if%20(status%20!%3D%20kStatus_USB_Success)%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20return%20-ENOMEM%3B%0A%20%20%20%20%20%20%20%20%7D%3C%2FCODE%3E%3C%2FPRE%3E%3CBR%20%2F%3E%3CBR%20%2F%3E%3CBR%20%2F%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-2065718%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%E6%97%A5%E6%99%82%3AFRDM-RW612%20USB_DEVICE_STACK_NEXT%E3%82%B5%E3%83%9D%E3%83%BC%E3%83%88%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2065718%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3EHi%2C%3C%2FP%3E%0A%3CP%3E%E3%81%A9%E3%81%AE%E3%82%88%E3%81%86%E3%81%AA%E4%BE%8B%E3%82%92%E3%83%86%E3%82%B9%E3%83%88%E3%81%97%E3%81%A6%E3%81%84%E3%81%BE%E3%81%99%E3%81%8B%3F%3C%2FP%3E%0A%3CP%3E%E5%86%8D%E7%8F%BE%E6%89%8B%E9%A0%86%E3%82%92%E6%95%99%E3%81%88%E3%81%A6%E3%81%84%E3%81%9F%E3%81%A0%E3%81%91%E3%81%BE%E3%81%99%E3%81%8B%3F%3C%2FP%3E%0A%3CP%3E%E3%82%88%E3%82%8D%E3%81%97%E3%81%8F%E3%81%8A%E9%A1%98%E3%81%84%E3%81%97%E3%81%BE%E3%81%99%E3%80%82%3C%2FP%3E%0A%3CP%3EDaniel.%3C%2FP%3E%3C%2FLINGO-BODY%3E