Raspberry pi 5 status

PD: I didn't post the results for `openssl speed` as it seems it wasn't compiled with those extensions and I don't even know if it supports them. Maybe when I have time I'll figure out.
 
openssl speed -elapsed -evp aes-256-cbc
this should use hw accel with default package on freebsd and linux
Code:
type             16 bytes     64 bytes    256 bytes   1024 bytes   8192 bytes  16384 bytes
a55@2.1     aes-256-cbc     174558.93k   456667.71k   764271.62k   919834.62k   977731.58k   982144.34k
rpi4@1.8    aes-256-cbc      33608.78k    35309.12k    35981.14k    36135.59k    36203.18k    36203.18k
rk3566@1.6  aes-256-cbc     142233.28k   365520.18k   603167.13k   719767.55k   761723.25k   767933.08k

The 'numbers' are in 1000s of bytes per second processed.

first 2 run some version of linux (first is aml905x3)
last runs freebsd 14 openssl 1.1 package
most run of the mill a53+ (even a35) socks support crypto accel, rpi4 is the outlier
 
openssl speed -elapsed -evp aes-256-cbc
this should use hw accel with default package on freebsd and linux

I'm not so sure about openssl because of this bug:


This is what I get with `gnutls-cli --benchmark-ciphers` on Pi 4b vs Pi5:

Code:
Checking AEAD ciphers, payload size: 16384
             AES-128-GCM 33.84 MB/sec
             AES-128-CCM 42.23 MB/sec
       CHACHA20-POLY1305 0.22 GB/sec


Checking cipher-MAC combinations, payload size: 16384
        SALSA20-256-SHA1 116.62 MB/sec
        AES-128-CBC-SHA1 57.49 MB/sec
        AES-128-CBC-SHA256 52.40 MB/sec
GOST28147-TC26Z-CNT-GOST28147-TC26Z-IMIT 22.61 MB/sec


Checking MAC algorithms, payload size: 16384
            SHA1 0.20 GB/sec
          SHA256 150.58 MB/sec
          SHA512 0.23 GB/sec
GOST28147-TC26Z-IMIT 69.98 MB/sec
     GOSTR341194 29.06 MB/sec
    STREEBOG-512 37.06 MB/sec


Checking ciphers, payload size: 16384
                3DES-CBC 11.77 MB/sec
             AES-128-CBC 79.27 MB/sec
             AES-128-XTS 73.59 MB/sec
             AES-256-XTS 56.38 MB/sec
             SALSA20-256 0.26 GB/sec
                    NULL 8.36 GB/sec
     GOST28147-TC26Z-CNT 33.42 MB/sec

Code:
Checking AEAD ciphers, payload size: 16384
             AES-128-GCM 0.74 GB/sec
             AES-128-CCM 0.63 GB/sec
       CHACHA20-POLY1305 0.41 GB/sec


Checking cipher-MAC combinations, payload size: 16384
        SALSA20-256-SHA1 0.37 GB/sec
        AES-128-CBC-SHA1 0.83 GB/sec
        AES-128-CBC-SHA256 0.85 GB/sec
GOST28147-TC26Z-CNT-GOST28147-TC26Z-IMIT 31.89 MB/sec


Checking MAC algorithms, payload size: 16384
            SHA1 1.43 GB/sec
          SHA256 1.48 GB/sec
          SHA512 0.38 GB/sec
GOST28147-TC26Z-IMIT 99.15 MB/sec
     GOSTR341194 46.23 MB/sec
    STREEBOG-512 71.30 MB/sec


Checking ciphers, payload size: 16384
                3DES-CBC 19.05 MB/sec
             AES-128-CBC 1.91 GB/sec
             AES-128-XTS 0.76 GB/sec
             AES-256-XTS 0.65 GB/sec
             SALSA20-256 0.48 GB/sec
                    NULL 13.24 GB/sec
     GOST28147-TC26Z-CNT 47.05 MB/sec
 
D43399 review, use patches 36431, 37878, 37879 patches, but not 43399 patch Can those with Rpi5 hardware, check if the 3 review patches for BCM2711 VCHIQ hardware 36431, 37878, 37879 make HDMI Audio output work on the Raspberry Pi 5 BCM2712 hardware?
https://reviews.freebsd.org/F75131370 more writeup and explanation of VCHIQ patches.
Let us know of HDMI audio and 3.5mm plug analog audio work for your on the Raspberry Pi 5. Glad JSM got the SD card working.
https://ghostbsd-arm64.blogspot.com/2024/01/hdmi-audio-sound-patches-into-ghostbsd.htmlMy GhostBSD-Arm64.blogspot.com writeup of using the 3 patch files.
January 19, 2024 Howto Download a Raspberry Pi 4B bootable image from http://ghostbsdarm64.hopto.org/packages/ The default operation is to download FreeBSD-14.0-RELEASE RPI image . XZ file , decompress that file and dd write to a USB flash drive at /dev/da1

