RT1170 USB CDC stuck in kStatus_USB_Busy even when breakpoint is placed in non-executing code

取消
显示结果 
显示  仅  | 搜索替代 
您的意思是: 

RT1170 USB CDC stuck in kStatus_USB_Busy even when breakpoint is placed in non-executing code

615 次查看
Harisha
Contributor I

Hi,

I am working on i.MX RT1170 (M7 core) with:

SDK version 25.09

FreeRTOS

USB CDC (Virtual COM)

CAN-FD running in parallel

Initialization is correct.
USB enumeration completes successfully.
CAN-FD and USB communication both work properly during normal execution.

System behavior under normal conditions:

CAN-FD receives data correctly

USB CDC sends data to PC (Tera Term) successfully

USB_DeviceCdcAcmSend() works as expected

USB callback executes and busy flag clears properly

Issue:

If I place a breakpoint anywhere in the project — even in code that is not currently executing (for example in main() after initialization or in some unrelated function) — the system continues running, but USB CDC eventually gets stuck.

Important observations:

The breakpoint is NOT being hit.

Code continues running normally.

FreeRTOS tasks continue executing.

CAN-FD continues working correctly.

Only USB CDC stops functioning.

After this happens:

USB_DeviceCdcAcmSend() returns kStatus_USB_Busy

USB transfer callback is not called

Busy flag never clears

USB communication stops permanently until board reset

Even using printf() during runtime can sometimes trigger similar behavior.

Configuration:

#define configLIBRARY_MAX_SYSCALL_INTERRUPT_PRIORITY 2
#define USB_DEVICE_INTERRUPT_PRIORITY (6U)

USB task stack size:

#define APP_TASK_STACK_SIZE 8000L

Stack overflow is not observed.
System does not crash.
Only USB CDC communication becomes stuck.

Questions:

Why does USB CDC get stuck even when the breakpoint is placed in non-executing code?

Does the debugger momentarily halt the M7 core in a way that affects USB HS timing?

Can delayed servicing of USB interrupts cause the CDC driver to remain in kStatus_USB_Busy permanently?

Is this expected behavior of the USB HS controller (EHCI) when the CPU is halted?

What is the recommended way to debug USB CDC on RT1170 without causing transfer corruption?

Any guidance would be greatly appreciated.

Thank you.

标签 (1)
0 项奖励
回复
1 回复

520 次查看
mayliu1
NXP Employee
NXP Employee

Hi @Harisha 

Thank you so much for your interest in our products and for using our community.

Regarding your issue, I recommend trying the following adjustments:

1:Set the USB interrupt priority to the highest priority that FreeRTOS can manage to ensure that USB receives timely interrupt service.

2:Lower the interrupt priorities of other modules (such as CAN-FD in your application) so they do not stop USB processing.

Please try these changes and test again.

 
Best Regards
mayLiu
 
