1拖4路PCIe Gen 2 ×1扩展卡,用于扩展PCIe接口,且支持CM4
测试与支持列表:点这里
树莓派OS默认支持设备有限,如果需要添加自己的设备,需要重新编译内核
可以参考:点这里
编译内核需要一个Ubuntu系统
以下测试使用:Ubuntu-20.04.2.0-desktop-amd64 :
在Ubuntu上操作:
- #安装依赖
- sudo apt install git bc bison flex libssl-dev make libc6-dev libncurses5-dev
- #安装编译工具
- sudo apt install neovim
- wget https://releases.linaro.org/components/toolchain/binaries/7.5-2019.12/aarch64-linux-gnu/gcc-linaro-7.5.0-2019.12-x86_64_aarch64-linux-gnu.tar.xz
- nvim ~/.bashrc
- 在 .bashrc 后面加上:export PATH=$PATH:~/gcc-linaro/bin
- source ~/.bashrc
- #刷新环境变量
- #克隆 linux repo(或克隆一个 fork 或不同的分支):
- git clone --depth=1 https://github.com/raspberrypi/linux
- #或者自行下载,任何复制进去
- #运行以下命令来制作 .config 文件:.
- cd linux
- make ARCH=arm64 CROSS_COMPILE=aarch64-linux-gnu- bcm2711_defconfig
- #生成 .config 文件:
- make ARCH=arm64 CROSS_COMPILE=aarch64-linux-gnu- menuconfig
- #配置.config 文件,这里添加你想要添加的内核驱动
- make -j8 ARCH=arm64 CROSS_COMPILE=aarch64-linux-gnu- Image modules dtbs
- #编译内核。需要等待比较长时间
在树莓派上操作:
- sudo su
- passwd
- #设置密码
- sudo nano /etc/ssh/sshd_config
- #将 PermitRootLogin prohibit-password 改为
- #PermitRootLogin yes
- sudo reboot
在Ubuntu上操作:
- sudo sshfs root@192.168.x.x:/ /mnt/pi-ext4
- sudo sshfs root@192.168.x.x:/boot /mnt/pi-fat32
- #192.168.x.x是树莓派的IP
- sudo env PATH=$PATH make ARCH=arm64 CROSS_COMPILE=aarch64-linux-gnu- INSTALL_MOD_PATH=/mnt/pi-ext4 modules_install
- sudo cp arch/arm64/boot/Image /mnt/pi-fat32/kernel8.img
- sudo cp arch/arm64/boot/dts/broadcom/*.dtb /mnt/pi-fat32/
- sudo cp arch/arm64/boot/dts/overlays/*.dtb* /mnt/pi-fat32/overlays/
- sudo cp arch/arm64/boot/dts/overlays/README /mnt/pi-fat32/overlays/
- sudo apt install make
如果多次链接一个IP然后系统更换了,出现read: Connection reset by peer 错误:
删除ssh公钥认证即可
- ssh-keygen -f "/root/.ssh/known_hosts" -R 192.168.x.x
- #192.168.x.x是树莓派的IP