https://ghostbsd-arm64.blogspot.com/2023/12/how-to-install-ghostbsd-arm64-into-usb.html This collection of shell script files will allow you to initialize a blank USB SSD (NVMe stick or SATA 2.5" SSD), create 7 partition, set /dev/da1p3 partition with the ZFS file system. Allow to copy files from USB Flash drive onto the USB SSD. Good Stuff. I would like someone to test scripts on Raspberry Pi 5 and let me know what I have to modify to support RasPi5. Fred
 

Attachments

  • Blue_Swivel_USB_Flash_Drive.jpg
    Blue_Swivel_USB_Flash_Drive.jpg
    3.7 KB · Views: 38
D43399 review, use patches 36431, 37878, 37879 patches, but not 43399 patch Can those with Rpi5 hardware, check if the 3 review patches for BCM2711 VCHIQ hardware 36431, 37878, 37879 make HDMI Audio output work on the Raspberry Pi 5 BCM2712 hardware?
https://reviews.freebsd.org/F75131370 more writeup and explanation of VCHIQ patches.
Let us know of HDMI audio and 3.5mm plug analog audio work for your on the Raspberry Pi 5. Glad JSM got the SD card working.
https://ghostbsd-arm64.blogspot.com/2024/01/hdmi-audio-sound-patches-into-ghostbsd.htmlMy GhostBSD-Arm64.blogspot.com writeup of using the 3 patch files.
January 19, 2024 Howto Download a Raspberry Pi 4B bootable image from http://ghostbsdarm64.hopto.org/packages/ The default operation is to download FreeBSD-14.0-RELEASE RPI image . XZ file , decompress that file and dd write to a USB flash drive at /dev/da1

https://ghostbsd-arm64.blogspot.com/2023/12/how-to-install-ghostbsd-arm64-into-usb.html This collection of shell script files will allow you to initialize a blank USB SSD (NVMe stick or SATA 2.5" SSD), create 7 partition, set /dev/da1p3 partition with the ZFS file system. Allow to copy files from USB Flash drive onto the USB SSD. Good Stuff. I would like someone to test scripts on Raspberry Pi 5 and let me know what I have to modify to support RasPi5. Fred
Will try this weekend is the weather is rainy.
 
Where does that KERNCONF come from? I do not see it in /usr/src/sys/arm64/conf
KERNCONF=GENERIC-VCHIQ file is created from the D37878 review patch file.
Hello, You want HDMI audio out from TV speakers on your BCM2711 Raspberry Pi 4B,3B, 400? add 3 patch files to update the kernel source code. make buildworld -DNO_CLEAN ; make buildkernel KERNCONF=GENERIC-VCHIQ -DNO_CLEAN
Will this work on a BCM2712 Raspi5? I do not know until you with a Raspi5 test these 3 patch files on your kernel build. Let us know the results, please. Watching YouTube videos on your HDMI input connected TV at 42" or 55" is very satisfying to view.


ls -lh /usr/ghost14/ghostbsd-src/sys/arm64/conf
-rw-r--r-- 1 root wheel 432B Jan 19 07:25 DEFAULTS
-rw-r--r-- 1 root wheel 1.2K Jan 19 07:25 GENERIC
-rw-r--r-- 1 root wheel 55B Jan 19 07:25 GENERIC-KASAN
-rw-r--r-- 1 root wheel 417B Jan 19 07:25 GENERIC-MMCCAM
-rw-r--r-- 1 root wheel 821B Jan 19 07:25 GENERIC-UP
-rw-r--r-- 1 root wheel 338B Jan 20 01:47 GENERIC-VCHIQ
-rw-r--r-- 1 root wheel 0B Jan 20 01:47 GENERIC-VCHIQ.orig

cat GENERIC-VCHIQ
#
# GENERIC-VCHIQ
#
# Custom kernel for arm64 plus VCHIQ
#
# $FreeBSD$

#NO_UNIVERSE

include GENERIC
ident GENERIC-VCHIQ

device vchiq

# If you want to have any chance of compiling this in a RPI Zero 2
# uncomment the stuff below

# nomakeoptions DEBUG
# nomakeoptions WITH_CTF
# nooptions DDB_CTF
# makeoptions MALLOC_PRODUCTION=1




