A new SD card image which works on the Raspberry Pi 5 (and earlier models) is now available from http://9p.io/sources/contrib/miller/9pi.img.gz or /n/sources/contrib/miller/9pi.img.gz
Alternatively, to add a Pi 5 kernel to an existing SD card (9pi or 9legacy), or to your pxe directory if you're netbooting, there's one available in /n/sources/contrib/miller/9pi5 - you don't need a 9pi5cpu, just set 'service=cpu' in cmdline.txt and it will boot as a cpu server instead of a terminal. You will also need new firmware files bcm2712-rpi-5-b.dtb overlays/vc4-kms-v3d-pi5.dtbo which you can find in https://github.com/raspberrypi/firmware/raw/stable/boot or copy from a Raspberry Pi OS SD card. You will also need to add this stanza to config.txt: [pi5] kernel=9pi5 arm_boost=1 enable_uart=1 enable_rp1_uart=1 pciex4_reset=0 dtoverlay=vc4-kms-v3d-pi5 Because the cortex-a76 cores on the Pi 5 force aarch64 instruction mode while in kernel state, the 9pi5 kernel has to be 64-bit; but it will execute both 32-bit and 64-bit user processes. I've tested the 32-bit case with my usual benchmark (the plan9-arm go test suite), which runs about twice as fast on the pi5 as on the pi4. The 64-bit case hasn't been tested so much ... problem reports are welcome. I've also submitted 9legacy patches and a new 9legacy-rpi SD card image with pi5 support, so those should be available soon for people who prefer something more modern than 4th edition. A few loose ends remain: soft reboot from a named file isn't supported yet; nor is the NVME drive; /dev/gpio needs updating because the pi5 has multiple sets of gpios connected to the main cpu and the RP1 i/o chip; the cpu fan doesn't spin; and HDMI resolution can't be controlled and is fixed to one of the auto-detected (with luck) set of 1920x1080, 1280x720, or 640x480. The last two of the above are because fan control and HDMI initialisation have been removed from the GPU firmware interface, which could easily be accessed by bare-metal programs (eg non-linux operating systems). Now the assumption seems to be that everyone runs linux, or is willing to reverse-engineer linux code. If some noble volunteer would like to hold their nose and do some research into how those two things can be done, it would be very helpful. ------------------------------------------ 9fans: 9fans Permalink: https://9fans.topicbox.com/groups/9fans/T7db02c9c4602d6f1-Mec43f57d4d6bdde3d3ebbfc3 Delivery options: https://9fans.topicbox.com/groups/9fans/subscription