0 项奖励
回复
%3CLINGO-SUB%20id%3D%22lingo-sub-2322326%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%E5%8D%B3%E4%BD%BF%E5%9C%A8%E9%9D%9E%E6%89%A7%E8%A1%8C%E4%BB%A3%E7%A0%81%E4%B8%AD%E6%94%BE%E7%BD%AE%E6%96%AD%E7%82%B9%EF%BC%8CRT1170%20USB%20CDC%20%E4%B9%9F%E4%BC%9A%E5%8D%A1%E5%9C%A8%20kStatus_USB_Busy%20%E4%B8%AD%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2322326%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3E%E6%82%A8%E5%A5%BD%EF%BC%8C%3C%2FP%3E%3CP%3E%E6%88%91%E6%AD%A3%E5%9C%A8%E4%BD%BF%E7%94%A8%20i.MX%20RT1170%EF%BC%88M7%20%E5%86%85%E6%A0%B8%EF%BC%89%EF%BC%9A%3C%2FP%3E%3CP%3ESDK%20%E7%89%88%E6%9C%AC%2025.09%3C%2FP%3E%3CP%3EFreeRTOS%3C%2FP%3E%3CP%3EUSB%20CDC%EF%BC%88%E8%99%9A%E6%8B%9F%20COM%EF%BC%89%3C%2FP%3E%3CP%3E%E5%B9%B6%E8%A1%8C%E8%BF%90%E8%A1%8C%E7%9A%84%20CAN-FD%3C%2FP%3E%3CP%3E%E5%88%9D%E5%A7%8B%E5%8C%96%E6%AD%A3%E7%A1%AE%E3%80%82%3CBR%20%2F%3EUSB%20%E6%9E%9A%E4%B8%BE%E6%88%90%E5%8A%9F%E5%AE%8C%E6%88%90%E3%80%82%3CBR%20%2F%3ECAN-FD%20%E5%92%8C%20USB%20%E9%80%9A%E4%BF%A1%E5%9C%A8%E6%AD%A3%E5%B8%B8%E6%89%A7%E8%A1%8C%E6%97%B6%E9%83%BD%E8%83%BD%E6%AD%A3%E5%B8%B8%E5%B7%A5%E4%BD%9C%E3%80%82%3C%2FP%3E%3CP%3E%E6%AD%A3%E5%B8%B8%E6%83%85%E5%86%B5%E4%B8%8B%E7%9A%84%E7%B3%BB%E7%BB%9F%E8%A1%8C%E4%B8%BA%EF%BC%9A%3C%2FP%3E%3CP%3ECAN-FD%20%E6%AD%A3%E7%A1%AE%E6%8E%A5%E6%94%B6%E6%95%B0%E6%8D%AE%3C%2FP%3E%3CP%3EUSB%20CDC%20%E6%88%90%E5%8A%9F%E5%90%91%20PC%20%E5%8F%91%E9%80%81%E6%95%B0%E6%8D%AE%EF%BC%88Tera%20Term%EF%BC%89%3C%2FP%3E%3CP%3EUSB_DeviceCdcAcmSend()%20%E6%8C%89%E9%A2%84%E6%9C%9F%E5%B7%A5%E4%BD%9C%3C%2FP%3E%3CP%3EUSB%20%E5%9B%9E%E8%B0%83%E6%89%A7%E8%A1%8C%EF%BC%8C%E5%BF%99%E6%A0%87%E5%BF%97%E6%AD%A3%E7%A1%AE%E6%B8%85%E9%99%A4%3C%2FP%3E%3CP%3E%E9%97%AE%E9%A2%98%EF%BC%9A%3C%2FP%3E%3CP%3E%E5%A6%82%E6%9E%9C%E6%88%91%E5%9C%A8%E9%A1%B9%E7%9B%AE%E4%B8%AD%E7%9A%84%E4%BB%BB%E4%BD%95%E5%9C%B0%E6%96%B9%E8%AE%BE%E7%BD%AE%E6%96%AD%E7%82%B9%EF%BC%8C%E5%8D%B3%E4%BD%BF%E6%98%AF%E5%9C%A8%E5%BD%93%E5%89%8D%E6%B2%A1%E6%9C%89%E6%89%A7%E8%A1%8C%E7%9A%84%E4%BB%A3%E7%A0%81%E4%B8%AD%EF%BC%88%E4%BE%8B%E5%A6%82%E5%88%9D%E5%A7%8B%E5%8C%96%E5%90%8E%E7%9A%84%20main()%20%E4%BB%A3%E7%A0%81%E6%88%96%E4%B8%80%E4%BA%9B%E6%97%A0%E5%85%B3%E7%9A%84%E5%87%BD%E6%95%B0%EF%BC%89%EF%BC%8C%E7%B3%BB%E7%BB%9F%E4%B9%9F%E4%BC%9A%E7%BB%A7%E7%BB%AD%E8%BF%90%E8%A1%8C%EF%BC%8C%E4%BD%86%20USB%20CDC%20%E6%9C%80%E7%BB%88%E4%BC%9A%E5%8D%A1%E4%BD%8F%E3%80%82%3C%2FP%3E%3CP%3E%E9%87%8D%E8%A6%81%E6%84%8F%E8%A7%81%EF%BC%9A%3C%2FP%3E%3CP%3E%E6%96%AD%E7%82%B9%E6%9C%AA%E8%A2%AB%E5%87%BB%E4%B8%AD%E3%80%82%3C%2FP%3E%3CP%3E%E4%BB%A3%E7%A0%81%E7%BB%A7%E7%BB%AD%E6%AD%A3%E5%B8%B8%E8%BF%90%E8%A1%8C%E3%80%82%3C%2FP%3E%3CP%3EFreeRTOS%20%E4%BB%BB%E5%8A%A1%E7%BB%A7%E7%BB%AD%E6%89%A7%E8%A1%8C%E3%80%82%3C%2FP%3E%3CP%3ECAN-FD%20%E7%BB%A7%E7%BB%AD%E6%AD%A3%E5%B8%B8%E5%B7%A5%E4%BD%9C%E3%80%82%3C%2FP%3E%3CP%3E%E5%8F%AA%E6%9C%89%20USB%20CDC%20%E5%81%9C%E6%AD%A2%E5%B7%A5%E4%BD%9C%E3%80%82%3C%2FP%3E%3CP%3E%E5%9C%A8%E8%BF%99%E4%B9%8B%E5%90%8E%3C%2FP%3E%3CP%3EUSB_DeviceCdcAcmSend()%20%E8%BF%94%E5%9B%9E%20kStatus_USB_Busy%3C%2FP%3E%3CP%3EUSB%20%E4%BC%A0%E8%BE%93%E5%9B%9E%E8%B0%83%E6%9C%AA%E8%A2%AB%E8%B0%83%E7%94%A8%3C%2FP%3E%3CP%3E%E5%BF%99%E6%A0%87%E5%BF%97%E4%BB%8E%E6%9C%AA%E6%B8%85%E9%99%A4%3C%2FP%3E%3CP%3EUSB%20%E9%80%9A%E4%BF%A1%E5%B0%86%E6%B0%B8%E4%B9%85%E5%81%9C%E6%AD%A2%EF%BC%8C%E7%9B%B4%E5%88%B0%E6%9D%BF%20RESET%3C%2FP%3E%3CP%3E%E5%8D%B3%E4%BD%BF%E5%9C%A8%E8%BF%90%E8%A1%8C%E6%97%B6%E4%BD%BF%E7%94%A8%20printf%20()%20%E6%9C%89%E6%97%B6%E4%B9%9F%E4%BC%9A%E8%A7%A6%E5%8F%91%E7%B1%BB%E4%BC%BC%E7%9A%84%E8%A1%8C%E4%B8%BA%E3%80%82%3C%2FP%3E%3CP%3E%E9%85%8D%E7%BD%AE%EF%BC%9A%3C%2FP%3E%3CP%3E%23define%20configLIBRARY_MAX_SYSCALL_INTERRUPT_PRIORITY%202%3CBR%20%2F%3E%23define%20USB_DEVICE_INTERRUPT_PRIORITY%20(6U)%3C%2FP%3E%3CP%3EUSB%20%E4%BB%BB%E5%8A%A1%E5%A0%86%E6%A0%88%E5%A4%A7%E5%B0%8F%EF%BC%9A%3C%2FP%3E%3CP%3E%23define%20APP_TASK_STACK_SIZE%208000L%3C%2FP%3E%3CP%3E%E6%9C%AA%E5%8F%91%E7%8E%B0%E5%A0%86%E6%A0%88%E6%BA%A2%E5%87%BA%E3%80%82%3CBR%20%2F%3E%E7%B3%BB%E7%BB%9F%E4%B8%8D%E4%BC%9A%E5%B4%A9%E6%BA%83%E3%80%82%3CBR%20%2F%3E%E5%8F%AA%E6%9C%89%20USB%20CDC%20%E9%80%9A%E4%BF%A1%E4%BC%9A%E5%8D%A1%E4%BD%8F%E3%80%82%3C%2FP%3E%3CP%3E%E9%97%AE%E9%A2%98%3C%2FP%3E%3CP%3E%E4%B8%BA%E4%BB%80%E4%B9%88%20USB%20CDC%20%E5%8D%B3%E4%BD%BF%E5%B0%86%E6%96%AD%E7%82%B9%E6%94%BE%E5%9C%A8%E9%9D%9E%E6%89%A7%E8%A1%8C%E4%BB%A3%E7%A0%81%E4%B8%AD%E4%B9%9F%E4%BC%9A%E5%8D%A1%E4%BD%8F%EF%BC%9F%3C%2FP%3E%3CP%3E%E8%B0%83%E8%AF%95%E5%99%A8%E6%98%AF%E5%90%A6%E4%BC%9A%E4%BB%A5%E5%BD%B1%E5%93%8D%20USB%20HS%20%E6%97%B6%E5%BA%8F%E7%9A%84%E6%96%B9%E5%BC%8F%E7%9E%AC%E9%97%B4%E5%81%9C%E6%AD%A2%20M7%20%E5%86%85%E6%A0%B8%EF%BC%9F%3C%2FP%3E%3CP%3EUSB%20%E4%B8%AD%E6%96%AD%E6%9C%8D%E5%8A%A1%E5%BB%B6%E8%BF%9F%E6%98%AF%E5%90%A6%E4%BC%9A%E5%AF%BC%E8%87%B4%20CDC%20%E9%A9%B1%E5%8A%A8%E7%A8%8B%E5%BA%8F%E6%B0%B8%E4%B9%85%E5%A4%84%E4%BA%8E%20kStatus_USB_Busy%EF%BC%9F%3C%2FP%3E%3CP%3E%E5%BD%93%20CPU%20%E5%81%9C%E6%AD%A2%E8%BF%90%E8%A1%8C%E6%97%B6%EF%BC%8CUSB%20HS%20%E6%8E%A7%E5%88%B6%E5%99%A8%20(EHCI)%20%E6%98%AF%E5%90%A6%E4%BC%9A%E5%87%BA%E7%8E%B0%E8%BF%99%E7%A7%8D%E9%A2%84%E6%9C%9F%E8%A1%8C%E4%B8%BA%EF%BC%9F%3C%2FP%3E%3CP%3E%E5%9C%A8%20RT1170%20%E4%B8%8A%E8%B0%83%E8%AF%95%20USB%20CDC%20%E8%80%8C%E4%B8%8D%E4%BC%9A%E5%AF%BC%E8%87%B4%E4%BC%A0%E8%BE%93%E6%8D%9F%E5%9D%8F%E7%9A%84%E6%8E%A8%E8%8D%90%E6%96%B9%E6%B3%95%E6%98%AF%E4%BB%80%E4%B9%88%EF%BC%9F%3C%2FP%3E%3CP%3E%E5%A6%82%E8%83%BD%E5%BE%97%E5%88%B0%E4%BB%BB%E4%BD%95%E6%8C%87%E5%AF%BC%EF%BC%8C%E5%B0%86%E4%B8%8D%E8%83%9C%E6%84%9F%E6%BF%80%E3%80%82%3C%2FP%3E%3CP%3E%E8%B0%A2%E8%B0%A2%EF%BC%81%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-LABS%20id%3D%22lingo-labs-2322326%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CLINGO-LABEL%3EUSB%3C%2FLINGO-LABEL%3E%3C%2FLINGO-LABS%3E%3CLINGO-SUB%20id%3D%22lingo-sub-2326706%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%20translate%3D%22no%22%3ERe%3A%20RT1170%20USB%20CDC%20stuck%20in%20kStatus_USB_Busy%20even%20when%20breakpoint%20is%20placed%20in%20non-executing%20code%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2326706%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3E%E4%BD%A0%E5%A5%BD%3CA%20href%3D%22https%3A%2F%2Fcommunity.nxp.com%2Ft5%2Fuser%2Fviewprofilepage%2Fuser-id%2F253824%22%20target%3D%22_blank%22%3E%40Harisha%3C%2FA%3E%3C%2FP%3E%0A%3CP%3E%E9%9D%9E%E5%B8%B8%E6%84%9F%E8%B0%A2%E6%82%A8%E5%85%B3%E6%B3%A8%E6%88%91%E4%BB%AC%E7%9A%84%E4%BA%A7%E5%93%81%E5%B9%B6%E4%BD%BF%E7%94%A8%E6%88%91%E4%BB%AC%E7%9A%84%E7%A4%BE%E5%8C%BA%E3%80%82%3C%2FP%3E%0A%3CDIV%3E%0A%3CDIV%3E%0A%3CP%3E%E5%85%B3%E4%BA%8E%E6%82%A8%E7%9A%84%E9%97%AE%E9%A2%98%EF%BC%8C%E6%88%91%E5%BB%BA%E8%AE%AE%E5%B0%9D%E8%AF%95%E4%BB%A5%E4%B8%8B%E8%B0%83%E6%95%B4%EF%BC%9A%3C%2FP%3E%0A%3CP%3E1%EF%BC%9A%E5%B0%86%20USB%20%E4%B8%AD%E6%96%AD%E4%BC%98%E5%85%88%E7%BA%A7%E8%AE%BE%E7%BD%AE%E4%B8%BA%20FreeRTOS%20%E5%8F%AF%E4%BB%A5%E7%AE%A1%E7%90%86%E7%9A%84%E6%9C%80%E9%AB%98%E4%BC%98%E5%85%88%E7%BA%A7%EF%BC%8C%E4%BB%A5%E7%A1%AE%E4%BF%9D%20USB%20%E5%8F%8A%E6%97%B6%E8%8E%B7%E5%BE%97%E4%B8%AD%E6%96%AD%E6%9C%8D%E5%8A%A1%E3%80%82%3C%2FP%3E%0A%3CP%3E2%EF%BC%9A%E9%99%8D%E4%BD%8E%E5%85%B6%E4%BB%96%E6%A8%A1%E5%9D%97%EF%BC%88%E5%A6%82%E5%BA%94%E7%94%A8%E4%B8%AD%E7%9A%84%20CAN-FD%EF%BC%89%E7%9A%84%E4%B8%AD%E6%96%AD%E4%BC%98%E5%85%88%E7%BA%A7%EF%BC%8C%E4%BD%BF%E5%85%B6%E4%B8%8D%E4%BC%9A%E5%81%9C%E6%AD%A2%20USB%20%E5%A4%84%E7%90%86%E3%80%82%3C%2FP%3E%0A%3CP%3E%E8%AF%B7%E5%B0%9D%E8%AF%95%E8%BF%99%E4%BA%9B%E6%9B%B4%E6%94%B9%E5%B9%B6%E5%86%8D%E6%AC%A1%E6%B5%8B%E8%AF%95%E3%80%82%3C%2FP%3E%0A%3C%2FDIV%3E%0A%3C%2FDIV%3E%0A%3CDIV%3E%0A%3CDIV%3E%26nbsp%3B%3C%2FDIV%3E%0A%3CDIV%3E%E9%A1%BA%E7%A5%9D%E5%95%86%E7%A5%BA%EF%BC%81%3C%2FDIV%3E%0A%3CDIV%3EmayLiu%3C%2FDIV%3E%0A%3CDIV%3E%26nbsp%3B%3C%2FDIV%3E%0A%3C%2FDIV%3E%3C%2FLINGO-BODY%3E