What's the status now? Can we boot a desktop environment? Bhyve for ARM? Wireless networking?
The SDIO support is in the FreeBSD code. The OpenBSD or NETBSD wifi driver for the 43455 chip has not been ported. Bhyve for ARM64, not tried nor tested. NGINX works, Poudriere works. Thunderbird email works. What package or application do you wish to see work?
http://ghostbsdarm64.hopto.org/packages/Ghost14_5G_selfbuilt_raspi4b_Feb7_1.img This image has GENERIC-VCHIQ sound already compiled inside and is tested to work! I am typing this reply on this machine running GhostBSD-Arm64 Jan22_0.img file. I also made script files to create a bootable ZFS USB SSD with GhostBSD-Arm64 and XFCE 4.18 desktop. Start with Downloading this 700Mbyte image, decompress
Code:
fetch  http://ghostbsdarm64.hopto.org/packages/Ghost14_5g_selfbuilt_raspi4b_Jan22_0.img.xz
xz --decompress --keep --verbose  Ghost14*.img.xz
dd if=Ghost14*.img of=/dev/da1 bs=1m conv=sync status=progress

gpart resize -i 3 -a 4k -s 80G da1    #  resize the 3rd partition UFS type to 80Gbytes, or use  -s 12G
growfs da1p3     # grow file size in expanded partition performed above
Boot on your Raspi4B SBC from a USB flash drive.
pkg install mpg123
mpg123 *.mp3 # see if sound plays on your HDMI TV Audio speakers.

For Raspi4B use, Read through this blog post. https://ghostbsd-arm64.blogspot.com/2023/12/how-to-install-ghostbsd-arm64-into-usb.html

Setup Desktop Environment, XFCE​

Code:
pkg install xorg xfce xfce4-goodies lightdm abiword dia tree
Will setup XFCE Desktop
View: https://www.youtube.com/watch?v=1VpVvsVbT-g&pp=ygUYZnJlZWJzZCAxNCB4ZmNlIGluc3RhbGwg
AgileDevArt FreeBSD XFCE Install
View: https://www.youtube.com/watch?v=ObQTHyvcdQ0&pp=ygUYZnJlZWJzZCAxNCB4ZmNlIGluc3RhbGwg

RoboNuggie FreeBSD 13.1 XFCE install
https://vermaden.wordpress.com/tag/xfce/ XFCE setup
https://mabufs.com/blog/freebsd-xinitrc Xinitrc contents for various Desktop Environment Like Cinanmon, Lumina DE, fluxbox
 
Last edited:
You can boot FreeBSD on the Pi 5 with: https://github.com/worproject/rpi5-uefi

Display, USB and SD work out-of-the-box.

I just gave that a go and was pleasantly surprised how easy it was.
  1. Downloaded the most recent FreeBSD 15 aarch64 RPI image
  2. Put it onto a microSD card (I used the Raspberry Pi Imager on my mac, but I assume that dd would do the same)
  3. Tried booting that, didn't work, as expected
  4. Got out a USB flash drive, download the firmware image from the rpi5-uefi githib repo (the zip file from the link below "2. Download the firmware image")
  5. Extracted the 3 files from the zip file to the USB drive
  6. Plugged in the USB drive and booted.
Presto, FreeBSD.

OK, no ethernet, no wifi, fan at full speed.
 
Ethernet over USB works.

I need to get another USB C to A adapter so that I can use both keyboard and my ethernet to USB adapter. In the small world of the RPi everything seems to need an adapter.
 
on pi zero i have this
hw.usb.template=8
in loader.conf
no idea if it works on 5 and you need rndis on the peer
 
