Releases: sifive/freedom-u-sdk
2021.08.00
This release includes major changes compared previous Freedom U SDK (FUSDK). The main changes include:
- Layers (
openembedded-core
,meta-openemedded
,meta-riscv
,meta-clang
,meta-tensorflow-lite
) were updated to their latest revisions. - Updated all files to a new override syntax ("
_
" separator character was replaced by ":
"). There is no way to support old and new syntax at the same time. xf86-video-amdgpu
was updated to 21.0.0.mesa
was updated to 21.1.5.binutils
was updated to 2.37.- root password in the SiFive disk images is now stored in SHA512 encrypted form (the password itself did not change).
demo-coreip-xfce4
disk image gained new packages:xf86-video-modesetting
xf86-video-fbdev
perf-python
demo-coreip-cli
disk image gained new packages:perf-python
stress-ng
was updated to 0.13.0.util-linux
sub-packagedoc
gained support for alternatives to fix man page conflicts at install time.libunwind
was enabled for riscv64. The recipe is set to non-release git commit 1527061fc5ce7cfd3911ac7ee8af04fdd4393477. The official support will land in v1.6.0 release (v1.6.0-rc1 is already available on their GitHub repository).perf
PACKAGECONFIG
was chaged to adddwarf
,libunwind
,manpages
,jvmti
, andcap
options.linux-mainline_5.13
was rebased on top of v5.13.9 kernel and gained compatibility withqemuriscv64
,qemuriscv64_b
,qemuriscv64_b_zfh
, andqemuriscv64_v
machines.- Kernel
defconfig
was modified to include VirtIO options required for QEMU machines:
CONFIG_VIRTIO_BLK=y
CONFIG_SCSI_VIRTIO=y
CONFIG_VIRTIO_NET=y
CONFIG_VIRTIO_CONSOLE=y
CONFIG_VIRTIO=y
CONFIG_VIRTIO_MENU=y
CONFIG_VIRTIO_PCI=y
CONFIG_VIRTIO_PCI_LEGACY=y
CONFIG_VIRTIO_BALLOON=y
CONFIG_VIRTIO_MEM=y
CONFIG_VIRTIO_INPUT=y
CONFIG_VIRTIO_MMIO=y
# CONFIG_VIRTIO_MMIO_CMDLINE_DEVICES is not set
CONFIG_VIRTIO_FS=y
CONFIG_CRYPTO_DEV_VIRTIO=y
CONFIG_NET_9P_VIRTIO=y
CONFIG_HW_RANDOM_VIRTIO=y
CONFIG_DRM_VIRTIO_GPU=y
CONFIG_RPMSG=y
# CONFIG_RPMSG_CHAR is not set
CONFIG_RPMSG_VIRTIO=y
- All QEMU machines (
qemuriscv64
,qemuriscv64_b
,qemuriscv64_b_zfh
, andqemuriscv64_v
) now havePREFERRED_PROVIDER_virtual/kernel
set tolinux-mainline
.
Known Issues
- Newer OE/Yocto buildtools could cause build issues for
nspr-native
package. Use-r yocto-3.2_M2 -t 20200729
as described in README file if you are using OE/Yocto buildtools. See Yocto bug #14112 - We have found an issue with SanDisk "A2" microSD cards and thus do not recommend them.
- If the desktop is unresponsive/frozen (i.e. the keyboard doesn't work or/and the mouse doesn't work, the clock is not updating, etc.) try
systemctl restart display-manager
from the serial console. - If the keyboard or/and mouse is not responsive/frozen check if the input device is available under
libinput list-devices
and if events are registered bylibinput debug-events
in the console. If events are registered try the command from #6 above otherwise manually unplug and plug the keyboard or/and mouse. - If your desktop is very slow check Mesa OpenGL rendered (
glxinfo | grep OpenGL
). If it isOpenGL renderer string: llvmpipe
restart the system. In rare cases Mesa might fallback tollvmpipe
, but restart usually resolved the issue. - Restart is not implemented in software for HiFive Unmatched.
2021.07.00
This release includes major changes compared previous Freedom U SDK (FUSDK). The main changes include:
- Layers (
openembedded-core
,meta-openemedded
,meta-riscv
,meta-clang
,meta-tensorflow-lite
) were updated to their latest revisions. stress-ng
was updated to 0.12.12.rng-tools
was rebased to 6.13.nfs-utils
was rebased to 2.5.4.man-pages
was rebased to 5.12.linux-mainline_5.12
was rebased to v5.12.18.u-boot
was rebased to v2021.07 (major change):- Upstream U-Boot v2021.07 release is the first one to provide the initial (not full) Unmatched support.
- Added missing
unmatched-udev-rules
andunmatched-systemd-units
packages intodemo-coreip-cli
disk image. - Changed
UBOOT_MACHINE
for Unmatched machine tosifive_unmatched_defconfig
(the new upstream name). - Changed
UBOOT_MACHINE
for Unleashed machine tosifive_unleashed_defconfig
(the new upstream name). qemu-native
,qemu-system-native
,qemu
gainedpmem
PACKAGECONFIG option to solve compilation issues on some host system configurations.gdb
now includes backport of symtab/27999 bug fix for riscv64.udev-extraconf
was added back.
Known Issues
- Newer OE/Yocto buildtools could cause build issues for
nspr-native
package. Use-r yocto-3.2_M2 -t 20200729
as described in README file if you are using OE/Yocto buildtools. See Yocto bug #14112 - We have found an issue with SanDisk "A2" microSD cards and thus do not recommend them.
- If the desktop is unresponsive/frozen (i.e. the keyboard doesn't work or/and the mouse doesn't work, the clock is not updating, etc.) try
systemctl restart display-manager
from the serial console. - If the keyboard or/and mouse is not responsive/frozen check if the input device is available under
libinput list-devices
and if events are registered bylibinput debug-events
in the console. If events are registered try the command from #6 above otherwise manually unplug and plug the keyboard or/and mouse. - If your desktop is very slow check Mesa OpenGL rendered (
glxinfo | grep OpenGL
). If it isOpenGL renderer string: llvmpipe
restart the system. In rare cases Mesa might fallback tollvmpipe
, but restart usually resolved the issue. - Restart is not implemented in software for HiFive Unmatched.
2021.06.00
This release includes major changes compared previous Freedom U SDK (FUSDK). The main changes include:
- Layers (
openembedded-core
,meta-openemedded
,meta-riscv
,meta-clang
) were updated to their latest revisions. stress-ng
was updated to 0.12.10.mesa
was updated to 21.1.2.udev-extraconf
was removed.- Issues were reported if the system was booted from microSD or NVMe, and USB storage device was auto-mounted. This resulted in random errors related to storage. Manual mounting works fine. This is a temporary removal until the issue can be understood.
- Enabled
spell
PACKAGECONFIG formousepad
to avoid warnings at the build time. opensbi_0.9
fromopenembedded-core
layer was added to BBMASK to avoid BitBake parsing issues.- New QEMU MACHINE targets were added (see below). These MACHINE options do not currently affect how packages or/and disk images are built. The toolchain might not provide support for these extensions yet. Currently this only allows to boot into QEMU virt machine with particular extensions (not ratified) enabled.
qemuriscv64_b
- RISCV-V 64-bit (RV64GC) with B extension (not ratified yet) for QEMU virt machine.qemuriscv64_b_zfh
- RISC-V-64-bit (RV64GC) with B and Zfh extensions (both not ratified yet) for QEMU virt machine.qemuriscv64_v
- RISC-V 64-bit (RV64GC) with V extension (not ratified yet) for QEMU virt machine.
Known Issues
- Newer OE/Yocto buildtools could cause build issues for
nspr-native
package. Use-r yocto-3.2_M2 -t 20200729
as described in README file if you are using OE/Yocto buildtools. See Yocto bug #14112 - We have found an issue with SanDisk "A2" microSD cards and thus do not recommend them.
- If the desktop is unresponsive/frozen (i.e. the keyboard doesn't work or/and the mouse doesn't work, the clock is not updating, etc.) try
systemctl restart display-manager
from the serial console. - If the keyboard or/and mouse is not responsive/frozen check if the input device is available under
libinput list-devices
and if events are registered bylibinput debug-events
in the console. If events are registered try the command from #6 above otherwise manually unplug and plug the keyboard or/and mouse. - If your desktop is very slow check Mesa OpenGL rendered (
glxinfo | grep OpenGL
). If it isOpenGL renderer string: llvmpipe
restart the system. In rare cases Mesa might fallback tollvmpipe
, but restart usually resolved the issue. - Restart is not implemented in software for HiFive Unmatched.
2021.05.00
This release includes major changes compared previous Freedom U SDK (FUSDK). The main changes include:
- Layers (
openembedded-core
,meta-openemedded
,meta-riscv
,meta-clang
) were updated to their latest revisions. meta-clang
layer was updated and brought back LLVM/Clang 12.0.0.lmsensors
now have supports for tmp451 temperature sensor on Unmatched.- The critical temperature (tmp451) for Unmatched was changed to 85C.
meta-filesystems
layer (frommeta-openembedded
) is now included by default.meta-tensorflow-lite
layer was added (this is a scalar version, doesn't include support for RVV).linux-mainline_5.12
was added as a new kernel for Unleashed and Unmatched (common kernel and configuration).- Notable kernel configuration changes:
- More SATA controllers and features were enabled.
CONFIG_STRICT_DEVMEM
andCONFIG_IO_STRICT_DEVMEM
were enabled.- XFS file system support was added.
- Btrfs file system support was added.
CONFIG_STRICT_KERNEL_RWX
andCONFIG_STRICT_MODULE_RWX
were enabled.- NVMe hwmon driver was enabled (temperatures will be reported by
lmsensors
). CONFIG_STACKPROTECTOR
andCONFIG_STACKPROTECTOR_PER_TASK
were enabled.
- Support for HiFive Unleashed Expansion Board from Microsemi was removed.
- New packages added to
demo-coreip-{cli,xfce4}
disk images:gdbserver
exfat-utils
xfsdump
xfsprogs
xfsprogs-fsck
xfsprogs-mkfs
xfsprogs-repair
btrfs-tools
python3-tensorflow-lite
python3-tensorflow-lite-demo-doc
- Disabled
earlycon
via SBI for Unleashed. This is handled directly by the kernel as on Unmatched. - This is the first released compiled with GCC 11.
stress-ng
was updated to 0.12.8.
Known Issues
- Newer OE/Yocto buildtools could cause build issues for
nspr-native
package. Use-r yocto-3.2_M2 -t 20200729
as described in README file if you are using OE/Yocto buildtools. See Yocto bug #14112 - We have found an issue with SanDisk "A2" microSD cards and thus do not recommend them.
- If the desktop is unresponsive/frozen (i.e. the keyboard doesn't work or/and the mouse doesn't work, the clock is not updating, etc.) try
systemctl restart display-manager
from the serial console. - If the keyboard or/and mouse is not responsive/frozen check if the input device is available under
libinput list-devices
and if events are registered bylibinput debug-events
in the console. If events are registered try the command from #6 above otherwise manually unplug and plug the keyboard or/and mouse. - If your desktop is very slow check Mesa OpenGL rendered (
glxinfo | grep OpenGL
). If it isOpenGL renderer string: llvmpipe
restart the system. In rare cases Mesa might fallback tollvmpipe
, but restart usually resolved the issue. - Restart is not implemented in software for HiFive Unmatched.
2021.04.00
This release includes major changes compared previous Freedom U SDK and thus is experimental at this stage. The main changes include:
- Layers (
openembedded-core
,meta-openemedded
,meta-riscv
) were updated to their latest revisions. meta-clang
layer was reverted back to what we had inmeta-sifive
2021.02.00 release as LLVM/Clang cross compiler had issues locating libraries for riscv64.meta-sifive
layer compatibility was switched fromgatesgarth
tohardknott
release.mesa
was updated to 21.0.1.linux-mainline_5.11
kernel was updated to v5.11.14 for HiFive Unmatched.tree
package was added for CLI and Xfce4 disk images.xdotool
package was added to Xfce4 disk images.stress-ng
was updated to 0.12.06.
Known Issues
- Avoid overclocking SoC using CPUFreq if you are using HiFive Unleashed Expansion Board from Microsemi as this will hang the board. Hard reset will be required.
- If Xfce4 desktop disk image is used with HiFive Unleashed Expansion Board and GPU then rebooting is required after the 1st boot.
- Newer OE/Yocto buildtools could cause build issues for
nspr-native
package. Use-r yocto-3.2_M2 -t 20200729
as described in README file if you are using OE/Yocto buildtools. See Yocto bug #14112 - We have found an issue with SanDisk "A2" microSD cards and thus do not recommend them.
- Xfce4 file manager (Thunar) might crash due to a bug in exo related to "Icon View". We advice to switch to "List View" or "Compact View" under "View" menu.
- If the desktop is unresponsive/frozen (i.e. the keyboard doesn't work or/and the mouse doesn't work, the clock is not updating, etc.) try
systemctl restart display-manager
from the serial console. - If the keyboard or/and mouse is not responsive/frozen check if the input device is available under
libinput list-devices
and if events are registered bylibinput debug-events
in the console. If events are registered try the command from #6 above otherwise manually unplug and plug the keyboard or/and mouse. - If your desktop is very slow check Mesa OpenGL rendered (
glxinfo | grep OpenGL
). If it isOpenGL renderer string: llvmpipe
restart the system. In rare cases Mesa might fallback tollvmpipe
, but restart usually resolved the issue. - Restart is not implemented in software for HiFive Unmatched.
2021.03.01
This release includes major changes compared previous Freedom Unleashed SDK and thus is experimental at this stage. The main changes include:
- OpenSBI was updated to support
gpio-poweroff
on HiFive Unmatched using SBI v0.1 legacysbi_shutdown()
call. - U-Boot was updated for HiFive Unmatched:
- Modified device tree to include
gpio-poweroff
node needed for OpenSBI. - Added reset for USB Hub, PCIe-USB bridge, ULPI device via GPIOs.
- Set default PWM state in SPL.
- Set D2 LED to yellow in SPL.
- Set D2 LED to purple in U-Boot proper.
- Set D2 LED to blue before
sysboot
is executed in the extlinux bootflow. - Fix PWM command.
- Enable all FAN headers on by default.
- Add I2C into SPL.
- Add ability to check PCB revision.
- Set default clock to 1.2GHz
- Modified device tree to include
- Kernel was updated for HiFive Unmatched:
- Version updated to v5.11.10.
- Added
gpio-poweroff
node to the device tree. - Added D12 (green) LED.
- Added D2 RGB LED.
- Disabled
CONFIG_HVC_RISCV_SBI
in defconfig. - Disabled
CONFIG_SERIAL_EARLYCON_RISCV_SBI
in defconfig (kernel can handleearlycon
directly). - Removed
CONFIG_SIFIVE_BEU
from defconfig (not used, the driver is not included). - Removed "A00" from the model name in device tree.
- Adjusted errata options based on a newer patchset version.
- Enabled new
ERRATA_SIFIVE_CIP_1200
in defconfig.
- Enabled new
- Added udev rules for HiFive Unmatched:
- Set D12 (green) LED to heartbeat trigger.
- Set D2 RGB LED to white color as the initial state.
- Added systemd unit and timer to set D2 RGB LED to green color 3 minutes after
getty.target
target. - Replaced
earlycon=sbi
withearlycon
withinextlinux.conf
. - Removed
xscreensaver
package as it conflict with Xfce4 screen saver. - Disabled
psplash
systemd unit by default (framebuffer in most cases is not available before it starts). - Replaced
wireless-regdb
withwireless-regdb-static
to allow kernel directly loading regulatory database without a user space daemon.
Known Issues
- Avoid overclocking SoC using CPUFreq if you are using HiFive Unleashed Expansion Board from Microsemi as this will hang the board. Hard reset will be required.
- If Xfce4 desktop disk image is used with HiFive Unleashed Expansion Board and GPU then rebooting is required after the 1st boot.
- Newer OE/Yocto buildtools could cause build issues for
nspr-native
package. Use-r yocto-3.2_M2 -t 20200729
as described in README file if you are using OE/Yocto buildtools. See Yocto bug #14112 - We have found an issue with SanDisk "A2" microSD cards and thus do not recommend them.
- Xfce4 file manager (Thunar) might crash due to a bug in exo related to "Icon View". We advice to switch to "List View" or "Compact View" under "View" menu.
- If the desktop is unresponsive/frozen (i.e. the keyboard doesn't work or/and the mouse doesn't work, the clock is not updating, etc.) try
systemctl restart display-manager
from the serial console. - If the keyboard or/and mouse is not responsive/frozen check if the input device is available under
libinput list-devices
and if events are registered bylibinput debug-events
in the console. If events are registered try the command from #6 above otherwise manually unplug and plug the keyboard or/and mouse. - If your desktop is very slow check Mesa OpenGL rendered (
glxinfo | grep OpenGL
). If it isOpenGL renderer string: llvmpipe
restart the system. In rare cases Mesa might fallback tollvmpipe
, but restart usually resolved the issue. - Restart is not implemented in software for HiFive Unmatched.
2021.03.00
This release includes major changes compared previous Freedom Unleashed SDK and thus is experimental at this stage. The main changes include:
- All layers (openembedded-core, meta-openemedded, meta-riscv, meta-clang) were updated to their latest revisions.
- unmatched MACHINE was updated to support 16GB (rev3) variant. Older versions of unmatched (i.e., pre-production) should use 2021.02.00 release.
- stress-ng was updated to 0.12.05.
- Kernel was updated to v5.11.5.
- U-Boot was updated to add PWM command, I2C EEPROM and 16GB DDR parameters for Unmatched (rev3).
- rngd (from rng-tools) daemon was disabled by default.
- libinput was updated to 1.17.0.
- New packages were added in CLI and Xfce4 disk images:
- cpupower
- libubootenv-bin
- u-boot-tools-mkimage
- u-boot-tools-mkenvimage
- New packages were added in Xfce4 disk images:
- xeyes
- xev
- xwininfo
- xvinfo
- x11perf
- Fixed a bug where OpenSBI binaries might not be deployed before U-Boot starts building.
Known Issues
-
Avoid overclocking SoC using CPUFreq if you are using HiFive Unleashed Expansion Board from Microsemi as this will hang the board. Hard reset will be required.
-
If Xfce4 desktop disk image is used with HiFive Unleashed Expansion Board and GPU then rebooting is required after the 1st boot.
-
Newer OE/Yocto buildtools could cause build issues for
nspr-native
package. Use-r yocto-3.2_M2 -t 20200729
as described in README file if you are using OE/Yocto buildtools. See Yocto bug #14112 -
We have found an issue with SanDisk "A2" microSD cards and thus do not recommend them.
2021.02.00
This release includes major changes compared previous Freedom Unleashed SDK and thus is experimental at this stage. The main changes include:
-
All layers (openembedded-core, meta-openemedded, meta-riscv, meta-clang) were not updated from the previous (2021.01) release.
-
Added new MACHINE ("unmatched") for HiFive Unmatched board.
- Note: Contact your SiFive representative before using disk images built for
unmatched
machine on your particular board. This particular releases targets pre-production 8GB RAM Unmatched board.
- Note: Contact your SiFive representative before using disk images built for
-
By default disabled NFS systemd units (should only be enabled by the user if configured).
-
By default disable SSH systemd units (should only be enabled by the user once the default password is changed). The following instructions would enable SSH daemon service:
systemctl enable sshd.socket systemctl start sshd.socket
-
Updated stress-ng to 0.12.03.
-
Updated U-Boot to v2021.01.
-
Updated OpenSBI to v0.9.
-
dhcpd
removed (solves issue where network interface receives 2 IP addresses. We only use NetworkManager internal DHCP client.) -
Added Python pip3 for installing Python packages. Packages:
python3-pip
andpython3-setuptools
. -
Fixed
lsb_release -a
execution. -
New kernel (v5.10.17) was added for HiFive Unmatched.
-
Defined
DISTRO_NAME
,DISTRO_VERSION
, andDISTRO_CODENAME
. -
Added NetworkManager CLI client (
networkmanager-nmcli
andnetworkmanager-nmcli-doc
). -
Added
gparted
. -
Added
patchelf
. -
Added
lmsensors
. -
Added
smartmontools
. -
Added
openssh-misc
,openssh-sftp
,openssh-sftp-server
. -
Added
network-manager-applet
for Xfce desktop images only.
Known Issues
-
Avoid overclocking SoC using CPUFreq if you are using HiFive Unleashed Expansion Board from Microsemi as this will hang the board. Hard reset will be required.
-
If Xfce4 desktop disk image is used with HiFive Unleashed Expansion Board and GPU then rebooting is required after the 1st boot.
-
Newer OE/Yocto buildtools could cause build issues for
nspr-native
package. Use-r yocto-3.2_M2 -t 20200729
as described in README file if you are using OE/Yocto buildtools. See Yocto bug #14112 -
We have found an issue with SanDisk "A2" microSD cards and thus do not recommend them.
2021.01.00
This release includes major changes compared previous Freedom Unleashed SDK and thus is experimental at this stage. Main changes include:
-
All layers (openembedded-core, meta-openemedded, meta-riscv, meta-clang) updated to their latest revisions.
-
stress-ng updated to 0.12.01.
-
Mesa updated to 20.3.1.
-
QEMU updated to 5.2.0.
-
Xfce updated to 4.16.0.
Known Issues
-
Avoid overclocking SoC using CPUFreq if you are using HiFive Unleashed Expansion Board from Microsemi as this will hang the board. Hard reset will be required.
-
If Xfce4 desktop disk image is used with HiFive Unleashed Expansion Board and GPU then rebooting is required after the 1st boot.
-
Newer OE/Yocto buildtools could cause build issues for
nspr-native
package. Use-r yocto-3.2_M2 -t 20200729
as described in README file if you are using OE/Yocto buildtools. See Yocto bug #14112 -
We have found an issue with SanDisk "A2" microSD cards and thus do not recommend them.
2020.12.00
This release includes major changes compared previous Freedom Unleashed SDK and thus is experimental at this stage. Main changes include:
-
All layers (openembedded-core, meta-openemedded, meta-riscv, meta-clang) updated to their latest revisions.
-
Layer compatibility switched to gatesgarth release.
-
stress-ng updated to 0.12.00.
-
U-Boot updated to 2020.10.
-
Mesa updated to 20.2.4.
-
New packages added to Xfce4 disk image:
-
epiphany
-
evince
-
xdg-utils
-
libva
-
libva-utils
-
libvdpau
-
gstreamer1.0
-
gstreamer1.0-vaapi
-
mesa-vdpau-drivers
-
vdpauinfo
-
-
hwcodecs
was added to Xfce4 disk imageIMAGE_FEATURES
. -
Mesa is now configurated with
va
andvdpau
. -
GStreamer1 is configured with
vdpau
. -
PulseAudio is now configured with
autospawn-for-root
.
Known Issues
-
Avoid overclocking SoC using CPUFreq if you are using HiFive Unleashed Expansion Board from Microsemi as this will hang the board. Hard reset will be required.
-
If Xfce4 desktop disk image is used with HiFive Unleashed Expansion Board and GPU then rebooting is required after the 1st boot.
-
Newer OE/Yocto buildtools could cause build issues for
nspr-native
package. Use-r yocto-3.2_M2 -t 20200729
as described in README file if you are using OE/Yocto buildtools. See Yocto bug #14112 -
We have found an issue with SanDisk "A2" microSD cards and thus do not recommend them.