Introduction
This example demonstrates the use of HSM Firewall services.
2 services are available.
- Set Firewall Service is used to set firewall configuration.
- Set Firewall Interrupt service is responsible for the 4 operations mentioned below:
- 2.1. Interrupt enable for protection and address violation
- 2.2. Clearing Interrupt enable.
- 2.3. Clearing Interrupt status.
- 2.4. Clearing the current fault so that another can be captured.
Supported Combinations
Parameter | Value |
CPU + OS | r5fss0_0 nortos |
r5fss0_1 nortos |
Toolchain | ti-arm-clang |
Boards | am263x-cc |
Example folder | /examples/hsm_client/mpu_firewall_services_demo/ |
Steps to Run the Example
Sample Output
On successful boot, following message will be seen on terminal. Please note that the R5F application has not been side-loaded yet.
[HSM_CLIENT] New Client Registered with Client Id = 0
Starting QSPI Bootloader ...
[BOOTLOADER_PROFILE] Boot Media : NOR SPI FLASH
[BOOTLOADER_PROFILE] Boot Media Clock : 80.000 MHz
[BOOTLOADER_PROFILE] Boot Image Size : 28 KB
[BOOTLOADER_PROFILE] Cores present :
r5f0-1
r5f0-0
[BOOTLOADER PROFILE] System_init : 286us
[BOOTLOADER PROFILE] Drivers_open : 75us
[BOOTLOADER PROFILE] LoadHsmRtFw : 14503us
[BOOTLOADER PROFILE] Board_driversOpen : 2975us
[BOOTLOADER PROFILE] CPU load : 2292us
[BOOTLOADER_PROFILE] SBL Total Time Taken : 20134us
Image loading done, switching to application ...
[HSM_CLIENT] New Client Registered with Client Id = 2
Enabling the interrupt for both address violation and protection violation for MPU_R5SS0_CORE1_AHB
Firewall request #1 status = 11111111 11111111
Permissions for peripheral region(0x5230 0000 - 0x5230 03FF) are revoked for R5FSS0_1
[HSM_CLIENT] New Client Registered with Client Id = 2
Interrupt registeration successful, notifying remote core to read CSL_UART0_U_BASE register
Success