RK3568 USB调试记录

1、环境介绍

硬件:飞凌ok3568-c开发板

软件:原厂rk356x sdk

2、RK3568 USB资源介绍

从上图可以得出,RK3568拥有:

  • 2个USB2.0 Host Controller
  • 1个USB3.0 Host Controller
  • 1个USB3.0 OTG Controller

下图是RK3568 USB控制器和PHY连接示意图:

小结:

上图中,可以看到USB3.0 OTG Controller是可以配置成USB3.0 OTG或USB2.0 OTG。USB3.0 Host Controller是可以配置成USB2.0 Host或USB3.0 Host。

3、配置目标

OK3568-C开发板使用了两个USB2.0 Host:

和一个USB3.0 OTG,通过一个开关控制ID脚来切换USB Host和USB Device:

4、dts配置

4.1、USB3.0 OTG

下面是将USB3.0 OTG Controller配置为USB3.0 OTG的dts配置,如需配置为USB2.0 OTG,参考《Rockchip_RK356x_Developer_Guide_USB_CN.pdf》

/* PHY配置 */
/* USB3/SATA Combo PHY_0 */
&combphy0_us {
    status = "okay";
};

/* Controller配置 */
/* USB3.0 OTG Controller */
&usbdrd30 {
    status = "okay";
};
&usbdrd_dwc3 {
    dr_mode = "otg";
    status = "okay";
};

4.2、USB2.0 Host 2 和 USB2.0 Host 3

/* PHY配置 */
/* USB2.0 Comb PHY_1 */
&usb2phy1 {
    status = "okay";
};
&u2phy1_host {
	status = "okay";
};

/* Controller配置 */
/* USB2.0_Host_2_Controller */
&usb_host0_ehci {
    status = "okay";
};
&usb_host0_ohci {
    status = "okay";
};
/* USB2.0_Host_3_Controller */
&usb_host1_ehci {
    status = "okay";
};
&usb_host1_ohci {
    status = "okay";
};

5、kernel配置

5.1、USB PHY CONFIG

CONFIG_PHY_ROCKCHIP_INNO_USB2=y
CONFIG_PHY_ROCKCHIP_TYPEC=y
CONFIG_PHY_ROCKCHIP_INNO_USB3=y

5.2、USB Host CONFIG

CONFIG_USB_XHCI_HCD=y
CONFIG_USB_EHCI_HCD=y
CONFIG_USB_OHCI_HCD=y

5.3、USB OTG CONFIG

CONFIG_USB_DWC2=y
CONFIG_USB_DWC3=y

5.4、USB外设CONFIG

这里只列举了两个USB外设的配置,大容量存储设备和USB键鼠设备。

5.4.1、Mass Storage Class CONFIG

5.4.2、USB HID CONFIG

USB键鼠配置:

6、测试

目前将开发板的USB3.0 OTG开关切换到USB Host。开机上电,查看内核启动Log:

USB2.0 Host插入U盘Log:

USB3.0 Host插入U盘也是一样的。

当开发板USB3.0 OTG开关切换到USB device模式时,执行如下命令查看是否切换到了USB device:

root@rk3568-buildroot:/# cat /sys/kernel/debug/usb/fcc00000.dwc3/mode
device

7、总结

嵌入式Linux学习交流群:424571391
参考文章:

RK3568 USB功能配置

rk3568 适配USB_—rk3568----CSDN专栏

### RK3566 芯片平台摄像头调试方法 对于RK3566芯片平台上摄像头的调试,主要关注点在于确保硬件连接无误以及软件配置正确。具体来说: #### 1. 硬件检查 确认摄像头模块与主板之间的物理连接稳固可靠,包括但不限于电源线、数据线等接口接触良好。 #### 2. 驱动安装验证 确保已经成功安装了适用于该型号摄像头的驱动程序,并且操作系统能够识别到设备的存在。可以通过命令行工具`dmesg | grep usb`来查看USB设备的日志信息[^1]。 #### 3. 使用V4L2测试工具 Linux环境下可以利用Video4Linux2 (V4L2) 用户空间API来进行基本的功能检测。例如,通过运行如下Python脚本获取并显示视频流帧率情况: ```python import cv2 cap = cv2.VideoCapture(0) while True: ret, frame = cap.read() if not ret: print("Failed to grab frame") break fps = int(cap.get(cv2.CAP_PROP_FPS)) print(f'FPS: {fps}') cv2.imshow('Frame', frame) k = cv2.waitKey(1) if k%256 == 27: # ESC pressed print("Escape hit, closing...") break cap.release() cv2.destroyAllWindows() ``` 此段代码会打开默认摄像机(索引为0),读取每一帧图像的同时打印出当前帧速率,在按下ESC键时退出循环关闭窗口。 #### 4. 日志分析 当遇到问题无法正常工作时,收集内核启动过程中的日志记录有助于定位故障原因。通常情况下,这些日志可以在 `/var/log/syslog` 或者使用 `journalctl -k` 命令获得。特别注意那些标记有错误级别(Error level)的消息条目。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值