Releases: polarfire-soc/hart-software-services
v2022.03
Hart Software Services Release v2022.03
The main change in this release is the addition of booting from qspi flash!
The programming process for the mmc via usbdmsc
in the HSS has been changed slightly.
Please check out the documentation for the updated flow.
Changes since last release
- feat: QSPI: Add support for booting from Winbond W25N01GV flash
- fix: board/custom-board-design: update to build with latest HSS code base
- feat: resets: bringing all peripherals out of reset
- fix: boot: Resolve out-of-bounds issue
- feat: scrub: add throttling support to memory scrubber
Icicle Kit Reference Design Programming File
This tag has been tested using the Icicle Kit Reference Design tag v2022.03. A FlashPro Express programming file containing both this HSS tag and the 2022.03 Icicle Kit Reference Design is available from the Icicle Kit Reference Design 2022.03 release assets: MPFS_ICICLE_KIT_2022_03.zip
HSS Payload Generator Binaries
Linux and Windows binaries for the HSS Payload Generator build from this release are available as part of the hss-payload-generator.zip file included in this release assets.
2022.02
Hart Software Services Release 2022.02
This release moves all DDR in the icicle kit reference design to 64 bit addresses only & is incompatible with previous reference design releases.
Changes since last release
- Add secure boot support
- Run the HSS from L2 Scratchpad instead of L2 LIM
- Modified DDR memory layout to move all Linux operations to 64-bit address range
- USB: configure USB DMA offset for high memory support
- Update the IHC driver to 0.1.1
- Add support for the ARIES Embedded module M100PFS and board M100PFSEVP
- K-config: add support for guiconfig
- README: update to reference SoftConsole 2021.3
Icicle Kit Reference Design Programming File
This tag has been tested using the Icicle Kit Reference Design tag 2022.02. A FlashPro Express programming file containing both this HSS tag and the 2022.02 Icicle Kit Reference Design is available from the Icicle Kit Reference Design 2022.02 release assets: Icicle-Kit-2022.02.zip
HSS Payload Generator Binaries
Linux and Windows binaries for the HSS Payload Generator build from this release are available as part of the hss-payload-generator.zip file included in this release assets.
2021.11
Hart Software Services Release 2021.11
HSS Changes since last release
This tag brings several improvements to the Hart Software Services since 2021.08:
- Add support for MiV Inter-Hart Communications (IHC) module
- Add Bus-Error Unit monitor
- Unique serial ID for each USBD block device
- skip-opensbi added to booting and the hss-payload-generator to allow SMP Bare Metal
- Remove unused eNVM driver
- Sanity checks on L2LIM size
This tag introduces new hss-payload-generator binaries (v0.99.26).
If using the default configuration (CONFIG_HSS_USE_IHC=y / CONFIG_USE_IHC=y / CONFIG_SERVICE_OPENSBI_IHC=y) this tag depends upon the PolarFire® SoC Icicle Kit Reference Design v2021.11 (which includes IHC).
Icicle Kit Reference Design Programming File
This tag has been tested using the Icicle Kit Reference Design tag 2021.11. A FlashPro Express programming file containing both this HSS tag and the 2021.11 Icicle Kit Reference Design is available from the Icicle Kit Reference Design 2021.11 release assets: Icicle-Kit-2021.11.zip
HSS Payload Generator Binaries
Linux and Windows binaries for the HSS Payload Generator build from this release are available as part of the hss-payload-generator.zip file included in this release's assets.
2021.08
Hart Software Services Release 2021.08
HSS Changes since last release
This tag brings several improvements to the Hart Software Services since 2021.04:
- OpenSBI 0.9 (SBI 0.2) support, including creation of SBI Domains for AMP use cases
- Upgrades MPFS_HAL to 1.8.131 (includes various DDR training fixes), and correctly sets up L2 cache/scratchpad
- Adds support for memory scrubber service
- TinyCLI enhancements
- TinyCLI can now be registered as a service (Kconfig option) to stay running post-boot
- Extra debug commands have been added
- DEFLATE: Adding support for eNVM wrapper to decompress HSS from eNVM to L2LIM
- Enables full 2GiB memory test
- Adds sample def_config files for no-logo/quiet boot etc.
- Enables RMW to resolve issue with DDRC
- Add support for booting directly from SPI flash
- Adds hooks for configuring PMPs from Libero
Icicle Kit Reference Design Programming File
This tag has been tested using the Icicle Kit Reference Design tag 2021.08. A FlashPro Express programming file containing both this HSS tag and the 2021.08 Icicle Kit Reference Design is available from the Icicle Kit Reference Design 2021.08 release assets: Icicle-Kit-2021.08.zip
HSS Payload Generator Binaries
Linux and Windows binaries for the HSS Payload Generator build from this release are available as part of the hss-payload-generator.zip file included in this release's assets.
2021.04
Hart Software Services Release 2021.04
Changes since last release
This tag brings several improvements to the Hart Software Services since 2020.12:
- Reserving first 256-bytes of eNVM to facilitate introduction of secure boot (requires SoftConsole 6.6 / Libero 2021.01 or later);
- Enable RMW on DDRC (to address issue with 0-byte AXI transfers from fabric to DDR);
- Changes default eMMC at 1.8v (requires board jumpers J34/J43 to change to select 1.8v), including higher speeds and faster booting;
- Fixes bug in error checking on eMMC;
- Updated MPFS_HAL to v1.8.116, which includes DDRC fixes and hooks for AMP APB;
- Memory reconfigured - 256KiB lower DDR reserved for non-cached/non-cached write-combine buffers for custom fabric design purposes:
- 768MiB lower DDR region (32-bit addressable, 0x8000'0000 to 0xAFFF'FFFF)
- 1GiB upper DDR region (64-bit addressable, 0x10'0000'0000 to 0x10'3FFF'FFFF)
- 128MiB Non-cached region (aliases at lower 32-bit address 0xC000'0000 and 64-bit address 0x14'0000'0000)
- 128MiB Non-cached Write Combine Region (aliased at lower 32-bit address 0xD000'0000 and 64-bit address 0x18'0000'0000)
- Updated Icicle Kit design MSS configuration description XML for 2021.04 release;
- Allow programming of eNVM directly from make, once build is complete ('make program' - requires SoftConsole 6.6 / Libero 2021.01 or later);
- Updated MPFS Configuration Generator tool to removing trailing spaces in generated code
Icicle Kit Reference Design Programming File
This tag has been tested using the Icicle Kit Reference Design tag 2021.04. A FlashPro Express programming file containing both this HSS tag and the 2021.04 Icicle Kit Reference Design is available from the Icicle Kit Reference Design 2021.04 release assets: Icicle-Kit-2021.04.zip
eMMC 1.8V jumpers
Please ensure both J43 and J34 are in positions 2-3 after updating your Icicle Kit to the 2021.04 Icicle Kit Reference Design.
2020.12
This tag brings several improvements to the Hart Software Services since 2020.11:
- Modified switching between SD card and eMMC to use an FPGA fabric register instead of MSS GPIOs.
This prevents SD card/eMMC mux glitching when GPIOs are re-initialized in later boot stages. - Enabled reset input from FPGA fabric.
This allows push button reset with suitable FPGA designs. For example, this allows using push button SW4 to reset the Icicle Kit when using the Icicle Kit Reference Design 2020.12 or later. - Added clearing of pending PCIe interrupts before releasing execution of next boot stage.
This prevents PCIe hanging with Linux kernel 5.10. - Added support for consuming MSS configurations generated by the Libero 12.6 MSS Configurator
This tag has been tested using the Icicle Kit Reference Design tag 2020.12
2020.11
This tag brings several improvements to the Hart Software Services since 2020.10:
-
Custom boot flows added:
To use prominent open-source bootloaders (such as U-Boot SPL, Coreboot, and EDK2) on PolarFire boards, we need a mechanism to boot all HARTs (both E51 and U54s) at same entry point in M-mode. To read more see commit 2cd45c9 from @avpatel. -
MPU fixes in commit 6a2960e
-
Allowing both eMMC and SD card at the same time:
The HSS can now switch between SD cards and eMMC automatically as a startup source, this update also requires the Icicle Kit Reference Design Tag 2020.11. See commits:
This tag has been tested using the Icicle Kit Reference Design tag 2020.11
2020.10
Tested on PolarFire SoC Icicle Kit with:
- Icicle Kit Reference Design tag 2020.10
- meta-polarfire-soc-yocto-bsp tag 2020.10