Will someone use the 3 patch files to modify your /usr/src source code on FreeBSD and test with the Raspi5 single board computer to verify HDMI Audio sound works on a TV Monitor? D36431, D37878, D37879 (Do not use D43399, but a good write up to read how to use those 3 patch files. Also see F75181870 image writeup: https://reviews.freebsd.org/F75131370 ) for detailed step by step instructions.

PATCH Kernel example:
Code:
su -   # setup to be root user
cd /usr/src ;  mkdir  Patches
cd Patches
wget -c https://reviews.freebsd.org/file/data/cc5gnx6lx7pcvduupcbj/PHID-FILE-ombv7ctfqm3de2dyqgeq/D36431.diff
wget -c https://reviews.freebsd.org/file/data/bicc7vdmyzwnylvq5soa/PHID-FILE-wc6uoit423pb3lpagwsq/D37878.diff
wget -c https://reviews.freebsd.org/file/data/ln65jga5vwpz4j2ijmnx/PHID-FILE-cnp5deghq74u3kcfwtxs/D37879.diff
cd /usr/ghost14/ghostbsd-src    # Now patch those files. for FreeBSD /usr/src
patch  <../Patches/D36431.diff
patch <../Patches/D37878.diff
patch <../Patches/D37879.diff
D37878 creates configuration file sys/arm64/conf/GENERIC-VCHIQ. Now compile with this line.
Code:
make buildkernel KERNCONF=GENERIC-VCHIQ -DNO_CLEAN
whoami
su root
cd /usr/src

Using 3 previously completed patches to kernel, build the kernel, install the kernel​

time make -j4 buildkernel KERNCONF=GENERIC-VCHIQ -DNO_CLEAN
Compiling to see if errors show up.
Code:
time MAKE-j4  buildKERNEL KERNCONF=GENERIC-VCHIQ  -DNO_CLEAN
MAKE installKERNEL example:
https://docs.freebsd.org/en/books/handbook/cutting-edge/index.html#updating-src-installing 26.6.5. Installing the Compiled Code
Code:
make installkernel KERNCONF=GENERIC-VCHIQ
If a custom kernel was built, KERNCONF must also be set to use the new custom kernel:
  1. cd /usr/src
  2. Code:
    make installkernel KERNCONF=GENERIC-VCHIQ
  3. shutdown -r now
  4. cd /usr/src
  5. Code:
    make installworld
  6. shutdown -r now
Code:
pkg install mpg123
# use this audio program as a simple test. Other apps can be used. Open a Web Browser like Falkon and play audio or play a video or test play a .mp3 file
Code:
mpg123 *.mp3

I ask for your help to test Raspi5 hardware HDMI audio. It is working on FreeBSD/GhostBSD for my tests on Raspi 4B and 400 or 3B. Balls in your court.
 
1.) Has anybody tested extra serial uart ports on the Raspberry Pi 4B with 40 pin header. Uart0 and Uart1 exist. Missing Uart2, Uart3, Uart4, Uart5. When rreading and writing to the serial uart. Do you check that setting of the GPIO Block enable to still be setup as a uartX before writing s character to the TX register?

2.) Has the couple I2C or the couple SPI ports been tested to funtion properly?
 
Will someone use the 3 patch files to modify your /usr/src source code on FreeBSD and test with the Raspi5 single board computer to verify HDMI Audio sound works on a TV Monitor? D36431, D37878, D37879 (Do not use D43399, but a good write up to read how to use those 3 patch files. Also see F75181870 image writeup: https://reviews.freebsd.org/F75131370 ) for detailed step by step instructions.

Audio and kernel builds are not really on my agenda.
 
Audio and kernel builds are not really on my agenda.
Yes, not on your Agenda, Paul. I am glad for your postings about creating the boot files needed for Rpi5. Thank you for sharing those details that work for you in booting the Rpi5.

Maybe some others will find those details about 3 patch files to enable HDMI Audio helpful.
https://flirc.tv/products/flirc-jeffprobe?variant=43085036585192 Flirc Jeff Probe $16 USD
Has 2 USB ttl serial ports one to connect to the SBC 3.3V ttl serial port and the other is used by OpenOCD to connect with the SBC JTAG port to debug code on the target arm 32 bit armv7 and the aarch64 arm 64 bit armv8a.
https://ghostbsd-arm64.blogspot.com/2024/02/tigard-ft232h-board-connectons-to.html
use of www.crowdsupply.com Tigard Board for a USB to 3.3V ttl serial port and JTAG connections. ~$45 USD . Tigard is an open source FT2232H-based, multi-protocol, multi-voltage tool for hardware hacking.
 

Attachments

  • .png
    .png
    105.3 KB · Views: 31
  • rpi4-pinout_GPIO_labels.jpg
    rpi4-pinout_GPIO_labels.jpg
    48.5 KB · Views: 37
  • Tigard_JTAG_Tool.png
    Tigard_JTAG_Tool.png
    195.9 KB · Views: 29
Just curious if any headway has been made with running FreeBSD on the Pi 5. I have one, running Raspberry OS Lite (Debian) as a server... So as soon as I can have decent stable networking I'd like to give FreeBSD a go on it.

From what I've read here, with minimal efforts a FreeBSD image can be written to a memory card / USB device, the boot firmware slipped in and you're up and running.

No accelerated graphics, audio, or Ethernet. All I care about of those three would be the ethernet. I'm considering getting a USB3 gigabit NIC though, I'd like to have the option of having it around regardless.
 
Back
Top