Skip to content

Releases: sifive/freedom-u-sdk

2022.08.00

20 Oct 18:30
2210ddd
Compare
Choose a tag to compare

Release Notes

This release includes major changes compared previous Freedom-U-SDK (FUSDK) release. The notable changes include:

  • Layers and Bitbake have been updated.
  • OpenSBI updated from 1.0 to 1.1
  • U-Boot updated from 2022.04 to 2022.07
  • Kernel updated from 5.18.6 to 5.18.14
  • LLVM updated from 14.0.5 to 14.0.6
  • Mesa updated from 22.0.3 to 22.1.3

Instructions to build assets

pip install --user kas

mkdir 2022.08.00 && cd 2022.08.00

git clone --depth 1 --branch 2022.08.00 https://github.com/sifive/freedom-u-sdk

kas build freedom-u-sdk/scripts/kas/freedom-u540-cli.yml
kas build freedom-u-sdk/scripts/kas/freedom-u540-xfce4.yml

kas build freedom-u-sdk/scripts/kas/qemuriscv64-cli.yml
kas build freedom-u-sdk/scripts/kas/qemuriscv64-xfce4.yml

kas build freedom-u-sdk/scripts/kas/unmatched-cli.yml
kas build freedom-u-sdk/scripts/kas/unmatched-xfce4.yml

kas shell freedom-u-sdk/scripts/kas/unmatched-xfce4.yml -c "bitbake buildtools-extended-tarball"

2022.06.00

27 Sep 03:36
01ae831
Compare
Choose a tag to compare

This release includes major changes compared previous Freedom-U-SDK (FUSDK) release. The notable changes include:

  • Layers (openembedded-core, meta-openemedded, meta-riscv, meta-clang) and bitbake were updated to their latest commit.
  • git-repo is no longer used to build Freedom-U-SDK, it has been replaced by kas.
  • setup.sh has been replaced by a distro configuration, a few bbappends and a local_conf_header in kas yaml.
  • Factorize the demo-coreip-* images definition.
  • Some recipes from meta-sifive have been here, because there aren't parts of BSP.
  • Block map of images are now generated; to speed up SDCard flashing.
  • Vulkan samples are no longer available due to a random build issue.
  • Tensorflow-lite examples and the SiFive demo are now installed in the demo-coreip-* images.
  • Coremark is now installed in the demo-coreip-* images.
  • GLMark2 is now installed in the demo-coreip-xfce4 images.

2022.04.00

17 May 04:22
Compare
Choose a tag to compare

This release includes major changes compared previous Freedom-U-SDK (FUSDK) release. The notable changes include:

  • Layers (openembedded-core, meta-openemedded, meta-riscv, meta-clang) were updated to their latest commit.
  • u-boot was updated to 2022.04.
  • linux-mainline was updated to 5.17.

