跳到主要内容

USB 和 PCIe

USB

Neardi Pi 3 提供:

  • 3 路 Type-A USB 3.0 Host
  • 1 路全功能 Type-C USB
  • 1 路 Type-C USB Debug

全功能 Type-C 的配置在:

rk3576-neardi-lb200-full-typec-phy.dtsi

该 DTS 会配置 Type-C CC、USB role switch、USB/DP PHY 和 DP Alt Mode。

三个 Type-A USB 口支持 USB 3.0 和 USB 2.0 设备。插入 USB 设备后,可以用下面命令查看:

lsusb
dmesg | tail -n 50

全功能 Type-C

全功能 Type-C 口通过 USB3/DP combo PHY 同时支持 USB 3.0 OTG 和 DP Alt Mode。

实际使用时,可以接 Type-C Hub 或转接器,在同一个 Type-C 口上使用 USB 设备和显示输出。部分 Ubuntu 镜像下 Type-C 热插拔支持不完整,如果热插拔后设备没有识别,可以先接好 Type-C 设备再重启板卡。

PCIe

Neardi Pi 3 提供:

  • Mini PCIe,可接 4G/5G 模块
  • M.2 M-Key PCIe 2.0 x1,可接 NVMe 2242 SSD

PCIe 和 LTE 供电控制在:

rk3576-neardi-lb200-misc-devices.dtsi

NVMe 相关配置也可以参考:

rk3576-neardi-lb200-linux-nvme.dts

M.2 插槽支持 NVMe SSD。该接口在 RK3576 上为 PCIe 2.1 x1。

PCIe / M.2 局部参考图:

Neardi Pi 3 PCIe M.2 局部原理图

查看 PCIe 和 NVMe 识别情况:

lspci
lspci -vvv
lsblk

SPI Flash

Neardi Pi 3 板载 64Mbit SPI NOR Flash,用于启动前级引导。Linux 下可以通过 MTD 接口查看:

cat /proc/mtd

如果系统中没有 MTD 工具,可以安装:

sudo apt install mtd-utils

常用测试命令:

# 擦除 SPI Flash
sudo flash_eraseall /dev/mtd0

# 写入镜像或二进制数据
sudo flashcp xxx /dev/mtd0

# 读取数据
sudo dd if=/dev/mtdblock0 of=xxx

操作 SPI Flash 要谨慎,它可能包含启动相关数据。量产系统中不要随意擦除或覆盖,除非你确认当前操作目的。