AM261x MCU+ SDK: MPU Firewall Service DEMO

| AM261x MCU+ SDK 26.00.00 |

MPU Firewall Service DEMO

# Introduction

This example demonstrates the use of HSM Firewall services.

2 services are available.

1. Set Firewall Service is used to set firewall configuration.
2. 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

# Steps to Run the Example

- When using CCS projects to build, import the CCS project for the required combination and build it using the CCS project menu (see Using SDK with CCS Projects).
- When using makefiles to build, note the required combination and build using make command (see Using SDK with Makefiles)
- Launch a CCS debug session and run the executable, see CCS Launch, Load and Run

### 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(0x52300000 - 0x523003FF) 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