Known Issues

  1. 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
  2. We have found an issue with SanDisk "A2" microSD cards and thus do not recommend them.
  3. 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.
  4. 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 by libinput debug-events in the console. If events are registered try systemctl restart display-manager from the serial console. Otherwise manually unplug and plug the keyboard or/and mouse.
  5. If your desktop is very slow check Mesa OpenGL rendered (glxinfo | grep OpenGL). If it is OpenGL renderer string: llvmpipe restart the system. In rare cases Mesa might fallback to llvmpipe, but restart usually resolved the issue.
  6. If NBD rootfs is used NetworkManager will not handle eth0 interface. This leads to resolv.conf not being generated (DNS resolving doesn't work), and system time is not synchronized via NTP. The Internet connection itself is working.
  7. AMD RX500 series GPUs are facing regression errors.
  8. Intel AX200 series are encountering stability issues on wireless connections.

2022.03.00

31 Mar 17:16
Compare
Choose a tag to compare

This release includes major changes compared previous Freedom-U-SDK (FUSDK) release. The notable changes include:

  • Layers (openembedded-core, meta-openemedded, meta-riscv, meta-clang) and bitbake were updated to their latest commit.
  • stress-ng was updated to 0.13.12.
  • mesa local copy was removed and replaced with a bbappend file.
  • Removed python backports (python3-distutils-extra, python3-ptyprocess, python3-pybind11, xfce4-whiskermenu-plugin) added in 2022.02.00. These are already part of openembedded-core and meta-openembedded layers.
  • nbd was updated to 3.24.
  • nghttp2 was rebased to 1.47.0.
  • openssh was rebased to 8.9.p1.

Known Issues

  1. 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
  2. We have found an issue with SanDisk "A2" microSD cards and thus do not recommend them.
  3. 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.
  4. 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 by libinput debug-events in the console. If events are registered try systemctl restart display-manager from the serial console. Otherwise manually unplug and plug the keyboard or/and mouse.
  5. If your desktop is very slow check Mesa OpenGL rendered (glxinfo | grep OpenGL). If it is OpenGL renderer string: llvmpipe restart the system. In rare cases Mesa might fallback to llvmpipe, but restart usually resolved the issue.
  6. If NBD rootfs is used NetworkManager will not handle eth0 interface. This leads to resolv.conf not being generated (DNS resolving doesn't work), and system time is not synchronized via NTP. The Internet connection itself is working.

2022.02.00

08 Mar 19:04
Compare
Choose a tag to compare

This release includes major changes compared previous Freedom-U-SDK (FUSDK) release. The notable changes include:

  • Layers (openembedded-core, meta-openemedded, meta-riscv, meta-clang) and bitbake were updated to their latest commit.
  • freedom-u-sdk and meta-sifive layers compatibility was updated from honister to kirkstone.
  • meta-tensorflow-lite layer removed until build issues are resolved.
  • opensbi_git was updated to 4998a712b2ab504eff306110879ee05af6050177 commit.
  • u-boot was updated to 2022.01.
  • libunwind was updated to 1.6.2.
  • linux-mainline_5.13 includes a new patch to support binutils 2.38 release.
  • perf-doc subpackage was removed due to issues with post installation script blocking rootfs generation.
  • nfs-utils were rebased for 2.6.1.
  • vmtouch_git LICENSE was changed to BSD-3-Clause to match SPDX format.
  • util-linux was rebased to 2.37.4.
  • rng-tools were rebased to 6.15.
  • mesa was updated to 21.3.6.
  • stress-ng was updated to V0.13.11.
  • catfish, python3-distutils-extra, python3-ptyprocess, python3-pybind11, xfce4-whiskermenu-plugin backported from openembedded-core next to solve python packaging issues.
  • python3-tensorflow-lite and python3-tensorflow-lite-demo-doc were temporarily removed.
  • image-prelink was removed from USER_CLASSES was it's no longer supported with glibc 2.35.
  • systemd was updated to 250.3.
  • binutils was updated to 2.38.
  • qemu was updated to 6.2.0.
  • strace was updated to 5.16.
  • gdb was updated to 11.1.
  • clang updated to 14.0.0 (8937ecf4698c9283c92c35b65e5b97e6e0acf869).

Known Issues

  1. 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
  2. We have found an issue with SanDisk "A2" microSD cards and thus do not recommend them.
  3. 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.
  4. 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 by libinput debug-events in the console. If events are registered try systemctl restart display-manager from the serial console. Otherwise manually unplug and plug the keyboard or/and mouse.
  5. If your desktop is very slow check Mesa OpenGL rendered (glxinfo | grep OpenGL). If it is OpenGL renderer string: llvmpipe restart the system. In rare cases Mesa might fallback to llvmpipe, but restart usually resolved the issue.
  6. If NBD rootfs is used NetworkManager will not handle eth0 interface. This leads to resolv.conf not being generated (DNS resolving doesn't work), and system time is not synchronized via NTP. The Internet connection itself is working.

2022.01.00

02 Feb 18:52
Compare
Choose a tag to compare

This release includes major changes compared previous Freedom-U-SDK (FUSDK) release. The notable changes include:

  • stress-ng was updated to V0.13.10.
  • nbd gained a new dependency on libnl to support netlink interface. This is preferred interface compared to ioctl. In additional to that netlink interface resolves IO errors during shutdown with systemd. --force/-f option for poweroff is not longer required if NBD rootfs is used.
  • opensbi was updated to 5d025eb2353550eadbd2fa9b8083a92fe9b07bd9. This includes SiFive HiFive Unmatched reset fix (WDT needs to be disabled before reset is triggered).

Known Issues

  1. 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
  2. We have found an issue with SanDisk "A2" microSD cards and thus do not recommend them.
  3. 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.
  4. 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 by libinput debug-events in the console. If events are registered try systemctl restart display-manager from the serial console. Otherwise manually unplug and plug the keyboard or/and mouse.
  5. If your desktop is very slow check Mesa OpenGL rendered (glxinfo | grep OpenGL). If it is OpenGL renderer string: llvmpipe restart the system. In rare cases Mesa might fallback to llvmpipe, but restart usually resolved the issue.
  6. If NBD rootfs is used NetworkManager will not handle eth0 interface. This leads to resolv.conf not being generated (DNS resolving doesn't work), and system time is not synchronized via NTP. The Internet connection itself is working.

2021.12.00

24 Dec 13:59
Compare
Choose a tag to compare

This release includes major changes compared previous Freedom-U-SDK (FUSDK) release. The notable changes include:

  • Layers (openembedded-core, meta-openemedded, meta-riscv, meta-clang) and bitbake were updated to their latest commit.
  • demo-coreip-cli-initramfs was moved to meta-sifive layer from freedom-u-sdk layer. meta-sifive layer contains MACHINE configuration files that directly refer to the initramfs recipe.
  • python3-tensorflow-lite-demo was moved to freedom-u-sdk layer from meta-sifive layer. These only contain demo files.
  • stress-ng was updated to v0.13.08.
  • nbd was updated to 2.23.
  • vmtouch package was added. It allows to load/check/remove files into/from memory cache.
  • All demo-coreip-* disk images were updated to include vmtouch package.

Known Issues

  1. 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
  2. We have found an issue with SanDisk "A2" microSD cards and thus do not recommend them.
  3. 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.
  4. 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 by libinput debug-events in the console. If events are registered try systemctl restart display-manager from the serial console. Otherwise manually unplug and plug the keyboard or/and mouse.
  5. If your desktop is very slow check Mesa OpenGL rendered (glxinfo | grep OpenGL). If it is OpenGL renderer string: llvmpipe restart the system. In rare cases Mesa might fallback to llvmpipe, but restart usually resolved the issue.
  6. If NBD rootfs is used NetworkManager will not handle eth0 interface. This leads to resolv.conf not being generated (DNS resolving doesn't work), and system time is not synchronized via NTP. The Internet connection itself is working.
  7. If NBD rootfs is used NBD client will be terminated too early during systemd shutdown procedure leading to a few IO errors. This happens after the first sync for all filesystems and block devices. Systemd sends SIGSTOP to all processes unconditionally and that's enough for NBD connection to be terminated. To avoid this issue one should need to use --force/-f with poweroff and similar commands. From systemctl man page: If combined with --force, shutdown of all running services is skipped, however all processes are killed and all file systems are unmounted or mounted read-only, immediately followed by the powering off.

2021.11.00

03 Dec 16:09
Compare
Choose a tag to compare

This release includes major changes compared previous Freedom-U-SDK (FUSDK) release. The notable changes include:

  • libunwind was updated to the final v.1.6.0 release (the first one to support riscv64).
  • opensbi was updated to 22d556d26809775e2ac19251e5df9075434ee66e commit. This allows SiFive HiFive Unmatched to use SBI SRST (System Reset) extension in the kernel to reset the board. This is only a partial reset, but from the user point of view it will acts as a normal reset. The output rails will go down and up at OTP voltages. The other DA9063 settings will not be affected.
    • A better approach is being tested by the community using RTC wake-up.
  • xserver-xorg was updated to 21.1.1.
  • xf86-video-ati now includes a backport from upstream to fix compilation errors with a new xserver-xorg.
  • demo-coreip-cli-initramfs new recipe was introduced. This initramfs stage includes NBD (Network Block Device) client and support for NBD rootfs. This is experimental feature and is currently available only for SiFive HiFive Unmatched board.
    • To use this new feature open extlinux.conf configuration file in /boot partition and change append line to append ip=dhcp root=/dev/nbd0 rw nbdroot=<server_ip_address>:<export_name> nbdport=10809 console=ttySIF0,115200 earlycon Note that depending on the NBD server used and it's configuration <export_name> might be ignored by the NBD server.
    • nbdkit could be used for the NBD server. The example: sudo nbdkit -f --verbose --threads 128 --filter=cow --filter=partition --filter=xz file demo-coreip-xfce4-unmatched-<..>.rootfs.wic.xz partition=4. This would expose the 4th partition from a compressed disk image with a cow (copy-on-write) layer on top to make it writable. Note that in this particular case <export_name> value is ignored by nbdkit server. If performance is important uncompress disk image before sharing it via NBD server.
  • kernel-devsrc package was removed from the disk images. The package does not work wih the kernel version used by FUSDK.
  • chronyc package was added as CLI front-end for chrony daemon.
  • dtc-staticdev package was removed as it is empty.
  • systemd PACKAGECONFIG was modified to remove resolved and nss-resolve. These functions are convered by NetworkManager.
  • GDB was updated to 11.1.
  • u-boot was rebased to v2021.10.
  • linux-mainline_5.13 was updated with two additional patches:
    • SBI SRST support for SiFive HiFive Unmatched reset support.
    • irqchip/sifive-plic fix backport. There was case there only the first interrupt was handled and following interrupts were not delivered.

Known Issues

  1. 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
  2. We have found an issue with SanDisk "A2" microSD cards and thus do not recommend them.
  3. 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.
  4. 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 by libinput debug-events in the console. If events are registered try systemctl restart display-manager from the serial console. Otherwise manually unplug and plug the keyboard or/and mouse.
  5. If your desktop is very slow check Mesa OpenGL rendered (glxinfo | grep OpenGL). If it is OpenGL renderer string: llvmpipe restart the system. In rare cases Mesa might fallback to llvmpipe, but restart usually resolved the issue.
  6. If NBD rootfs is used NetworkManager will not handle eth0 interface. This leads to resolv.conf not being generated (DNS resolving doesn't work), and system time is not synchronized via NTP. The Internet connection itself is working.
  7. If NBD rootfs is used NBD client will be terminated too early during systemd shutdown procedure leading to a few IO errors. This happens after the first sync for all filesystems and block devices.

2021.10.00

02 Nov 15:49
Compare
Choose a tag to compare

This release includes major changes compared previous Freedom U SDK (FUSDK) release. The notable changes include:

  • meta-sifive was converted to a smaller layer containing the most important packages (e.g. OpenSBI, Linux kernel, U-Boot, etc). All other packages related to building a demo distribution are now in freedom-u-sdk repository (i.e. layer).
  • Layers (openembedded-core, meta-openemedded, meta-riscv, meta-clang) were updated to their latest revisions.
  • stress-ng was updated to 0.13.51.
  • linux-mainline_5.13 (Linux kernel) was updated to v5.13.19.
  • libunwind_git was updated to 97d74d396264720e86d4b8455216f4a7b06a54af commit.
  • qemu RVV, RVB and Zfh patches were removed for now. These extensions are being finalized (currently in a public review stage). The patches as-is do not apply to the latest stable QEMU version available in openembedded-core layer. The next stable QEMU version should have some of these available out-of-the-box.
  • qemuriscv64_b, qemuriscv64_b_zfh and qemuriscv64_v machines are not available (see above).
  • demo-coreip-xfce4 has VAAPI disabled for now as OE attempts to install packages with *initial* in their name, which should be excluded from the dependency list, but are not.
  • nghttp2 sub-packages client and server were removed from the main recipe as the content of them is empty.

Known Issues

  1. 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
  2. We have found an issue with SanDisk "A2" microSD cards and thus do not recommend them.
  3. 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.
  4. 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 by libinput debug-events in the console. If events are registered try systemctl restart display-manager from the serial console. Otherwise manually unplug and plug the keyboard or/and mouse.
  5. If your desktop is very slow check Mesa OpenGL rendered (glxinfo | grep OpenGL). If it is OpenGL renderer string: llvmpipe restart the system. In rare cases Mesa might fallback to llvmpipe, but restart usually resolved the issue.
  6. Restart is not implemented in software for HiFive Unmatched.

2021.09.00

29 Sep 14:28
Compare
Choose a tag to compare

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.
  • libinput 1.17.0 was removed from meta-sifive layer. Newer version is now available from openenmedded-core layer.
  • mesa was updated to 21.2.1.
  • stress-ng was updated to 0.13.01.
  • linux-mainline_5.13 (Linux kernel) was updated to v5.13.17.
  • u-boot was refactored and converted to bbappend instead of a modified copy from openembedded-core layer.
  • tune-riscv.inc was introduced in meta-sifive layer to provide two new options (sifive-5-series and sifive-7-series) which adds -mtune=sifive-{5,7}-series compiler options for all the packages.
  • Unmatched machine DEFAULTTUNE is now changed from riscv64 to sifive-7-series. This setting can be changed in the local configuration file if the user wants to revert back to riscv64.
  • opensbi was updated to a git version (commit bd355213b).
  • glibc was updated to 2.34.

Known Issues

  1. 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
  2. We have found an issue with SanDisk "A2" microSD cards and thus do not recommend them.
  3. 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.
  4. 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 by libinput debug-events in the console. If events are registered try systemctl restart display-manager from the serial console. Otherwise manually unplug and plug the keyboard or/and mouse.
  5. If your desktop is very slow check Mesa OpenGL rendered (glxinfo | grep OpenGL). If it is OpenGL renderer string: llvmpipe restart the system. In rare cases Mesa might fallback to llvmpipe, but restart usually resolved the issue.
  6. Restart is not implemented in software for HiFive Unmatched.