CM4MB+RockCM3構成でDebian11をインストールしたら、次の設定を行ってPCIe接続ができます。
SSH接続
CM4MBにLANケーブルを接続後、TeraTerm等のターミナルでSSH接続ができます。TCPポート#22です。ホスト名:radxa-cm3-io、デフォルトではID、PWともに rock です。
CM4MB.CN18(UART)にUSBシリアル変換ケーブルを接続し電源投入すると、ifconfigコマンドでボードのIPアドレスを確認できます。
baudrate: 1500000
data bit: 8
stop bit: 1
parity : none
flow control: none
設定の変更
以下の通り、RockCM3用のカーネルパッケージをインストールします。
sudo apt-get update
sudo apt-get install -y rockchip-overlay
sudo apt-get install -y linux-4.19-rock-3-latest
PCIeドライバを実装するためにmakeコマンドを実行できる環境を構築します。
sudo apt-get install build-essential
次に、以下のコマンドを実行し、RockCM3がCM4MBに適用するように設定します。
cd /boot/dtbs/$(uname -r)/rockchip/
sudo mv rk3566-radxa-cm3-io.dtb rk3566-radxa-cm3-io.dtb.bak
sudo cp rk3566-radxa-cm3-rpi-cm4-io.dtb rk3566-radxa-cm3-io.dtb
sudo reboot
PCIeを有効化するためにconfig.txtファイルを編集します。
sudo nano /boot/config.txt
ファイルに以下を追加
dtoverlay=radxa-cm3-io-pcie2x1
保存したら、以下のコマンドを実行。
sudo update_extlinux.sh
PCIeを認識させるために、RockCM3を再起動します。
再起動後、lspcieコマンドを実行すると以下の様にPCIeを認識します。
rock@radxa-cm3-io:~$ lspci 00:00.0 PCI bridge: Fuzhou Rockchip Electronics Co., Ltd Device 3566 (rev 01) 01:00.0 Serial controller: Xilinx Corporation Device 7021
SPI機能の有効化
/boot/uEnv.txtが無く、/boot/extlinux/extlinux.confが有る場合には、以下に示す記述方法に従ってSPIを有効化します。
Rock3/extlinux – Radxa Wiki
sudo nano /boot/extlinux/extlinux.conf
fdtoverlays のラインに以下を追加します。(参考ページ)
/dtbs/4.19.193-58-rockchip-gbac1feba87f0/rockchip/overlay/rk3568-spi3-m0-cs0-spidev.dtbo
※4.19.193-58-rockchip-gbac1feba87f0 は異なる場合があります。ファイル内の既述のフォルダ名に一致させてください。
リブート後、以下のコマンドでSPIが有効になったことを確認できます。
ls /dev/spi*
/dev/spidev3.0